From b199891df903133abace1f0509bf023989578e5e Mon Sep 17 00:00:00 2001 From: Senad Uka Date: Tue, 7 Jul 2020 20:40:14 +0200 Subject: [PATCH] Plugin radi! --- uokvirime.php | 154 ++++++++++++++++++++++++++++++++------------------ 1 file changed, 99 insertions(+), 55 deletions(-) diff --git a/uokvirime.php b/uokvirime.php index b5427db..c87ac17 100755 --- a/uokvirime.php +++ b/uokvirime.php @@ -9,68 +9,112 @@ * * @package Uokviri_Me */ -function uokvirime_get_lyric() { - /** These are the lyrics to Hello Dolly */ - $lyrics = "Oj djevojko anadolko -Budi moja ti -Oj djevojko anadolko -Budi moja ti -Ja cu tebi sevdalinke -Pjesme pjevati"; - // Here we split it into lines. - $lyrics = explode( "\n", $lyrics ); - // And then randomly choose a line. - return wptexturize( $lyrics[ mt_rand( 0, count( $lyrics ) - 1 ) ] ); + +/*if ( $product->get_image_id() ) { + $html = wc_get_gallery_image_html( $post_thumbnail_id, true ); + } else { + $html = ''; + }*/ + +add_filter( 'woocommerce_single_product_image_thumbnail_html', 'uokvirime_single_product_image_thumbnail_html' ); // phpcs:disable WordPress.XSS.EscapeOutput.OutputNotEscaped +function uokvirime_single_product_image_thumbnail_html( $html ) { + $product = wc_get_product(); + // echo ""; + $result = ''; + + return $result; } -// This just echoes the chosen line, we'll position it later. -function uokvirime() { - $chosen = uokvirime_get_lyric(); - $lang = ''; - if ( 'en_' !== substr( get_user_locale(), 0, 3 ) ) { - $lang = ' lang="en"'; - } - printf( - '

%s %s

', - __( 'Quote from Hello Dolly song, by Jerry Herman:' ), - $lang, - $chosen - ); +function uokvirime_find_id($data) { + $data_array = json_decode(json_encode($data), true); + foreach($data_array as $record) { + if ($record['key'] == 'uokvirime_id') { + return $record['value']; + } + } + return null; } -// Now we set that function up to execute when the admin_notices action is called. -add_action( 'admin_notices', 'uokvirime' ); +add_action( 'woocommerce_before_add_to_cart_quantity', 'uokvirime_display_dropdown_variation_add_cart' ); +function uokvirime_display_dropdown_variation_add_cart() { + global $product; + $raw_variations = $product->get_available_variations(); + $variations = array(); -// We need some CSS to position the paragraph. -function uokvirime_css() { - echo " - - "; + $slika_id = uokvirime_find_id($product->get_data()['meta_data']); + foreach ($raw_variations as $variation) { + $okvir_id = $variation["attributes"]["attribute_okvir"]; + $variation_id = $variation["variation_id"]; + $variations[$variation_id] = "https://images.uokviri.me/images/$okvir_id/$slika_id"; + } + + if ( $product->is_type('variable') ) { + ?> + + '; + + woocommerce_wp_text_input( array( + 'id' => 'uokvirime_id', + 'value' => get_post_meta( get_the_ID(), 'uokvirime_id', true ), + 'label' => 'Uokvirime slika', + 'description' => 'Dugi niz slova i brojeva iz uokvirivaca', ) ); + + echo ''; + +} + + +add_action( 'woocommerce_process_product_meta', 'uokvirime_save_fields', 10, 2 ); +function uokvirime_save_fields( $id, $post ){ + + if( !empty( $_POST['uokvirime_id'] ) ) { + update_post_meta( $id, 'uokvirime_id', $_POST['uokvirime_id'] ); + } else { + delete_post_meta( $id, 'uokvirime_id' ); + } + +} + + + + + +/* + * + let variations = JSON.parse('{"1":"https://images.uokiviri.me/1/1 {\"id\":10,\"name\":\"dust 2\",\"slug\":\"asda-nooo\",\"date_created\":{\"date\":\"2020-07-07 13:45:00.000000\",\"timezone_type\":3,\"timezone\":\"Europe\\/Sarajevo\"},\"date_modified\":{\"date\":\"2020-07-07 19:26:40.000000\",\"timezone_type\":3,\"timezone\":\"Europe\\/Sarajevo\"},\"status\":\"publish\",\"featured\":false,\"catalog_visibility\":\"visible\",\"description\":\"adsasdad dfsdf sdf\",\"short_description\":\"kratki opis ba\",\"sku\":\"a111\",\"price\":\"10\",\"regular_price\":\"\",\"sale_price\":\"\",\"date_on_sale_from\":null,\"date_on_sale_to\":null,\"total_sales\":0,\"tax_status\":\"taxable\",\"tax_class\":\"\",\"manage_stock\":true,\"stock_quantity\":50,\"stock_status\":\"instock\",\"backorders\":\"notify\",\"low_stock_amount\":\"\",\"sold_individually\":false,\"weight\":\"\",\"length\":\"\",\"width\":\"\",\"height\":\"\",\"upsell_ids\":[],\"cross_sell_ids\":[],\"parent_id\":0,\"reviews_allowed\":true,\"purchase_note\":\"\",\"attributes\":{\"okvir\":{},\"uokvirime_id\":{}},\"default_attributes\":{\"okvir\":\"1\"},\"menu_order\":0,\"post_password\":\"\",\"virtual\":false,\"downloadable\":false,\"category_ids\":[15],\"tag_ids\":[16],\"shipping_class_id\":0,\"downloads\":[],\"image_id\":\"\",\"gallery_image_ids\":[],\"download_limit\":-1,\"download_expiry\":-1,\"rating_counts\":[],\"average_rating\":\"0\",\"review_count\":0,\"meta_data\":[{\"id\":148,\"key\":\"super_product\",\"value\":\"\"},{\"id\":149,\"key\":\"uokvirime_id\",\"value\":\"d3deadaa335fdea34add123ce244f15e2131bb73\"}]}", + + + + + + "2":"https://images.uokiviri.me/2/1 {\"id\":10,\"name\":\"dust 2\",\"slug\":\"asda-nooo\",\"date_created\":{\"date\":\"2020-07-07 13:45:00.000000\",\"timezone_type\":3,\"timezone\":\"Europe\\/Sarajevo\"},\"date_modified\":{\"date\":\"2020-07-07 19:26:40.000000\",\"timezone_type\":3,\"timezone\":\"Europe\\/Sarajevo\"},\"status\":\"publish\",\"featured\":false,\"catalog_visibility\":\"visible\",\"description\":\"adsasdad dfsdf sdf\",\"short_description\":\"kratki opis ba\",\"sku\":\"a111\",\"price\":\"10\",\"regular_price\":\"\",\"sale_price\":\"\",\"date_on_sale_from\":null,\"date_on_sale_to\":null,\"total_sales\":0,\"tax_status\":\"taxable\",\"tax_class\":\"\",\"manage_stock\":true,\"stock_quantity\":50,\"stock_status\":\"instock\",\"backorders\":\"notify\",\"low_stock_amount\":\"\",\"sold_individually\":false,\"weight\":\"\",\"length\":\"\",\"width\":\"\",\"height\":\"\",\"upsell_ids\":[],\"cross_sell_ids\":[],\"parent_id\":0,\"reviews_allowed\":true,\"purchase_note\":\"\",\"attributes\":{\"okvir\":{},\"uokvirime_id\":{}},\"default_attributes\":{\"okvir\":\"1\"},\"menu_order\":0,\"post_password\":\"\",\"virtual\":false,\"downloadable\":false,\"category_ids\":[15],\"tag_ids\":[16],\"shipping_class_id\":0,\"downloads\":[],\"image_id\":\"\",\"gallery_image_ids\":[],\"download_limit\":-1,\"download_expiry\":-1,\"rating_counts\":[],\"average_rating\":\"0\",\"review_count\":0,\"meta_data\":[{\"id\":148,\"key\":\"super_product\",\"value\":\"\"},{\"id\":149,\"key\":\"uokvirime_id\",\"value\":\"d3deadaa335fdea34add123ce244f15e2131bb73\"}]}","3":"https://images.uokiviri.me/3/1 {\"id\":10,\"name\":\"dust 2\",\"slug\":\"asda-nooo\",\"date_created\":{\"date\":\"2020-07-07 13:45:00.000000\",\"timezone_type\":3,\"timezone\":\"Europe\\/Sarajevo\"},\"date_modified\":{\"date\":\"2020-07-07 19:26:40.000000\",\"timezone_type\":3,\"timezone\":\"Europe\\/Sarajevo\"},\"status\":\"publish\",\"featured\":false,\"catalog_visibility\":\"visible\",\"description\":\"adsasdad dfsdf sdf\",\"short_description\":\"kratki opis ba\",\"sku\":\"a111\",\"price\":\"10\",\"regular_price\":\"\",\"sale_price\":\"\",\"date_on_sale_from\":null,\"date_on_sale_to\":null,\"total_sales\":0,\"tax_status\":\"taxable\",\"tax_class\":\"\",\"manage_stock\":true,\"stock_quantity\":50,\"stock_status\":\"instock\",\"backorders\":\"notify\",\"low_stock_amount\":\"\",\"sold_individually\":false,\"weight\":\"\",\"length\":\"\",\"width\":\"\",\"height\":\"\",\"upsell_ids\":[],\"cross_sell_ids\":[],\"parent_id\":0,\"reviews_allowed\":true,\"purchase_note\":\"\",\"attributes\":{\"okvir\":{},\"uokvirime_id\":{}},\"default_attributes\":{\"okvir\":\"1\"},\"menu_order\":0,\"post_password\":\"\",\"virtual\":false,\"downloadable\":false,\"category_ids\":[15],\"tag_ids\":[16],\"shipping_class_id\":0,\"downloads\":[],\"image_id\":\"\",\"gallery_image_ids\":[],\"download_limit\":-1,\"download_expiry\":-1,\"rating_counts\":[],\"average_rating\":\"0\",\"review_count\":0,\"meta_data\":[{\"id\":148,\"key\":\"super_product\",\"value\":\"\"},{\"id\":149,\"key\":\"uokvirime_id\",\"value\":\"d3deadaa335fdea34add123ce244f15e2131bb73\"}]}","4":"https://images.uokiviri.me/4/1 {\"id\":10,\"name\":\"dust 2\",\"slug\":\"asda-nooo\",\"date_created\":{\"date\":\"2020-07-07 13:45:00.000000\",\"timezone_type\":3,\"timezone\":\"Europe\\/Sarajevo\"},\"date_modified\":{\"date\":\"2020-07-07 19:26:40.000000\",\"timezone_type\":3,\"timezone\":\"Europe\\/Sarajevo\"},\"status\":\"publish\",\"featured\":false,\"catalog_visibility\":\"visible\",\"description\":\"adsasdad dfsdf sdf\",\"short_description\":\"kratki opis ba\",\"sku\":\"a111\",\"price\":\"10\",\"regular_price\":\"\",\"sale_price\":\"\",\"date_on_sale_from\":null,\"date_on_sale_to\":null,\"total_sales\":0,\"tax_status\":\"taxable\",\"tax_class\":\"\",\"manage_stock\":true,\"stock_quantity\":50,\"stock_status\":\"instock\",\"backorders\":\"notify\",\"low_stock_amount\":\"\",\"sold_individually\":false,\"weight\":\"\",\"length\":\"\",\"width\":\"\",\"height\":\"\",\"upsell_ids\":[],\"cross_sell_ids\":[],\"parent_id\":0,\"reviews_allowed\":true,\"purchase_note\":\"\",\"attributes\":{\"okvir\":{},\"uokvirime_id\":{}},\"default_attributes\":{\"okvir\":\"1\"},\"menu_order\":0,\"post_password\":\"\",\"virtual\":false,\"downloadable\":false,\"category_ids\":[15],\"tag_ids\":[16],\"shipping_class_id\":0,\"downloads\":[],\"image_id\":\"\",\"gallery_image_ids\":[],\"download_limit\":-1,\"download_expiry\":-1,\"rating_counts\":[],\"average_rating\":\"0\",\"review_count\":0,\"meta_data\":[{\"id\":148,\"key\":\"super_product\",\"value\":\"\"},{\"id\":149,\"key\":\"uokvirime_id\",\"value\":\"d3deadaa335fdea34add123ce244f15e2131bb73\"}]}"}'); +* +*/