PageSourceSearch

https://www.m.hostedby.pl/javascript/upload.js

js hostedby.pl collected 2026-10-10 02:43:16 UTC 3,168 bytes, 87 lines download raw bytes

1/**
2 * --------------------------------------------------------------------
3 * jQuery customfileinput plugin
4 * Author: Scott Jehl, [email protected]
5 * Copyright (c) 2009 Filament Group
6 * licensed under MIT (filamentgroup.com/examples/mit-license.txt)
7 * --------------------------------------------------------------------
8 */
9(function( $ ){
10	$.fn.customFileInput = function(){
11		//apply events and styles for file input element
12		var fileInput = $(this)
13			.addClass('customfile-input') //add class for CSS
14			.mouseover(function(){ upload.addClass('customfile-hover'); })
15			.mouseout(function(){ upload.removeClass('customfile-hover'); })
16			.focus(function(){
17				upload.addClass('customfile-focus');
18				fileInput.data('val', fileInput.val());
19			})
20			.blur(function(){
21				upload.removeClass('customfile-focus');
22				$(this).trigger('checkChange');
23			 })
24			 .bind('disable',function(){
25				fileInput.attr('disabled',true);
26				upload.addClass('customfile-disabled');
27			})
28			.bind('enable',function(){
29				fileInput.removeAttr('disabled');
30				upload.removeClass('customfile-disabled');
31			})
32			.bind('checkChange', function(){
33				if(fileInput.val() && fileInput.val() != fileInput.data('val')){
34					fileInput.trigger('change');
35				}
36			})
37			.bind('change',function(){
38				//get file name
39				var fileName = $(this).val().split(/\\/).pop();
40				//get file extension
41				var fileExt = 'customfile-ext-' + fileName.split('.').pop().toLowerCase();
42				//update the feedback
43				uploadFeedback
44					.text(fileName) //set feedback text to filename
45					.removeClass(uploadFeedback.data('fileExt') || '') //remove any existing file extension class
46					.addClass(fileExt) //add file extension class
47					.data('fileExt', fileExt) //store file extension for class removal on next change
48					.addClass('customfile-feedback-populated'); //add class to show populated state
49				//change text of button
50				uploadButton.text('Przeglądaj');
51			})
52			.click(function(){ //for IE and Opera, make sure change fires after choosing a file, using an async callback
53				fileInput.data('val', fileInput.val());
54				setTimeout(function(){
55					fileInput.trigger('checkChange');
56				},100);
57			});
58			
59		//create custom control container
60		var upload = $('<div class="customfile"></div>');
61		//create custom control button
62		var uploadButton = $('<span class="customfile-button" aria-hidden="true">Przeglądaj</span>').appendTo(upload);
63		//create custom control feedback
64		var uploadFeedback = $('<span class="customfile-feedback" aria-hidden="true">Nie wybrano pliku</span>').appendTo(upload);
65		
66		//match disabled state
67		if(fileInput.is('[disabled]')){
68			fileInput.trigger('disable');
69		}
70
71
72		//on mousemove, keep file input under the cursor to steal click
73		upload
74			.mousemove(function(e){
75				fileInput.css({
76					'left': e.pageX - upload.offset().left - fileInput.outerWidth() + 20, //position right side 20px right of cursor X)
77					'top': e.pageY - upload.offset().top - $(window).scrollTop() - 3
78				});
79			})
80			.insertAfter(fileInput); //insert after the input
81
82		fileInput.appendTo(upload);
83
84		//return jQuery
85		return $(this);
86	};
87})( jQuery );

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.