/* * Plugin Name: APCu Object Cache * Description: APCu backend for the WP Object Cache. * Based on Plugin named APCu Object Cache Backend * Plugin URI: https://wordpress.org/plugins/apcu/ * Author: Pierre Schmitz * Author URI: https://pierre-schmitz.com/ * Plugin URI: https://wordpress.org/plugins/apcu/ * * * @Authors James Dugger, Jonathan Bardo * @copyright 2017 GoDaddy Inc. 14455 N. Hayden Road Scottsdale, Arizona */ $oc_logged_in = false; foreach ( $_COOKIE as $k => $v ) { if ( preg_match( '/^comment_author|wordpress_logged_in_[a-f0-9]+|woocommerce_items_in_cart|PHPSESSID_|edd_wp_session|edd_items_in_cartcc_cart_key|ccm_token/', $k ) ) { $oc_logged_in = true; break; } } $oc_blocked_page = ( defined( 'WP_ADMIN' ) || defined( 'DOING_AJAX' ) || defined( 'XMLRPC_REQUEST' ) || 'wp-login.php' === basename( $_SERVER['SCRIPT_FILENAME'] ) ); function wpaas_is_using_apcu() { return version_compare( PHP_VERSION, '5.6.0', '>=' ) && function_exists( 'apcu_fetch' ); } if ( 'cli' !== php_sapi_name() && ! $oc_logged_in && ! $oc_blocked_page && wpaas_is_using_apcu() ) : /** * Save the transients to the DB. The explanation is a bit too long * for code. The tl;dr of it is that we don't have a single 'fast cache' * source yet (like memcached) and so some long lived items like transients * are still best cached in the db and then brought back into APC * * @param string $transient * @param mixed $value * @param int $expire * @param boolean $site = false * * @return bool */ function wpaas_save_transient( $transient, $value, $expire, $site = false ) { global $wp_object_cache, $wpdb; // The 'special' transient option names $transient_timeout = ( $site ? '_site' : '' ) . '_transient_timeout_' . $transient; $transient = ( $site ? '_site' : '' ) . '_transient_' . $transient; // Cap expiration at 24 hours to avoid littering the DB if ( $expire == 0 ) { $expire = 24 * 60 * 60; } // Save to object cache $wp_object_cache->set( $transient, $value, 'options', $expire ); $wp_object_cache->set( $transient_timeout, time() + $expire, 'options', $expire ); // Update alloptions $alloptions = $wp_object_cache->get( 'alloptions', 'options' ); $alloptions[ $transient ] = $value; $alloptions[ $transient_timeout ] = time() + $expire; $wp_object_cache->set( 'alloptions', $alloptions, 'options' ); // Use the normal update option logic if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); if ( $site && is_multisite() ) { $wpdb->query( $wpdb->prepare( "INSERT INTO `{$wpdb->sitemeta}` ( `option_name`, `option_value`, `autoload` ) VALUES ( %s, UNIX_TIMESTAMP( NOW() ) + %d, 'yes' ) ON DUPLICATE KEY UPDATE `option_name` = VALUES ( `option_name` ), `option_value` = VALUES ( `option_value` ), `autoload` = VALUES ( `autoload` );", $transient_timeout, $expire ) ); $wpdb->query( $wpdb->prepare( "INSERT INTO `{$wpdb->sitemeta}` ( `option_name`, `option_value`, `autoload` ) VALUES ( %s, %s, 'no' ) ON DUPLICATE KEY UPDATE `option_name` = VALUES ( `option_name` ), `option_value` = VALUES ( `option_value` ), `autoload` = VALUES ( `autoload` );", $transient, maybe_serialize( $value ) ) ); } else { $wpdb->query( $wpdb->prepare( "INSERT INTO `{$wpdb->options}` (`option_name`, `option_value`, `autoload`) VALUES ( %s, UNIX_TIMESTAMP( NOW() ) + %d, 'yes' ) ON DUPLICATE KEY UPDATE `option_name` = VALUES ( `option_name` ), `option_value` = VALUES ( `option_value` ), `autoload` = VALUES ( `autoload` );", $transient_timeout, $expire ) ); $wpdb->query( $wpdb->prepare( "INSERT INTO `{$wpdb->options}` (`option_name`, `option_value`, `autoload`) VALUES ( %s, %s, 'no' ) ON DUPLICATE KEY UPDATE `option_name` = VALUES ( `option_name` ), `option_value` = VALUES ( `option_value` ), `autoload` = VALUES ( `autoload` );", $transient, maybe_serialize( $value ) ) ); } $wpdb->suppress_errors( $flag ); } return true; } function wpaas_prune_transients() { global $wpdb; if ( ! empty( $wpdb ) && $wpdb instanceof wpdb && function_exists( 'is_main_site' ) && function_exists( 'is_main_network' ) ) { $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); // Lifted straight from schema.php // Deletes all expired transients. // The multi-table delete syntax is used to delete the transient record from table a, // and the corresponding transient_timeout record from table b. $time = time(); $wpdb->query( "DELETE a, b FROM $wpdb->options a, $wpdb->options b WHERE a.option_name LIKE '\_transient\_%' AND a.option_name NOT LIKE '\_transient\_timeout\_%' AND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) ) AND b.option_value < $time" ); if ( is_main_site() && is_main_network() ) { $wpdb->query( "DELETE a, b FROM $wpdb->options a, $wpdb->options b WHERE a.option_name LIKE '\_site\_transient\_%' AND a.option_name NOT LIKE '\_site\_transient\_timeout\_%' AND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) ) AND b.option_value < $time" ); } $wpdb->suppress_errors( $flag ); } } /** * If another cache was flushed or updated, sync across all servers / processes using * the database as the authority. This uses the database as the authority for timestamps * as well to avoid drift between servers. * @return void */ function wpaas_init_sync_cache() { global $wpdb; if ( empty( $wpdb ) || ! ( $wpdb instanceof wpdb ) ) { return; } $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $result = $wpdb->get_results( "SELECT option_name, option_value FROM `{$wpdb->options}` WHERE option_name = 'gd_system_last_cache_flush' UNION SELECT 'current_time', UNIX_TIMESTAMP( NOW() ) AS option_value;", ARRAY_A ); $wpdb->suppress_errors( $flag ); if ( empty( $result ) ) { return; } $master_flush = false; foreach ( $result as $row ) { switch ( $row['option_name'] ) { case 'current_time' : $current_time = $row['option_value']; break; case 'gd_system_last_cache_flush' : $master_flush = $row['option_value']; break; } } $local_flush = wp_cache_get( 'gd_system_last_cache_flush' ); if ( false === $local_flush || $local_flush < $master_flush ) { wp_cache_flush( true ); wp_cache_set( 'gd_system_last_cache_flush', $current_time ); } } /** * Start default implementation of object cache */ if ( ! defined( 'WP_APC_KEY_SALT' ) ) { define( 'WP_APC_KEY_SALT', '' ); } function wp_cache_add( $key, $data, $group = '', $expire = 0 ) { global $wp_object_cache; if ( 'transient' == $group ) { wpaas_save_transient( $key, $data, $expire ); return $wp_object_cache->add( "_transient_$key", $data, 'options', $expire ); } elseif ( 'site-transient' == $group ) { wpaas_save_transient( $key, $data, $expire, true ); return $wp_object_cache->add( "_site_transient_$key", $data, 'site-options', $expire ); } else { return $wp_object_cache->add( $key, $data, $group, $expire ); } } function wp_cache_incr( $key, $n = 1, $group = '' ) { global $wp_object_cache; return $wp_object_cache->incr2( $key, $n, $group ); } function wp_cache_decr( $key, $n = 1, $group = '' ) { global $wp_object_cache; return $wp_object_cache->decr( $key, $n, $group ); } function wp_cache_close() { return true; } function wp_cache_delete( $key, $group = '' ) { global $wp_object_cache, $wpdb; if ( 'transient' == $group ) { if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $wpdb->query( $wpdb->prepare( "DELETE FROM `{$wpdb->prefix}options` WHERE option_name IN ( %s, %s );", "_transient_{$key}", "_transient_timeout_{$key}" ) ); $wpdb->suppress_errors( $flag ); } $wp_object_cache->delete( "_transient_timeout_$key", 'options' ); // Update alloptions $alloptions = $wp_object_cache->get( 'alloptions', 'options' ); unset( $alloptions["_transient_$key"] ); unset( $alloptions["_transient_timeout_$key"] ); $wp_object_cache->set( 'alloptions', $alloptions, 'options' ); return $wp_object_cache->delete( "_transient_$key", 'options' ); } elseif ( 'site-transient' == $group ) { if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $table = $wpdb->options; if ( is_multisite() ) { $table = $wpdb->sitemeta; } $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $wpdb->query( $wpdb->prepare( "DELETE FROM `{$table}` WHERE option_name IN ( %s, %s );", "_transient_{$key}", "_transient_timeout_{$key}" ) ); $wpdb->suppress_errors( $flag ); } $wp_object_cache->delete( "_transient_timeout_$key", 'site-options' ); // Update alloptions $alloptions = $wp_object_cache->get( 'alloptions', 'options' ); unset( $alloptions["_site_transient_$key"] ); unset( $alloptions["_site_transient_timeout_$key"] ); $wp_object_cache->set( 'alloptions', $alloptions, 'options' ); return $wp_object_cache->delete( "_site_transient_$key", 'site-options' ); } return $wp_object_cache->delete( $key, $group ); } function wp_cache_flush( $local_flush = false ) { global $wp_object_cache, $wpdb; if ( ! $local_flush ) { if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $wpdb->query( "INSERT INTO `{$wpdb->options}` (`option_name`, `option_value`, `autoload`) VALUES ( 'gd_system_last_cache_flush', UNIX_TIMESTAMP( NOW() ), 'no' ) ON DUPLICATE KEY UPDATE `option_name` = VALUES ( `option_name` ), `option_value` = VALUES ( `option_value` ), `autoload` = VALUES ( `autoload` );" ); $wpdb->suppress_errors( $flag ); } } return $wp_object_cache->flush(); } function wp_cache_get( $key, $group = '', $force = false ) { global $wp_object_cache, $wpdb; if ( 'transient' == $group ) { $alloptions = $wp_object_cache->get( 'alloptions', 'options' ); if ( isset( $alloptions["_transient_$key"] ) && isset( $alloptions["_transient_timeout_$key"] ) && $alloptions["_transient_timeout_$key"] > time() ) { return maybe_unserialize( $alloptions["_transient_$key"] ); } $transient = $wp_object_cache->get( "_transient_$key", 'options', $force ); $timeout = $wp_object_cache->get( "_transient_timeout_$key", 'options', $force ); if ( false !== $transient && ! empty( $timeout ) && $timeout > time() ) { return maybe_unserialize( $transient ); } if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $result = $wpdb->get_results( $wpdb->prepare( "SELECT option_name, option_value FROM `{$wpdb->options}` WHERE option_name IN ( %s, %s ) UNION SELECT 'current_time', UNIX_TIMESTAMP( NOW() ) AS option_value;", "_transient_{$key}", "_transient_timeout_{$key}" ), ARRAY_A ); $wpdb->suppress_errors( $flag ); if ( ! empty( $result ) ) { $transient = false; $timeout = false; $current_time = time(); foreach ( $result as $row ) { switch ( $row['option_name'] ) { case "_transient_$key" : $transient = $row['option_value']; break; case "_transient_timeout_$key" : $timeout = $row['option_value']; break; case 'current_time' : $current_time = $row['option_value']; break; } } if ( false !== $transient && ! empty( $timeout ) && $timeout > $current_time ) { return maybe_unserialize( $transient ); } } } return false; } elseif ( 'site-transient' == $group ) { $transient = $wp_object_cache->get( "_site_transient_$key", 'options', $force ); $timeout = $wp_object_cache->get( "_site_transient_timeout_$key", 'options', $force ); if ( false !== $transient && ! empty( $timeout ) && $timeout > time() ) { return maybe_unserialize( $transient ); } if ( ! empty( $wpdb ) && $wpdb instanceof wpdb ) { $table = $wpdb->options; if ( is_multisite() ) { $table = $wpdb->sitemeta; } $flag = $wpdb->suppress_errors; $wpdb->suppress_errors( true ); $result = $wpdb->get_results( $wpdb->prepare( "SELECT option_name, option_value FROM `{$table}` WHERE option_name IN ( %s, %s ) UNION SELECT 'current_time', UNIX_TIMESTAMP( NOW() ) AS option_value;", "_site_transient_{$key}", "_site_transient_timeout_{$key}" ), ARRAY_A ); $wpdb->suppress_errors( $flag ); if ( ! empty( $result ) ) { $transient = false; $timeout = false; $current_time = time(); foreach ( $result as $row ) { switch ( $row['option_name'] ) { case "_site_transient_$key" : $transient = $row['option_value']; break; case "_site_transient_timeout_$key" : $timeout = $row['option_value']; break; case 'current_time' : $current_time = $row['option_value']; break; } } if ( false !== $transient && ! empty( $timeout ) && $timeout > $current_time ) { return maybe_unserialize( $transient ); } } } return false; } else { return $wp_object_cache->get( $key, $group, $force ); } } function wp_cache_init() { global $wp_object_cache; if ( mt_rand( 1, 100 ) == 42 ) { wpaas_prune_transients(); } add_action( 'muplugins_loaded', 'wpaas_init_sync_cache' ); $wp_object_cache = new APCu_Object_Cache(); } function wp_cache_replace( $key, $data, $group = '', $expire = 0 ) { global $wp_object_cache; return $wp_object_cache->replace( $key, $data, $group, $expire ); } function wp_cache_set( $key, $data, $group = '', $expire = 0 ) { global $wp_object_cache; if ( defined( 'WP_INSTALLING' ) == false ) { if ( 'transient' == $group ) { return wpaas_save_transient( $key, $data, $expire ); } elseif ( 'site-transient' == $group ) { return wpaas_save_transient( $key, $data, $expire, true ); } else { return $wp_object_cache->set( $key, $data, $group, $expire ); } } else { return $wp_object_cache->delete( $key, $group ); } } function wp_cache_switch_to_blog( $blog_id ) { global $wp_object_cache; return $wp_object_cache->switch_to_blog( $blog_id ); } function wp_cache_add_global_groups( $groups ) { global $wp_object_cache; $wp_object_cache->add_global_groups( $groups ); } function wp_cache_add_non_persistent_groups( $groups ) { global $wp_object_cache; $wp_object_cache->add_non_persistent_groups( $groups ); } class GD_APCu_Object_Cache { private $prefix = ''; private $local_cache = array(); private $global_groups = array(); private $non_persistent_groups = array(); private $multisite = false; private $blog_prefix = ''; public function __construct() { global $table_prefix; $this->multisite = is_multisite(); $this->blog_prefix = $this->multisite ? get_current_blog_id() . ':' : ''; $this->prefix = DB_HOST . '.' . DB_NAME . '.' . $table_prefix; } private function get_group( $group ) { return empty( $group ) ? 'default' : $group; } private function get_key( $group, $key ) { if ( $this->multisite && ! isset( $this->global_groups[ $group ] ) ) { return $this->prefix . '.' . $group . '.' . $this->blog_prefix . ':' . $key; } else { return $this->prefix . '.' . $group . '.' . $key; } } public function add( $key, $data, $group = 'default', $expire = 0 ) { $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( function_exists( 'wp_suspend_cache_addition' ) && wp_suspend_cache_addition() ) { return false; } if ( isset( $this->local_cache[ $group ][ $key ] ) ) { return false; } // FIXME: Somehow apcu_add does not return false if key already exists if ( ! isset( $this->non_persistent_groups[ $group ] ) && apcu_exists( $key ) ) { return false; } if ( is_object( $data ) ) { $this->local_cache[ $group ][ $key ] = clone $data; } else { $this->local_cache[ $group ][ $key ] = $data; } if ( ! isset( $this->non_persistent_groups[ $group ] ) ) { return apcu_add( $key, $data, (int) $expire ); } return true; } public function add_global_groups( $groups ) { if ( is_array( $groups ) ) { foreach ( $groups as $group ) { $this->global_groups[ $group ] = true; } } else { $this->global_groups[ $groups ] = true; } } public function add_non_persistent_groups( $groups ) { if ( is_array( $groups ) ) { foreach ( $groups as $group ) { $this->non_persistent_groups[ $group ] = true; } } else { $this->non_persistent_groups[ $groups ] = true; } } public function decr( $key, $offset = 1, $group = 'default' ) { if ( $offset < 0 ) { return $this->incr( $key, abs( $offset ), $group ); } $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( isset( $this->local_cache[ $group ][ $key ] ) && $this->local_cache[ $group ][ $key ] - $offset >= 0 ) { $this->local_cache[ $group ][ $key ] -= $offset; } else { $this->local_cache[ $group ][ $key ] = 0; } if ( isset( $this->non_persistent_groups[ $group ] ) ) { return $this->local_cache[ $group ][ $key ]; } else { $value = apcu_dec( $key, $offset ); if ( $value < 0 ) { apcu_store( $key, 0 ); return 0; } return $value; } } public function delete( $key, $group = 'default', $force = false ) { $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); unset( $this->local_cache[ $group ][ $key ] ); if ( ! isset( $this->non_persistent_groups[ $group ] ) ) { return apcu_delete( $key ); } return true; } public function flush() { $this->local_cache = array(); // TODO: only clear our own entries apcu_clear_cache(); return true; } public function get( $key, $group = 'default', $force = false, &$found = null ) { $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( ! $force && isset( $this->local_cache[ $group ][ $key ] ) ) { $found = true; if ( is_object( $this->local_cache[ $group ][ $key ] ) ) { return clone $this->local_cache[ $group ][ $key ]; } else { return $this->local_cache[ $group ][ $key ]; } } elseif ( isset( $this->non_persistent_groups[ $group ] ) ) { $found = false; return false; } else { $value = @apcu_fetch( $key, $found ); if ( $found ) { if ( $force ) { $this->local_cache[ $group ][ $key ] = $value; } return $value; } else { return false; } } } public function incr2( $key, $offset = 1, $group = 'default' ) { if ( $offset < 0 ) { return $this->decr( $key, abs( $offset ), $group ); } $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( isset( $this->local_cache[ $group ][ $key ] ) && $this->local_cache[ $group ][ $key ] + $offset >= 0 ) { $this->local_cache[ $group ][ $key ] += $offset; } else { $this->local_cache[ $group ][ $key ] = 0; } if ( isset( $this->non_persistent_groups[ $group ] ) ) { return $this->local_cache[ $group ][ $key ]; } else if ( function_exists( 'apcu_inc' ) ) { $value = apcu_inc( $key, $offset ); if ( $value < 0 ) { apcu_store( $key, 0 ); return 0; } return $value; } return false; } public function replace( $key, $data, $group = 'default', $expire = 0 ) { $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( isset( $this->non_persistent_groups[ $group ] ) ) { if ( ! isset( $this->local_cache[ $group ][ $key ] ) ) { return false; } } else { if ( ! isset( $this->local_cache[ $group ][ $key ] ) && ! apcu_exists( $key ) ) { return false; } apcu_store( $key, $data, (int) $expire ); } if ( is_object( $data ) ) { $this->local_cache[ $group ][ $key ] = clone $data; } else { $this->local_cache[ $group ][ $key ] = $data; } return true; } public function reset() { // This function is deprecated as of WordPress 3.5 // Be safe and flush the cache if this function is still used $this->flush(); } public function set( $key, $data, $group = 'default', $expire = 0 ) { $group = $this->get_group( $group ); $key = $this->get_key( $group, $key ); if ( is_object( $data ) ) { $this->local_cache[ $group ][ $key ] = clone $data; } else { $this->local_cache[ $group ][ $key ] = $data; } if ( ! isset( $this->non_persistent_groups[ $group ] ) ) { return apcu_store( $key, $data, (int) $expire ); } return true; } public function stats() { // Only implemented because the default cache class provides this. // This method is never called. echo ''; } public function switch_to_blog( $blog_id ) { $this->blog_prefix = $this->multisite ? $blog_id . ':' : ''; } } if ( function_exists( 'apcu_inc' ) ) { class APCu_Object_Cache extends GD_APCu_Object_Cache { function incr( $key, $offset = 1, $group = 'default' ) { return parent::incr2( $key, $offset, $group ); } } } else { class APCu_Object_Cache extends GD_APCu_Object_Cache { // Blank } } endif;
Warning: Cannot modify header information - headers already sent by (output started at /usr/hosting/oldpics.net/html/wp-content/object-cache.php:1) in /usr/hosting/oldpics.net/html/wp-includes/feed-rss2.php on line 8
Архивы Photo of a day - Old Pictures https://oldpics.net Historical photos, stories and even more Mon, 05 Oct 2020 08:32:11 +0000 en-US hourly 1 https://wordpress.org/?v=5.9.5 https://oldpics.net/wp-content/uploads/2017/06/cropped-favicon-32x32.png Архивы Photo of a day - Old Pictures https://oldpics.net 32 32 Lee Miller in the bathroom of Adolf Hitler https://oldpics.net/lee-miller-in-the-bathroom-of-adolf-hitler/ https://oldpics.net/lee-miller-in-the-bathroom-of-adolf-hitler/#respond Mon, 05 Oct 2020 08:32:09 +0000 https://oldpics.net/?p=6059 Somehow this photo of former-model Lee Miller in Hitler’s bathroom is one of the best-known WW2 photography. Its story is noteworthy, though....

Сообщение Lee Miller in the bathroom of Adolf Hitler появились сначала на Old Pictures.

]]>
Lee Miller in the bathroom of Adolf HitlerSomehow this photo of former-model Lee Miller in Hitler’s bathroom is one of the best-known WW2 photography. Its story is noteworthy, though. Photographers Lee Miller and David Sherman worked together during WWII. Miller shot for Vogue, Sherman shot for LIFE. They participated in the liberation of the Dachau concentration camp. The very next day, photographers entered Munich together with the 45th American division. Precisely speaking, Lee Miller didn’t shower in the secondary apartment of Adolf Hitler, which he used during his trips to Bavaria.

“Lee and I found an elderly gentleman who barely spoke English, gave him a box of cigarettes, and said, ‘Show us Munich,’” Sherman recalled in a 1993 interview. “He showed us around Hitler’s house, and I photographed Lee washing in Hitler’s bathroom.”

Lee Miller moved from the apartment of Hitler to the mansion of Eva Braun

Miller and Sherman lived in the apartment of Adolf Hitler for several days. After that, they even squatted in the house of Eva Braun, which was located nearby. 

The photo of Lee Miller taking a bath in the Fuhrer’s apartment caused a flurry of indignation. Many considered the photographers’ behavior unethical. Lee Miller’s son, Anthony Penrose, commenting on the image, said: “Her boots covered in Dachau mud are on the floor are. She says she is a winner. But what she didn’t know was that a few hours later in Berlin, Hitler and Eva Braun would kill themselves in a bunker. ”

Many people noticed that Hitler decorated the bathroom with his own portrait and a classic statue of a woman. The New York Times described the photograph as “A woman caught between horror and beauty.” However, some researchers have interpreted the image more deeply, arguing that there is no single accidental detail in it. The pollution of Hitler’s bathroom with Dachau dust was a deliberate act. The Sherman bathing photographs in the same bath, taken by Lee Miller, are also symbolic since the photographer was a Jew.

Read more: Raising a Flag over the Reichstag by Yevgeniy Khaldei,1945

Commenting on the photos, Miller said she was trying to wash off the Dachau scents. 

David Sherman, a jew, tried the Hitler's bathroom too

David Sherman, a jew, tried Hitler’s bathroom too

former Vogue model Lee Miller

Lee Miller WW2 photos




Сообщение Lee Miller in the bathroom of Adolf Hitler появились сначала на Old Pictures.

]]>
https://oldpics.net/lee-miller-in-the-bathroom-of-adolf-hitler/feed/ 0
Adolf Hitler trains body language – unique historical photos https://oldpics.net/adolf-hitler-trains-body-language-unique-historical-photos/ https://oldpics.net/adolf-hitler-trains-body-language-unique-historical-photos/#respond Sat, 03 Oct 2020 06:33:00 +0000 https://oldpics.net/?p=5817 The infamous Adolf Hitler was an inspiring speaker and turned out to train his body language for this. Gestures accompany a good...

Сообщение Adolf Hitler trains body language – unique historical photos появились сначала на Old Pictures.

]]>
Hitler trains body languageThe infamous Adolf Hitler was an inspiring speaker and turned out to train his body language for this. Gestures accompany a good persuasive speech. Adolf Hitler knew it well, as his prominent public speaking was supported by body language. But few people know that Fuhrer carefully practiced gestures, postures, and diction. The preparation for the performances took so many resources that Hitler involved a personal photographer for his sessions.

Heinrich Hoffmann (also known for these Fuhrer’s WWI photos) photographed Hitler view the footage, and evaluate his own image. Here’s how we’ve got this series of pictures in which dictator appears in very strange poses. Later, Heinrich Hoffmann used these portraits in his memoirs.

The photographs look almost photoshopped. Adolf Hitler looks more like a ballroom dancer or stage actor than a ruthless dictator. But it was a fair price for polishing his speaking skills that were so important during the elections’ campaign.

Let’s note that Adolf Hitler was a skillful politician and he was ready for some bold moves to get the voters’ sympathy. For example, he organized a very special photoshoot while wearing traditional Tyrollian shorts, very popular in Bavaria. Hitler didn’t like those shorts, that looked almost ridiculous. But he knew that people will pay attention and did to gain more popularity before the elections. A strong move that, among others, allowed the Nazi party to get absolute power.

A piece of actors skills

Fuhrer learnt well how to speak

Famous gesture of the Furer

Adolf Hitler speaking skills

Сообщение Adolf Hitler trains body language – unique historical photos появились сначала на Old Pictures.

]]>
https://oldpics.net/adolf-hitler-trains-body-language-unique-historical-photos/feed/ 0
The Reindeer operation: a story behind WW2 photo, 1941 https://oldpics.net/the-reindeer-operation-a-story-behind-ww2-photo-1941/ https://oldpics.net/the-reindeer-operation-a-story-behind-ww2-photo-1941/#respond Thu, 01 Oct 2020 19:51:02 +0000 https://oldpics.net/?p=6035 The name of this photo is Reindeer, called after the German operation during the WW2. This offensive aimed to capture Petsamo (an...

Сообщение The Reindeer operation: a story behind WW2 photo, 1941 появились сначала на Old Pictures.

]]>
Reindeer operationThe name of this photo is Reindeer, called after the German operation during the WW2. This offensive aimed to capture Petsamo (an area in Finland on the border with the Soviet Union) to seize nickel mines. The Reindeer operation started on June 22, 1941, and proceeded without incident. On June 29, the German plan changed, and the whole operation was renamed to ‘Platinum Fox.’ The new goal was the city of Murmansk. The Soviet Photojournalist Yevgeny Khaldey was covering the Russian defense activities. It was a time when he made this striking shot in which the beast’s natural beauty confronts the killing machines.

The Reindeer is not the only famous photo that Yevgeny Khaldey took. The best-known picture is, of course, the Flag over the Reichstag, 1945. The ‘Flag’ picture hit the Top 100 most important photos in history.

Oldpics also published a story behind another amazing photo by Yevgeny Khaldey: The Nazi family in Vienna, 1945.

How the reindeer appeared in the combat operation photo

But now, let’s get back to the Reindeer operation photo. In his works, Yevgeny Khaldei liked to combine everyday life and war. He photographed a sunbathing couple next to a destroyed building, the head of the traffic control service next to the sign of German cities in Russian, etc. He used a similar technique with the Reindeer photo. True, the photo with the reindeer was not entirely documentary. The book “Witness to History: Photos by Yevgeny Khaldei” tells about this shot. During the bombardment, the deer (Russian called it Yasha afterward) approached soldiers. The shell-shocked animal did not want to be left alone. Khaldei took a picture, but it turned out not as spectacular as the correspondent expected. Through multiple exposures, Khaldei added British Hawker Hurricane fighters and an exploding bomb to the shot.

The Reindeer operation did not bring success to the German-Finnish army. Neither the Germans nor the Finns reached the Murmansk railway, nor did they seize the Soviet fleet’s base in the Far North. In this sector of the war, the front stabilized until 1942.

Check our publications of the best Soviet WW2 photography:

Outstanding Soviet WW2 pictures (Part I: Max Alpert)

Amazing Soviet WWII pictures (Part 2: Dmitri Baltermants) 

Outstanding WW2 pictures (Part3: Emmanuil Evzerikhin)

Сообщение The Reindeer operation: a story behind WW2 photo, 1941 появились сначала на Old Pictures.

]]>
https://oldpics.net/the-reindeer-operation-a-story-behind-ww2-photo-1941/feed/ 0
Gandhi and spinning wheel: a story behind the iconic photo https://oldpics.net/gandhi-and-spinning-wheel-a-story-behind-the-iconic-photo/ https://oldpics.net/gandhi-and-spinning-wheel-a-story-behind-the-iconic-photo/#respond Thu, 01 Oct 2020 14:58:10 +0000 https://oldpics.net/?p=6028 American photographer Margaret Bourke-White took her legendary Mahatma Gandhi and spinning wheel photo in 1946. It became a symbol of the “nonviolent...

Сообщение Gandhi and spinning wheel: a story behind the iconic photo появились сначала на Old Pictures.

]]>
Gandhi and the Spinning Wheel, Margaret Bourke-White, 1946American photographer Margaret Bourke-White took her legendary Mahatma Gandhi and spinning wheel photo in 1946. It became a symbol of the “nonviolent resistance” ideology. Later it turned out that the spinning wheel was a perfect visual component to show the lifestyle and the mindset of Gandhi.

Margaret Bourke-White was a fearless photographer. She became the first female military journalist and took pictures that are sometimes horrifying with the brutality of the events they depict. But at the same time, she was able to capture moments of peace and tranquility. Her photograph of “Gandhi and His Spinning Wheel” is a perfect illustration of her skill.

This Mahatma Gandhi photo is among the 100 most important pictures in history

The harsh time for India

1946 is a turbulent time for India. The former British colony split into independent states – Pakistan and the Indian Union. Numerous bloody clashes between Hindus and Muslims will follow, more than 500 thousand people will die. Mahatma Gandhi, who believed in the senselessness of violence, was very upset by the country’s situation. But in 1946, the parties still hoped for a more peaceful settlement of the conflict. During this time, Margaret Burke-White was on assignment for the editorial staff of LIFE magazine in India. She was working on an article ultimately titled “Leaders of India” issued on May 27, 1946.

The photographer took hundreds of pictures, including many photographs of Gandhi himself: with his family, with a spinning wheel, at prayer. A dozen pictures of the Leaders of India hit the pages of the magazine. But there was no famous Gandhi photo among them.

This picture hit the paper in June 1946, as a small image on top of an article dedicated to Gandhi’s charm, which the editorial board called “natural medicine” for the sick.

Why is the spinning wheel a symbol of Gandhi

The ‘Gandhi spinning wheel’ photograph became truly famous after the assassination of Gandhi in January 1948. LIFE magazine released an article entitled “India Lost Its Great Soul.” A shot of Gandhi with a spinning wheel took half a page over the text. The photograph served as a moving visual eulogy for this man and his ideals.

Margaret Bourke-White noted the significance of the simple spinning wheel in the photograph for Mahatma Gandhi. She wrote: “Gandhi spins every day for an hour, usually starting at 4 a.m. All members of his ashram must spin too. He and his followers encourage everyone to spin”. They even told Margaret Bourke-White to put aside the camera to spin … When she noticed that photography and spinning are both crafts, they replied seriously: “Spinning is the greater of two.” Spinning rises to the heights of the almost religious Gandhi and his followers.

The spinning wheel is almost like an icon to them. Spinning is a medicine for them, and they talk about it in terms of high poetry. “

In Burke-White’s most famous portrait of Gandhi, a note to the LIFE editors reads: “Gandhi is reading clippings — in the foreground is the spinning wheel he has just stopped using. It would be impossible to exaggerate the reverence with which Gandhi’s personal spinning wheel is kept in the ashram.”

Read more: The story of American way photo by Margarett Bourke-White

Gandhi and his spinning wheel, another angle

Gandhi reading religious texts

Gandhi reading religious texts.

Gandhi stretching during the reading

Mahatma Gandhi stretching during the reading

Gandhi and his follower

Gandhi and his follower

Another angle of the famous spinning wheel photo

Another angle of the famous spinning wheel photo

 



Сообщение Gandhi and spinning wheel: a story behind the iconic photo появились сначала на Old Pictures.

]]>
https://oldpics.net/gandhi-and-spinning-wheel-a-story-behind-the-iconic-photo/feed/ 0
Eyes of hate: story behind iconic photo by  Alfred Eisenstaedt https://oldpics.net/eyes-of-hate-story-behind-iconic-photo-by-alfred-eisenstaedt/ https://oldpics.net/eyes-of-hate-story-behind-iconic-photo-by-alfred-eisenstaedt/#respond Thu, 01 Oct 2020 11:17:27 +0000 https://oldpics.net/?p=5996 ‘Eyes of hate’ is one of the iconic photos of the outstanding Germany-born photographer Alfred Eisenstaedt. Oldpics published his 64 of his...

Сообщение Eyes of hate: story behind iconic photo by  Alfred Eisenstaedt появились сначала на Old Pictures.

]]>
Eyes of Hate photograph

‘Eyes of hate’ is one of the iconic photos of the outstanding Germany-born photographer Alfred Eisenstaedt. Oldpics published his 64 of his most important pictures recently. ‘Eyes of hate’ photo stands among the others, and we decided to cover the story behind it.

The historical background

So, let’s get back to September 1933. Adolf Hitler has already taken all the power in Germany after winning the elections in January. The 3rd Reich has been proclaimed, the anti-jew and militaristic rhetoric became the mainstream. 

Alfred Eisenstaedt worked for the Atlantic (it will soon transform into an Associated press) agency as a photo reporter. Here’s how he got accreditation to cover the League of Nations conference in Geneva. The place where Eisenstaedt captured the ‘Eyes of hate’ photo.

Facing the eyes of hate

“I found Dr. Joseph Goebbels In the hotel garden. By that moment, he has already occupied the position of Hitler’s propaganda minister,” Eisenstadt wrote in 1985.  Goebbels was smiling, but not at me. He was looking at someone to my left. Suddenly he noticed me, and I took a picture of him. His expression changed immediately. These were the eyes of hate. Was I the enemy?’ Goebbels’ personal assistant Werner Naumann, with a goatee, and Hitler’s translator, Dr. Paul Schmidt, were standing behind him. We assume that one of them told the propaganda minister the photographer’s identity. “People asked what I felt taking pictures of these people. Of course, I wasn’t ok, but I do not know fear when I have a camera in my hands. “

Goebbels’ hostility towards the Alfred Eisenstaedt was due to his Jewish origin. The minister’s tense posture and a suspicious gaze directed directly at the camera clearly indicate Eisenstadt’s dislike. The propaganda minister truly shared the antisemitic views of his patron, Adolf Hitler.

The alternative name

“I could name this picture ‘From Goebbels with Love,’” the photographer continued. -When I approached him in the hotel garden, he looked at me with eyes of hate, as if he was waiting for me to disappear. But I haven’t disappeared.”

A couple of weeks later, Germany, quite the League of Nations, explaining that other countries discriminate against it. In fact, this meant Germany’s unwillingness to make compromises. It also testified to the League of Nations’ further ineffectiveness in resolving international disputes and preventing war conflicts.

Interestingly, Alfred Eisenstaedt captured his best-known ‘V-J day’ picture in 1945. It became the symbol of WW2 victory. While Joseph Goebbels ended his days committing suicide in May 1945.

Know more: All Pulitzer Prize photos (1942-1967)

Smiling Joseph Goebbels

That’s how Joseph Goebbels before the ‘Eyes of hate’ scene

The scene during the League of Nations session

The scene during the League of Nations session

Joseph Goebbels truly shared antesemitic views of Adolf Hitler

Joseph Goebbels truly shared antisemitic views of Adolf Hitler



Сообщение Eyes of hate: story behind iconic photo by  Alfred Eisenstaedt появились сначала на Old Pictures.

]]>
https://oldpics.net/eyes-of-hate-story-behind-iconic-photo-by-alfred-eisenstaedt/feed/ 0
Kaiser Wilhelm II and Tsar Nicholas II, 1905 https://oldpics.net/kaiser-wilhelm-ii-and-tsar-nicholas-ii-1905/ https://oldpics.net/kaiser-wilhelm-ii-and-tsar-nicholas-ii-1905/#respond Tue, 22 Sep 2020 13:49:19 +0000 https://oldpics.net/?p=5488 In this photo German and Russian Emporors, Kaiser Wilhelm II and Tsar Nicholas II, wearing each others’ uniform. They met on the...

Сообщение Kaiser Wilhelm II and Tsar Nicholas II, 1905 появились сначала на Old Pictures.

]]>
Kaiser Willhelm II and Nicholas IIIn this photo German and Russian Emporors, Kaiser Wilhelm II and Tsar Nicholas II, wearing each others’ uniform. They met on the russian ship Polar Star in summer of 1905, trying to sign a new treaty. We were missing Nicholas II in this picture of Nine European kings.

Kaiser Wilhelm II initiated that negotiations trying to create a bloc of states against England. Relations between Russia and England at that time were hostile. Here’s why Nicholas II accepted this proposal of the German Emperor.

Emperors also had plans to induce France to join the alliance. 

Russian ruler signed the agreement with Wilhelm II on the island of Bjorke, without notifying the Minister of Foreign Affairs Lamsdorf

This treaty contradicted Russia’s obligations within the Franco-Russian alliance. And Lamzdorf managed to convince the tsar to send William II a soft refusal, citing formal obligations towards France. The treaty was actually annulled by a letter from Nicholas II to Wilhelm II of November 13, 1905.

Willhelm II and Nicholas II

Сообщение Kaiser Wilhelm II and Tsar Nicholas II, 1905 появились сначала на Old Pictures.

]]>
https://oldpics.net/kaiser-wilhelm-ii-and-tsar-nicholas-ii-1905/feed/ 0
Flying baby photography, California, 1991 https://oldpics.net/flying-baby-photography-california-1991/ https://oldpics.net/flying-baby-photography-california-1991/#respond Mon, 21 Sep 2020 11:38:32 +0000 https://oldpics.net/?p=5397 Stay cool, the Flying baby is safe and sound; now she is about 30 years old. It’s amazing how some photos become...

Сообщение Flying baby photography, California, 1991 появились сначала на Old Pictures.

]]>
Flying baby photography, California, 1995Stay cool, the Flying baby is safe and sound; now she is about 30 years old.

It’s amazing how some photos become a part of pop culture. We cannot say that the Flying baby photo was taken by accident. But it wasn’t a serious staged photoshoot too, just like the picture “Tennis Girl,”, 1976. Or the ‘Cowboy’ photo became one of the most expensive pictures in the world and hit the Top 100 most important in history.

How was the Flying baby photo possible?

Nowadays, when we overcare our children, the Flying baby photo looks even more amazing.

But in 1991, everything was possible. Apparently, Sherri and Jeff Leeds were not shocked when photographer Gregg Epperson asked them to participate in the special photoshoot. It happened in Joshua Tree National Park in California.

Epperson wanted the parents, standing on two large stones, to throw the child from hand to hand.

And the parents enthusiastically agreed. Mr. and Mrs. Leeds is not one of those couples who sit with babies at home. On the contrary, they went with little Jordan (this is the Flying baby) on hikes.

Epperson snapped the photo and kept it in archives for four years until it was sold to the hiking apparel company Patagonia’s spring catalog. That’s how Flying baby photography became famous in 1995.

Jordan, a Flying baby

Jordan wants to take another Flying photo with her child.

Let’s fly again!

Meanwhile, Jordan grew up; now, she is about 30 years old. She stated that she was not offended by her parents to put her in danger as a child.

On the contrary, Jordan plans to take the same picture with her child. “I will hang my photo on the wall in the hallway, and next I will hang a photo with my child … I think it will be cool.”



Сообщение Flying baby photography, California, 1991 появились сначала на Old Pictures.

]]>
https://oldpics.net/flying-baby-photography-california-1991/feed/ 0
Falkland island minefield penguins, 1984 https://oldpics.net/falkland-island-minefield-penguins-1984/ https://oldpics.net/falkland-island-minefield-penguins-1984/#respond Fri, 18 Sep 2020 15:24:56 +0000 https://oldpics.net/?p=5294 If the Falkland island penguins read the Minefield sign, they wouldn’t start this party here. Yes, it seems like PETA activists don’t...

Сообщение Falkland island minefield penguins, 1984 появились сначала на Old Pictures.

]]>
falkland island minefield penguins If the Falkland island penguins read the Minefield sign, they wouldn’t start this party here. Yes, it seems like PETA activists don’t teach penguins to read?

This picture is quite old, but, believe us, there are not so many photographers in this world who want to take pictures of penguins in a Falkland island minefield. And yes, some of those who tried it got to the better world, probably.

Far Falkland island

Where should we start: with history or geography? So, there are thirteen Falkland Islands, but only two of them are populated. Almost all of the 2800 locals live in the town of Port Stanley. This picture of Falkland island minefield and penguins was taken quite nearby.

How to turn the penguins land into the minefield

In 1982 the government of Argentina was looking for some option to regain its popularity among the voters. Numerous military coups and the economic crisis weakened the country, and a prompt military campaign looked like a viable option. They decided to capture the British Falkland Islands while the Iron Lady, Margaret Thatcher, was a prime minister in the UK. Not the best idea to reclaim this worthless patch of mud in the middle of the ocean. The Brits won, and after three months, the Argentine troops surrendered. All that they left for locals was a minefield. 

Argentina planted about 25 thousand mines, and demining was almost impossible due to the soil and landscape’s peculiarities. But the animals benefited from mines since people do not prevent them from breeding here. The rare case when animals are happy with what people’s armies do.

Read more: All Pulitzer Prize photos (1942-1967)

Penguin reading the sign falkland island minefield

Yes, this minefield is not dangerous.

Сообщение Falkland island minefield penguins, 1984 появились сначала на Old Pictures.

]]>
https://oldpics.net/falkland-island-minefield-penguins-1984/feed/ 0
Frank Sinatra poses for sculptor Jo Davidson, 1946 https://oldpics.net/frank-sinatra-poses-for-sculptor-jo-davidson-1946/ https://oldpics.net/frank-sinatra-poses-for-sculptor-jo-davidson-1946/#respond Wed, 16 Sep 2020 08:09:55 +0000 https://oldpics.net/?p=5231 By 1946, Frank Sinatra was such famous that trend sculptor Jo Davidson agreed to create a singer’s bronze bust. Well, not a...

Сообщение Frank Sinatra poses for sculptor Jo Davidson, 1946 появились сначала на Old Pictures.

]]>
Frank Sinatra and Sculptor Jo DavidsonBy 1946, Frank Sinatra was such famous that trend sculptor Jo Davidson agreed to create a singer’s bronze bust. Well, not a real bronze one, but covered with this metal. Nonetheless, many people dreamt of posing for Jo Davidson.

In this photo, Frank Sinatra posing at the studio of famous Sculptor Jo Davidson in New York.

One of the most famous sculptures, the bust of Franklin Delano Roosevelt, is in the background. We are not sure if FDR’s figure appeared thereby accidentally, but we quite sure that it inspired Sinatra. The singer was a huge Democratic Party fan until his split with John Kennedy. Nowadays, this bust of Roosevelt is set at Four Freedoms Park, NYC.

Frank Sinatra will present this sculpture to Joel Pacilio. This young lady was the head of the one of the Sinatra’s Fan Clubs. To be more precise, the one in upstate New York. An interesting one that Frank Sinatra and Joel Pacilio became friends much earlier than his career skyrocketed. The girl recognized his talent much earlier than Frank became a superstar.

Check out more rare photos of young Frank Sinatra.

Frank Sinatra and his bust by Jo Davidson

Frank Sinatra and his accomplished bust, 1946

Сообщение Frank Sinatra poses for sculptor Jo Davidson, 1946 появились сначала на Old Pictures.

]]>
https://oldpics.net/frank-sinatra-poses-for-sculptor-jo-davidson-1946/feed/ 0
Marguerite Lehand with 30 thousand coins collected during one day, January 1938 https://oldpics.net/marguerite-lehand-with-30-thousand-coins-collected-during-one-day-january-1938/ https://oldpics.net/marguerite-lehand-with-30-thousand-coins-collected-during-one-day-january-1938/#respond Mon, 14 Sep 2020 13:27:11 +0000 https://oldpics.net/?p=5204 Marguerite Lehand went down in history as the most influential secretary of the President of the United States. Indeed, she was the...

Сообщение Marguerite Lehand with 30 thousand coins collected during one day, January 1938 появились сначала на Old Pictures.

]]>
Marguerite Lehand with 30 thousand coinsMarguerite Lehand went down in history as the most influential secretary of the President of the United States. Indeed, she was the closest confidant of Franklin Delano Roosevelt.

So, it was the Great Depression decade in the USA. The New Deal was everywhere, people were fighting the economic crisis, the large business was promoting Glorious American Way. The administration launched the March of Dimes campaign in January 1938. The rumor has it that this campaign’s idea belonged to Marguerite Lehand, not FDR himself. However, the idea was to help the spread of polio in the United States. The government launched the fundraising for vaccine researches.

The good thing about the campaign was that it didn’t just raise money to support sick children. The campaign targeted children all over the US to send a dime to help other, less fortunate kids. That is how tolerance and compassion are forming in childhood.

Actually, in our photo, Margaret is immortalized with the first batch of letters with coins from American children. The US Post delivered them to the White House on January 28, 1938.

Roosevelt’s affairs

The 32nd President of the United States, Franklin Delano Roosevelt, wasn’t an excellent family man. In 1918, Eleanor Roosevelt discovered his affair with a secretary.

Although the couple decided to keep the marriage, and not to harm Franklin’s political career.

Here’s how Franklin Delano Roosevelt had some romances with the prominent women of the 20th century (for example, with Princess Martha of Sweden). Even the partial paralysis that put Franklin in a wheelchair did not dampen his energy in love affairs.

Franklin also had a relationship that lasted more than twenty years. Relationship with his secretary, and later the only woman in history in the position of chief of staff of the White House – Marguerite Lehand.

Marguerite Lehand in history of the US

Historians and those who are bored with life argue about the nature of these relations. We know for sure that Franklin called his secretary by the pet name Missy (after his children, who could not pronounce “Miss Lehand”). Marguerite Lehand called the president his initials – FDR (no one else called him that).

Marguerite was Roosevelt’s chief adviser, his confidant, his medium in relations with the world. Only Marguerite had access to the secret corridors leading to the Oval Office and the president’s correspondence. 

Miss Lehand handled the boss’s schedule and made appointments.

Marguerite knew about Hitler’s invasion of Poland earlier than FDR. He had already gone to bed, and she accepted the message.

Marguerite Lehand appeared on the cover of Time in December 1934 as Super Secretary. 

 

Сообщение Marguerite Lehand with 30 thousand coins collected during one day, January 1938 появились сначала на Old Pictures.

]]>
https://oldpics.net/marguerite-lehand-with-30-thousand-coins-collected-during-one-day-january-1938/feed/ 0