PageSourceSearch

https://fut5al.ir/fa/wp-content/plugins/image-watermark/js/no-right-click.js

js fut5al.ir collected 2026-10-03 00:24:47 UTC 5,752 bytes, 257 lines download raw bytes

1/*
2 This javascript is used by the no-right-click-images plugin for wordpress.
3 Version 2.2
4 Please give credit as no-right-click-images.js by Keith P. Graham
5 http://www.blogseye.com
6 */
7
8var IwNRCtargImg = null;
9var IwNRCtargSrc = null;
10var IwNRCinContext = false;
11var IwNRCnotimage = new Image();
12var IwNRClimit = 0;
13var IwNRCextra = IwNRCargs.rightclick;
14var IwNRCdrag = IwNRCargs.draganddrop;
15
16function IwNRCdragdropAll( event ) {
17	try {
18		var ev = event || window.event;
19		var targ = ev.srcElement || ev.target;
20		if ( targ.tagName.toUpperCase() == "A" ) {
21			// is this IE and are we dragging a link to the image?
22			var hr = targ.href;
23			hr = hr.toUpperCase();
24			if ( hr.indexOf( '.JPG' ) || hr.indexOf( '.PNG' ) || hr.indexOf( '.GIF' ) ) {
25				ev.returnValue = false;
26				if ( ev.preventDefault ) {
27					ev.preventDefault();
28				}
29				IwNRCinContext = false;
30				return false;
31			}
32		}
33		if ( targ.tagName.toUpperCase() != "IMG" )
34			return true;
35		ev.returnValue = false;
36		if ( ev.preventDefault ) {
37			ev.preventDefault();
38		}
39		IwNRCinContext = false;
40		return false;
41	} catch ( er ) {
42		// alert(er);
43	}
44	return true;
45}
46
47function IwNRCdragdrop( event ) {
48	// I am beginning to doubt if this event ever fires
49	try {
50		var ev = event || window.event;
51		var targ = ev.srcElement || ev.target;
52		ev.returnValue = false;
53		if ( ev.preventDefault ) {
54			ev.preventDefault();
55		}
56		ev.returnValue = false;
57		IwNRCinContext = false;
58		return false;
59	} catch ( er ) {
60		// alert(er);
61	}
62	return true;
63}
64
65function IwNRCcontext( event ) {
66	try {
67		IwNRCinContext = true;
68		var ev = event || window.event;
69		var targ = ev.srcElement || ev.target;
70		IwNRCreplace( targ );
71		ev.returnValue = false;
72		if ( ev.preventDefault ) {
73			ev.preventDefault();
74		}
75		ev.returnValue = false;
76		IwNRCtargImg = targ;
77	} catch ( er ) {
78		// alert(er);
79	}
80	return false;
81}
82
83function IwNRCcontextAll( event ) {
84	try {
85		if ( IwNRCtargImg == null ) {
86			return true;
87		}
88		IwNRCinContext = true;
89		var ev = event || window.event;
90		var targ = ev.srcElement || ev.target;
91		if ( targ.tagName.toUpperCase() == "IMG" ) {
92			ev.returnValue = false;
93			if ( ev.preventDefault ) {
94				ev.preventDefault();
95			}
96			ev.returnValue = false;
97			IwNRCreplace( targ );
98			return false;
99		}
100		return true;
101	} catch ( er ) {
102		// alert(er);
103	}
104	return false;
105}
106
107function IwNRCmousedown( event ) {
108	try {
109		IwNRCinContext = false;
110		var ev = event || window.event;
111		var targ = ev.srcElement || ev.target;
112		if ( ev.button == 2 ) {
113			IwNRCreplace( targ );
114			return false;
115		}
116		IwNRCtargImg = targ;
117		if ( IwNRCdrag == 'Y' ) {
118			if ( ev.preventDefault ) {
119				ev.preventDefault();
120			}
121		}
122		return true;
123	} catch ( er ) {
124		// alert(er);
125	}
126	return true;
127}
128
129function IwNRCmousedownAll( event ) {
130	try {
131		IwNRCinContext = false;
132		var ev = event || window.event;
133		var targ = ev.srcElement || ev.target;
134		if ( targ.style.backgroundImage != '' && ev.button == 2 ) {
135			targ.oncontextmenu = function ( event ) {
136				return false;
137			} // iffy - might not work
138		}
139		if ( targ.tagName.toUpperCase() == "IMG" ) {
140			if ( ev.button == 2 ) {
141				IwNRCreplace( targ );
142				return false;
143			}
144			if ( IwNRCdrag == 'Y' ) {
145				if ( ev.preventDefault ) {
146					ev.preventDefault();
147				}
148			}
149			IwNRCtargImg = targ;
150		}
151		return true;
152	} catch ( er ) {
153		// alert(er);
154	}
155	return true;
156}
157
158function IwNRCreplace( targ ) {
159	return false;
160	if ( IwNRCtargImg != null && IwNRCtargImg.src == IwNRCnotimage.src ) {
161		// restore the old image before hiding this one
162		IwNRCtargImg.src = IwNRCtargSrc;
163		IwNRCtargImg = null;
164		IwNRCtargSrc = null;
165	}
166	IwNRCtargImg = targ;
167	if ( IwNRCextra != 'Y' )
168		return;
169	var w = targ.width + '';
170	var h = targ.height + '';
171	if ( w.indexOf( 'px' ) <= 0 )
172		w = w + 'px';
173	if ( h.indexOf( 'px' ) <= 0 )
174		h = h + 'px';
175	IwNRCtargSrc = targ.src;
176	targ.src = IwNRCnotimage.src;
177	targ.style.width = w;
178	targ.style.height = h;
179	IwNRClimit = 0;
180	var t = setTimeout( "IwNRCrestore()", 500 );
181	return false;
182}
183
184function IwNRCrestore() {
185	if ( IwNRCinContext ) {
186		if ( IwNRClimit <= 20 ) {
187			IwNRClimit++;
188			var t = setTimeout( "IwNRCrestore()", 500 );
189			return;
190		}
191	}
192	IwNRClimit = 0;
193	if ( IwNRCtargImg == null )
194		return;
195	if ( IwNRCtargSrc == null )
196		return;
197	IwNRCtargImg.src = IwNRCtargSrc;
198	IwNRCtargImg = null;
199	IwNRCtargSrc = null;
200	return;
201}
202
203// set the image onclick event
204// need to check for dblclick to see if there is a right double click in IE
205function IwNRCaction( event ) {
206	try {
207		document.onmousedown = function ( event ) {
208			return IwNRCmousedownAll( event );
209		}
210		document.oncontextmenu = function ( event ) {
211			return IwNRCcontextAll( event );
212		}
213		document.oncopy = function ( event ) {
214			return IwNRCcontextAll( event );
215		}
216		if ( IwNRCdrag == 'Y' )
217			document.ondragstart = function ( event ) {
218				return IwNRCdragdropAll( event );
219			}
220		var b = document.getElementsByTagName( "IMG" );
221		for ( var i = 0; i < b.length; i++ ) {
222			b[i].oncontextmenu = function ( event ) {
223				return IwNRCcontext( event );
224			}
225			b[i].oncopy = function ( event ) {
226				return IwNRCcontext( event );
227			}
228			b[i].onmousedown = function ( event ) {
229				return IwNRCmousedown( event );
230			}
231			if ( IwNRCdrag == 'Y' )
232				b[i].ondragstart = function ( event ) {
233					return IwNRCdragdrop( event );
234				}
235		}
236	} catch ( er ) {
237		return false;
238	}
239}
240
241if ( document.addEventListener ) {
242	document.addEventListener( "DOMContentLoaded", function ( event ) {
243		IwNRCaction( event );
244	}, false );
245} else if ( window.attachEvent ) {
246	window.attachEvent( "onload", function ( event ) {
247		IwNRCaction( event );
248	} );
249} else {
250	var oldFunc = window.onload;
251	window.onload = function () {
252		if ( oldFunc ) {
253			oldFunc();
254		}
255		IwNRCaction( 'load' );
256	};
257}

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.