Plugin Directory

Changeset 870141


Ignore:
Timestamp:
03/05/2014 05:15:44 PM (12 years ago)
Author:
TouchCast
Message:

Updating for VIP

File:
1 edited

Legend:

Unmodified
Added
Removed
  • touchcast-embed/tags/1.0.1/tinymce/touchcast_pop.js

    r869466 r870141  
    11var touchcastPop = {
    2     init : function() {
    3     },
     2    init: function () {},
    43
    5     insert : function() {
    6     if( false == validateEmbededUrl(document.forms[0].touchcast_url.value))
    7     {
    8         document.getElementById('error').style.display = 'block';
    9         return false;
    10     }else{
    11         var TOUCHCAST_ShortCode_Arr = [];
    12         // Insert the contents from the input into the document
    13         TOUCHCAST_ShortCode_Arr.push( '[touchcast url="' );
    14         TOUCHCAST_ShortCode_Arr.push(document.forms[0].touchcast_url.value);
    15    
    16         TOUCHCAST_ShortCode_Arr.push( '" autoplay="' );
    17         TOUCHCAST_ShortCode_Arr.push( document.forms[0].touchcast_autoplay.value );
     4    insert: function () {
     5        if (false == touchcastPop.validateEmbededUrl(document.forms[0].touchcast_url.value)) {
     6            document.getElementById('error').style.display = 'block';
     7            return false;
     8        } else {
     9            var TOUCHCAST_ShortCode_Arr = [];
     10            // Insert the contents from the input into the document
     11            TOUCHCAST_ShortCode_Arr.push('[touchcast url="');
     12            TOUCHCAST_ShortCode_Arr.push(document.forms[0].touchcast_url.value);
    1813
    19         TOUCHCAST_ShortCode_Arr.push( '" autoforward="' );
    20         TOUCHCAST_ShortCode_Arr.push( document.forms[0].touchcast_autoforward.value );
     14            TOUCHCAST_ShortCode_Arr.push('" autoplay="');
     15            TOUCHCAST_ShortCode_Arr.push(document.forms[0].touchcast_autoplay.value);
    2116
    22         TOUCHCAST_ShortCode_Arr.push( '" dimension="' );
    23         TOUCHCAST_ShortCode_Arr.push( document.forms[0].touchcast_dimension.value );
     17            TOUCHCAST_ShortCode_Arr.push('" autoforward="');
     18            TOUCHCAST_ShortCode_Arr.push(document.forms[0].touchcast_autoforward.value);
    2419
    25         TOUCHCAST_ShortCode_Arr.push( '"]' );
    26         TOUCHCAST_ShortCode = TOUCHCAST_ShortCode_Arr.join( "" );
    27         tinyMCEPopup.editor.execCommand( 'mceInsertRawHTML', false, TOUCHCAST_ShortCode );
    28         tinyMCEPopup.close();
    29         }
    30     }
     20            TOUCHCAST_ShortCode_Arr.push('" dimension="');
     21            TOUCHCAST_ShortCode_Arr.push(document.forms[0].touchcast_dimension.value);
     22
     23            TOUCHCAST_ShortCode_Arr.push('"]');
     24            TOUCHCAST_ShortCode = TOUCHCAST_ShortCode_Arr.join("");
     25            tinyMCEPopup.editor.execCommand('mceInsertRawHTML', false, TOUCHCAST_ShortCode);
     26            tinyMCEPopup.close();
     27        }
     28    },
     29    validateEmbededUrl: function (url) {
     30        url = (url.indexOf('://') == -1) ? 'http://' + url : url;
     31
     32        if (/^(https?|s?ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(url)) {
     33
     34            var match = url.match(/(?:https?:\/\/)?(?:www\.)?(.*?)\//);
     35            if (match[match.length - 1] == 'touchcast.com') {
     36                return true;
     37            } else {
     38                return false;
     39            }
     40        } else {
     41            return false;
     42        }
     43    }
     44
    3145};
    3246
    33 tinyMCEPopup.onInit.add( touchcastPop.init, touchcastPop );
    34 
    35 function validateEmbededUrl( url ) {
    36     url = (url.indexOf('://') == -1) ? 'http://' + url : url;
    37    
    38     if (/^(https?|s?ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(url)) {
    39 
    40         var match = url.match(/(?:https?:\/\/)?(?:www\.)?(.*?)\//);
    41         if ( match[match.length-1] == 'touchcast.com' ) {
    42             return true;
    43         } else {
    44             return false;
    45         }
    46     } else {
    47         return false;
    48     }
    49 }
     47tinyMCEPopup.onInit.add(touchcastPop.init, touchcastPop);
Note: See TracChangeset for help on using the changeset viewer.