Skip to content

Commit cf7b08a

Browse files
committed
yay it work
1 parent 3c80f61 commit cf7b08a

File tree

6 files changed

+1058
-46
lines changed

6 files changed

+1058
-46
lines changed

extension/app/manifest.json

+3
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@
3535
"js": [
3636
"scripts/jquery-2.0.3.js",
3737
"scripts/jquery.gridster.js",
38+
"scripts/jquery.ui.core.js",
39+
"scripts/jquery.ui.widget.js",
40+
"scripts/jquery.ui.mouse.js",
3841
"scripts/jquery.ui.draggable.js",
3942
"scripts/jquery.ui.droppable.js",
4043
"scripts/jquery.ui.resizable.js",

extension/app/scripts/contentscript.js

+3-46
Original file line numberDiff line numberDiff line change
@@ -2,53 +2,10 @@
22

33
console.log("FB Hack Started Loading");
44

5-
$('#pagelet_home_stream').draggable({
6-
opacity: 0.5,
7-
cursor: 'crosshair',
8-
revert: "invalid"
9-
});
5+
$("head").append('<style>#rightCol { list-style-type: none; margin: 0; padding: 0; width: 450px; }</style>');
106

11-
$('#pagelet_reminders').draggable({
12-
opacity: 0.5,
13-
cursor: 'crosshair',
14-
revert: "invalid"
15-
});
16-
17-
$('#pagelet_bluebar').draggable({
18-
opacity: 0.5,
19-
cursor: 'crosshair',
20-
revert: "invalid"
21-
});
22-
23-
$('#pagelet_friends_online').draggable({
24-
opacity: 0.5,
25-
cursor: 'crosshair',
26-
revert: "invalid"
27-
});
28-
29-
$('#pagelet_bookmark_nav').draggable({
30-
opacity: 0.5,
31-
cursor: 'crosshair',
32-
revert: "invalid"
33-
});
34-
35-
$('#pagelet_composer').draggable({
36-
opacity: 0.5,
37-
cursor: 'crosshair',
38-
revert: "invalid"
39-
});
40-
41-
$('#pagelet_sidebar').draggable({
42-
opacity: 0.5,
43-
cursor: 'crosshair',
44-
revert: "invalid"
45-
});
46-
47-
$('#pagelet_dock').draggable({
48-
opacity: 0.5,
49-
cursor: 'crosshair',
50-
revert: "invalid"
51-
});
7+
$("#rightCol div div").sortable();
8+
$("#rightCol div div").disableSelection();
529

5310
console.log("FB Hack Finished Loading");
5411
/*
+320
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,320 @@
1+
/*!
2+
* jQuery UI Core @VERSION
3+
* http://jqueryui.com
4+
*
5+
* Copyright 2013 jQuery Foundation and other contributors
6+
* Released under the MIT license.
7+
* http://jquery.org/license
8+
*
9+
* http://api.jqueryui.com/category/ui-core/
10+
*/
11+
(function( $, undefined ) {
12+
13+
var uuid = 0,
14+
runiqueId = /^ui-id-\d+$/;
15+
16+
// $.ui might exist from components with no dependencies, e.g., $.ui.position
17+
$.ui = $.ui || {};
18+
19+
$.extend( $.ui, {
20+
version: "@VERSION",
21+
22+
keyCode: {
23+
BACKSPACE: 8,
24+
COMMA: 188,
25+
DELETE: 46,
26+
DOWN: 40,
27+
END: 35,
28+
ENTER: 13,
29+
ESCAPE: 27,
30+
HOME: 36,
31+
LEFT: 37,
32+
NUMPAD_ADD: 107,
33+
NUMPAD_DECIMAL: 110,
34+
NUMPAD_DIVIDE: 111,
35+
NUMPAD_ENTER: 108,
36+
NUMPAD_MULTIPLY: 106,
37+
NUMPAD_SUBTRACT: 109,
38+
PAGE_DOWN: 34,
39+
PAGE_UP: 33,
40+
PERIOD: 190,
41+
RIGHT: 39,
42+
SPACE: 32,
43+
TAB: 9,
44+
UP: 38
45+
}
46+
});
47+
48+
// plugins
49+
$.fn.extend({
50+
focus: (function( orig ) {
51+
return function( delay, fn ) {
52+
return typeof delay === "number" ?
53+
this.each(function() {
54+
var elem = this;
55+
setTimeout(function() {
56+
$( elem ).focus();
57+
if ( fn ) {
58+
fn.call( elem );
59+
}
60+
}, delay );
61+
}) :
62+
orig.apply( this, arguments );
63+
};
64+
})( $.fn.focus ),
65+
66+
scrollParent: function() {
67+
var scrollParent;
68+
if (($.ui.ie && (/(static|relative)/).test(this.css("position"))) || (/absolute/).test(this.css("position"))) {
69+
scrollParent = this.parents().filter(function() {
70+
return (/(relative|absolute|fixed)/).test($.css(this,"position")) && (/(auto|scroll)/).test($.css(this,"overflow")+$.css(this,"overflow-y")+$.css(this,"overflow-x"));
71+
}).eq(0);
72+
} else {
73+
scrollParent = this.parents().filter(function() {
74+
return (/(auto|scroll)/).test($.css(this,"overflow")+$.css(this,"overflow-y")+$.css(this,"overflow-x"));
75+
}).eq(0);
76+
}
77+
78+
return (/fixed/).test(this.css("position")) || !scrollParent.length ? $(document) : scrollParent;
79+
},
80+
81+
zIndex: function( zIndex ) {
82+
if ( zIndex !== undefined ) {
83+
return this.css( "zIndex", zIndex );
84+
}
85+
86+
if ( this.length ) {
87+
var elem = $( this[ 0 ] ), position, value;
88+
while ( elem.length && elem[ 0 ] !== document ) {
89+
// Ignore z-index if position is set to a value where z-index is ignored by the browser
90+
// This makes behavior of this function consistent across browsers
91+
// WebKit always returns auto if the element is positioned
92+
position = elem.css( "position" );
93+
if ( position === "absolute" || position === "relative" || position === "fixed" ) {
94+
// IE returns 0 when zIndex is not specified
95+
// other browsers return a string
96+
// we ignore the case of nested elements with an explicit value of 0
97+
// <div style="z-index: -10;"><div style="z-index: 0;"></div></div>
98+
value = parseInt( elem.css( "zIndex" ), 10 );
99+
if ( !isNaN( value ) && value !== 0 ) {
100+
return value;
101+
}
102+
}
103+
elem = elem.parent();
104+
}
105+
}
106+
107+
return 0;
108+
},
109+
110+
uniqueId: function() {
111+
return this.each(function() {
112+
if ( !this.id ) {
113+
this.id = "ui-id-" + (++uuid);
114+
}
115+
});
116+
},
117+
118+
removeUniqueId: function() {
119+
return this.each(function() {
120+
if ( runiqueId.test( this.id ) ) {
121+
$( this ).removeAttr( "id" );
122+
}
123+
});
124+
}
125+
});
126+
127+
// selectors
128+
function focusable( element, isTabIndexNotNaN ) {
129+
var map, mapName, img,
130+
nodeName = element.nodeName.toLowerCase();
131+
if ( "area" === nodeName ) {
132+
map = element.parentNode;
133+
mapName = map.name;
134+
if ( !element.href || !mapName || map.nodeName.toLowerCase() !== "map" ) {
135+
return false;
136+
}
137+
img = $( "img[usemap=#" + mapName + "]" )[0];
138+
return !!img && visible( img );
139+
}
140+
return ( /input|select|textarea|button|object/.test( nodeName ) ?
141+
!element.disabled :
142+
"a" === nodeName ?
143+
element.href || isTabIndexNotNaN :
144+
isTabIndexNotNaN) &&
145+
// the element and all of its ancestors must be visible
146+
visible( element );
147+
}
148+
149+
function visible( element ) {
150+
return $.expr.filters.visible( element ) &&
151+
!$( element ).parents().addBack().filter(function() {
152+
return $.css( this, "visibility" ) === "hidden";
153+
}).length;
154+
}
155+
156+
$.extend( $.expr[ ":" ], {
157+
data: $.expr.createPseudo ?
158+
$.expr.createPseudo(function( dataName ) {
159+
return function( elem ) {
160+
return !!$.data( elem, dataName );
161+
};
162+
}) :
163+
// support: jQuery <1.8
164+
function( elem, i, match ) {
165+
return !!$.data( elem, match[ 3 ] );
166+
},
167+
168+
focusable: function( element ) {
169+
return focusable( element, !isNaN( $.attr( element, "tabindex" ) ) );
170+
},
171+
172+
tabbable: function( element ) {
173+
var tabIndex = $.attr( element, "tabindex" ),
174+
isTabIndexNaN = isNaN( tabIndex );
175+
return ( isTabIndexNaN || tabIndex >= 0 ) && focusable( element, !isTabIndexNaN );
176+
}
177+
});
178+
179+
// support: jQuery <1.8
180+
if ( !$( "<a>" ).outerWidth( 1 ).jquery ) {
181+
$.each( [ "Width", "Height" ], function( i, name ) {
182+
var side = name === "Width" ? [ "Left", "Right" ] : [ "Top", "Bottom" ],
183+
type = name.toLowerCase(),
184+
orig = {
185+
innerWidth: $.fn.innerWidth,
186+
innerHeight: $.fn.innerHeight,
187+
outerWidth: $.fn.outerWidth,
188+
outerHeight: $.fn.outerHeight
189+
};
190+
191+
function reduce( elem, size, border, margin ) {
192+
$.each( side, function() {
193+
size -= parseFloat( $.css( elem, "padding" + this ) ) || 0;
194+
if ( border ) {
195+
size -= parseFloat( $.css( elem, "border" + this + "Width" ) ) || 0;
196+
}
197+
if ( margin ) {
198+
size -= parseFloat( $.css( elem, "margin" + this ) ) || 0;
199+
}
200+
});
201+
return size;
202+
}
203+
204+
$.fn[ "inner" + name ] = function( size ) {
205+
if ( size === undefined ) {
206+
return orig[ "inner" + name ].call( this );
207+
}
208+
209+
return this.each(function() {
210+
$( this ).css( type, reduce( this, size ) + "px" );
211+
});
212+
};
213+
214+
$.fn[ "outer" + name] = function( size, margin ) {
215+
if ( typeof size !== "number" ) {
216+
return orig[ "outer" + name ].call( this, size );
217+
}
218+
219+
return this.each(function() {
220+
$( this).css( type, reduce( this, size, true, margin ) + "px" );
221+
});
222+
};
223+
});
224+
}
225+
226+
// support: jQuery <1.8
227+
if ( !$.fn.addBack ) {
228+
$.fn.addBack = function( selector ) {
229+
return this.add( selector == null ?
230+
this.prevObject : this.prevObject.filter( selector )
231+
);
232+
};
233+
}
234+
235+
// support: jQuery 1.6.1, 1.6.2 (http://bugs.jquery.com/ticket/9413)
236+
if ( $( "<a>" ).data( "a-b", "a" ).removeData( "a-b" ).data( "a-b" ) ) {
237+
$.fn.removeData = (function( removeData ) {
238+
return function( key ) {
239+
if ( arguments.length ) {
240+
return removeData.call( this, $.camelCase( key ) );
241+
} else {
242+
return removeData.call( this );
243+
}
244+
};
245+
})( $.fn.removeData );
246+
}
247+
248+
249+
250+
251+
252+
// deprecated
253+
$.ui.ie = !!/msie [\w.]+/.exec( navigator.userAgent.toLowerCase() );
254+
255+
$.support.selectstart = "onselectstart" in document.createElement( "div" );
256+
$.fn.extend({
257+
disableSelection: function() {
258+
return this.bind( ( $.support.selectstart ? "selectstart" : "mousedown" ) +
259+
".ui-disableSelection", function( event ) {
260+
event.preventDefault();
261+
});
262+
},
263+
264+
enableSelection: function() {
265+
return this.unbind( ".ui-disableSelection" );
266+
}
267+
});
268+
269+
$.extend( $.ui, {
270+
// $.ui.plugin is deprecated. Use $.widget() extensions instead.
271+
plugin: {
272+
add: function( module, option, set ) {
273+
var i,
274+
proto = $.ui[ module ].prototype;
275+
for ( i in set ) {
276+
proto.plugins[ i ] = proto.plugins[ i ] || [];
277+
proto.plugins[ i ].push( [ option, set[ i ] ] );
278+
}
279+
},
280+
call: function( instance, name, args ) {
281+
var i,
282+
set = instance.plugins[ name ];
283+
if ( !set || !instance.element[ 0 ].parentNode || instance.element[ 0 ].parentNode.nodeType === 11 ) {
284+
return;
285+
}
286+
287+
for ( i = 0; i < set.length; i++ ) {
288+
if ( instance.options[ set[ i ][ 0 ] ] ) {
289+
set[ i ][ 1 ].apply( instance.element, args );
290+
}
291+
}
292+
}
293+
},
294+
295+
// only used by resizable
296+
hasScroll: function( el, a ) {
297+
298+
//If overflow is hidden, the element might have extra content, but the user wants to hide it
299+
if ( $( el ).css( "overflow" ) === "hidden") {
300+
return false;
301+
}
302+
303+
var scroll = ( a && a === "left" ) ? "scrollLeft" : "scrollTop",
304+
has = false;
305+
306+
if ( el[ scroll ] > 0 ) {
307+
return true;
308+
}
309+
310+
// TODO: determine which cases actually cause this to happen
311+
// if the element doesn't have the scroll set, see if it's possible to
312+
// set the scroll
313+
el[ scroll ] = 1;
314+
has = ( el[ scroll ] > 0 );
315+
el[ scroll ] = 0;
316+
return has;
317+
}
318+
});
319+
320+
})( jQuery );

0 commit comments

Comments
 (0)