Plugin Directory

Changeset 1512524


Ignore:
Timestamp:
10/11/2016 08:00:27 AM (10 years ago)
Author:
goodvidio
Message:

added version 1.1

Location:
goodvidio-integration
Files:
191 added
2 edited

Legend:

Unmodified
Added
Removed
  • goodvidio-integration/trunk/goodvidio.php

    r1467582 r1512524  
    88 *  accessories, baby products, or fast-moving consumer goods, Goodvidio is an
    99 *  excellent fit for your store!
    10  * Version: 1.0
     10 * Version: 1.1
    1111 * Author: Goodvidio
    1212 * Author URI: http://goodvid.io/
    … …  
    3535 */
    3636$goodvidioSettingsGroupName              = 'goodvidio_settings';
    37 $goodvidioVideoPositionOptionName        = 'goodvidio_gallery_position';
    38 $goodvidioVideoPositionPlaceOptionName   = 'goodvidio_gallery_position_place';
    3937$goodvidioIntegrationStatusOptionName    = 'goodvidio_enabled';
    4038$goodvidioIntegrationDomainOptionName    = 'goodvidio_integration_domain';
    4139$goodvidioEcommerceTrackingOptionName    = 'goodvidio_ecommerce_tracking';
    4240
    43 $goodvidioGalleryPositionOptions = array(
    44     'woocommerce_after_single_product' => 'After product area',
    45     'woocommerce_after_single_product_summary' => 'After product summary area',
    46     'woocommerce_before_single_product' => 'Before product area',
    47     'woocommerce_single_product_summary' => 'Inside product summary area',
    48 );
    49 
    5041add_action('admin_menu', 'goodvidio_admin_menu');
    5142
    5243add_action('woocommerce_thankyou', 'goodvidio_send_order');
    5344
    54 add_action('wp_footer', 'goodvidio_show_gallery');
    55 add_action('woocommerce_after_single_product', 'goodvidio_show_gallery');
    56 add_action('woocommerce_after_single_product_summary', 'goodvidio_show_gallery');
    57 add_action('woocommerce_before_single_product', 'goodvidio_show_gallery');
    58 add_action('woocommerce_before_single_product_summary', 'goodvidio_show_gallery');
    59 add_action('woocommerce_single_product_summary', 'goodvidio_show_gallery');
     45add_action('wp_footer', 'goodvidio_inject_script');
    6046
    6147register_activation_hook(__FILE__, array('Goodvidio_InstallCheck', 'install') );
    … …  
    8470    global
    8571        $goodvidioSettingsGroupName,
    86         $goodvidioVideoPositionOptionName,
    87         $goodvidioVideoPositionPlaceOptionName,
    8872        $goodvidioIntegrationStatusOptionName,
    8973        $goodvidioEcommerceTrackingOptionName,
    9074        $goodvidioIntegrationDomainOptionName;
    9175
    92     unregister_setting($goodvidioSettingsGroupName, $goodvidioVideoPositionOptionName);
    9376    unregister_setting($goodvidioSettingsGroupName, $goodvidioIntegrationStatusOptionName);
    9477    unregister_setting($goodvidioSettingsGroupName, $goodvidioIntegrationDomainOptionName);
    95     unregister_setting($goodvidioSettingsGroupName, $goodvidioVideoPositionPlaceOptionName);
    9678    unregister_setting($goodvidioSettingsGroupName, $goodvidioEcommerceTrackingOptionName);
    9779}
    … …  
    11395 * for the product in that specific hook position, if not then nothing.
    11496 */
    115 function goodvidio_show_gallery()
     97function goodvidio_inject_script()
    11698{
    11799    global $wp_current_filter;
    118     global $goodvidioVideoPositionOptionName;
    119     global $goodvidioGalleryPositionOptions;
    120100    global $goodvidioIntegrationStatusOptionName;
    121101    global $goodvidioIntegrationDomainOptionName;
    122     global $goodvidioVideoPositionPlaceOptionName;
    123102    global $product;
    124103
    125     $sku = null;
    126 
    127     if ($product) {
    128         $sku = $product->get_sku();
    129     }
    130     $hookChosen = get_option($goodvidioVideoPositionOptionName);
    131104    $enabled = filter_var(get_option($goodvidioIntegrationStatusOptionName), FILTER_VALIDATE_BOOLEAN);
    132105    $domain = get_option($goodvidioIntegrationDomainOptionName);
    133     $position = get_option($goodvidioVideoPositionPlaceOptionName);
    134106    $domainScriptOutput = get_option($goodvidioIntegrationDomainOptionName) ? "g.setAttribute('data-domain', '" . $domain . "');" : "";
    135107
    … …  
    138110    }
    139111
    140     if (!in_array($hookChosen, $goodvidioGalleryPositionOptions) && $sku) {
    141                 echo "<script>(function() {
    142                         var tc_goodvidio_div_main = document.querySelectorAll('" . $hookChosen . "')[0];
    143                         if (typeof tc_goodvidio_div_main != 'undefined' && tc_goodvidio_div_main != null) {
    144                     var goodvidio_div1 = document.createElement('div');
    145                     goodvidio_div1.id = 'goodvidio-product-videos';";
    146 
    147         if ($position === 'before') {
    148             echo "tc_goodvidio_div_main.parentNode.insertBefore(goodvidio_div1, tc_goodvidio_div_main);";
    149         } else if ($position === 'after') {
    150             echo "tc_goodvidio_div_main.parentNode.insertBefore(goodvidio_div1, tc_goodvidio_div_main.nextSibling);";
    151         }
    152 
    153             echo "var goodvidio_div2 = document.createElement('div');
    154                     goodvidio_div2.id = 'tc_div_325_1';
    155                     goodvidio_div2.className = 'goodvidio-product-track';
    156                     goodvidio_div2.setAttribute('data-goodvidio-product-id', '" . $sku . "');
    157                     goodvidio_div1.appendChild(goodvidio_div2);
    158                         }
    159                 })();</script>";
    160     }
    161     if ($wp_current_filter[0] == $hookChosen && $sku) {
    162         echo '<div id="goodvidio-product-videos">
    163               <div class="goodvidio-product-track" data-goodvidio-product-id="' . $sku . '"></div>
    164               </div>';
    165     }
    166112    echo "<script>(function(d,t,id) {
    167113       var s = d.getElementsByTagName(t)[0],g,att;
    … …  
    329275    goodvidio_include_files();
    330276    global
    331         $goodvidioGalleryPositionOptions,
    332         $goodvidioVideoPositionOptionName,
    333277        $goodvidioSettingsGroupName,
    334278        $goodvidioIntegrationStatusOptionName,
    335         $goodvidioVideoPositionPlaceOptionName,
    336279        $goodvidioEcommerceTrackingOptionName,
    337280        $goodvidioIntegrationDomainOptionName;
    … …  
    339282     * Gets the stored gallery position decided by the user in the database.
    340283     */
    341     $positionValue = get_option($goodvidioVideoPositionOptionName) ? get_option($goodvidioVideoPositionOptionName) : array_keys($goodvidioGalleryPositionOptions)[0];
    342     $positionPlaceValue = get_option($goodvidioVideoPositionPlaceOptionName);
    343284    $integrationStatusValue = filter_var(get_option($goodvidioIntegrationStatusOptionName), FILTER_VALIDATE_BOOLEAN);
    344285    $ecommerceTrackingValue = filter_var(get_option($goodvidioEcommerceTrackingOptionName), FILTER_VALIDATE_BOOLEAN);
    … …  
    403344                <tr>
    404345                    <th scope="row">
    405                         <h3>Goodvidio gallery</h3>
    406                     </th>
    407                 </tr>
    408                 <tr>
    409                     <th scope="row">
    410                         <label for="<?php echo $goodvidioVideoPositionOptionName ?>">Gallery position: </label></br>
    411                     </th>
    412                     <td>
    413                         <?php
    414                         foreach($goodvidioGalleryPositionOptions as $index => $position) {
    415                             if ($positionValue === $index) {
    416                                 echo '<input type="radio" name="' .
    417                                         $goodvidioVideoPositionOptionName .
    418                                         '" value="' . $index . '" checked>' .
    419                                         $position .
    420                                         '<br/>';
    421                             } else {
    422                                 echo '<input type="radio" name="' .
    423                                         $goodvidioVideoPositionOptionName .
    424                                         '" value="' . $index . '">' .
    425                                         $position .
    426                                         '<br/>';
    427                             }
    428                         }
    429                         ?>
    430                         <input
    431                             type="radio"
    432                             name="<?php echo $goodvidioVideoPositionOptionName ?>"
    433                             value="<?php echo !array_key_exists($positionValue, $goodvidioGalleryPositionOptions) ? $positionValue : ''; ?>"
    434                             id="custom-gallery-position"
    435                             <?php echo !array_key_exists($positionValue, $goodvidioGalleryPositionOptions) ? 'checked' : ''; ?>>
    436                         <select
    437                             name="<?php echo $goodvidioVideoPositionPlaceOptionName ?>">
    438                             <option
    439                                 value="before"
    440                                 <?php echo $positionPlaceValue === "before" ? 'selected' : ''?>>
    441                                     Before
    442                             </option>
    443                             <option
    444                                 value="after"
    445                                 <?php echo $positionPlaceValue === "after" ? 'selected' : ''?>>
    446                                     After
    447                             </option>
    448                         </select>
    449                         <input
    450                             type="text"
    451                             name="custom-gallery-position"
    452                             value="<?php echo !array_key_exists($positionValue, $goodvidioGalleryPositionOptions) ? $positionValue : ''; ?>"/>
    453                         <p class="description">
    454                             Either choose a predefined position for the gallery or
    455                             enter a CSS selector for a DOM element to display
    456                             the Goodvidio gallery. If you need help with this,
    457                             you can contact the customer success team through
    458                             the Goodvidio app.
    459                         </p>
    460                     </td>
    461                 </tr>
    462                 <tr>
    463                     <th scope="row">
    464346                        <h3>Ecommerce transaction tracking</h3>
    465347                    </th>
    … …  
    495377    </form>
    496378</div>
    497 <script>
    498 jQuery(document).ready(function() {
    499     jQuery('input[name="custom-gallery-position"]').keyup(function() {
    500         jQuery('#custom-gallery-position').prop('checked', true).val(jQuery(this).val());
    501     });
    502 });
    503 </script>
    504379    <?php
    505380}
    … …  
    508383{
    509384    global $goodvidioSettingsGroupName;
    510 
    511     global $goodvidioVideoPositionOptionName;
    512     register_setting($goodvidioSettingsGroupName, $goodvidioVideoPositionOptionName);
    513 
    514     global $goodvidioVideoPositionPlaceOptionName;
    515     register_setting($goodvidioSettingsGroupName, $goodvidioVideoPositionPlaceOptionName);
    516385
    517386    global $goodvidioIntegrationStatusOptionName;
  • goodvidio-integration/trunk/readme.txt

    r1511691 r1512524  
    77Requires at least: 3.1
    88Tested up to: 4.5.3
    9 Stable tag: 1.0
     9Stable tag: 1.1
    1010License: GPLv2 or later
    1111License URI: http://www.gnu.org/licenses/gpl-2.0.html
    … …  
    8282* Initial Version
    8383
     84= 1.1 =
     85* Remove Goodvidio Gallery snippet injection
     86
    8487== Upgrade Notice ==
    8588
    … …  
    8790* Initial Version
    8891
     92= 1.1 =
     93* Remove Goodvidio Gallery snippet injection
     94
    8995== Arbitrary section ==
Note: See TracChangeset for help on using the changeset viewer.