PageSourceSearch

https://www.southbankresearch.com/wp-content/themes/southbankresea…/assets/js/custom.dataTables.js

js southbankresearch.com collected 2026-09-24 21:28:25 UTC 9,131 bytes, 204 lines download raw bytes

1( function ( $, root, undefined ) {
2
3    $( function () {
4
5        'use strict';
6
7    }); 
8
9    /* Add portfolio tab functionality */
10
11    $('.portfolio-tabs-header .portfolio-nav li').click(function(e){
12        e.preventDefault();
13        $('.portfolio-tabs-header .portfolio-nav li').removeClass('current-item');
14        $(this).addClass('current-item');
15        display_portfolio( $(this).data('portfolio') );
16    });
17
18    function display_portfolio( data ) {
19        $('.portfolio-tabs-header .portfolio-title h4').hide();
20        $('.portfolio-tabs-header .portfolio-title h4').each(function(){
21            var titleData = $(this).data('portfolio');
22            if( data == titleData ) {
23                $(this).show();
24            }
25        });
26
27        $('.portfolio-tabs-container > div').hide();
28        $('.portfolio-tabs-container > div').each(function(){
29            var containerData = $(this).data('portfolio');
30            if( data == containerData ) {
31                $(this).show();
32            }
33        });
34    }
35
36    /* remove /USD text for crypto currencies */
37
38    $('.portfolio-4470.desktop .symbol').each( function(){
39        var symbol = $(this).text();
40        if(symbol.indexOf("/USD") != -1){
41            var result = symbol.split("/USD");
42            $(this).html(result[0] + '<span>/USD</span>');
43        }
44    });
45
46    $('.portfolio-4470.mobile .symbol td').each( function(){
47        var symbol = $(this).text();
48        if(symbol.indexOf("/USD") != -1){
49            var result = symbol.split("/USD");
50            $(this).html(result[0] + '<span>/USD</span>');
51        }
52    });
53
54    $('.portfolio-tracker.mobile table').each( function( key, value ){
55        $(this).find('tr').each( function( tr_key, tr_value ){
56            if( tr_key % 2 != 0 ){
57                $(this).addClass('odd');
58            }
59        });
60    })
61    
62})(jQuery, this);
63
64
65
66jQuery(document).ready(function () {
67    // jQuery('.performance-link').on('click', function () {
68    //     let symbol = jQuery(this).data('symbol');
69    //     let portfolio_id = jQuery(this).data('pid');
70
71    //     jQuery.ajax({ //ajax request
72    //         url: ajaxurl,
73    //         type: "POST",
74    //         data: {
75    //             'symbol': symbol,
76    //             'portfolio_id': portfolio_id,
77    //             'width': '500',
78    //             'action': 'tfs_get_performance_data'
79    //         },
80    //         beforeSend: function (data) {
81    //             jQuery('body').append('<div id="performance-popup-container"><div class="loader"></div></div>');
82    //         },
83    //         success: function (data) {
84    //             jQuery('#performance-popup-container').html('<div class="performance-modal"><i class="fa fa-times performance-close"></i><div class="performance-modal-inner">' + data + '</div></div>');
85    //         },
86
87    //         error: function (data) {
88    //             jQuery('#performance-popup-container').remove();
89    //         }
90    //     });
91
92    // });
93
94    jQuery('body').on('click','#performance-popup-container .performance-close', function () {
95        jQuery('#performance-popup-container').remove();
96    });
97
98    jQuery('.portfolio-toggle').on('click', function () {
99        let portfolio_toggle = jQuery(this).data('portfolio');
100        jQuery(this).find('.fa').toggle();
101        jQuery('.portfolio-content[data-portfolio="' + portfolio_toggle + '"]').toggle();
102    });
103
104    // toggle the portfolio groups to open and close on mobile view
105    jQuery('body').on('click', 'div.portfolio-tracker.mobile h3', function () {
106        var $this = jQuery(this);
107        var container = jQuery(this).closest('.portfolio-tracker').find('.portfolio-container');
108        container.slideToggle( 500, function() {
109            if ( container.is(":visible") ) {
110                $this.find('.fa-caret-right').addClass('fa-caret-down');
111                $this.find('.fa-caret-right').removeClass('fa-caret-right');
112            } else {
113                $this.find('.fa-caret-down').addClass('fa-caret-right');
114                $this.find('.fa-caret-down').removeClass('fa-caret-down');
115            }
116        });
117    });
118
119    // If mobile portfolio page and not on mobile and doesn't include mb variable, then redirect to standard portfolio page 
120    var url = window.location.href;
121    if ( url.indexOf("mobile-portfolio") != -1 ){
122
123        if ( iOS() ) {
124            jQuery('.mobile-portfolio-view').addClass('ios');
125        }
126    }
127
128    console.log('Portfolio script working');
129
130});
131jQuery(document).ajaxComplete(function () {
132    jQuery('.symbols .period span').on('click', function () {
133        jQuery('.symbols .period span').removeClass('active');
134        jQuery('.symbols .chart div').removeClass('active');
135        jQuery(this).addClass('active');
136        let period = jQuery(this).html();
137        console.log(period);
138        console.log(jQuery('.symbols .chart div[data-chart="' + period + '"]'));
139        jQuery('.symbols .chart div[data-chart="' + period + '"]').addClass('active');
140    });
141});
142jQuery(document).ready(function () {
143    jQuery(document).on('click', 'table.portfolio-tracker.desktop .name .fa-caret-right', function () {
144        jQuery(this).closest('.subtrades').css('border-bottom','2px solid #999');
145        jQuery(this).addClass('fa-caret-down');
146        jQuery(this).removeClass('fa-caret-right');
147        jQuery('table.portfolio-tracker.desktop .subcompanies').show();
148
149    });
150    jQuery(document).on('click', 'table.portfolio-tracker.desktop .name .fa-caret-down', function () {
151        jQuery(this).closest('.subtrades').css('border-bottom','1px solid #999');
152        jQuery(this).addClass('fa-caret-right');
153        jQuery(this).removeClass('fa-caret-down');
154        jQuery('table.portfolio-tracker.desktop .subcompanies').hide();
155
156    });
157    jQuery(document).on('click', 'div.portfolio-tracker.mobile .view-subtrades', function () {
158        if ( jQuery(this).find('i').hasClass('fa-caret-right') ) {
159            jQuery(this).find('i').addClass('fa-caret-down');
160            jQuery(this).find('i').removeClass('fa-caret-right');
161            jQuery('div.portfolio-tracker.mobile .subcompanies').show();
162        } else {
163            jQuery(this).find('i').addClass('fa-caret-right');
164            jQuery(this).find('i').removeClass('fa-caret-down');
165            jQuery('div.portfolio-tracker.mobile .subcompanies').hide();
166        }
167    });
168});
169
170function isMobile(){
171    var check = false;
172    (function(a){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))) check = true;})(navigator.userAgent||navigator.vendor||window.opera);
173    return check;
174}
175
176function iOS() {
177
178  var iDevices = [
179    'iPad Simulator',
180    'iPhone Simulator',
181    'iPod Simulator',
182    'iPad',
183    'iPhone',
184    'iPod'
185  ];
186
187  if (!!navigator.platform) {
188    while (iDevices.length) {
189      if (navigator.platform === iDevices.pop()){ return true; }
190    }
191  }
192
193  return false;
194}
195
196function getQueryVariable(variable){
197       var query = window.location.search.substring(1);
198       var vars = query.split("&");
199       for (var i=0;i<vars.length;i++) {
200               var pair = vars[i].split("=");
201               if(pair[0] == variable){return pair[1];}
202       }
203       return(false);
204}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.