Marti Admin

Again you have a short period to fix this otherwise your account is absolutely eligible for removal.

Webpack, and the like, is forbidden including on scripts that you load externally.

Thank you for your immediate cooperation,

OUJS Admin


Re: @manuelc:

I Removed ads from script

You can have ads but you must let people know on the script homepage here that you will be doing that so they can expect it. e.g. an informed decision on whether or not to install it with that criteria. When you don't tell them before they install that's very deceptive... so tell them before they install it on the script homepage.

Open Source isn't against donations and other revenue but when ads are forced on someone without knowledge that can be a very bad experience.

If we had gotten a flag on this your account would have gone to the graveyard... this is just my courtesy explanation that I hope you understand well.


Doing a quick investigation on your script you are injecting ad scripts. Failure to notify the user is not wise especially when an admin sees this.

You have a short period to respond before the default TOS action is applied. It doesn't matter what your tenured account is.

OUJS Admin


Re: @Andrewblood:

Re:

http://gamble.ghost-server.de/freebitco.faucet.js

  1. If you ever post profanity like that again towards another user your account will be terminated. Your comment has been edited for content.
  2. http://gamble.ghost-server.de/ is a private server and there is no known SCM behind it so we have no way of validating your claim. e.g. get a real hosting site that tracks your publish dates, etc.
  3. Comparing the two there are some differences so this authors changes are in fact his/her@copyright with some bugs I might add. Making a rather large assumption that it could be an original work by you with no proof... You weren't smart enough to put your own copyright notice in plus you didn't even @license it and that domain is restricted at the root. If you don't license and SCM it, usually with a 3rd party, then it probably shouldn't be on the web period. Don't be stupid about it.
  4. You should have flagged it, appropriate language of course, and we would have been happy to investigate... however there isn't sufficient evidence that it's yours. e.g. putting a non-userscript filename on a private server isn't enough. In other words how do we know that you didn't give attribution to this author (rhetorical as we don't know) ?

Finally if you can't be adult about this I'd be more than happy to remove your account @Andrewblood.

OUJS Admin

Dual beautified then diff'ed:

--- /scripts/daveeee/S.A.F_Freebitco.in_auto_collector/source@0.1+cf82653
+++ http://gamble.ghost-server.de/freebitco.faucet.js
@@ -1,43 +1,38 @@
 // ==UserScript==
-// @name         S.A.F Freebitco.in auto collector
-// @namespace    http://tampermonkey.net/
-// @version      0.1
-// @description  try to take over the world!
-// @author       David O'Neill
+// @name         Freebitco Auto Faucet
+// @namespace    http://gamble.ghost-server.de
+// @version      0.56
+// @description  feel free to donate: 1KLPaoMeZG9r2SBV5sG9BVHWAQ4Eu82aCF
+// @author       ghost
 // @match        https://freebitco.in/*
 // @grant        none
-// @copyright 2018, daveeee (https://openuserjs.org/users/daveeee)
-// @license MIT
 // ==/UserScript==

 (function () {
   'use strict';
+
   var body = $('body');

   var points = {};

   if ($('#free_play_form_button').is(':visible'))
-
     setTimeout(function () {
       $('#free_play_form_button').click();
     }, 2000);
-
   if ($('.close-reveal-modal').is(':visible'))
-
     setTimeout(function () {
       $('.close-reveal-modal').click();
     }, 2000);

   var reward = {};
-
   reward.select = function () {
-
     reward.points = parseInt($('.user_reward_points').text().replace(',', ""));
     reward.bonustime = {};
     if ($("#bonus_container_free_points").length != 0) {
       reward.bonustime.text = $('#bonus_span_free_points').text();
       reward.bonustime.hour = parseInt(reward.bonustime.text.split(":")[0]);
-      reward.bomustime.min = parseInt(reward.bonustime.text.split(":")[1]);
+      reward.bonustime.min = parseInt(reward.bonustime.text.split(":")[1]);
       reward.bonustime.sec = parseInt(reward.bonustime.text.split(":")[2]);
       reward.bonustime.current = reward.bonustime.hour * 3600 + reward.bonustime.min * 60 + reward.bonustime.sec;
     }
@@ -50,42 +45,52 @@
     }
     else {
       if (reward.points < 12) {
-        console.log("waiting for 12 points");
+        console.log("waiting for points");
       }
       else if (reward.points < 120) {
-        console.log("waiting for 60 points");
+        console.log("waiting for points 60");
         RedeemRPProduct('free_points_1');
       }
       else if (reward.points < 600) {
-        console.log("waiting for 120 points");
+        console.log("waiting for points 120");
         RedeemRPProduct('free_points_10');
       }
       else if (reward.points < 1200) {
-        console.log("waiting for 600 points");
+        console.log("waiting for points 600");
         RedeemRPProduct('free_points_50');
       }
       else {
-        console.log("100 Free points per roll active");
         RedeemRPProduct('free_points_100');
       }
       if ($('#bonus_span_fp_bonus').length === 0)
-        if (reward.points >= 4800)
-          RedeemRPProduct('fp_bonus_500');
+        if (reward.points >= 4400)
+          RedeemRPProduct('fp_bonus_1000');
     }
   };
   body.prepend(
-    $('<div/>').attr('style', "position:fixed;top:45px;left:0;z.index:999;width:350px;background-color:blue;color:white; text-align: left;")
+    $('<div/>').attr('style', "position:fixed;top:45px;left:0;z-index:999;width:350px;background-color:black;color: white; text-align: left;")
     .append(
       $('<div/>').attr('id', 'autofaucet')
-      .append($('<p/>').attr('style', 'text-decoration:underline;text-align:center;').text("Freebitco.in Auto Collector By David O'Neill"))
-      .append($('<p/>').attr('style', 'text-align:center;').text("S.A.F - Satashi 500% Autoclaim Function"))
-      .append($('<p/>'))
-    )
-
+      .append($('<p/>').attr('style', 'text-decoration:underline;').text("freebitco.in auto faucet by ghost"))
+      .append($('<p/>').text("If you like it, consider a Donation to "))
+      .append($('<p/>').text("1KLPaoMeZG9r2SBV5sG9BVHWAQ4Eu82aCF"))
+      .append($('<p/>').text("(click to copy address)"))
+      .append($('<p/>')
+        .append($('<p/>').text("Current Feature:"))
+        .append($('<p/>').text("auto free roll"))
+        .append($('<p/>').text("autochoose highest reward points"))
+        .append($('<p/>').text("autochoose 1000% btc bonus (only on highest reward)"))
+      )
+    ).click(function () {
+      var $temp = $('<input>').val("1KLPaoMeZG9r2SBV5sG9BVHWAQ4Eu82aCF");
+      body.append($temp);
+      $temp.select();
+      document.execCommand("copy");
+      $temp.remove();
+    })
   ).prepend($('<style/>')
-    .text("#autofaucet p { margin: 0; margin-left: 2px; text-align: left; }")
-  );
+    .text("#autofaucet p { margin: 0; margin-left: 2px;  text-align: left; }")
+  )
   setTimeout(reward.select, 1000);
   setInterval(reward.select, 60000);
-  // Your code here...
 })();

The bulk of your code is LGPL protected. Invoking default TOS action. Bye.


Re: @MrCoder:

to obfuscate what we upload here but I don't know if that is against OpenUser standards.

See response over there.


Re: @MrCoder:

is to obfuscate what we upload here but I don't know if that is against OpenUser standards.

It is against policy. Please do not obfuscate or that party risks account removal.

If you design a userscript well enough with many error traps that might do the trick. I've dealt with sites that try to circumvent the end point rights which is why updating exists. Keep at it. :)

OUJS Admin


A large bulk of this code is LGPL protected. See https://sourceforge.net/p/greasemonkey/wiki/Metadata_Block/#starting-a-restructure

You are required to correct and keep the licensing as such:

--- /libs/Nijex/Greasemonkey_Tweaks/source@0.0.4+aa1877e
+++ /libs/Nijex/Greasemonkey_Tweaks/source
@@ -5,7 +5,7 @@
 // @description     A library that adds a few features that aren't in Greasemonkey.
 // @copyright       2018, Nijex (https://openuserjs.org/users/Nijex)
 // @homepageURL     https://openuserjs.org/libs/Nijex/Greasemonkey_Tweaks
-// @license         MIT
+// @license         LGPL-3.0-or-later
 // @version         0.0.4
 // ==/UserScript==

@@ -14,7 +14,7 @@
 // @description     A library that adds a few features that aren't in Greasemonkey.
 // @copyright       2018, Nijex (https://openuserjs.org/users/Nijex)
 // @homepageURL     https://openuserjs.org/libs/Nijex/Greasemonkey_Tweaks
-// @license         MIT
+// @license         LGPL-3.0-or-later
 // @version         0.0.4
 // ==/UserLibrary==

Failure to do so would not be wise as it is TOS protected as well.

Thank you for your immediate cooperation.
OUJS Admin and an original Author.


Re: @Zren:

Not sure why it stopped updating when I push to GitHub.

Here and here. You weren't logged in with your GH account in a while. Everyone, including Mods and up are required to do this.

OUJS Admin


Re: @Zren:

Not sure why it stopped automatically updating when I pushed to GitHub.

Here and here. You weren't logged in with your GH account in a while. Everyone, including Mods and up are required to do this.

OUJS Admin



Here is the proper way to remedy item 2:

--- /scripts/kissaa6/[tbpublic]_淘宝天猫购物优惠券_搜券助手_省钱必备工具(直接显示优惠券)(2018-07-24)/source@18.07.24+480a56e
+++ /scripts/kissaa6/[tbpublic]_淘宝天猫购物优惠券_搜券助手_省钱必备工具(直接显示优惠券)(2018-07-24)/source
@@ -3,6 +3,7 @@
 // @name         [tbpublic] 淘宝天猫购物优惠券 搜券助手 省钱必备工具(直接显示优惠券)(2018-07-24)
 // @author       tbpublic
 // @collaborator Calf
+// @copyright    2018, skypesky (https://openuserjs.org/users/skypesky)
 // @copyright    2018, Calf (https://www.tbpublic.com)
 // @version      18.07.24
 // @description  [tbpublic.com]支持手机扫描二维码领取优惠券 淘宝天猫购物优惠券 优惠券 省钱必备工具 最新版(2018-07-24) 

  1. You didn't using "Submit Code as Fork"... this is fixed for the moment.
  2. You stripped a prior Authors @copyright out of the script... see diff below:
--- /scripts/skypesky/(skypesky.cn)_淘宝天猫购物优惠券_搜券助手_省钱必备工具/source@18.07.17+36f6406
+++ /scripts/kissaa6/[tbpublic]_淘宝天猫购物优惠券_搜券助手_省钱必备工具(直接显示优惠券)(2018-07-24)/source@18.07.24+480a56e
@@ -1,37 +1,33 @@
 // ==UserScript==
-// @namespace    https://openuserjs.org/user/skypesky
-// @name         (skypesky.cn) 淘宝天猫购物优惠券 搜券助手 省钱必备工具
-// @author       skypesky
-// @collaborator liang
-// @copyright    2018, skypesky (https://openuserjs.org/users/skypesky)
-// @version      18.07.17
-// @description  [skypesky 出品]支持手机扫描二维码领取优惠券 淘宝天猫购物优惠券 优惠券 省钱必备工具 最新版(2018-07-17) 
+// @namespace    https://www.tbpublic.com
+// @name         [tbpublic] 淘宝天猫购物优惠券 搜券助手 省钱必备工具(直接显示优惠券)(2018-07-24)
+// @author       tbpublic
+// @collaborator Calf
+// @copyright    2018, Calf (https://www.tbpublic.com)
+// @version      18.07.24
+// @description  [tbpublic.com]支持手机扫描二维码领取优惠券 淘宝天猫购物优惠券 优惠券 省钱必备工具 最新版(2018-07-24) 

-// @license Apache-2.0
-
 // @connect      *
 // @grant        GM_getResourceText
 // @grant        GM_addStyle

-
-// ==========================详情页===========================
+// ==========================搜索页===========================
 // @include      http*://s.taobao.com/search*
+// @include      http*://s.taobao.com/list*
 // @include      http*://list.tmall.com*
 // @include      http*://list.tmall.hk/search_product.htm*
 // @include      http*://www.tmall.com/*

-// ==========================搜索页============================
+// ==========================详情页============================
 // @include      http*://item.taobao.com/*
 // @include      http*://detail.tmall.com/*
 // @include      http*://chaoshi.detail.tmall.com/*
 // @include      http*://detail.tmall.hk/*
-// @include      http*://detail.yao.95095.com/item.htm*

 // ==========================资源============================
 // @resource     toastr https://cdn.bootcss.com/izitoast/1.3.0/css/iziToast.min.css
 // @resource     contexMenu https://cdn.bootcss.com/jquery-contextmenu/2.6.1/jquery.contextMenu.min.css

-
 // ==========================js============================
 // @require      https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js
 // @require      https://cdn.bootcss.com/jquery.qrcode/1.0/jquery.qrcode.min.js
@@ -39,21 +35,18 @@
 // @require      https://cdn.bootcss.com/jquery-contextmenu/2.6.1/jquery.contextMenu.min.js
 // @require      https://cdn.bootcss.com/izitoast/1.3.0/js/iziToast.min.js

-
+// @license Apache-2.0
 // ==/UserScript== 

-
 const config = {
-    successClassTag: `skypesky-search-success`,
-    errorClassTag: `skypesky-search-error`,
+    successClassTag: `tbpublic-search-success`,
+    errorClassTag: `tbpublic-search-error`,
     requestApi: {
-        url: "https://skypesky.cn/api/search",
+        url: "https://www.tbpublic.com/api/search.php",
         method: "POST"
     }
 };

-
-
 (function () {

     'use strict';
@@ -227,7 +220,33 @@
             'product': {
                 'selector': 'div.product[data-id]'
             }
-        }
+        },
+        {
+            'webUrl': 'https://s.taobao.com/list*',
+            'testUrl': [
+                'https://s.taobao.com/list?spm=a21bo.2017.201867-links-0.30.18e911d9BJRpZP&cat=16&style=grid&seller_type=taobao&oetag=14897'
+            ],
+            'description': '淘宝网类目列表',
+            'rule': /\/\/s.taobao.com\/list/,
+            'id': {
+                'selector': '.title a[data-nid]',
+                'attr': 'data-nid'
+            },
+            'title': {
+                'selector': 'div.title a',
+            },
+            'image': {
+                'selector': '.pic-box-inner'
+            },
+            'url': {
+                'selector': '.title a[href]',
+                'attr': 'href'
+            },
+            'imgurl': {
+                'selector': '.pic a[href]',
+                'attr': 'href'
+            }
+        }
     ];

     $(function () {
@@ -288,23 +307,28 @@
             id: id
         },
         success: (res) => {
-            if (res && res.flag) { // 优惠券存在                
+            if (res != null && res.flag) { // 优惠券存在                
                 // 更新discountIcon
-                this.updateDiscountIcon("查找成功! " + res.data.resultInfo.couponInfo);
-                this._discountIcon.attr('onclick', 'window.open("' + res.data.spreadUrl + '")');
+                this.updateDiscountIcon("查找成功! " + res.data.resultInfo.coupon_info);
+                this._discountIcon.attr('onclick', 'window.open("' + res.data.resultInfo.coupon_click_url + '")');
                 // 更新qrcode
-                this.updateQrcode(res.data.spreadUrl);
+                this.updateQrcode(res.data.resultInfo.coupon_click_url);
                 $(this._discountIcon).before(this._qrcode);
             } else { // 优惠券不存在
                 // 更新discountIcon
                 this.updateDiscountIcon('优惠券逃跑了*_*');
-                this._discountIcon.removeAttr('onclick');
+                // 设置跳转的链接
+                this._discountIcon.attr('onclick', 'window.open("' + res.url + '")');
+                //this._discountIcon.removeAttr('onclick');
+                // 更新qrcode
+                this.updateQrcode(res.url);
+                $(this._discountIcon).before(this._qrcode);
             }
         }
     });

     // click discountIcon
-    $('#skypesky-discountIcon').bind('click', (event) => {
+    $('#tbpublic-discountIcon').bind('click', (event) => {
         console.log(`再次发起请求`);
         // 验证id,title的合法性
         if (!Validate.checkIdAndTitle(id, title)) {
@@ -322,32 +346,48 @@
             success: (res) => {
                 if (res != null && res.flag) { // 优惠券存在
                     // 更新discountIcon
-                    this.updateDiscountIcon("查找成功! " + res.data.resultInfo.couponInfo);
+                    this.updateDiscountIcon("查找成功! " + res.data.resultInfo.coupon_info);
                     // 设置跳转的链接
-                    this._discountIcon.attr('onclick', 'window.open("' + res.data.spreadUrl + '")');
+                    this._discountIcon.attr('onclick', 'window.open("' + res.data.resultInfo.coupon_click_url + '")');
                     // 更新qrcode
-                    this.updateQrcode(res.data.spreadUrl);
+                    this.updateQrcode(res.data.resultInfo.coupon_click_url);
                     $(this._discountIcon).before(this._qrcode);
                 } else { // 优惠券不存在
                     // 更新discountIcon
                     this.updateDiscountIcon('优惠券逃跑了*_*');
-                    this._discountIcon.removeAttr('onclick');
+                    // 设置跳转的链接
+                    this._discountIcon.attr('onclick', 'window.open("' + res.url + '")');
+                    //this._discountIcon.removeAttr('onclick');
+                    // 更新qrcode
+                    this.updateQrcode(res.url);
+                    $(this._discountIcon).before(this._qrcode);
                 }
             }
         });
     });

+    // on scroll
     $(window).scroll(function () {
         if ($(window).scrollTop() > 1000) {
             // 隐藏优惠券和qrcode
-            $('#skypesky-discountIcon').hide();
-            $('#skypesky-qrcode').hide();
+            $('#tbpublic-discountIcon').show();
+            $('#tbpublic-qrcode').show();
         } else {
-            $('#skypesky-discountIcon').show();
-            $('#skypesky-qrcode').show();
+            $('#tbpublic-discountIcon').show();
+            $('#tbpublic-qrcode').show();
         }
     });
+    
+    // show qrcode
+    $('#tbpublic-discountIcon').bind('mouseenter', function (event) {
+        $('#tbpublic-qrcode').show();
+    });

+    // hide qrcode
+    $('#tbpublic-discountIcon').bind('mouseleave', function (event) {
+        $('#tbpublic-qrcode').hide();
+    });
+
 };

 /*
@@ -355,10 +395,10 @@
  ** @param: text => 扫描链接
  ** @return: 返回qrcode
  */
-SingleProduct.prototype.createQrcode = function (text = 'http://weixin.qq.com/r/8DqNlTXEc2gMrXH292-i') {
+SingleProduct.prototype.createQrcode = function (text = 'https://u.wechat.com/MP6jvciuHJugDR573isWMDk') {

     text = Util.toUtf8(text);
-    let id = 'skypesky-qrcode';
+    let id = 'tbpublic-qrcode';
     // create qrcode element
     this._qrcode = $('<div></div>');
     // set id property
@@ -368,6 +408,7 @@
         'position': 'fixed',
         'left': '5px',
         'bottom': '10rem',
+        'display': 'none',
         'z-index': '666'
     });
     // create qrcode image
@@ -411,7 +452,7 @@
 SingleProduct.prototype.createDiscountIcon = function (text = '点我搜券') {

     // 设置id
-    let id = 'skypesky-discountIcon';
+    let id = 'tbpublic-discountIcon';
     // create tag
     this._discountIcon = $('<button></button>').text(text);
     // set id property
@@ -431,8 +472,8 @@
         'font-size': '12px',
         'white-space': 'normal',
         'color': '#fff',
-        'background-color': '#0e90d2',
-        'border-color': '#0e90d2',
+        'background-color': '#b23cef',
+        'border-color': '#b23cef',
         'display': 'inline-block',
         'border-radius': '0',
         'border': '1px solid transparent',
@@ -467,7 +508,7 @@
  ** @return: 返回discountTag
  */
 SearchProduct.prototype.createDiscountTag = function (text) {
-    let id = 'skypesky-discountTag';
+    let id = 'tbpublic-discountTag';
     // create tag
     this._discountTag = $('<span></span>');
     // 设置文本信息
@@ -487,7 +528,7 @@
         'font-size': '14px',
         'white-space': 'normal',
         'color': '#fff',
-        'background-color': '#DC143C',
+        'background-color': '#ff0036',
         'display': 'inline-block',
         'text-align': 'center',
         'z-index': '8'
@@ -580,9 +621,9 @@
                     this._statistic.successCount++;

                     // 创建标签显示优惠信息
-                    this.createDiscountTag(res.data.resultInfo.couponInfo);
+                    this.createDiscountTag(res.data.resultInfo.coupon_info);
                     // 设置需要跳转的链接
-                    this._discountTag.attr('onclick', 'window.open("' + res.data.spreadUrl + '")');
+                    this._discountTag.attr('onclick', 'window.open("' + res.data.resultInfo.coupon_click_url + '")');
                     $(imageList[i]).append(this._discountTag);

You have until I get back to remedy this or your script, and perhaps your account, are eligible for removal.

Thank you for your immediate cooperation,
OUJS Admin



Your library usage here on OUJS uses too vague of a relative url... so most engines will not install this script properly. There is also a mandatory @license issue fixed in this patch:

--- /scripts/motiko/Beautify_Salesforce_Debug_View/source@0.2.9+e856550
+++ /scripts/motiko/Beautify_Salesforce_Debug_View/source
@@ -4,9 +4,10 @@
 // @version      0.2.9
 // @description Beautify Salesforce Debug View
 // @author       motiko
+// @license      MIT
 // @match        https://*.salesforce.com/p/setup/layout/ApexDebugLogDetailEdit/*
-// @require beautify.js
-// @require beautify-html.js
+// @require /src/libs/motiko/beautify.js
+// @require /src/libs/motiko/beautify-html.js
 // @resource debug_css https://raw.githubusercontent.com/motiko/sfdc-debug-logs/master/monkey/debug.css
 // @grant    GM_addStyle
 // @grant    GM_getResourceText

Thanks,
OUJS Admin


Re: @BigTSDMB:

As a general rule, @match is more reliable and performant than using include regex.

This is false. Most engines, and browsers, that support regular expressions (re's) convert patterned globs, such as @match to regular expressions. So reducing an extra set of conversions is an improvement. @match is less "performant" since it has a stricter pattern.

It's less likely to break, seeing as it's a part of the Chrome addon specification (and the newer WebExtensions spefication)

In order of effectiveness... re's, generic globs, and then specific glob matches. So it's a good idea to include all three if one is that paranoid about breakage between the different engines and browsers (including versions).

It's also more widely supported on different UserScript engines.

Untrue with @match throughout the history of Userscripts.

There have even been talks of removing the regex feature of @include.

This part may be true on the Fx side since the Fx development team is getting rather lazy these days.


Re: @3jameo3:

I might try my hand in creating a python code to compare 2 different codes in the future.

Seriously doubt the browser itself can handle this... but I also haven't looked to see if there is a runtime client side. Since this would need to be DOM side it would need to be JavaScript. I seem to remember there's some upcoming compiled language but haven't relooked into it (or remembered it's name too ;).

In short this needs to be pure JavaScript and on the client side... perhaps with some optional workers to utilize more cores. The one I twiddled with did too much. We just need the text and not the prettyfication which is probably what slowed it down to a halt.

Anywho... GH is a better place to discuss this rather than here. ;)


Re: @3jameo3:

Sounds like a good amount of interesting updates to the site will be coming.

Time permitting... just tested the "top" diff type package and it locked up my browser with a and b sources. I have a pretty hefty multi-core machine too so that particular package probably isn't going to happen for everyone.

I look forward to that as I have little to no Linux knowledge.

Hope I've improved it a little bit... see the FAQ section. With Windows it's best to use git-scm. All others like it are getting older, and perhaps a bit overly bulky.

Anyhow... sorry about the intervention... but maintaining integrity of the forums here. You should see what we get to remove sometimes. ;)


Re: @3jameo3:

The prior changes have been diffed as follows:

  • a.user.js is @eileen12 's @version of 3.22+0552534
  • b.user.js is your original full script source diff'ed to what full source was at this comment
  • c.user.js is your original full script source diff'ed from b.user.js to what full source was at this comment

I don't understand the code change part of the FAQ

I will try to update it a little bit for Windows users since it's mainly for git-scm. I diffed the prior comments using Linux diff -u command after downloading all the sources and then diffing a to b, then b to c. As you can see it's intensely clearer. I left your original "this" to "that" change comparisons. I've done this myself.

I also need to find a DOM diff package (or make one) that we can stick next to beautify/wrap of @eileen12 's source code and then you can choose your method of presentation by dropping in your changes without forking (but forking is still the preferred at this time since it makes way shorter discussions and doesn't open up a security issue... you can delete a fork at a later date if @eileen12 adopts the changes). It's on my long list of things to add to the site. :)


Re: @3jameo3:

@3jameeo3

I realize you are trying to help out here but please don't post entire scripts. That is what forking is for. Then you can refer to it on your fork. Just rename the @version to something unique.

If you need to show differences please utilize this FAQ.

Thank you for your cooperation,
OUJS Admin



Should be complete... had to reimport an old script for some reason.


Re: @3jameo3:

TypeError: $(...).ready is not a function

This portion usually refers to jQuery being absent.


Refactoring for non-primary @license now (ex. CC)... please be patient.