/**
* Copyright (C) 2014-2020 ServMask Inc.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*
* ███████╗███████╗██████╗ ██╗ ██╗███╗ ███╗ █████╗ ███████╗██╗ ██╗
* ██╔════╝██╔════╝██╔══██╗██║ ██║████╗ ████║██╔══██╗██╔════╝██║ ██╔╝
* ███████╗█████╗ ██████╔╝██║ ██║██╔████╔██║███████║███████╗█████╔╝
* ╚════██║██╔══╝ ██╔══██╗╚██╗ ██╔╝██║╚██╔╝██║██╔══██║╚════██║██╔═██╗
* ███████║███████╗██║ ██║ ╚████╔╝ ██║ ╚═╝ ██║██║ ██║███████║██║ ██╗
* ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝
*/
if ( ! defined( 'ABSPATH' ) ) {
die( 'Kangaroos cannot jump here' );
}
/**
* Get storage absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_storage_path( $params ) {
if ( empty( $params['storage'] ) ) {
throw new Ai1wm_Storage_Exception( __( 'Unable to locate storage path. Technical details', AI1WM_PLUGIN_NAME ) );
}
// Get storage path
$storage = AI1WM_STORAGE_PATH . DIRECTORY_SEPARATOR . basename( $params['storage'] );
if ( ! is_dir( $storage ) ) {
mkdir( $storage );
}
return $storage;
}
/**
* Get backup absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_backup_path( $params ) {
if ( empty( $params['archive'] ) ) {
throw new Ai1wm_Archive_Exception( __( 'Unable to locate archive path. Technical details', AI1WM_PLUGIN_NAME ) );
}
// Validate archive path
if ( validate_file( $params['archive'] ) !== 0 ) {
throw new Ai1wm_Archive_Exception( __( 'Invalid archive path. Technical details', AI1WM_PLUGIN_NAME ) );
}
return AI1WM_BACKUPS_PATH . DIRECTORY_SEPARATOR . $params['archive'];
}
/**
* Get archive absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_archive_path( $params ) {
if ( empty( $params['archive'] ) ) {
throw new Ai1wm_Archive_Exception( __( 'Unable to locate archive path. Technical details', AI1WM_PLUGIN_NAME ) );
}
// Validate archive path
if ( validate_file( $params['archive'] ) !== 0 ) {
throw new Ai1wm_Archive_Exception( __( 'Invalid archive path. Technical details', AI1WM_PLUGIN_NAME ) );
}
// Get archive path
if ( empty( $params['ai1wm_manual_restore'] ) ) {
return ai1wm_storage_path( $params ) . DIRECTORY_SEPARATOR . $params['archive'];
}
return ai1wm_backup_path( $params );
}
/**
* Get multipart.list absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_multipart_path( $params ) {
return ai1wm_storage_path( $params ) . DIRECTORY_SEPARATOR . AI1WM_MULTIPART_NAME;
}
/**
* Get content.list absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_content_list_path( $params ) {
return ai1wm_storage_path( $params ) . DIRECTORY_SEPARATOR . AI1WM_CONTENT_LIST_NAME;
}
/**
* Get media.list absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_media_list_path( $params ) {
return ai1wm_storage_path( $params ) . DIRECTORY_SEPARATOR . AI1WM_MEDIA_LIST_NAME;
}
/**
* Get tables.list absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_tables_list_path( $params ) {
return ai1wm_storage_path( $params ) . DIRECTORY_SEPARATOR . AI1WM_TABLES_LIST_NAME;
}
/**
* Get package.json absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_package_path( $params ) {
return ai1wm_storage_path( $params ) . DIRECTORY_SEPARATOR . AI1WM_PACKAGE_NAME;
}
/**
* Get multisite.json absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_multisite_path( $params ) {
return ai1wm_storage_path( $params ) . DIRECTORY_SEPARATOR . AI1WM_MULTISITE_NAME;
}
/**
* Get blogs.json absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_blogs_path( $params ) {
return ai1wm_storage_path( $params ) . DIRECTORY_SEPARATOR . AI1WM_BLOGS_NAME;
}
/**
* Get settings.json absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_settings_path( $params ) {
return ai1wm_storage_path( $params ) . DIRECTORY_SEPARATOR . AI1WM_SETTINGS_NAME;
}
/**
* Get database.sql absolute path
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_database_path( $params ) {
return ai1wm_storage_path( $params ) . DIRECTORY_SEPARATOR . AI1WM_DATABASE_NAME;
}
/**
* Get error log absolute path
*
* @return string
*/
function ai1wm_error_path() {
return AI1WM_STORAGE_PATH . DIRECTORY_SEPARATOR . AI1WM_ERROR_NAME;
}
/**
* Get archive name
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_archive_name( $params ) {
return basename( $params['archive'] );
}
/**
* Get backup URL address
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_backup_url( $params ) {
return AI1WM_BACKUPS_URL . '/' . ai1wm_replace_directory_separator_with_forward_slash( $params['archive'] );
}
/**
* Get archive size in bytes
*
* @param array $params Request parameters
* @return integer
*/
function ai1wm_archive_bytes( $params ) {
return filesize( ai1wm_archive_path( $params ) );
}
/**
* Get backup size in bytes
*
* @param array $params Request parameters
* @return integer
*/
function ai1wm_backup_bytes( $params ) {
return filesize( ai1wm_backup_path( $params ) );
}
/**
* Get database size in bytes
*
* @param array $params Request parameters
* @return integer
*/
function ai1wm_database_bytes( $params ) {
return filesize( ai1wm_database_path( $params ) );
}
/**
* Get package size in bytes
*
* @param array $params Request parameters
* @return integer
*/
function ai1wm_package_bytes( $params ) {
return filesize( ai1wm_package_path( $params ) );
}
/**
* Get multisite size in bytes
*
* @param array $params Request parameters
* @return integer
*/
function ai1wm_multisite_bytes( $params ) {
return filesize( ai1wm_multisite_path( $params ) );
}
/**
* Get archive size as text
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_archive_size( $params ) {
return ai1wm_size_format( filesize( ai1wm_archive_path( $params ) ) );
}
/**
* Get backup size as text
*
* @param array $params Request parameters
* @return string
*/
function ai1wm_backup_size( $params ) {
return ai1wm_size_format( filesize( ai1wm_backup_path( $params ) ) );
}
/**
* Parse file size
*
* @param string $size File size
* @param string $default Default size
* @return string
*/
function ai1wm_parse_size( $size, $default = null ) {
$suffixes = array(
'' => 1,
'k' => 1000,
'm' => 1000000,
'g' => 1000000000,
);
// Parse size format
if ( preg_match( '/([0-9]+)\s*(k|m|g)?(b?(ytes?)?)/i', $size, $match ) ) {
return $match[1] * $suffixes[ strtolower( $match[2] ) ];
}
return $default;
}
/**
* Format file size into human-readable string
*
* Fixes the WP size_format bug: size_format( '0' ) => false
*
* @param int|string $bytes Number of bytes. Note max integer size for integers.
* @param int $decimals Optional. Precision of number of decimal places. Default 0.
* @return string|false False on failure. Number string on success.
*/
function ai1wm_size_format( $bytes, $decimals = 0 ) {
if ( strval( $bytes ) === '0' ) {
return size_format( 0, $decimals );
}
return size_format( $bytes, $decimals );
}
/**
* Get current site name
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_site_name( $blog_id = null ) {
return parse_url( get_site_url( $blog_id ), PHP_URL_HOST );
}
/**
* Get archive file name
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_archive_file( $blog_id = null ) {
$name = array();
// Add domain
$name[] = parse_url( get_site_url( $blog_id ), PHP_URL_HOST );
// Add path
if ( ( $path = explode( '/', parse_url( get_site_url( $blog_id ), PHP_URL_PATH ) ) ) ) {
foreach ( $path as $directory ) {
if ( $directory ) {
$name[] = $directory;
}
}
}
// Add year, month and day
$name[] = date( 'Ymd' );
// Add hours, minutes and seconds
$name[] = date( 'His' );
// Add unique identifier
$name[] = ai1wm_generate_random_string( 6, false );
return sprintf( '%s.wpress', strtolower( implode( '-', $name ) ) );
}
/**
* Get archive folder name
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_archive_folder( $blog_id = null ) {
$name = array();
// Add domain
$name[] = parse_url( get_site_url( $blog_id ), PHP_URL_HOST );
// Add path
if ( ( $path = explode( '/', parse_url( get_site_url( $blog_id ), PHP_URL_PATH ) ) ) ) {
foreach ( $path as $directory ) {
if ( $directory ) {
$name[] = $directory;
}
}
}
return strtolower( implode( '-', $name ) );
}
/**
* Get archive bucket name
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_archive_bucket( $blog_id = null ) {
$name = array();
// Add domain
if ( ( $domain = explode( '.', parse_url( get_site_url( $blog_id ), PHP_URL_HOST ) ) ) ) {
foreach ( $domain as $subdomain ) {
if ( $subdomain = strtolower( preg_replace( '/[^A-Za-z0-9\-]/', '', $subdomain ) ) ) {
$name[] = $subdomain;
}
}
}
// Add path
if ( ( $path = explode( '/', parse_url( get_site_url( $blog_id ), PHP_URL_PATH ) ) ) ) {
foreach ( $path as $directory ) {
if ( $directory = strtolower( preg_replace( '/[^A-Za-z0-9\-]/', '', $directory ) ) ) {
$name[] = $directory;
}
}
}
return strtolower( implode( '-', $name ) );
}
/**
* Get archive vault name
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_archive_vault( $blog_id = null ) {
$name = array();
// Add domain
if ( ( $domain = explode( '.', parse_url( get_site_url( $blog_id ), PHP_URL_HOST ) ) ) ) {
foreach ( $domain as $subdomain ) {
if ( $subdomain = strtolower( preg_replace( '/[^A-Za-z0-9\-]/', '', $subdomain ) ) ) {
$name[] = $subdomain;
}
}
}
// Add path
if ( ( $path = explode( '/', parse_url( get_site_url( $blog_id ), PHP_URL_PATH ) ) ) ) {
foreach ( $path as $directory ) {
if ( $directory = strtolower( preg_replace( '/[^A-Za-z0-9\-]/', '', $directory ) ) ) {
$name[] = $directory;
}
}
}
return strtolower( implode( '-', $name ) );
}
/**
* Get archive project name
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_archive_project( $blog_id = null ) {
$name = array();
// Add domain
if ( ( $domain = explode( '.', parse_url( get_site_url( $blog_id ), PHP_URL_HOST ) ) ) ) {
foreach ( $domain as $subdomain ) {
if ( $subdomain ) {
$name[] = $subdomain;
}
}
}
// Add path
if ( ( $path = explode( '/', parse_url( get_site_url( $blog_id ), PHP_URL_PATH ) ) ) ) {
foreach ( $path as $directory ) {
if ( $directory ) {
$name[] = $directory;
}
}
}
return strtolower( implode( '-', $name ) );
}
/**
* Get archive share name
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_archive_share( $blog_id = null ) {
$name = array();
// Add domain
if ( ( $domain = explode( '.', parse_url( get_site_url( $blog_id ), PHP_URL_HOST ) ) ) ) {
foreach ( $domain as $subdomain ) {
if ( $subdomain = strtolower( preg_replace( '/[^A-Za-z0-9\-]/', '', $subdomain ) ) ) {
$name[] = $subdomain;
}
}
}
// Add path
if ( ( $path = explode( '/', parse_url( get_site_url( $blog_id ), PHP_URL_PATH ) ) ) ) {
foreach ( $path as $directory ) {
if ( $directory = strtolower( preg_replace( '/[^A-Za-z0-9\-]/', '', $directory ) ) ) {
$name[] = $directory;
}
}
}
return strtolower( implode( '-', $name ) );
}
/**
* Generate random string
*
* @param integer $length String length
* @param boolean $mixed_chars Whether to include mixed characters
* @param boolean $special_chars Whether to include special characters
* @param boolean $extra_special_chars Whether to include extra special characters
* @return string
*/
function ai1wm_generate_random_string( $length = 12, $mixed_chars = true, $special_chars = false, $extra_special_chars = false ) {
$chars = 'abcdefghijklmnopqrstuvwxyz0123456789';
if ( $mixed_chars ) {
$chars .= 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
}
if ( $special_chars ) {
$chars .= '!@#$%^&*()';
}
if ( $extra_special_chars ) {
$chars .= '-_ []{}<>~`+=,.;:/?|';
}
$str = '';
for ( $i = 0; $i < $length; $i++ ) {
$str .= substr( $chars, wp_rand( 0, strlen( $chars ) - 1 ), 1 );
}
return $str;
}
/**
* Get storage folder name
*
* @return string
*/
function ai1wm_storage_folder() {
return uniqid();
}
/**
* Check whether blog ID is main site
*
* @param integer $blog_id Blog ID
* @return boolean
*/
function ai1wm_is_mainsite( $blog_id = null ) {
return $blog_id === null || $blog_id === 0 || $blog_id === 1;
}
/**
* Get files absolute path by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_blog_files_abspath( $blog_id = null ) {
if ( ai1wm_is_mainsite( $blog_id ) ) {
return ai1wm_get_uploads_dir();
}
return WP_CONTENT_DIR . DIRECTORY_SEPARATOR . 'blogs.dir' . DIRECTORY_SEPARATOR . $blog_id . DIRECTORY_SEPARATOR . 'files';
}
/**
* Get blogs.dir absolute path by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_blog_blogsdir_abspath( $blog_id = null ) {
if ( ai1wm_is_mainsite( $blog_id ) ) {
return ai1wm_get_uploads_dir();
}
return WP_CONTENT_DIR . DIRECTORY_SEPARATOR . 'blogs.dir' . DIRECTORY_SEPARATOR . $blog_id;
}
/**
* Get sites absolute path by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_blog_sites_abspath( $blog_id = null ) {
if ( ai1wm_is_mainsite( $blog_id ) ) {
return ai1wm_get_uploads_dir();
}
return ai1wm_get_uploads_dir() . DIRECTORY_SEPARATOR . 'sites' . DIRECTORY_SEPARATOR . $blog_id;
}
/**
* Get files relative path by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_blog_files_relpath( $blog_id = null ) {
if ( ai1wm_is_mainsite( $blog_id ) ) {
return 'uploads';
}
return 'blogs.dir' . DIRECTORY_SEPARATOR . $blog_id . DIRECTORY_SEPARATOR . 'files';
}
/**
* Get blogs.dir relative path by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_blog_blogsdir_relpath( $blog_id = null ) {
if ( ai1wm_is_mainsite( $blog_id ) ) {
return 'uploads';
}
return 'blogs.dir' . DIRECTORY_SEPARATOR . $blog_id;
}
/**
* Get sites relative path by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_blog_sites_relpath( $blog_id = null ) {
if ( ai1wm_is_mainsite( $blog_id ) ) {
return 'uploads';
}
return 'uploads' . DIRECTORY_SEPARATOR . 'sites' . DIRECTORY_SEPARATOR . $blog_id;
}
/**
* Get files URL by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_blog_files_url( $blog_id = null ) {
if ( ai1wm_is_mainsite( $blog_id ) ) {
return '/wp-content/uploads/';
}
return sprintf( '/wp-content/blogs.dir/%d/files/', $blog_id );
}
/**
* Get blogs.dir URL by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_blog_blogsdir_url( $blog_id = null ) {
if ( ai1wm_is_mainsite( $blog_id ) ) {
return '/wp-content/uploads/';
}
return sprintf( '/wp-content/blogs.dir/%d/', $blog_id );
}
/**
* Get sites URL by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_blog_sites_url( $blog_id = null ) {
if ( ai1wm_is_mainsite( $blog_id ) ) {
return '/wp-content/uploads/';
}
return sprintf( '/wp-content/uploads/sites/%d/', $blog_id );
}
/**
* Get uploads URL by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_blog_uploads_url( $blog_id = null ) {
if ( ai1wm_is_mainsite( $blog_id ) ) {
return sprintf( '/%s/', ai1wm_get_uploads_path() );
}
return sprintf( '/%s/sites/%d/', ai1wm_get_uploads_path(), $blog_id );
}
/**
* Get ServMask table prefix by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_servmask_prefix( $blog_id = null ) {
if ( ai1wm_is_mainsite( $blog_id ) ) {
return AI1WM_TABLE_PREFIX;
}
return AI1WM_TABLE_PREFIX . $blog_id . '_';
}
/**
* Get WordPress table prefix by blog ID
*
* @param integer $blog_id Blog ID
* @return string
*/
function ai1wm_table_prefix( $blog_id = null ) {
global $wpdb;
// Set base table prefix
if ( ai1wm_is_mainsite( $blog_id ) ) {
return $wpdb->base_prefix;
}
return $wpdb->base_prefix . $blog_id . '_';
}
/**
* Get default content filters
*
* @param array $filters List of files and directories
* @return array
*/
function ai1wm_content_filters( $filters = array() ) {
return array_merge(
$filters,
array(
AI1WM_BACKUPS_NAME,
AI1WM_PACKAGE_NAME,
AI1WM_MULTISITE_NAME,
AI1WM_DATABASE_NAME,
)
);
}
/**
* Get default plugin filters
*
* @param array $filters List of plugins
* @return array
*/
function ai1wm_plugin_filters( $filters = array() ) {
// WP Migration Plugin
if ( defined( 'AI1WM_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WM_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration';
}
// Microsoft Azure Extension
if ( defined( 'AI1WMZE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMZE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-azure-storage-extension';
}
// Backblaze B2 Extension
if ( defined( 'AI1WMAE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMAE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-b2-extension';
}
// Backup Plugin
if ( defined( 'AI1WMVE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMVE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-backup';
}
// Box Extension
if ( defined( 'AI1WMBE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMBE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-box-extension';
}
// DigitalOcean Spaces Extension
if ( defined( 'AI1WMIE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMIE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-digitalocean-extension';
}
// Direct Extension
if ( defined( 'AI1WMXE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMXE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-direct-extension';
}
// Dropbox Extension
if ( defined( 'AI1WMDE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMDE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-dropbox-extension';
}
// File Extension
if ( defined( 'AI1WMTE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMTE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-file-extension';
}
// FTP Extension
if ( defined( 'AI1WMFE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMFE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-ftp-extension';
}
// Google Cloud Storage Extension
if ( defined( 'AI1WMCE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMCE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-gcloud-storage-extension';
}
// Google Drive Extension
if ( defined( 'AI1WMGE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMGE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-gdrive-extension';
}
// Amazon Glacier Extension
if ( defined( 'AI1WMRE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMRE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-glacier-extension';
}
// Mega Extension
if ( defined( 'AI1WMEE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMEE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-mega-extension';
}
// Multisite Extension
if ( defined( 'AI1WMME_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMME_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-multisite-extension';
}
// OneDrive Extension
if ( defined( 'AI1WMOE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMOE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-onedrive-extension';
}
// pCloud Extension
if ( defined( 'AI1WMPE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMPE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-pcloud-extension';
}
// Pro Plugin
if ( defined( 'AI1WMKE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMKE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-pro';
}
// S3 Client Extension
if ( defined( 'AI1WNE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMNE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-s3-client-extension';
}
// Amazon S3 Extension
if ( defined( 'AI1WMSE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMSE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-s3-extension';
}
// Unlimited Extension
if ( defined( 'AI1WMUE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMUE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-unlimited-extension';
}
// URL Extension
if ( defined( 'AI1WMLE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMLE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-url-extension';
}
// WebDAV Extension
if ( defined( 'AI1WMWE_PLUGIN_BASENAME' ) ) {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . dirname( AI1WMWE_PLUGIN_BASENAME );
} else {
$filters[] = 'plugins' . DIRECTORY_SEPARATOR . 'all-in-one-wp-migration-webdav-extension';
}
return $filters;
}
/**
* Get active ServMask plugins
*
* @return array
*/
function ai1wm_active_servmask_plugins( $plugins = array() ) {
// WP Migration Plugin
if ( defined( 'AI1WM_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WM_PLUGIN_BASENAME;
}
// Microsoft Azure Extension
if ( defined( 'AI1WMZE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMZE_PLUGIN_BASENAME;
}
// Backblaze B2 Extension
if ( defined( 'AI1WMAE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMAE_PLUGIN_BASENAME;
}
// Backup Plugin
if ( defined( 'AI1WMVE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMVE_PLUGIN_BASENAME;
}
// Box Extension
if ( defined( 'AI1WMBE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMBE_PLUGIN_BASENAME;
}
// DigitalOcean Spaces Extension
if ( defined( 'AI1WMIE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMIE_PLUGIN_BASENAME;
}
// Direct Extension
if ( defined( 'AI1WMXE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMXE_PLUGIN_BASENAME;
}
// Dropbox Extension
if ( defined( 'AI1WMDE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMDE_PLUGIN_BASENAME;
}
// File Extension
if ( defined( 'AI1WMTE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMTE_PLUGIN_BASENAME;
}
// FTP Extension
if ( defined( 'AI1WMFE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMFE_PLUGIN_BASENAME;
}
// Google Cloud Storage Extension
if ( defined( 'AI1WMCE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMCE_PLUGIN_BASENAME;
}
// Google Drive Extension
if ( defined( 'AI1WMGE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMGE_PLUGIN_BASENAME;
}
// Amazon Glacier Extension
if ( defined( 'AI1WMRE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMRE_PLUGIN_BASENAME;
}
// Mega Extension
if ( defined( 'AI1WMEE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMEE_PLUGIN_BASENAME;
}
// Multisite Extension
if ( defined( 'AI1WMME_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMME_PLUGIN_BASENAME;
}
// OneDrive Extension
if ( defined( 'AI1WMOE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMOE_PLUGIN_BASENAME;
}
// pCloud Extension
if ( defined( 'AI1WMPE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMPE_PLUGIN_BASENAME;
}
// Pro Plugin
if ( defined( 'AI1WMKE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMKE_PLUGIN_BASENAME;
}
// S3 Client Extension
if ( defined( 'AI1WMNE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMNE_PLUGIN_BASENAME;
}
// Amazon S3 Extension
if ( defined( 'AI1WMSE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMSE_PLUGIN_BASENAME;
}
// Unlimited Extension
if ( defined( 'AI1WMUE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMUE_PLUGIN_BASENAME;
}
// URL Extension
if ( defined( 'AI1WMLE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMLE_PLUGIN_BASENAME;
}
// WebDAV Extension
if ( defined( 'AI1WMWE_PLUGIN_BASENAME' ) ) {
$plugins[] = AI1WMWE_PLUGIN_BASENAME;
}
return $plugins;
}
/**
* Get active sitewide plugins
*
* @return array
*/
function ai1wm_active_sitewide_plugins() {
return array_keys( get_site_option( AI1WM_ACTIVE_SITEWIDE_PLUGINS, array() ) );
}
/**
* Get active plugins
*
* @return array
*/
function ai1wm_active_plugins() {
return array_values( get_option( AI1WM_ACTIVE_PLUGINS, array() ) );
}
/**
* Set active sitewide plugins (inspired by WordPress activate_plugins() function)
*
* @param array $plugins List of plugins
* @return boolean
*/
function ai1wm_activate_sitewide_plugins( $plugins ) {
$current = get_site_option( AI1WM_ACTIVE_SITEWIDE_PLUGINS, array() );
// Add plugins
foreach ( $plugins as $plugin ) {
if ( ! isset( $current[ $plugin ] ) && ! is_wp_error( validate_plugin( $plugin ) ) ) {
$current[ $plugin ] = time();
}
}
return update_site_option( AI1WM_ACTIVE_SITEWIDE_PLUGINS, $current );
}
/**
* Set active plugins (inspired by WordPress activate_plugins() function)
*
* @param array $plugins List of plugins
* @return boolean
*/
function ai1wm_activate_plugins( $plugins ) {
$current = get_option( AI1WM_ACTIVE_PLUGINS, array() );
// Add plugins
foreach ( $plugins as $plugin ) {
if ( ! in_array( $plugin, $current ) && ! is_wp_error( validate_plugin( $plugin ) ) ) {
$current[] = $plugin;
}
}
return update_option( AI1WM_ACTIVE_PLUGINS, $current );
}
/**
* Get active template
*
* @return string
*/
function ai1wm_active_template() {
return get_option( AI1WM_ACTIVE_TEMPLATE );
}
/**
* Get active stylesheet
*
* @return string
*/
function ai1wm_active_stylesheet() {
return get_option( AI1WM_ACTIVE_STYLESHEET );
}
/**
* Set active template
*
* @param string $template Template name
* @return boolean
*/
function ai1wm_activate_template( $template ) {
return update_option( AI1WM_ACTIVE_TEMPLATE, $template );
}
/**
* Set active stylesheet
*
* @param string $stylesheet Stylesheet name
* @return boolean
*/
function ai1wm_activate_stylesheet( $stylesheet ) {
return update_option( AI1WM_ACTIVE_STYLESHEET, $stylesheet );
}
/**
* Set inactive sitewide plugins (inspired by WordPress deactivate_plugins() function)
*
* @param array $plugins List of plugins
* @return boolean
*/
function ai1wm_deactivate_sitewide_plugins( $plugins ) {
$current = get_site_option( AI1WM_ACTIVE_SITEWIDE_PLUGINS, array() );
// Add plugins
foreach ( $plugins as $plugin ) {
if ( isset( $current[ $plugin ] ) ) {
unset( $current[ $plugin ] );
}
}
return update_site_option( AI1WM_ACTIVE_SITEWIDE_PLUGINS, $current );
}
/**
* Set inactive plugins (inspired by WordPress deactivate_plugins() function)
*
* @param array $plugins List of plugins
* @return boolean
*/
function ai1wm_deactivate_plugins( $plugins ) {
$current = get_option( AI1WM_ACTIVE_PLUGINS, array() );
// Remove plugins
foreach ( $plugins as $plugin ) {
if ( ( $key = array_search( $plugin, $current ) ) !== false ) {
unset( $current[ $key ] );
}
}
return update_option( AI1WM_ACTIVE_PLUGINS, $current );
}
/**
* Deactivate Jetpack modules
*
* @param array $modules List of modules
* @return boolean
*/
function ai1wm_deactivate_jetpack_modules( $modules ) {
$current = get_option( AI1WM_JETPACK_ACTIVE_MODULES, array() );
// Remove modules
foreach ( $modules as $module ) {
if ( ( $key = array_search( $module, $current ) ) !== false ) {
unset( $current[ $key ] );
}
}
return update_option( AI1WM_JETPACK_ACTIVE_MODULES, $current );
}
/**
* Deactivate Swift Optimizer rules
*
* @param array $rules List of rules
* @return boolean
*/
function ai1wm_deactivate_swift_optimizer_rules( $rules ) {
$current = get_option( AI1WM_SWIFT_OPTIMIZER_PLUGIN_ORGANIZER, array() );
// Remove rules
foreach ( $rules as $rule ) {
unset( $current['rules'][ $rule ] );
}
return update_option( AI1WM_SWIFT_OPTIMIZER_PLUGIN_ORGANIZER, $current );
}
/**
* Deactivate sitewide Revolution Slider
*
* @param string $basename Plugin basename
* @return boolean
*/
function ai1wm_deactivate_sitewide_revolution_slider( $basename ) {
if ( ( $plugins = get_plugins() ) ) {
if ( isset( $plugins[ $basename ]['Version'] ) && ( $version = $plugins[ $basename ]['Version'] ) ) {
if ( version_compare( PHP_VERSION, '7.3', '>=' ) && version_compare( $version, '5.4.8.3', '<' ) ) {
return ai1wm_deactivate_sitewide_plugins( array( $basename ) );
}
if ( version_compare( PHP_VERSION, '7.2', '>=' ) && version_compare( $version, '5.4.6', '<' ) ) {
return ai1wm_deactivate_sitewide_plugins( array( $basename ) );
}
if ( version_compare( PHP_VERSION, '7.1', '>=' ) && version_compare( $version, '5.4.1', '<' ) ) {
return ai1wm_deactivate_sitewide_plugins( array( $basename ) );
}
if ( version_compare( PHP_VERSION, '7.0', '>=' ) && version_compare( $version, '4.6.5', '<' ) ) {
return ai1wm_deactivate_sitewide_plugins( array( $basename ) );
}
}
}
return false;
}
/**
* Deactivate Revolution Slider
*
* @param string $basename Plugin basename
* @return boolean
*/
function ai1wm_deactivate_revolution_slider( $basename ) {
if ( ( $plugins = get_plugins() ) ) {
if ( isset( $plugins[ $basename ]['Version'] ) && ( $version = $plugins[ $basename ]['Version'] ) ) {
if ( version_compare( PHP_VERSION, '7.3', '>=' ) && version_compare( $version, '5.4.8.3', '<' ) ) {
return ai1wm_deactivate_plugins( array( $basename ) );
}
if ( version_compare( PHP_VERSION, '7.2', '>=' ) && version_compare( $version, '5.4.6', '<' ) ) {
return ai1wm_deactivate_plugins( array( $basename ) );
}
if ( version_compare( PHP_VERSION, '7.1', '>=' ) && version_compare( $version, '5.4.1', '<' ) ) {
return ai1wm_deactivate_plugins( array( $basename ) );
}
if ( version_compare( PHP_VERSION, '7.0', '>=' ) && version_compare( $version, '4.6.5', '<' ) ) {
return ai1wm_deactivate_plugins( array( $basename ) );
}
}
}
return false;
}
/**
* Initial DB version
*
* @return boolean
*/
function ai1wm_initial_db_version() {
if ( ! get_option( AI1WM_DB_VERSION ) ) {
return update_option( AI1WM_DB_VERSION, get_option( AI1WM_INITIAL_DB_VERSION ) );
}
return false;
}
/**
* Discover plugin basename
*
* @param string $basename Plugin basename
* @return string
*/
function ai1wm_discover_plugin_basename( $basename ) {
if ( ( $plugins = get_plugins() ) ) {
foreach ( $plugins as $plugin => $info ) {
if ( strpos( dirname( $plugin ), dirname( $basename ) ) !== false ) {
if ( basename( $plugin ) === basename( $basename ) ) {
return $plugin;
}
}
}
}
return $basename;
}
/**
* Validate plugin basename
*
* @param string $basename Plugin basename
* @return boolean
*/
function ai1wm_validate_plugin_basename( $basename ) {
if ( ( $plugins = get_plugins() ) ) {
foreach ( $plugins as $plugin => $info ) {
if ( $plugin === $basename ) {
return true;
}
}
}
return false;
}
/**
* Validate theme basename
*
* @param string $basename Theme basename
* @return boolean
*/
function ai1wm_validate_theme_basename( $basename ) {
if ( ( $themes = search_theme_directories() ) ) {
foreach ( $themes as $theme => $info ) {
if ( $info['theme_file'] === $basename ) {
return true;
}
}
}
return false;
}
/**
* Flush WP options cache
*
* @return void
*/
function ai1wm_cache_flush() {
wp_cache_init();
wp_cache_flush();
// Reset WP options cache
wp_cache_set( 'alloptions', array(), 'options' );
wp_cache_set( 'notoptions', array(), 'options' );
// Reset WP sitemeta cache
wp_cache_set( '1:notoptions', array(), 'site-options' );
wp_cache_set( '1:ms_files_rewriting', false, 'site-options' );
wp_cache_set( '1:active_sitewide_plugins', false, 'site-options' );
// Delete WP options cache
wp_cache_delete( 'alloptions', 'options' );
wp_cache_delete( 'notoptions', 'options' );
// Delete WP sitemeta cache
wp_cache_delete( '1:notoptions', 'site-options' );
wp_cache_delete( '1:ms_files_rewriting', 'site-options' );
wp_cache_delete( '1:active_sitewide_plugins', 'site-options' );
// Remove WP options filter
remove_all_filters( 'sanitize_option_home' );
remove_all_filters( 'sanitize_option_siteurl' );
remove_all_filters( 'default_site_option_ms_files_rewriting' );
}
/**
* Flush Elementor cache
*
* @return void
*/
function ai1wm_elementor_cache_flush() {
delete_post_meta_by_key( '_elementor_css' );
delete_option( '_elementor_global_css' );
delete_option( 'elementor-custom-breakpoints-files' );
}
/**
* Set URL scheme
*
* @param string $url URL value
* @param string $scheme URL scheme
* @return string
*/
function ai1wm_url_scheme( $url, $scheme = '' ) {
if ( empty( $scheme ) ) {
return preg_replace( '#^\w+://#', '//', $url );
}
return preg_replace( '#^\w+://#', $scheme . '://', $url );
}
/**
* Opens a file in specified mode
*
* @param string $file Path to the file to open
* @param string $mode Mode in which to open the file
* @return resource
* @throws Ai1wm_Not_Accessible_Exception
*/
function ai1wm_open( $file, $mode ) {
$file_handle = @fopen( $file, $mode );
if ( false === $file_handle ) {
throw new Ai1wm_Not_Accessible_Exception( sprintf( __( 'Unable to open %s with mode %s. Technical details', AI1WM_PLUGIN_NAME ), $file, $mode ) );
}
return $file_handle;
}
/**
* Write contents to a file
*
* @param resource $handle File handle to write to
* @param string $content Contents to write to the file
* @return integer
* @throws Ai1wm_Not_Writable_Exception
* @throws Ai1wm_Quota_Exceeded_Exception
*/
function ai1wm_write( $handle, $content ) {
$write_result = @fwrite( $handle, $content );
if ( false === $write_result ) {
if ( ( $meta = stream_get_meta_data( $handle ) ) ) {
throw new Ai1wm_Not_Writable_Exception( sprintf( __( 'Unable to write to: %s. Technical details', AI1WM_PLUGIN_NAME ), $meta['uri'] ) );
}
} elseif ( strlen( $content ) !== $write_result ) {
if ( ( $meta = stream_get_meta_data( $handle ) ) ) {
throw new Ai1wm_Quota_Exceeded_Exception( sprintf( __( 'Out of disk space. Unable to write to: %s. Technical details', AI1WM_PLUGIN_NAME ), $meta['uri'] ) );
}
}
return $write_result;
}
/**
* Read contents from a file
*
* @param resource $handle File handle to read from
* @param string $filesize File size
* @return integer
* @throws Ai1wm_Not_Readable_Exception
*/
function ai1wm_read( $handle, $filesize ) {
$read_result = @fread( $handle, $filesize );
if ( false === $read_result ) {
if ( ( $meta = stream_get_meta_data( $handle ) ) ) {
throw new Ai1wm_Not_Readable_Exception( sprintf( __( 'Unable to read file: %s. Technical details', AI1WM_PLUGIN_NAME ), $meta['uri'] ) );
}
}
return $read_result;
}
/**
* Seeks on a file pointer
*
* @param string $handle File handle to seeks
* @return integer
*/
function ai1wm_seek( $handle, $offset, $mode = SEEK_SET ) {
$seek_result = @fseek( $handle, $offset, $mode );
if ( -1 === $seek_result ) {
if ( ( $meta = stream_get_meta_data( $handle ) ) ) {
throw new Ai1wm_Not_Seekable_Exception( sprintf( __( 'Unable to seek to offset %d on %s. Technical details', AI1WM_PLUGIN_NAME ), $offset, $meta['uri'] ) );
}
}
return $seek_result;
}
/**
* Tells on a file pointer
*
* @param string $handle File handle to tells
* @return integer
*/
function ai1wm_tell( $handle ) {
$tell_result = @ftell( $handle );
if ( false === $tell_result ) {
if ( ( $meta = stream_get_meta_data( $handle ) ) ) {
throw new Ai1wm_Not_Tellable_Exception( sprintf( __( 'Unable to get current pointer position of %s. Technical details', AI1WM_PLUGIN_NAME ), $meta['uri'] ) );
}
}
return $tell_result;
}
/**
* Closes a file handle
*
* @param resource $handle File handle to close
* @return boolean
*/
function ai1wm_close( $handle ) {
return @fclose( $handle );
}
/**
* Deletes a file
*
* @param string $file Path to file to delete
* @return boolean
*/
function ai1wm_unlink( $file ) {
return @unlink( $file );
}
/**
* Sets modification time of a file
*
* @param string $file Path to file to change modification time
* @param integer $time File modification time
* @return boolean
*/
function ai1wm_touch( $file, $mtime ) {
return @touch( $file, $mtime );
}
/**
* Changes file mode
*
* @param string $file Path to file to change mode
* @param integer $time File mode
* @return boolean
*/
function ai1wm_chmod( $file, $mode ) {
return @chmod( $file, $mode );
}
/**
* Copies one file's contents to another
*
* @param string $source_file File to copy the contents from
* @param string $destination_file File to copy the contents to
*/
function ai1wm_copy( $source_file, $destination_file ) {
$source_handle = ai1wm_open( $source_file, 'rb' );
$destination_handle = ai1wm_open( $destination_file, 'ab' );
while ( $buffer = ai1wm_read( $source_handle, 4096 ) ) {
ai1wm_write( $destination_handle, $buffer );
}
ai1wm_close( $source_handle );
ai1wm_close( $destination_handle );
}
/**
* Check whether file size is supported by current PHP version
*
* @param string $file Path to file
* @param integer $php_int_size Size of PHP integer
* @return boolean $php_int_max Max value of PHP integer
*/
function ai1wm_is_filesize_supported( $file, $php_int_size = PHP_INT_SIZE, $php_int_max = PHP_INT_MAX ) {
$size_result = true;
// Check whether file size is less than 2GB in PHP 32bits
if ( $php_int_size === 4 ) {
if ( ( $file_handle = @fopen( $file, 'r' ) ) ) {
if ( @fseek( $file_handle, $php_int_max, SEEK_SET ) !== -1 ) {
if ( @fgetc( $file_handle ) !== false ) {
$size_result = false;
}
}
@fclose( $file_handle );
}
}
return $size_result;
}
/**
* Verify secret key
*
* @param string $secret_key Secret key
* @return boolean
* @throws Ai1wm_Not_Valid_Secret_Key_Exception
*/
function ai1wm_verify_secret_key( $secret_key ) {
if ( $secret_key !== get_option( AI1WM_SECRET_KEY ) ) {
throw new Ai1wm_Not_Valid_Secret_Key_Exception( __( 'Unable to authenticate the secret key. Technical details', AI1WM_PLUGIN_NAME ) );
}
return true;
}
/**
* Is scheduled backup?
*
* @return boolean
*/
function ai1wm_is_scheduled_backup() {
if ( isset( $_GET['ai1wm_manual_export'] ) || isset( $_POST['ai1wm_manual_export'] ) ) {
return false;
}
if ( isset( $_GET['ai1wm_manual_import'] ) || isset( $_POST['ai1wm_manual_import'] ) ) {
return false;
}
if ( isset( $_GET['ai1wm_manual_restore'] ) || isset( $_POST['ai1wm_manual_restore'] ) ) {
return false;
}
return true;
}
/**
* PHP setup environment
*
* @return void
*/
function ai1wm_setup_environment() {
// Set whether a client disconnect should abort script execution
@ignore_user_abort( true );
// Set maximum execution time
@set_time_limit( 0 );
// Set maximum time in seconds a script is allowed to parse input data
@ini_set( 'max_input_time', '-1' );
// Set maximum backtracking steps
@ini_set( 'pcre.backtrack_limit', PHP_INT_MAX );
// Set binary safe encoding
if ( @function_exists( 'mb_internal_encoding' ) && ( @ini_get( 'mbstring.func_overload' ) & 2 ) ) {
@mb_internal_encoding( 'ISO-8859-1' );
}
// Clean (erase) the output buffer and turn off output buffering
if ( @ob_get_length() ) {
@ob_end_clean();
}
// Set error handler
@set_error_handler( 'Ai1wm_Handler::error' );
// Set shutdown handler
@register_shutdown_function( 'Ai1wm_Handler::shutdown' );
}
/**
* Get WordPress time zone string
*
* @return string
*/
function ai1wm_get_timezone_string() {
if ( ( $timezone_string = get_option( 'timezone_string' ) ) ) {
return $timezone_string;
}
if ( ( $gmt_offset = get_option( 'gmt_offset' ) ) ) {
if ( $gmt_offset > 0 ) {
return sprintf( 'UTC+%s', abs( $gmt_offset ) );
} elseif ( $gmt_offset < 0 ) {
return sprintf( 'UTC-%s', abs( $gmt_offset ) );
}
}
return 'UTC';
}
/**
* Get WordPress filter hooks
*
* @param string $tag The name of the filter hook
* @return array
*/
function ai1wm_get_filters( $tag ) {
global $wp_filter;
// Get WordPress filter hooks
$filters = array();
if ( isset( $wp_filter[ $tag ] ) ) {
if ( ( $filters = $wp_filter[ $tag ] ) ) {
// WordPress 4.7 introduces new class for working with filters/actions called WP_Hook
// which adds another level of abstraction and we need to address it.
if ( isset( $filters->callbacks ) ) {
$filters = $filters->callbacks;
}
}
ksort( $filters );
}
return $filters;
}
/**
* Get WordPress uploads directory
*
* @return string
*/
function ai1wm_get_uploads_dir() {
if ( ( $upload_dir = wp_upload_dir() ) ) {
if ( isset( $upload_dir['basedir'] ) ) {
return untrailingslashit( $upload_dir['basedir'] );
}
}
}
/**
* Get WordPress uploads URL
*
* @return string
*/
function ai1wm_get_uploads_url() {
if ( ( $upload_dir = wp_upload_dir() ) ) {
if ( isset( $upload_dir['baseurl'] ) ) {
return trailingslashit( $upload_dir['baseurl'] );
}
}
}
/**
* Get WordPress uploads path
*
* @return string
*/
function ai1wm_get_uploads_path() {
if ( ( $upload_dir = wp_upload_dir() ) ) {
if ( isset( $upload_dir['basedir'] ) ) {
return str_replace( ABSPATH, '', $upload_dir['basedir'] );
}
}
}
/**
* i18n friendly version of basename()
*
* @param string $path File path
* @param string $suffix If the filename ends in suffix this will also be cut off
* @return string
*/
function ai1wm_basename( $path, $suffix = '' ) {
return urldecode( basename( str_replace( array( '%2F', '%5C' ), '/', urlencode( $path ) ), $suffix ) );
}
/**
* i18n friendly version of dirname()
*
* @param string $path File path
* @return string
*/
function ai1wm_dirname( $path ) {
return urldecode( dirname( str_replace( array( '%2F', '%5C' ), '/', urlencode( $path ) ) ) );
}
/**
* Replace forward slash with current directory separator
*
* @param string $path Path
* @return string
*/
function ai1wm_replace_forward_slash_with_directory_separator( $path ) {
return str_replace( '/', DIRECTORY_SEPARATOR, $path );
}
/**
* Replace current directory separator with forward slash
*
* @param string $path Path
* @return string
*/
function ai1wm_replace_directory_separator_with_forward_slash( $path ) {
return str_replace( DIRECTORY_SEPARATOR, '/', $path );
}
/**
* Escape Windows directory separator
*
* @param string $path Path
* @return string
*/
function ai1wm_escape_windows_directory_separator( $path ) {
return preg_replace( '/[\\\\]+/', '\\\\\\\\', $path );
}
/**
* Should reset WordPress permalinks?
*
* @param array $params Request parameters
* @return boolean
*/
function ai1wm_should_reset_permalinks( $params ) {
global $wp_rewrite, $is_apache;
// Permalinks are not supported
if ( empty( $params['using_permalinks'] ) ) {
if ( $wp_rewrite->using_permalinks() ) {
if ( $is_apache ) {
if ( ! apache_mod_loaded( 'mod_rewrite', false ) ) {
return true;
}
}
}
}
return false;
}
/**
* Get .htaccess file content
*
* @return string
*/
function ai1wm_get_htaccess() {
if ( is_file( AI1WM_WORDPRESS_HTACCESS ) ) {
return @file_get_contents( AI1WM_WORDPRESS_HTACCESS );
}
}
/**
* Get web.config file content
*
* @return string
*/
function ai1wm_get_webconfig() {
if ( is_file( AI1WM_WORDPRESS_WEBCONFIG ) ) {
return @file_get_contents( AI1WM_WORDPRESS_WEBCONFIG );
}
}
MÁY NƯỚC NÓNG ARISTON – CHỢ TRỜI TRÊN MẠNG
https://chotroitrenmang.com
Công nghệ, điện tử, điện máy, điện lạnh, điện thoại, máy tính bảng, laptop, tablet, du lịch, thời trang, sức khỏe, làm đẹpWed, 30 Dec 2020 09:44:32 +0000vi
hourly
1 https://wordpress.org/?v=5.7.15https://chotroitrenmang.com/wp-content/uploads/2020/10/cropped-chotroitrenmang-32x32.pngMÁY NƯỚC NÓNG ARISTON – CHỢ TRỜI TRÊN MẠNG
https://chotroitrenmang.com
3232Máy nước nóng Ariston ST45PE-VN – 4.990.000 VNĐ
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-st45pe-vn-4-990-000-vnd/
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-st45pe-vn-4-990-000-vnd/#respondWed, 30 Dec 2020 09:36:18 +0000https://chotroitrenmang.com/?post_type=product&p=2386ƯU ĐÃI CHỈ CÓ TẠI NGUYỄN KIM
Tặng Khăn tắm Everon.
Giảm thêm 500.000đ khi thanh toán bằng thẻ tín dụng quốc tế TPBank.
Đặc điểm nổi bật:
Làm nóng trực tiếp cho nguồn nước nóng nhanh tức thì
Vỏ chống thấm nước IP25 bảo vệ linh kiện bên trong
Bơm trợ lực giúp máy hoạt động ổn định và bền hơn
Bảng hiển thị LED trực quan hiển thị nhiệt độ nước
Cầu giao chống rò điện ELCB an toàn khi sử dụng
Vòi sen 5 kiểu phun tiện lợi và massage nhẹ nhàng
Thiết kế sang trọng nhỏ gọn, lắp đặt gọn gàng
Giá tham khảo: 4.990.000 VNĐ.
]]>
Thông số kỹ thuật Máy nước nóng Ariston ST45PE-VN
Đặc điểm sản phẩm
Model:
ST45PE-VN
Màu sắc:
Xám
Nhà sản xuất:
Ariston
Xuất xứ:
Việt Nam
Thời gian bảo hành:
24 tháng
Địa điểm bảo hành:
Nguyễn Kim
Loại máy:
Trực tiếp
Bơm trợ lực:
Có
Công suất máy nước nóng:
4500 W
Nút điều khiển:
Cảm ứng
Chế độ an toàn:
Chống giật & Chống bỏng
Màn hình hiển thị:
Có
Tương thích điện từ EMC:
Có
Kích thước thùng:
386x230x76 mm
Khối lượng thùng (kg):
2.00 kg
Máy nước nóng Ariston ST45PE-VN sang trọng hiện đại
Máy nước nóng Ariston ST45PE – VNcó thiết kế màn hình cảm ứng và hiển thị nhiệt độ chính xác không chỉ mang đến vẻ đẹp sang trọng, đẳng cấp mà nó còn giúp bạn nhận biết được nhiệt độ của nước ở thời điểm hiện tại là bao nhiêu.
Máy nước nóng Ariston làm nóng trực tiếp
Với thiết kế nhỏ gọn thanh lịch, chiếc máy nước nóng trực tiếp có hỗ trợ bơm trợ lực này sẽ là sự lựa chọn lý tưởng cho những khu vực có áp lực nước yếu, góp phần mang đến cho bạn dòng nước nóng mạnh mẽ, sảng khoái, vừa trang trí cho góc phòng tắm của bạn.
Điều chỉnh nhiệt độ dễ dàng
Máy nước nóng Ariston với cơ chế làm nóng trực tiếp giúp bạn có thể ngâm mình trong làn nước ấm ngay một cách dễ dàng
Máy nước nóng bền bỉ với thời gian
Máy nước nóng Ariston có lớp vỏ chống thấm nước IP25, giúp bảo vệ các linh kiện bên trong, nâng cao tuổi thọ và độ bền bỉ với thời gian cho máy.
An toàn tuyệt đối
Máy nước nóng của Ariston được trang bị cầu giao chống rò điện ELCB bảo vệ an toàn cho cả gia đình bạn nhờ khả năng ngắt điện kịp thời khi phát hiện sự cố rò rỉ. Đồng thời tính năng EMC chống nhiễu từ giúp máy vận hành thoải mái mà không lo ảnh hưởng đến các thiết bị khác trong nhà.
Nâng cao trải nghiệm
Với 5 kiểu phun khác nhau từ vòi sen, giúp bạn có thể thoải mái mát-xa cơ thể cùng làn nước.
Máy nước nóng thông minh
Không cần phải mất công chỉnh nhiệt độ và canh dòng nước nữa, với hệ thống ghi nhớ nhiệt độ yêu thích, các thành viên trong gia đình có thể lưu lại mức nhiệt mình cảm thấy thoải mái để lần sau sử dụng một cách dễ dàng và tiện lợi.
]]>https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-st45pe-vn-4-990-000-vnd/feed/0Máy nước nóng Ariston AN2 30 TOP 2.5 FE – 4.890.000 VNĐ
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-top-2-5-fe-4-890-000-vnd/
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-top-2-5-fe-4-890-000-vnd/#respondWed, 30 Dec 2020 09:24:38 +0000https://chotroitrenmang.com/?post_type=product&p=2377ƯU ĐÃI CHỈ CÓ TẠI NGUYỄN KIM
Tặng Phiếu mua hàng 200.000đ hoặc Giảm ngay 200.000đ.
Giảm thêm 500.000đ khi thanh toán bằng thẻ tín dụng quốc tế TPBank.
Đặc điểm nổi bật:
Làm nóng gián tiếp với dung tích 30 lít cho gia đình 3 - 4 người
Công nghệ ECO EVO tiêu chuẩn châu Âu tiết kiệm điện năng
Cầu dao chống rò điện ELCB tự động ngắt điện an toàn sử dụng
Lòng bình tráng men Titan ngăn tình trạng ăn mòn và rò rỉ
Cảm biến nhiệt độ thông minh kiểm soát nhiệt độ, bảo vệ làn da
Giá tham khảo: 4.890.000 VNĐ.
]]>
Thông số kỹ thuật Máy nước nóng Ariston AN2 30 TOP 2.5 FE
Đặc điểm sản phẩm
Model:
AN2 30 TOP 2.5 FE
Nhà sản xuất:
Ariston
Xuất xứ:
Việt Nam
Thời gian bảo hành:
120 tháng
Địa điểm bảo hành:
Nguyễn Kim
Loại máy:
Gián tiếp
Dung tích:
30 lít
Công suất máy nước nóng:
2500 W
Nhiệt độ:
80°C
Thời gian làm nóng:
20 phút
Chế độ an toàn:
Cầu dao chống rò điện ELCB, Hệ thống an toàn TBSE, Vi mạch kiểm soát an toàn, Chức năng tự động kiểm tra rò điện (Auto test)
Màn hình hiển thị:
Có
Kích thước sản phẩm:
475 x 440 x 395 mm
Sang trọng, nổi bật
Máy nước nóng Ariston AN2 30 TOP 2.5 FE màu đen trang nhã, thiết kế hình hộp vuông nhỏ gọn. Máy được trang bị đèn báo hiển thị sẵn sàng, dễ dàng biết được đã có nước nóng để sử dụng.
Chất liệu cao cấp
Vỏ ngoài chống nước nhỏ giọt IPX1 tránh gây hư hỏng, chập mạch cho linh kiện bên trong. Kết hợp với bảng điều khiển cảm ứng hiện đại cùng màn hình hiển thị nhiệt độ dạng LED, chiếc máy nước nóng này mang đến cho bạn sự thuận tiện trong việc điều chỉnh chế độ cũng như quan sát nhiệt độ nước bên trong.
Công nghệ hiện đại
Công nghệ Wifi thông minh giúp cài đặt thời điểm cần nước nóng và nhiệt độ mong muốn dù ở bất cứ đâu , tiết kiệm thêm 25% điện năng tiêu thụ. Tích hợp bộ ổn định nhiệt TBST và hệ thống tạo ion bạc giúp làm sạch vi khuẩn trong nước.
Dung tích chứa lớn
Máy nước nóng Ariston có bình chứa với dung tích 30 lít, là lựa chọn lý tưởng cho gia đình 2 thành viên. Nước chỉ cần đun nóng một lần với hiệt độ lên đến 80 độ C, sử dụng được nhiều lần, giúp tiết kiệm tối đa điện năng.
An toàn khi sử dụng
Máy nước nóng bảo vệ an toàn người dùng với cầu dao chống rò điện ELCB. Hệ thống kiểm soát nhiệt độ TBSE tự động ngắt chức năng làm nóng khi nhiệt độ đạt mức yêu cầu, ngăn gây bỏng khi sử dụng.
Lòng bình bền bỉ
Máy sở hữu lớp vỏ chống thấm nước chuẩn IPX1 (xếp hạng chuẩn quốc tế về chống thấm trên các thiết bị điện), màn hình hiển thị nhiệt độ dễ dàng quan sát. Lòng bình tráng men Titan độ bền cao, ngăn chặn rò rỉ nước từ bên trong.
Đây là loại bình nóng gián tiếp có dung tích 30 lít, phù hợp với gia đình có từ 3 thành viên. Nếu bạn muốn sử dụng nước nóng nhưng vẫn tiết kiệm được điện năng thì đây chính là lựa chọn khá phù hợp. Khi máy hoạt động sẽ có đèn led báo sáng hiển thị trên màn hình giúp bạn dễ dàng quan sát và điều chỉnh phù hợp với nhiệt độ muốn sử dụng.
]]>https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-top-2-5-fe-4-890-000-vnd/feed/0Máy nước nóng Ariston AN2 15 TOP 2.5 FE – 4.290.000 VNĐ
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-15-top-2-5-fe-4-290-000-vnd/
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-15-top-2-5-fe-4-290-000-vnd/#respondWed, 23 Dec 2020 11:11:53 +0000https://chotroitrenmang.com/?post_type=product&p=2372ƯU ĐÃI CHỈ CÓ TẠI NGUYỄN KIM
Đón Giáng Sinh - Mua online nhập mã NKXMAS giảm thêm đến 1.250.000đ tới ngày 27/12.
Tặng Phiếu mua hàng 200.000đ hoặc Giảm ngay 200.000đ.
Giảm thêm 500.000đ khi thanh toán bằng thẻ tín dụng quốc tế TPBank.
Đặc điểm nổi bật:
Cơ chế làm nóng gián tiếp phù hợp với nơi có khí hậu lạnh
Đèn báo hiển thị dễ dàng giúp dễ dàng biết đã có nước nóng
Dễ dàng điều chỉnh nhiệt độ, nhiệt độ tối đa lên đến 80 độ C
Dung tích lớn 15 lít đáp ứng nhu cầu sử dụng cho 2 người
Lòng bình tráng men titan hạn chế bám bẩn, tăng độ bền
Cầu dao chống rò điện ELCB an toàn cho người sử dụng
Giá tham khảo: 4.290.000 VNĐ.
]]>
Thông số kỹ thuật Máy nước nóng Ariston AN2 15 TOP 2.5 FE
Đặc điểm sản phẩm
Model:
AN2 15 TOP 2.5 FE
Nhà sản xuất:
Ariston
Xuất xứ:
Việt Nam
Địa điểm bảo hành:
Nguyễn Kim
Loại máy:
Gián tiếp
Bơm trợ lực:
Không
Dung tích:
15 lít
Công suất máy nước nóng:
2500 W
Nhiệt độ:
Tối đa 80 độ C
Chế độ an toàn:
Vi mạch kiểm soát an toàn, Cầu dao chống rò điện ELCB, Hệ thống an toàn TBSE, Chức năng tự động kiểm tra rò điện (Auto test)
Kích thước sản phẩm:
390 x 360 x 320 mm
Máy nước nóng Ariston 15 lít sang trọng và nổi bật
Máy nước nóng Ariston AN2 15 TOP 2.5 FE sở hữu thiết kế màu đen trang nhã, hình hộp vuông nhỏ gọn tiết kiệm không gian và nâng tầm không gian phòng tắm thêm hiện đại. Máy nước nóng được trang bị đèn báo hiển thị sẵn sàng, dễ dàng biết được đã có nước nóng để sử dụng.
Máy nước nóng Ariston dễ dàng điều chỉnh
Vỏ ngoài chống nước nhỏ giọt IPX1 tránh gây hư hỏng, chập mạch cho linh kiện bên trong. Kết hợp với bảng điều khiển cảm ứng hiện đại cùng màn hình hiển thị nhiệt độ dạng LED, chiếc máy nước nóng này mang đến cho bạn sự thuận tiện trong việc điều chỉnh chế độ cũng như quan sát nhiệt độ nước bên trong.
Máy nước nóng gián tiếp
Đây là loại bình nóng gián tiếp, đồng nghĩa với việc nếu bạn muốn sử dụng nước nóng nhưng vẫn tiết kiệm được điện năng thì đây chính là lựa chọn khá phù hợp. Khi máy hoạt động sẽ có đèn led báo sáng hiển thị trên màn hình giúp bạn dễ dàng quan sát và điều chỉnh phù hợp với nhiệt độ muốn sử dụng..
Công nghệ hiện đại
Công nghệ Wifi thông minh giúp cài đặt thời điểm cần nước nóng và nhiệt độ mong muốn dù ở bất cứ đâu , tiết kiệm thêm 25% điện năng tiêu thụ. Tích hợp bộ ổn định nhiệt TBST và hệ thống tạo ion bạc giúp làm sạch vi khuẩn trong nước.
Dung tích khá cao
Máy nước nóng Ariston có bình chứa với dung tích 15 lít, là lựa chọn lý tưởng cho gia đình 2 thành viên. Nước chỉ cần đun nóng một lần với hiệt độ lên đến 80 độ C, sử dụng được nhiều lần, giúp tiết kiệm tối đa điện năng.
An toàn khi sử dụng
Máy nước nóng bảo vệ an toàn người dùng với cầu dao chống rò điện ELCB. Hệ thống kiểm soát nhiệt độ TBSE tự động ngắt chức năng làm nóng khi nhiệt độ đạt mức yêu cầu, ngăn gây bỏng khi sử dụng.
Lòng bình bền bỉ
Máy sở hữu lớp vỏ chống thấm nước chuẩn IPX1 (xếp hạng chuẩn quốc tế về chống thấm trên các thiết bị điện), màn hình hiển thị nhiệt độ dễ dàng quan sát. Lòng bình tráng men Titan độ bền cao, ngăn chặn rò rỉ nước từ bên trong.
]]>https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-15-top-2-5-fe-4-290-000-vnd/feed/0Máy nước nóng Ariston AN2 30 LUX 2.5 FE – 4.190.000 VNĐ
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-lux-2-5-fe-4-190-000-vnd/
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-lux-2-5-fe-4-190-000-vnd/#respondWed, 23 Dec 2020 10:59:56 +0000https://chotroitrenmang.com/?post_type=product&p=2365ƯU ĐÃI CHỈ CÓ TẠI NGUYỄN KIM
Đón Giáng Sinh - Mua online nhập mã NKXMAS giảm thêm đến 1.250.000đ tới ngày 27/12.
Tặng Phiếu mua hàng 200.000đ hoặc Giảm ngay 200.000đ.
Giảm thêm 500.000đ khi thanh toán bằng thẻ tín dụng quốc tế TPBank.
Đặc điểm nổi bật:
Cơ chế làm nóng gián tiếp phù hợp với nơi có khí hậu lạnh
Đèn báo hiển thị dễ dàng giúp dễ dàng biết đã có nước nóng
Dễ dàng điều chỉnh nhiệt độ, nhiệt độ tối đa lên đến 80 độ C
Dung tích lớn 30 lít, đun 1 lần sử dụng được cho nhiều người
Công nghệ tạo Ion Bạc kháng khuẩn nước, an toàn cho da
Lòng bình tráng men titan hạn chế bám bẩn, tăng độ bền
Cầu dao chống rò điện ELCB an toàn cho người sử dụng
Giá tham khảo: 3.390.000 VNĐ.
]]>
Thông số kỹ thuật Máy nước nóng Ariston AN2 30 LUX 2.5 FE
Đặc điểm sản phẩm
Model:
AN2 30 LUX 2.5 FE – MT
Nhà sản xuất:
Ariston
Xuất xứ:
Việt Nam
Địa điểm bảo hành:
Nguyễn Kim
Loại máy:
Gián tiếp
Dung tích:
30 lít
Công suất máy nước nóng:
2500 W
Nhiệt độ:
80°C
Thời gian làm nóng:
20 phút
Chế độ an toàn:
Cầu dao chống rò điện ELCB, Hệ thống an toàn TBSE
Màn hình hiển thị:
Có
Kích thước sản phẩm:
470 x 440 x 400 mm
Máy nước nóng Ariston 30 lít hiện đại nâng tầm không gian sống
Máy nước nóng Ariston AN2 30 LUX 2.5 FE sở hữu thiết kế nhỏ gọn tiết kiệm diện tích, kết hợp cùng màu sắc trang nhã sang trọng, chiếc máy nước nóng phù hợp với mọi không gian phòng tắm.
Máy nước nóng Ariston làm nóng gián tiếp
Máy nước nóng có dung tích 30 lít là một sự lựa chọn phù hợp cho gia đình từ 3 – 5 thành viên. Cơ chế làm nóng gián tiếp thích hợp cho gia đình có bồn tắm, ở các khu vực có khí hậu lạnh và có độ bền cao
An toàn khi sử dụng máy nước nóng
Sử dụng chiếc máy nước nóng này, bạn có thể yên tâm sử dụng nhờ hệ thống an toàn của máy. Khi phát hiện sự cố rò rỉ điện, Cầu dao chống rò điện ELCB sẽ tự động ngắt mạch điện hoạt động, Hệ thống kiểm soát nhiệt độ TBSE tự động ngắt chức năng làm nóng khi nhệt độ đạt mức yêu cầu, ngăn chặn nước nóng gây bỏng cho người sử dụng.
Hệ thống tạo ion bạc
Máy nước nóng Ariston sở hữu hệ thống tạo ion bạc khử vi khuẩn, tác nhân gây dị ứng đảm bảo nguồn nước nóng luôn sạch khuẩn
Màn hình hiển thị nhiệt độ
Màn hình hiển thị nhiệt độ tiện lợi được trang vị trên máy nước nóng giúp người dùng dễ dàng quan sát, theo dõi nhiệt độ tắm phù hợp
Lòng bình tráng men
Lòng bình tráng men titan mang độ bền cao, ngăn chặn tối ưu tình trạng rò rỉ nước từ bên trong
Đèn báo hiển thị
Ngoài những tính năng nổi bật trên, máy nước nóng còn trang bị đèn báo hiển thị nước nóng sẵn sàng, cho phép bạn dễ dàng biết được đã có máy nước nóng để sử dụng hay chưa vô cùng tiện lợi.
]]>https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-lux-2-5-fe-4-190-000-vnd/feed/0Máy nước nóng Ariston SMC45PE-VN – 3.890.000 VNĐ
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-smc45pe-vn-3-890-000-vnd/
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-smc45pe-vn-3-890-000-vnd/#respondWed, 23 Dec 2020 10:52:36 +0000https://chotroitrenmang.com/?post_type=product&p=2348ƯU ĐÃI CHỈ CÓ TẠI NGUYỄN KIM
Đón Giáng Sinh - Mua online nhập mã NKXMAS giảm thêm đến 1.250.000đ tới ngày 27/12.
Tặng Phiếu mua hàng 200.000đ hoặc Giảm ngay 200.000đ.
Tặng Khăn tắm Everon.
Giảm thêm 500.000đ khi thanh toán bằng thẻ tín dụng quốc tế TPBank.
Đặc điểm nổi bật:
Hệ thống chóng bỏng thông minh, đảm bảo an toàn
Tích hợp bơm trợ lực cho khu vực có áp lực nước thấp
Cầu dao chống giật lưỡng cực ELCB, an toàn khi sử dụng
Vòi sen 5 chức năng tiện lợi, massage da nhẹ nhàng
Công suất 4500W cho nguồn nước nóng nhanh chóng
Giá tham khảo: 3.890.000 VNĐ.
]]>
Thông số kỹ thuật Máy nước nóng Ariston SMC45PE-VN
Đặc điểm sản phẩm
Model:
SMC45PE
Màu sắc:
Trắng
Nhà sản xuất:
Ariston
Xuất xứ:
Việt Nam
Thời gian bảo hành:
24 tháng
Địa điểm bảo hành:
Nguyễn Kim
Loại máy:
Trực tiếp
Bơm trợ lực:
Có
Công suất máy nước nóng:
4500 W
Nút điều khiển:
Nhiệt độ
Chế độ an toàn:
Chống giật & Chống bỏng
Tương thích điện từ EMC:
Có
Kích thước thùng:
386x230x76 mm
Khối lượng thùng (kg):
2.00 kg
Tích hợp bơm trợ lực tiện lợi cho khu vực áp lực nước yếu
Bên cạnh đó, chiếc máy nước nóng Ariston này sử dụng cơ chế làm nóng trực tiếp. Chính vì vậy bạn sẽ được tận hưởng dòng nước ấm nóng thư giãn gần như ngay lập tức sau khi bật máy mà không phải tốn nhiều thời gian để chờ đợi lâu.
Với trang bị cầu giao ELCB, chiếc máy nước nóng trực tiếp Ariston đem lại cho bạn sự yên tâm trông quá trình sử dụng nhờ khả năng tự động ngắt điện khi phát hiện sự cố. Bảo vệ an toàn về điện tuyệt đối cho gia đình.
Với tương thích điện từ EMC, bạn có thể thoải mái sử dụng máy nước nóng Ariston SMC45PE-VN mà không phải lo lắng máy gây nhiễu điện từ, ảnh hưởng đến các thiết bị điện tử (tivi, radio, máy đo huyết áp,…) trong gia đình.
Vòi sen tùy chỉnh 5 chế độ phun
Vòi sen gồm 5 kiểu phun khác nhau: Phun mạnh, phun rộng, phun massage, phun mưa và phun sương. Mang lại những phút giây thư giãn lý tưởng nhất cho người sử dụng khi tắm với nước nóng.
Bộ ổn định nhiệt kép giúp tránh xa nguy cơ gây bỏng rát, phồng rộp làn da do nước quá nóng
Đây là một trong những sản phẩm thuộc dòng máy nước nóng cao cấp của Ariston nên chất lượng hoàn thiện, độ bền cũng như độ an toàn khi sử dụng luôn đạt chuẩn cao nhất. Máy có bơm trợ lực có thể hỗ trợ tốt khi lắp đặt ở khu vực nước yếu. Máy nhỏ gọn, dễ sử dụng, phù hợp với các gia đình ở khu vực có khí hậu vào mùa lạnh vẫn trên 20 độ C.
]]>https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-smc45pe-vn-3-890-000-vnd/feed/0Máy Nước Nóng Ariston AN2 30 RS 2.5 FE- MT – 3.790.000 VNĐ
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-rs-2-5-fe-mt-3-790-000-vnd/
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-rs-2-5-fe-mt-3-790-000-vnd/#respondWed, 23 Dec 2020 10:45:15 +0000https://chotroitrenmang.com/?post_type=product&p=2336ƯU ĐÃI CHỈ CÓ TẠI NGUYỄN KIM
Đón Giáng Sinh - Mua online nhập mã NKXMAS giảm thêm đến 1.250.000đ tới ngày 27/12.
Tặng Phiếu mua hàng 200.000đ hoặc Giảm ngay 200.000đ.
Giảm thêm 500.000đ khi thanh toán bằng thẻ tín dụng quốc tế TPBank.
Đặc điểm nổi bật:
Cơ chế làm nóng gián tiếp, thích hợp với khu vực khí hậu lạnh
Thiết kế nhỏ gọn hiện đại giúp nâng tầm, tiết kiệm không gian
Đèn báo hiển thị dễ dàng giúp dễ dàng biết đã có nước nóng
Dễ dàng điều chỉnh nhiệt độ, nhiệt độ tối đa lên đến 80 độ C
Dung tích lớn 30 lít, đun 1 lần sử dụng được cho nhiều người
Công nghệ tạo Ion Bạc kháng khuẩn nước, an toàn cho da
Lòng bình tráng men titan hạn chế bám bẩn, tăng độ bền
Cầu dao hống rò điện ELCB an toàn cho người sử dụng
Giá tham khảo: 3.390.000 VNĐ.
]]>
Thông số kỹ thuật Máy Nước Nóng Ariston AN2 30 RS 2.5 FE- MT
Đặc điểm sản phẩm
Model:
AN2 30 RS 2.5 FE- MT
Nhà sản xuất:
Ariston
Xuất xứ:
Việt Nam
Thời gian bảo hành:
84 tháng
Địa điểm bảo hành:
Nguyễn Kim
Loại máy:
Gián tiếp
Dung tích:
30 lít
Công suất máy nước nóng:
2500 W
Nhiệt độ:
80°C
Thời gian làm nóng:
20 phút
Chế độ an toàn:
Bộ ổn định nhiệt TBST với vỏ chống thấm nước IPX1
Kích thước sản phẩm:
470 x 450 x 400 mm
Máy nước nóng Ariston AN2 30 RS 2.5 FE- MT sở hữu thiết kế sang trọng, nổi bật
Máy nước nóng Ariston AN2 30RS 2.5 FE – MT có thiết kế trang nhã, hình hộp vuông nhỏ gọn không chỉ giúp tô điểm hiện đại cho không gian phòng tắm mà còn tiết kiệm không gian. Máy nước nóng được trang bị đèn báo hiển thị sẵn sàng cho bạn dễ dàng biết được đã có nước nóng để sử dụng.
Máy nước nóng Ariston làm nóng gián tiếp
Với cơ chế làm nóng gián tiếp, chiếc bình máy nước nóng Ariston này sẽ giúp làm nóng nước hiệu quả ở những khu vực có khí hậu lạnh đặc trưng như miền Bắc nước ta. Nhờ cơ chế này bạn sẽ không phải lo lắng nước không kịp làm nóng hoặc có thể bị đóng băng khi nhiệt độ ngoài trời quá lạnh nữa.
Điều chỉnh nhiệt độ dễ dàng
Máy nước nóng Ariston AN2 30 RS 2.5 FE – MT là dạng bình nóng lạnh gián tiếp, với thiết kế thanh lịch, gam màu đơn giản. Với nhiệt độ tối đa lên đến 80 độ C, phù hợp để lắp đặt ở nơi nhiệt độ thấp..
Máy nước nóng có dung tích lớn
Máy nước nóng Ariston có bình chứa với dung tích 30 lít, lựa chọn lý tưởng cho gia đình ít người. Đun nóng nước 1 lần và sử dụng được nhiều lần nên sẽ tiết kiệm tối đa điện năng cho gia đình bạn. Ngoài ra, lớp vỏ chống thấm nước chuẩn IPX1 giúp thiết bị này luôn sống mãi với thời gian.
Hệ thống tạo Ion Bạc
Máy nước nóng của Ariston có hệ thống tạo ion bạc giúp nước thêm sạch khuẩn, đảm bảo an toàn tuyệt đối cho những làn da nhạy cảm. Ngoài ra máy còn có nhiều tính năng hiện đại khác được thiết kế nhằm giúp người dùng dễ tiếp cận.
Lòng bình bền bỉ
Máy nước nóng Ariston AN2 30 RS 2.5 FE – MT có lớp cách nhiệt mật độ cao kết hợp với thiết kế tráng men Titan của lòng bình hạn chế bám nhiều cặn bẩn, ảnh hưởng đến chất lượng nước, tăng độ bền.
An toàn khi sử dụng
Máy nước nóng bảo vệ an toàn người dùng với cầu dao chống rò điện ELCB. Bên cạnh đó hệ thống kiểm soát nhiệt độ TBSE sẽ tự động ngắt chức năng làm nóng khi nhiệt độ đạt mức yêu cầu, ngăn gây bỏng khi sử dụng.
]]>https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-rs-2-5-fe-mt-3-790-000-vnd/feed/0Máy nước nóng Ariston AN2 15 LUX 2.5 FE-MT – 3.690.000 VNĐ
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-15-lux-2-5-fe-mt-3-690-000-vnd/
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-15-lux-2-5-fe-mt-3-690-000-vnd/#respondWed, 23 Dec 2020 10:37:34 +0000https://chotroitrenmang.com/?post_type=product&p=2325ƯU ĐÃI CHỈ CÓ TẠI NGUYỄN KIM
Đón Giáng Sinh - Mua online nhập mã NKXMAS giảm thêm đến 1.250.000đ tới ngày 27/12.
Tặng Phiếu mua hàng 200.000đ hoặc Giảm ngay 200.000đ.
Giảm thêm 500.000đ khi thanh toán bằng thẻ tín dụng quốc tế TPBank.
Đặc điểm nổi bật:
Cơ chế làm nóng gián tiếp phù hợp với nơi có khí hậu lạnh
Đèn báo hiển thị dễ dàng giúp dễ dàng biết đã có nước nóng
Dễ dàng điều chỉnh nhiệt độ, nhiệt độ tối đa lên đến 80 độ C
Công nghệ tạo Ion Bạc kháng khuẩn nước, an toàn cho da
Lòng bình tráng men titan hạn chế bám bẩn, tăng độ bền
Cầu dao chống rò điện ELCB an toàn cho người sử dụng
Giá tham khảo: 3.690.000 VNĐ.
]]>
Thông số kỹ thuật Máy nước nóng Ariston AN2 15 LUX 2.5 FE-MT
Đặc điểm sản phẩm
Model:
AN2 15 LUX 2.5 FE – MT
Nhà sản xuất:
Ariston
Xuất xứ:
Việt Nam
Thời gian bảo hành:
120 tháng
Địa điểm bảo hành:
Nguyễn Kim
Loại máy:
Gián tiếp
Dung tích:
15 lít
Công suất máy nước nóng:
2500 W
Nhiệt độ:
80°C
Thời gian làm nóng:
20 phút
Chế độ an toàn:
Có
Màn hình hiển thị:
Có
Tiện lợi với thiết kế nhỏ gọn, đèn báo hiệu nước nóng sẵn sàng
Bình nóng lạnh Ariston 15 lít AN2 15 LUX 2.5 FE có thiết kế nhỏ gọn, thuận tiện để lắp đặt ở bất kì vị trí nào trong phòng tắm. Bên cạnh đó, bình tắm nóng lạnh còn được trang bị đèn báo hiệu nước nóng sẵn sàng, nhờ vậy bạn có thể dễ dàng biết được nước đã nóng để sử dụng hay chưa.
Bình nóng lạnh gián tiếp với bình chứa 15 lít phù hợp cho nhà 2 người
Chiếc bình nóng lạnh 15 lít sẽ phù hợp với nhà có 2 thành viên hoặc người sống độc thân có nhu cầu sử dụng nhiều nước nóng mà không muốn phải tốn nhiều điện năng để đun nóng nước nhiều lần.
Thích hợp dùng ở nhưng khu vực có khí hậu lạnh
Sử dụng cơ chế làm nóng gián tiếp, máy phù hợp với những khu vực có khí hậu lạnh như miền bắc nước ta, vào mùa đông nhiệt độ giảm xuống 20 độ C vẫn có thể sử dụng được.
Với cầu dao ELCB, bình tắm nóng lạnh Ariston sẽ tự động ngắt mạch điện hoạt động, khi phát hiện ra sự cố rò rỉ điện, giúp cho bạn được bảo vệ an toàn khỏi các mối nguy hại do điện gây ra.
Một trong những điểm cộng của máy nước nóng gián tiếp Ariston này đó chính là trang bị hệ thống kiểm soát nhiệt độ TBSE có khả năng tự ngắt chức năng làm nóng khi nhiệt độ nước đạt mức yêu cầu. Nhờ vậy bạn có thể đắm mình trong dòng nước ấm nóng thư giãn với nhiệt độ lý tưởng nhất mà không lo làn da bị bỏng rát.
Lọc sạch tác nhân gây dị ứng, vi khuẩn gây hại có trong nước với hệ thống tạo Ion bạc hiện đại
Màn hình hiển thị nhiệt độ theo mốc, giúp người dùng dễ dàng theo dõi nhiệt độ nước nóng phù hợp cho làn da
Tăng cường thêm sự chắc chắn từ bên trong nhờ lớp men Titan siêu bền
]]>https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-15-lux-2-5-fe-mt-3-690-000-vnd/feed/0Máy nước nóng Ariston RT45E-VN – 3.690.000 VNĐ
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-rt45e-vn-3-690-000-vnd/
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-rt45e-vn-3-690-000-vnd/#respondWed, 23 Dec 2020 10:28:36 +0000https://chotroitrenmang.com/?post_type=product&p=2312ƯU ĐÃI CHỈ CÓ TẠI NGUYỄN KIM
Đón Giáng Sinh - Mua online nhập mã NKXMAS giảm thêm đến 1.250.000đ tới ngày 27/12.
Tặng Phiếu mua hàng 200.000đ hoặc Giảm ngay 200.000đ.
Tặng Khăn tắm Everon.
Giảm thêm 500.000đ khi thanh toán bằng thẻ tín dụng quốc tế TPBank.
Đặc điểm nổi bật:
Thiết kế nhỏ gọn tiết kiệm không gian, dễ dàng lắp đặt
Làm nóng trực tiếp cho nguồn nước nóng nhanh tức thì
Vỏ chống thấm nước IP25 bảo vệ linh kiện bên trong
Bơm trợ lực giúp máy hoạt động ổn định và bền hơn
Bảng hiển thị LED trực quan hiển thị nhiệt độ nước
Cầu giao chống rò điện ELCB an toàn khi sử dụng
Vòi sen 5 kiểu phun tiện lợi và massage nhẹ nhàng
Giá tham khảo: 3.690.000 VNĐ.
]]>
Thông số kỹ thuật Máy nước nóng Ariston RT45E-VN
Đặc điểm sản phẩm
Model:
RT45E
Màu sắc:
Xám
Nhà sản xuất:
Ariston
Xuất xứ:
Việt Nam
Thời gian bảo hành:
24 tháng
Địa điểm bảo hành:
Nguyễn Kim
Loại máy:
Trực tiếp
Bơm trợ lực:
Không
Công suất máy nước nóng:
4500 W
Nút điều khiển:
Cảm ứng
Chế độ an toàn:
Chống giật & Chống bỏng
Màn hình hiển thị:
Có
Tương thích điện từ EMC:
Có
Kích thước thùng:
350x350x80 mm
Khối lượng thùng (kg):
2.00 kg
Máy nước nóng dạng tròn mới lạ, phá cách
Máy nước nóng Ariston RT45E-VN – 4.5 kW có thiết kế dạng tròn mới lạ, phá cách, đi cùng màn hình hiển thị nhiệt độ và màn hình điều chỉnh cảm ứng hiện đại hứa hẹn làm hài lòng bất kì vị gia chủ khó tính nào.
Cơ chế làm nóng trực tiếp giúp nước nóng gần như ngay lập tức mà không cần chờ đợi lâu
Giờ đây với máy nước nóng Ariston RT45E-VN sử dụng cơ chế làm nóng trực tiếp giúp nước được làm nóng gần như ngay lập tức, bạn sẽ không còn phải chờ đợi lâu để được đắm mình trong dòng nước nóng thư giãn nữa.
Đặt tiêu chí an toàn của người sử dụng lên hàng đầu, máy nước nóng trực tiếp Ariston với cầu dao ELCB sẽ ngay lập tức ngắt điện nếu phát hiện sự cố rò rỉ, bảo vệ an toàn tuyệt đối cho bạn khỏi nguy cơ bị điện giật vô cùng nguy hiểm.
Không còn tình trạng nhiễu sóng điện từ khi sử dụng máy nước nóng nhờ tương thích điện từ EMC
Vòi sen 5 chế độ phun của vòi sen mang lại sự tiện lợi,
Đi kèm với vòi sen 5 kiểu phun khác nhau (phun mạnh, phun rộng, phun massage, phun mưa và phun sương), người dùng có thể thoải mái lựa chọn kiểu phun yêu thích để tận hưởng cảm giác dễ chịu và thư giãn khi tắm với nước nóng.
Dựa vào bộ ổn định nhiệt kép thông minh có thể ngắt tính năng làm nóng khi phát hiện nhiệt độ nước quá cao, máy nước nóng Ariston RT45E-VN sẽ bảo vệ cho làn da của bạn không bị phồng rộp hay ửng đỏ gây đau rát, khó chịu.
Tính năng ghi nhớ các chế độ yêu thích cho phép bạn chỉ cần cài đặt nhiệt độ một lần
Với tính năng ghi nhớ các chế độ yêu thích, khi sử dụng chiếc máy nước nóng này, bạn chỉ việc thao tác cài đặt nhiệt độ một lần. Những lần sử dụng tiếp theo, bạn chỉ cần chọn 1 nút nhấn tương ứng là đã có thể sử dụng nước nóng với nhiệt độ yêu thích mà không phải tốn nhiều thời gian để chỉnh máy nữa.
]]>https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-rt45e-vn-3-690-000-vnd/feed/0Máy Nước Nóng Ariston AN2 30 R 2.5 FE – MT – 3.590.000 VNĐ
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-r-2-5-fe-mt-3-590-000-vnd/
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-r-2-5-fe-mt-3-590-000-vnd/#respondWed, 23 Dec 2020 10:14:23 +0000https://chotroitrenmang.com/?post_type=product&p=2309ƯU ĐÃI CHỈ CÓ TẠI NGUYỄN KIM
Đón Giáng Sinh - Mua online nhập mã NKXMAS giảm thêm đến 1.250.000đ tới ngày 27/12.
Tặng Phiếu mua hàng 200.000đ hoặc Giảm ngay 200.000đ.
Giảm thêm 500.000đ khi thanh toán bằng thẻ tín dụng quốc tế TPBank.
Đặc điểm nổi bật:
Làm nóng gián tiếp, phù hợp những nơi có nhiệt độ thấp
Máy tự ngắt chức năng làm nóng khi nhiệt độ nước vượt mức
Hệ thống an toàn tích hợp ELCB và bộ ổn định nhiệt TBST
Thanh đốt bằng đồng kháng khuẩn cao, mang lại nước sạch
Bình chứa tráng men Titan hạn chế bám cặn bẩn, chống rò rỉ
Lớp vỏ ngoài chống thấm nước đạt chuẩn IPX1
Giá tham khảo: 3.590.000 VNĐ.
]]>
Thông số kỹ thuật Máy Nước Nóng Ariston AN2 30 R 2.5 FE – MT
Đặc điểm sản phẩm
Model:
AN2 30 R 2.5 FE – MT
Nhà sản xuất:
Ariston
Xuất xứ:
Việt Nam
Thời gian bảo hành:
84 tháng
Địa điểm bảo hành:
Nguyễn Kim
Loại máy:
Gián tiếp
Dung tích:
30 lít
Công suất máy nước nóng:
2500 W
Nhiệt độ:
80°C
Thời gian làm nóng:
20 phút
Chế độ an toàn:
Bộ ổn định nhiệt TBST với vỏ chống thấm nước IPX1
Khối lượng sản phẩm (kg):
13 kg
Kích thước sản phẩm:
470 x 450 x 400 mm
Thiết kế sang trọng, nổi bật
Máy nước nóng Ariston AN2 30R 2.5 FE – MT sở hữu thiết kế trang nhã, hình hộp vuông nhỏ gọn. Máy nước nóng Ariston trang bị đèn báo hiển thị để dễ dàng biết được độ nóng của nước đã có thể sử dụng được hay chưa.
Máy nước nóng Ariston làm nóng gián tiếp
Chiếc bình máy nước nóng Ariston này sẽ giúp làm nóng nước hiệu quả ở những khu vực có khí hậu lạnh đặc trưng như miền Bắc nước ta nhờ vào cơ chế làm nóng gián tiếp. Nhờ cơ chế này bạn sẽ không phải lo lắng nước không kịp làm nóng hoặc có thể bị đóng băng khi nhiệt độ ngoài trời quá lạnh nữa.
Điều chỉnh nhiệt độ dễ dàng
Máy nước nóng Ariston AN2 30 R 2.5 FE – MT là dạng bình nóng lạnh gián tiếp, với thiết kế thanh lịch, gam màu đơn giản. Với nhiệt độ tối đa lên đến 80 độ C, phù hợp để lắp đặt ở nơi nhiệt độ thấp..
Bình chứa lớn
Máy nước nóng Ariston có bình chứa với dung tích 30 lít, lựa chọn lý tưởng cho gia đình ít người. Đun nóng nước 1 lần và sử dụng được nhiều lần nên sẽ tiết kiệm tối đa điện năng cho gia đình bạn.
Công nghệ hiện đại
Máy nước nóng 30 lít của Ariston có hệ thống tạo ion bạc giúp làn nước thêm sạch khuẩn, đảm bảo an toàn tuyệt đối cho những làn da nhạy cảm.
Lòng bình bền bỉ
Máy nước nóng Ariston AN2 30 R 2.5 FE – MT có lớp cách nhiệt mật độ cao kết hợp với thiết kế tráng men Titan của lòng bình hạn chế bám nhiều cặn bẩn, ảnh hưởng đến chất lượng nước, tăng độ bền.
An toàn khi sử dụng
Máy nước nóng bảo vệ an toàn người dùng với cầu dao chống rò điện ELCB. Hệ thống kiểm soát nhiệt độ TBSE tự động ngắt chức năng làm nóng khi nhiệt độ đạt mức yêu cầu, ngăn gây bỏng khi sử dụng.
]]>https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-an2-30-r-2-5-fe-mt-3-590-000-vnd/feed/0Máy nước nóng Ariston SM45PE-VN – 3.390.000 VNĐ
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-sm45pe-vn-3-390-000-vnd/
https://chotroitrenmang.com/mua/may-nuoc-nong-ariston-sm45pe-vn-3-390-000-vnd/#respondWed, 23 Dec 2020 10:08:41 +0000https://chotroitrenmang.com/?post_type=product&p=2302ƯU ĐÃI CHỈ CÓ TẠI NGUYỄN KIM
Đón Giáng Sinh - Mua online nhập mã NKXMAS giảm thêm đến 1.250.000đ tới ngày 27/12.
Tặng Khăn tắm Everon.
Giảm thêm 500.000đ khi thanh toán bằng thẻ tín dụng quốc tế TPBank.
Đặc điểm nổi bật:
Làm nóng trực tiếp nên máy sẽ làm nóng nhanh chóng
Hệ thống chống giật điện ELCB an toàn cho người sử dụng
Vỏ máy theo chuẩn IP25 chống nước và bụi bẩn hiệu quả
Bơm trợ lực hỗ trợ những nơi có nguồn nước yếu
Tự điều chỉnh lượng nước đảm bảo máy luôn đủ nước
Giá tham khảo: 3.390.000 VNĐ.
]]>
Thông số kỹ thuật Máy nước nóng Ariston SM45PE-VN
Đặc điểm sản phẩm
Model:
SM45PE
Màu sắc:
Trắng
Nhà sản xuất:
Ariston
Xuất xứ:
Việt Nam
Thời gian bảo hành:
24 tháng
Địa điểm bảo hành:
Nguyễn Kim
Loại máy:
Trực tiếp
Bơm trợ lực:
Có
Công suất máy nước nóng:
4500 W
Nút điều khiển:
Nhiệt độ
Chế độ an toàn:
Chống giật & Chống bỏng
Tương thích điện từ EMC:
Có
Kích thước thùng:
386x230x76 mm
Khối lượng thùng (kg):
2.00 kg
Kiểu dáng đơn giản, tinh tế, phù hợp cho mọi không gian phòng tắm
Máy nước nóng Ariston SM45PE-VN có kiểu dáng chữ nhật nhỏ gọn, kết hợp với sắc trắng tinh tế sẽ là sự lựa chọn phù hợp cho mọi kiểu không gian phòng tắm của gia đình bạn.
Hơn nữa chiếc máy nước nóng Ariston này còn được tích hợp bơm trợ lực – một trợ thủ đắc lực nếu bạn lắp đặt máy ở những khu vực có áp lực nước thấp, không ổn định.
Cơ chế làm nóng trực tiếp giúp nước nóng ngay lập tức, tiết kiệm thời gian
Chiếc máy nước nóng trực tiếp Ariston này có lớp vỏ được làm từ chất liệu chống thấm nước IP25, nhờ vậy bạn hoàn toàn yên tâm khi linh kiện bên trong máy không bị nước bám vào gây chập mạch, hư hỏng, góp phần nâng cao tuổi thọ cho máy tắm nước nóng.
Nếu như trước đây người tiêu dùng thường lo lắng về nguy cơ bị điện giật do rò rỉ khi tắm máy nước nóng thì giờ đây nỗi lo đó sẽ được xóa bỏ hoàn toàn với cầu dao ELCB. Cầu dao này có khả năng ngắt điện ngay lập tức khi phát hiện rò rỉ, bảo vệ an toàn về điện cho cả gia đình.
Bộ ổn định nhiệt kép bảo vệ an toàn cho làn da của bạn khỏi nguy cơ bị bỏng do nước quá nóng
Nếu như trước kia việc sử dụng máy nước nóng sẽ gây nhiễu sóng điện từ, làm gián đoạn chương trình tivi yêu thích của bạn hoặc làm sai lệch thông số của máy đo huyết áp, nhịp tim điện tử thì giờ đây, bạn có thể lựa chọn máy nước nóng Ariston SM45PE-VN đạt chuẩn tương thích điện từ EMC để loại bỏ nỗi lo trên.
Nhìn chung, máy nước nóng Ariston SM45PE-VN phù hợp lắp đặt ở các khu vực miền Nam và các khu vực có nước yếu do được tích hợp thêm bơm trợ lực. Nhưng cần lưu ý là lưu lượng nước vẫn phải đáp ứng được yêu cầu tối thiểu mà hãng đưa ra. Máy nhỏ gọn, dễ sử dụng thích hợp lắp đặt cho phòng tắm nhỏ.