Académique Documents
Professionnel Documents
Culture Documents
PROJECT ON
ONLINE SHOPPING
For partial fulfillment of the requirement of award
Of
1
DATA
REPORT
2
ACKNOWLEDGEMENT
First and foremost we would like to express our gratitude to our guide
MR. NEERAJ GUPTA sir & other faculty member for giving us
wonderful opportunity to work on the project. We are very thankful to
him who was always ready to lend their helping hand to us. This project
has giving us fair exposure to some of the very interesting features of
“ONLINE SHOPPING” and “PHP” along beyond doubt it will help us
in the short and long run. We are very grateful to him introducing me to
some of very exciting features of “ONLINE SHOPPING”.
THAKING YOU………
3
DECLARATION
I hereby declare that this project report entitled
“ONLINE SHOPPING” submitting for partially
fulfillment of the requirement for the MCA VI SEM.
This report is only for educational purpose and not
for any other purpose.
4
“ONLINE
SHOPPING ”
5
INDEX
Sr no. Topics Page no.
1. Introduction
2 Objective
3 Requirement Analysis
4 Hardware & Software requirement
5 A Word about PHP
6 SDLC
7 System analysis
8 Feasibility study
9 System design
10 E – R diagram
12 Project layout
13 Database
6
14 Benefits
15 Coding
16 TESTING
17 IMPLEMENTATION
18 FUTURISTIC SCOPE
19 BIBLIOGRAPHY
20 CONCLUSION
7
INTRODUCTION
Shopping Cart
Project Features
Software Requirement
Installation Steps
Download Project
Shopping Cart System is the Simple shopping Solution. It's a full-featured website and
shopping cart system that bends over backwards to give you the flexibility you need to
run your online store. The basic concept of the application is to allow the customer to
shop virtually using the Internet and allow customers to buy the items and articles of
their desire from the store. The information pertaining to the products are stores on an
RDBMS at the server side (store). The Server process the customers and the items are
shipped to the address submitted by them. The details of the items are brought
forward from the database for the customer view based on the selection through the
menu and the database of all the products are updated at the end of each transaction.
Online shopping is a form of electronic shopping store where the buyer is directly
online to the seller's computer usually via the internet. There is no intermediary
service. The sale and purchase transaction is completed electronically and
interactively in real-time. The development of this new system contains the following
activities, which try to develop on-line application by keeping the entire process in the
view of database integration approach. User gets its eamil id and password to acces
their account.
Administrator of Shopping Cart System has multiple features such as Add, Delete,
Update shopping Items.
8
2. Browsing through the e-Mall to see the items that are there in each category
of products like Apparel, Kitchen accessories, Bath accessories, Food items etc.
3. Creating a Shopping cart so that customer can Shop N number of items and
checkout finally with the entire shopping cart
4. Customers should be able to mail the Shop about the items they would like to
see in the Shop
5. Secured mechanism for checking out from the Shop( Credit card verification
mechanism ).Updates to customers about the Recent Items in the Shop.
6. Uploading Most Purchased Items in each category of products in the Shop like
Apparel, Kitchen accessories, Bath accessories, Food items etc.
WAMP Server
XAMPP Server
MAMP Server
LAMP Server
Installation Steps:
9
3. Database Configuration:
Open phpmyadmin
Create Database named shop.
Import database shop.sql.
4. Open Your browser put inside URL: http://localhost/Design_Klara3/
5. To Login as admin putinside URL: http://localhost/Design_Klara3/admin
10
OBJECTIVE
Starting the project, we should fully know about the meaning of project. There are
seven letters in the word “PROJECT”. Each character has its own technical
meaning.
P – planning : this deals with the idea at thinking and which are required for
project.
R – Resource : the money problem will be solved and resources from which
collected.
The project is a system that gives the systematic way of planning and working.
Or
11
REQUIREMENT ANALYSIS
Commitment
Successful blogging requires a massive amount of sweat equity and dedication. Building a
successful blog requires more than just publishing a new post a few times a week. The most
successful blogs are updated frequently (often several times each day), and the bloggers behind
those blogs work relentlessly to promote their blogs and drive traffic to them.
Time
Building a successful blog requires a massive time investment. Growing a blog doesn't stop with
publishing post. Top bloggers spend a lot of time everyday promoting their blogs, researching
and reading to drive traffic to it.
A Desire to Network
Socializing is a critical component of developing a successful blog. Blogging by nature is a
social medium, and successful blogs become so primarily because of the strong sense of
community surrounding them. Top bloggers take time to respond to comments and interact with
12
their blogs' readers as well as network on social sites, forums and more all in an effort to further
promote their blogs.
Creativity
A successful blog is typically updated very frequently. That means successful blogs always
provide fresh, unique content to their readers. Writing that new content requires a great deal of
creativity to keep readers from feeling bored or from feeling like the blog does not bring them
any value.
Patience
Blogging success does not happen overnight. Be prepared to stay dedicated to promoting your
blog for the long haul. Eventually, your hard work should pay off with increased traffic and a
significant growth in popularity of your blog. The key is to not give up.
13
HARDWARE & SOFTWARE
REQUIREMENT
2 GB or more
RAM 4 GB or more recommended especially
for Microsoft Windows Vista, 7 and 8
14
Section Requirements and Recommendations
Microsoft Windows XP
Supported Operating Systems Microsoft Windows Vista
Microsoft Windows 7 32/64 bit
15
A WORD ABOUT PHP
What is PHP?
PHP (Hypertext Preprocessor) is a widely-used open source general-purpose
scripting language that is especially suited for web development and can be
embedded into HTML.
The best things in using PHP are that it is extremely simple for a newcomer, but
offers many advanced features for a professional programmer. Don't be afraid
reading the long list of PHP's features. You can jump in, in a short time, and start
writing simple scripts in a few hours.
16
What Can PHP Do?
PHP can generate dynamic page content. PHP can create, open, read, write, delete,
and close files on the server. PHP can collect form data. PHP can send and receive
cookies. PHP can add, delete, modify data in your database. PHP can be used to
control user-access. PHP can encrypt data.
With PHP you are not limited to output HTML. You can output images, PDF files,
and even flash movies. You can also output any text, such as XHTML and XML.
Why PHP?
PHP runs on various platforms (Windows, Linux, Unix, Mac OS X, etc.) PHP is
compatible with almost all servers used today (Apache, IIS, etc.) PHP supports a
wide range of databases. PHP is free. Download it from the official PHP
resource: www.php.net. PHP is easy to learn and runs efficiently on the server side
Install PHP
17
SDLC
SOFTWARE DEVELOPMENT LIFE CYCLE
The software development life cycle (SDLC) is a framework defining tasks
performed at each step in the software development process. SDLC is a structure
followed by a development team within the software organization. It consists of a
detailed plan describing how to develop, maintain and replace specific software.
The life cycle defines a methodology for improving the quality of software and the
overall development process.
This term is also known as the software development process.
Planning:
The most important parts of software development, requirement gathering or
requirement analysis are usually done by the most skilled and experienced software
engineers in the organization. After the requirements are gathered from the client, a
scope document is created in which the scope of the project is determined and
documented.
Implementation:
The software engineers start writing the code according to the client's
requirements.
Testing:
This is the process of finding defects or bugs in the created software.
Documentation:
18
Every step in the project is documented for future reference and for the
improvement of the software in the development process. The design
documentation may include writing the application programming interface (API).
Maintaining:
Software maintenance is done for future reference. Software improvement and
new requirements (change requests) can take longer than the time needed to create
the initial development of the software.
Waterfall Model:
This model involves finishing the first phase completely before commencing the
next one. When each phase is completed successfully, it is reviewed to see if the
project is on track and whether it is feasible to continue.
V-Shaped Model:
This model focuses on execution of processes in a sequential manner, similar to
the waterfall model but with more importance placed on testing. Testing
procedures are written even before the commencement of writing code. A system
plan is generated before starting the development phase.
Incremental Model:
This life cycle model involves multiple development cycles. The cycles are
divided up into smaller iterations. These iterations can be easily managed and go
through a set of phases including requirements, design, implementation and testing.
A working version of the software is produced during the first iteration, so working
software is created early in the development process.
19
SYSTEM ANALYSIS
System analysis is the process of examining a business situation for the purpose of
developing a system solution to a problem or devising improvements to such a
situation. Before the development of any system can begin, a project proposal is
prepared by the users of the potential system and/or by systems analysts and
submitted to an appropriate managerial structure within the organization.
Keeping in view the problems and new requirements workout the pros and cons
including new areas of the system.
Functional hierarchy showing the function to be performed by the new system and
their relationship with each other.
Function network which are similar to function hierarchy but they highlight the
those functions which are common to more than one procedure.
20
FEASIBILITY STUDY
The feasibility study investigates the problem and the information needs of the
stakeholders. It seeks to determine the resources required to provide an information
systems solution, the cost and benefits of such a solution, and the feasibility of
such a solution. The analyst conducting the study gathers information using a
variety of methods, the most popular of which are:
Economic feasibility :
The economic viability of the proposed system. The proposed project's cost and
benefits are evaluated. Tangible costs include fixed and variable costs, while
tangible benefits include cost savings, increased revenue, and increased profit. A
project is approved only if it covers its cost in a given period of time. However, a
21
project may be approved only on its intangible benefits such as those relating to
government regulations, the image of the organization, or similar considerations.
Technical feasibility :
The possibility that the organization has or can procure the necessary resources.
This is demonstrated if the needed hardware and software are available in the
marketplace or can be developed by the time of implementation.
Operational feasibility:
The ability, desire, and willingness of the stakeholders to use, support, and operate
the proposed computer information system. The stakeholders include management,
employees, customers, and suppliers. The stakeholders are interested in systems
that are easy to operate, make few, if any, errors, produce the desired information,
and fall within the objectives of the organization.
22
SYSTEM DESIGN
What is systems design?
Systems design is simply the design of systems. It implies a systematic and
rigorous approach to design—an approach demanded by the scale and complexity
of many systems problems.
23
What is the environment?
What goal does the system have in relation to its environment?
What is the feedback loop by which the system corrects its actions?
How does the system measure whether it has achieved its goal?
Who defines the system, environment, goal, etc.—and monitors it?
What resources does the system have for maintaining the relationship it desires?
Are its resources sufficient to meet its purpose?
24
E – R DIAGRAM
Entity Relationship Diagrams are a major data modeling tool and will help organize
the data in your project into entities and define the relationships between the entities.
This process has proved to enable the analyst to produce a good database structure so
that the data can be stored and retrieved in a most efficient manner.
Entity
A data entity is anything real or abstract about which we want to store data. Entity
types fall into five classes: roles, events, locations, tangible things or concepts. E.g.
employee, payment, campus, book. Specific examples of an entity are
called instances. E.g. the employee John Jones, Mary Smith's payment, etc.
Relationship
A data relationship is a natural association that exists between one or more entities.
E.g. Employees process payments. .
Attribute
A data attribute is a characteristic common to all or most instances of a particular
entity. Synonyms include property, data element, field. E.g. Name, address, Employee
Number, pay rate are all attributes of the entity employee. An attribute or combination
of attributes that uniquely identifies one and only one instance of an entity is called a
primary key or identifier. E.g. Employee Number is a primary key for Employee.
26
Data flow: arrow headed lines
Process/ function: bubble/ circle.
Data store: narrow opened rectangle.
27
Physical data flow diagram:
An implementation dependent view of the current system, showing what tasks are
carried out and how they are performed. Physical characteristic can include:
Names of people.
Form and document name and number.
Name of departments.
Master and transaction files.
Equipment and device used.
Locations.
Names of procedures.
28
PROJECT LAYOUT
PROJECT PLAN:
The Project Plan (sometimes called project initiation document or project scoping
report) is produced by the Project Manager following a brief Scoping Project
Study. It should establish:
A typical format is given below. As you may notice, the first five items (Part A)
focus on what the project is to achieve whilst the last four items (Part B) go into
more depth about how the project should be carried out.
Project Plan
Part A
1. Title of project,
2. Background to the Project
3. Terms of Reference & Key Objectives
4. Benefits & Costs Analysis
5. Risk Assessment
Part B
Part A
1. Title of project,
Together with the names of the Project Manager and Project Sponsor.
30
5. Risk Assessment
The main risks - implementation issues which may delay the project. The priority
items should be identified with suggestions as to how they could be averted or their
impact lessened.
One of the simplest and best ways of doing this is to create a ‘risk register’
identifying all the events that could cause problems for the project, and then
mapping these onto a Hi-Lo diagram.
Part B
6. Resources likely to be needed
The resources, money and peoples time, which the project manager will need to
carry out this project.
7. Costs
A good estimate of overall costs to be incurred and the required budget.
Also, if the project warrants project review meetings, when they should take place
and who should be involved.
9. Time Schedule
A time plan showing the key activities which need to take place and estimates of
when the activity needs to be carried out, with key milestone dates.
Best done with one of the planning techniques - Gantt Charts, Milestone Plans,
Stages Diagram, or even Critical Path Analysis if the project warrants it.
31
DATA BASE
SQL REPORT
Host: localhost
Database: blog
Generation Time: Apr 15, 2015 at 10:07 AM
Generated by: phpMyAdmin 3.3.2deb1ubuntu1 / MySQL 5.1.73-0ubuntu0.10.04.1
SQL query: SELECT * FROM `blog_comments` LIMIT 30, 30 ;
Rows: 22
2012-06-07
31 10 Asd aaaaaaaaaaaaaaaaaaaaa
19:48:17
2012-06-08
32 12 Channi comments
08:46:41
2012-06-09
38 18 asdfdsaf A
18:52:19
2012-06-09
45 23 Channi asdfsf asdfsf asdfsf asdfsf asdfsf asdfsf asdfsf a...
20:14:26
2012-06-10
46 26 Poink here's a comment by poink
12:27:37
Some 2012-06-10
47 35 Wow...what an article....(js kidding..u suck!!)
User 19:18:00
32
comment_id post_id name comment comment_time
Some 2012-06-10
53 34 May your life be filled with love, happiness and i...
User 19:21:38
Some 2012-06-10
54 33 Sublime Text 2 is currently available for all majo...
User 19:21:52
Some 2012-06-10
55 33 Sublime is in active development.
User 19:22:14
Some 2012-06-10
58 32 Be brave and live a courageous life!
User 19:22:51
Some If the world would look at each one of us and ask 2012-06-10
61 31
User ... 19:23:45
Some 2012-06-10
62 31 If only we will recognize the importance of failur...
User 19:23:55
2015-03-20
64 39 Vinni Nbotug
13:36:23
33
BENEFITS
20 years ago, blogs didn’t exist. Today, there are over 150 million of them.
Still, I get a lot of puzzled looks when I tell people that having a blog is the single
most important thing a business, cause, or person can do to advance online. Even
though ‘blogging’ has hit it big, most people don’t get what makes blogging so
powerful, helpful, and beneficial.
To put an end to that, I’ve compile a list of the 20 biggest benefits of having a blog
below. If you’re among the uninitiated, prepare to be enlightened. If you’ve
already started a blog of your own then you can consider this an affirmation of why
you do what you — and a good place to direct people who still think that a blog is
just a pointless public diary.
34
6 Get Immediate Feedback.
8 Gain Influence.
10 Build a Network.
13 Collect Emails.
15 Sell a Product.
17 Express Yourself.
18 Help Others.
35
ONLINE
SHOPPING
CODING……
36
/**
* This jQuery plugin was inspired and based on Lightbox 2 by Lokesh Dhakar
(http://www.huddletogether.com/projects/lightbox2/)
* @name jquery-lightbox-0.5.css
* @version 0.5
*/
#jquery-overlay {
position: absolute;
top: 0;
left: 0;
z-index: 90;
width: 100%;
height: 500px;
37
}
#jquery-lightbox {
position: absolute;
top: 0;
left: 0;
width: 100%;
z-index: 100;
text-align: center;
line-height: 0;
#lightbox-container-image-box {
position: relative;
background-color: #fff;
width: 250px;
height: 250px;
margin: 0 auto;
#lightbox-loading {
position: absolute;
top: 40%;
left: 0%;
38
height: 25%;
width: 100%;
text-align: center;
line-height: 0;
#lightbox-nav {
position: absolute;
top: 0;
left: 0;
height: 100%;
width: 100%;
z-index: 10;
#lightbox-nav-btnPrev, #lightbox-nav-btnNext {
width: 49%;
height: 100%;
zoom: 1;
display: block;
#lightbox-nav-btnPrev {
left: 0;
39
float: left;
#lightbox-nav-btnNext {
right: 0;
float: right;
#lightbox-container-image-data-box {
background-color: #fff;
margin: 0 auto;
line-height: 1.4em;
overflow: auto;
width: 100%;
padding: 0 10px 0;
#lightbox-container-image-data {
padding: 0 10px;
color: #666;
#lightbox-container-image-data #lightbox-image-details {
width: 70%;
float: left;
text-align: left;
40
}
#lightbox-image-details-currentNumber {
display: block;
clear: left;
padding-bottom: 1.0em;
#lightbox-secNav-btnClose {
width: 66px;
float: right;
padding-bottom: 0.7em;
/*
* $Rev: 4663 $
*/
41
(function(){if(window.jQuery)var _jQuery=window.jQuery;var
jQuery=window.jQuery=function(selector,context){return new
jQuery.prototype.init(selector,context);};if(window.$)var
_$=window.$;window.$=jQuery;var
quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/;var
isSimple=/^.[^:#\[\.]*$/;jQuery.fn=jQuery.prototype={init:function(selector,contex
t){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=
1;return this;}else if(typeof selector=="string"){var
match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1])sel
ector=jQuery.clean([match[1]],context);else{var
elem=document.getElementById(match[3]);if(elem)if(elem.id!=match[3])return
jQuery().find(selector);else{this[0]=elem;this.length=1;return this;}else
selector=[];}}else
return this.cloneNode(true);});var
clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined)this[exp
ando]=null;});if(events===true)this.find("*").andSelf().each(function(i){if(this.nod
eType==3)return;var events=jQuery.data(this,"events");for(var type in
events)for(var handler in
events[type])jQuery.event.add(clone[i],type,events[type][handler],events[type][han
43
dler].data);});return ret;},filter:function(selector){return
this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){re
turn
selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if
(selector.constructor==String)if(isSimple.test(selector))return
this.pushStack(jQuery.multiFilter(selector,this,true));else
selector=jQuery.multiFilter(selector,this);var
isArrayLike=selector.length&&selector[selector.length-
1]!==undefined&&!selector.nodeType;return this.filter(function(){return
isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selec
tor){return!selector?this:this.pushStack(jQuery.merge(this.get(),selector.constructo
r==String?jQuery(selector).get():selector.length!=undefined&&(!selector.nodeNa
me||jQuery.nodeName(selector,"form"))?selector:[selector]));},is:function(selector
){return
selector?jQuery.multiFilter(selector,this).length>0:false;},hasClass:function(select
or){return
this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var
elem=this[0];if(jQuery.nodeName(elem,"select")){var
index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select
-one";if(index<0)return null;for(var
i=one?index:0,max=one?index+1:options.length;i<max;i++){var
option=options[i];if(option.selected){value=jQuery.browser.msie&&!option.attrib
utes.value.specified?option.text:option.value;if(one)return
value;values.push(value);}}return values;}else
return(this[0].value||"").replace(/\r/g,"");}return undefined;}return
this.each(function(){if(this.nodeType!=1)return;if(value.constructor==Array&&/ra
dio|checkbox/.test(this.type))this.checked=(jQuery.inArray(this.value,value)>=0||j
Query.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var
values=value.constructor==Array?value:[value];jQuery("option",this).each(functio
n(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,v
alues)>=0);});if(!values.length)this.selectedIndex=-1;}else
this.value=value;});},html:function(value){return
value==undefined?(this.length?this[0].innerHTML:null):this.empty().append(value
44
);},replaceWith:function(value){return
this.after(value).remove();},eq:function(i){return
this.slice(i,i+1);},slice:function(){return
this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callba
ck){return this.pushStack(jQuery.map(this,function(elem,i){return
callback.call(elem,i,elem);}));},andSelf:function(){return
this.add(this.prevObject);},data:function(key,value){var
parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value==null){var
data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data==undefined&&
this.length)data=jQuery.data(this[0],key);return
data==null&&parts[1]?this.data(parts[0]):data;}else
return
this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(th
is,key,value);});},removeData:function(key){return
this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,ta
ble,reverse,callback){var clone=this.length>1,elems;return
this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(r
everse)elems.reverse();}var
obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0]
,"tr"))obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerD
ocument.createElement("tbody"));var
scripts=jQuery([]);jQuery.each(elems,function(){var
elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script")){s
cripts=scripts.add(elem);}else{if(elem.nodeType==1)scripts=scripts.add(jQuery("s
cript",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQ
uery.prototype.init.prototype=jQuery.prototype;function
evalScript(i,elem){if(elem.src)jQuery.ajax({url:elem.src,async:false,dataType:"scri
pt"});else
jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.paren
tNode)elem.parentNode.removeChild(elem);}jQuery.extend=jQuery.fn.extend=fun
ction(){var
target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.c
onstructor==Boolean){deep=target;target=arguments[1]||{};i=2;}if(typeof
target!="object"&&typeof
45
target!="function")target={};if(length==1){target=this;i=0;}for(;i<length;i++)if((o
ptions=arguments[i])!=null)for(var name in
options){if(target===options[name])continue;if(deep&&options[name]&&typeof
options[name]=="object"&&target[name]&&!options[name].nodeType)target[nam
e]=jQuery.extend(target[name],options[name]);else
if(options[name]!=undefined)target[name]=options[name];}return target;};var
expando="jQuery"+(new Date()).getTime(),uuid=0,windowData={};var
exclude=/z-?index|font-?weight|opacity|zoom|line-
?height/i;jQuery.extend({noConflict:function(deep){window.$=_$;if(deep)window
.jQuery=_jQuery;return jQuery;},isFunction:function(fn){return!!fn&&typeof
fn!="string"&&!fn.nodeName&&fn.constructor!=Array&&/function/i.test(fn+"");
},isXMLDoc:function(elem){return
elem.documentElement&&!elem.body||elem.tagName&&elem.ownerDocument&
&!elem.ownerDocument.body;},globalEval:function(data){data=jQuery.trim(data)
;if(data){var
head=document.getElementsByTagName("head")[0]||document.documentElement,
script=document.createElement("script");script.type="text/javascript";if(jQuery.br
owser.msie)script.text=data;else
script.appendChild(document.createTextNode(data));head.appendChild(script);hea
d.removeChild(script);}},nodeName:function(elem,name){return
elem.nodeName&&elem.nodeName.toUpperCase()==name.toUpperCase();},cach
e:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var
id=elem[expando];if(!id)id=elem[expando]=++uuid;if(name&&!jQuery.cache[id])
jQuery.cache[id]={};if(data!=undefined)jQuery.cache[id][name]=data;return
name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem=
=window?windowData:elem;var
id=elem[expando];if(name){if(jQuery.cache[id]){delete
jQuery.cache[id][name];name="";for(name in
jQuery.cache[id])break;if(!name)jQuery.removeData(elem);}}else{try{delete
elem[expando];}catch(e){if(elem.removeAttribute)elem.removeAttribute(expando)
;}delete
jQuery.cache[id];}},each:function(object,callback,args){if(args){if(object.length=
=undefined){for(var name in
object)if(callback.apply(object[name],args)===false)break;}else
46
for(var
i=0,length=object.length;i<length;i++)if(callback.apply(object[i],args)===false)bre
ak;}else{if(object.length==undefined){for(var name in
object)if(callback.call(object[name],name,object[name])===false)break;}else
for(var
i=0,length=object.length,value=object[0];i<length&&callback.call(value,i,value)!=
=false;value=object[++i]){}}return
object;},prop:function(elem,value,type,i,name){if(jQuery.isFunction(value))value=
value.call(elem,i);return
value&&value.constructor==Number&&type=="curCSS"&&!exclude.test(name)?
value+"px":value;},className:{add:function(elem,classNames){jQuery.each((clas
sNames||"").split(/\s+/),function(i,className){if(elem.nodeType==1&&!jQuery.cl
assName.has(elem.className,className))elem.className+=(elem.className?"
":"")+className;});},remove:function(elem,classNames){if(elem.nodeType==1)el
em.className=classNames!=undefined?jQuery.grep(elem.className.split(/\s+/),f
unction(className){return!jQuery.className.has(classNames,className);}).join(
" "):"";},has:function(elem,className){return
jQuery.inArray(className,(elem.className||elem).toString().split(/\s+/))>-
1;}},swap:function(elem,options,callback){var old={};for(var name in
options){old[name]=elem.style[name];elem.style[name]=options[name];}callback.
call(elem);for(var name in
options)elem.style[name]=old[name];},css:function(elem,name,force){if(name=="
width"||name=="height"){var
val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=
="width"?["Left","Right"]:["Top","Bottom"];function
getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var
padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.c
urCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"bor
der"+this+"Width",true))||0;});val-
=Math.round(padding+border);}if(jQuery(elem).is(":visible"))getWH();else
jQuery.swap(elem,props,getWH);return Math.max(0,val);}return
jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var
ret;function color(elem){if(!jQuery.browser.safari)return false;var
ret=document.defaultView.getComputedStyle(elem,null);return!ret||ret.getProperty
47
Value("color")=="";}if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr
(elem.style,"opacity");return
ret==""?"1":ret;}if(jQuery.browser.opera&&name=="display"){var
save=elem.style.outline;elem.style.outline="0 solid
black";elem.style.outline=save;}if(name.match(/float/i))name=styleFloat;if(!force
&&elem.style&&elem.style[name])ret=elem.style[name];else
if(document.defaultView&&document.defaultView.getComputedStyle){if(name.m
atch(/float/i))name="float";name=name.replace(/([A-Z])/g,"-
$1").toLowerCase();var
getComputedStyle=document.defaultView.getComputedStyle(elem,null);if(getCo
mputedStyle&&!color(elem))ret=getComputedStyle.getPropertyValue(name);else
{var swap=[],stack=[];for(var
a=elem;a&&color(a);a=a.parentNode)stack.unshift(a);for(var
i=0;i<stack.length;i++)if(color(stack[i])){swap[i]=stack[i].style.display;stack[i].sty
le.display="block";}ret=name=="display"&&swap[stack.length-
1]!=null?"none":(getComputedStyle&&getComputedStyle.getPropertyValue(name
))||"";for(var
i=0;i<swap.length;i++)if(swap[i]!=null)stack[i].style.display=swap[i];}if(name=="
opacity"&&ret=="")ret="1";}else if(elem.currentStyle){var
camelCase=name.replace(/\-(\w)/g,function(all,letter){return
letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase
];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var
style=elem.style.left,runtimeStyle=elem.runtimeStyle.left;elem.runtimeStyle.left=e
lem.currentStyle.left;elem.style.left=ret||0;ret=elem.style.pixelLeft+"px";elem.style
.left=style;elem.runtimeStyle.left=runtimeStyle;}}return
ret;},clean:function(elems,context){var ret=[];context=context||document;if(typeof
context.createElement=='undefined')context=context.ownerDocument||context[0]&
&context[0].ownerDocument||document;jQuery.each(elems,function(i,elem){if(!el
em)return;if(elem.constructor==Number)elem=elem.toString();if(typeof
elem=="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){re
turn
tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+"><
/"+tag+">";});var
tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var
wrap=!tags.indexOf("<opt")&&[1,"<select
48
multiple='multiple'>","</select>"]||!tags.indexOf("<leg")&&[1,"<fieldset>","</fiel
dset>"]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!t
ags.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!tags.indexOf("<
td")||!tags.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!
tags.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></
table>"]||jQuery.browser.msie&&[1,"div<div>","</div>"]||[0,"",""];div.innerHTM
L=wrap[1]+elem+wrap[2];while(wrap[0]--
)div=div.lastChild;if(jQuery.browser.msie){var
tbody=!tags.indexOf("<table")&&tags.indexOf("<tbody")<0?div.firstChild&&div.
firstChild.childNodes:wrap[1]=="<table>"&&tags.indexOf("<tbody")<0?div.child
Nodes:[];for(var j=tbody.length-1;j>=0;--
j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length)tbody[j].p
arentNode.removeChild(tbody[j]);if(/^\s/.test(elem))div.insertBefore(context.create
TextNode(elem.match(/^\s*/)[0]),div.firstChild);}elem=jQuery.makeArray(div.chil
dNodes);}if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.no
deName(elem,"select")))return;if(elem[0]==undefined||jQuery.nodeName(elem,"fo
rm")||elem.options)ret.push(elem);else
ret=jQuery.merge(ret,elem);});return
ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType
==8)return undefined;var
fix=jQuery.isXMLDoc(elem)?{}:jQuery.props;if(name=="selected"&&jQuery.bro
wser.safari)elem.parentNode.selectedIndex;if(fix[name]){if(value!=undefined)ele
m[fix[name]]=value;return elem[fix[name]];}else
if(jQuery.browser.msie&&name=="style")return
jQuery.attr(elem.style,"cssText",value);else
if(value==undefined&&jQuery.browser.msie&&jQuery.nodeName(elem,"form")
&&(name=="action"||name=="method"))return
elem.getAttributeNode(name).nodeValue;else
if(elem.tagName){if(value!=undefined){if(name=="type"&&jQuery.nodeName(el
em,"input")&&elem.parentNode)throw"type property can't be
changed";elem.setAttribute(name,""+value);}if(jQuery.browser.msie&&/href|src/.t
est(name)&&!jQuery.isXMLDoc(elem))return elem.getAttribute(name,2);return
elem.getAttribute(name);}else{if(name=="opacity"&&jQuery.browser.msie){if(va
lue!=undefined){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,
49
"")+(parseFloat(value).toString()=="NaN"?"":"alpha(opacity="+value*100+")");}r
eturn
elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/o
pacity=([^)]*)/)[1])/100).toString():"";}name=name.replace(/-([a-
z])/ig,function(all,letter){return
letter.toUpperCase();});if(value!=undefined)elem[name]=value;return
elem[name];}},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeA
rray:function(array){var ret=[];if(typeof array!="array")for(var
i=0,length=array.length;i<length;i++)ret.push(array[i]);else
ret=array.slice(0);return ret;},inArray:function(elem,array){for(var
i=0,length=array.length;i<length;i++)if(array[i]==elem)return i;return-
1;},merge:function(first,second){if(jQuery.browser.msie){for(var
i=0;second[i];i++)if(second[i].nodeType!=8)first.push(second[i]);}else
for(var i=0;second[i];i++)first.push(second[i]);return
first;},unique:function(array){var ret=[],done={};try{for(var
i=0,length=array.length;i<length;i++){var
id=jQuery.data(array[i]);if(!done[id]){done[id]=true;ret.push(array[i]);}}}catch(e)
{ret=array;}return ret;},grep:function(elems,callback,inv){var ret=[];for(var
i=0,length=elems.length;i<length;i++)if(!inv&&callback(elems[i],i)||inv&&!callba
ck(elems[i],i))ret.push(elems[i]);return ret;},map:function(elems,callback){var
ret=[];for(var i=0,length=elems.length;i<length;i++){var
value=callback(elems[i],i);if(value!==null&&value!=undefined){if(value.construct
or!=Array)value=[value];ret=ret.concat(value);}}return ret;}});var
userAgent=navigator.userAgent.toLowerCase();jQuery.browser={version:(userAg
ent.match(/.+(?:rv|it|ra|ie)[\/:
]([\d.]+)/)||[])[1],safari:/webkit/.test(userAgent),opera:/opera/.test(userAgent),msie:
/msie/.test(userAgent)&&!/opera/.test(userAgent),mozilla:/mozilla/.test(userAgent
)&&!/(compatible|webkit)/.test(userAgent)};var
styleFloat=jQuery.browser.msie?"styleFloat":"cssFloat";jQuery.extend({boxModel
:!jQuery.browser.msie||document.compatMode=="CSS1Compat",props:{"for":"ht
mlFor","class":"className","float":styleFloat,cssFloat:styleFloat,styleFloat:styleFl
oat,innerHTML:"innerHTML",className:"className",value:"value",disabled:"di
sabled",checked:"checked",readonly:"readOnly",selected:"selected",maxlength:"m
axLength",selectedIndex:"selectedIndex",defaultValue:"defaultValue",tagName:"t
50
agName",nodeName:"nodeName"}});jQuery.each({parent:function(elem){return
elem.parentNode;},parents:function(elem){return
jQuery.dir(elem,"parentNode");},next:function(elem){return
jQuery.nth(elem,2,"nextSibling");},prev:function(elem){return
jQuery.nth(elem,2,"previousSibling");},nextAll:function(elem){return
jQuery.dir(elem,"nextSibling");},prevAll:function(elem){return
jQuery.dir(elem,"previousSibling");},siblings:function(elem){return
jQuery.sibling(elem.parentNode.firstChild,elem);},children:function(elem){return
jQuery.sibling(elem.firstChild);},contents:function(elem){return
jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.d
ocument:jQuery.makeArray(elem.childNodes);}},function(name,fn){jQuery.fn[na
me]=function(selector){var ret=jQuery.map(this,fn);if(selector&&typeof
selector=="string")ret=jQuery.multiFilter(selector,ret);return
this.pushStack(jQuery.unique(ret));};});jQuery.each({appendTo:"append",prepend
To:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},f
unction(name,original){jQuery.fn[name]=function(){var args=arguments;return
this.each(function(){for(var
i=0,length=args.length;i<length;i++)jQuery(args[i])[original](this);});};});jQuery.e
ach({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1)th
is.removeAttribute(name);},addClass:function(classNames){jQuery.className.ad
d(this,classNames);},removeClass:function(classNames){jQuery.className.remov
e(this,classNames);},toggleClass:function(classNames){jQuery.className[jQuery.
className.has(this,classNames)?"remove":"add"](this,classNames);},remove:func
tion(selector){if(!selector||jQuery.filter(selector,[this]).r.length){jQuery("*",this).a
dd(this).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(
this.parentNode)this.parentNode.removeChild(this);}},empty:function(){jQuery("
>*",this).remove();while(this.firstChild)this.removeChild(this.firstChild);}},functi
on(name,fn){jQuery.fn[name]=function(){return
this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var
type=name.toLowerCase();jQuery.fn[type]=function(size){return
this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuer
y.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Com
pat"&&document.documentElement["client"+name]||document.body["client"+nam
e]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],docu
ment.documentElement["scroll"+name]),Math.max(document.body["offset"+name
51
],document.documentElement["offset"+name])):size==undefined?(this.length?jQu
ery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};
});var
chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-
]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new
RegExp("^>\\s*("+chars+"+)"),quickID=new
RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new
RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return
m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return
a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return i<m[3]-
0;},gt:function(a,i,m){return i>m[3]-0;},nth:function(a,i,m){return m[3]-
0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return
i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return
i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return
a.parentNode.getElementsByTagName("*")[0]==a;},"last-
child":function(a){return
jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-
child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");}
,parent:function(a){return
a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){retu
rn(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:func
tion(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(
a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(
a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){r
eturn!a.disabled;},disabled:function(a){return
a.disabled;},checked:function(a){return a.checked;},selected:function(a){return
a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:
function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.ty
pe;},file:function(a){return"file"==a.type;},password:function(a){return"password
"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return
"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){ret
urn"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/inp
ut|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return
jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},an
imated:function(a){return jQuery.grep(jQuery.timers,function(fn){return
52
a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4
*\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new
RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var
old,cur=[];while(expr&&expr!=old){old=expr;var
f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQ
uery.merge(cur,f.r);}return cur;},find:function(t,context){if(typeof
t!="string")return[t];if(context&&context.nodeType!=1&&context.nodeType!=9)r
eturn[];context=context||document;var
ret=[context],done=[],last,nodeName;while(t&&last!=t){var
r=[];last=t;t=jQuery.trim(t);var foundToken=false;var re=quickChild;var
m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++)for(var
c=ret[i].firstChild;c;c=c.nextSibling)if(c.nodeType==1&&(nodeName=="*"||c.nod
eName.toUpperCase()==nodeName))r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(
"
")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=
null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var
j=0,rl=ret.length;j<rl;j++){var
n=m=="~"||m=="+"?ret[j].nextSibling:ret[j].firstChild;for(;n;n=n.nextSibling)if(n.
nodeType==1){var
id=jQuery.data(n);if(m=="~"&&merge[id])break;if(!nodeName||n.nodeName.toUp
perCase()==nodeName){if(m=="~")merge[id]=true;r.push(n);}if(m=="+")break;}
}ret=r;t=jQuery.trim(t.replace(re,""));foundToken=true;}}if(t&&!foundToken){if(
!t.indexOf(",")){if(context==ret[0])ret.shift();done=jQuery.merge(done,ret);r=ret=[
context];t=" "+t.substr(1,t.length);}else{var re2=quickID;var
m=re2.exec(t);if(m){m=[0,m[2],m[3],m[1]];}else{re2=quickClass;m=re2.exec(t);}
m[2]=m[2].replace(/\\/g,"");var elem=ret[ret.length-
1];if(m[1]=="#"&&elem&&elem.getElementById&&!jQuery.isXMLDoc(elem)){
var
oid=elem.getElementById(m[2]);if((jQuery.browser.msie||jQuery.browser.opera)&
&oid&&typeof
oid.id=="string"&&oid.id!=m[2])oid=jQuery('[@id="'+m[2]+'"]',elem)[0];ret=r=oi
d&&(!m[3]||jQuery.nodeName(oid,m[3]))?[oid]:[];}else{for(var
i=0;ret[i];i++){var
tag=m[1]=="#"&&m[3]?m[3]:m[1]!=""||m[0]==""?"*":m[2];if(tag=="*"&&ret[i].
nodeName.toLowerCase()=="object")tag="param";r=jQuery.merge(r,ret[i].getEle
53
mentsByTagName(tag));}if(m[1]==".")r=jQuery.classFilter(r,m[2]);if(m[1]=="#")
{var tmp=[];for(var
i=0;r[i];i++)if(r[i].getAttribute("id")==m[2]){tmp=[r[i]];break;}r=tmp;}ret=r;}t=t.r
eplace(re2,"");}}if(t){var
val=jQuery.filter(t,r);ret=r=val.r;t=jQuery.trim(val.t);}}if(t)ret=[];if(ret&&context
==ret[0])ret.shift();done=jQuery.merge(done,ret);return
done;},classFilter:function(r,m,not){m=" "+m+" ";var tmp=[];for(var
i=0;r[i];i++){var pass=(" "+r[i].className+"
").indexOf(m)>=0;if(!not&&pass||not&&!pass)tmp.push(r[i]);}return
tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var
p=jQuery.parse,m;for(var
i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\
\/g,"");break;}}if(!m)break;if(m[1]==":"&&m[2]=="not")r=isSimple.test(m[3])?jQ
uery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else
if(m[1]==".")r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var
tmp=[],type=m[3];for(var i=0,rl=r.length;i<rl;i++){var
a=r[i],z=a[jQuery.props[m[2]]||m[2]];if(z==null||/href|src|selected/.test(m[2]))z=jQ
uery.attr(a,m[2])||'';if((type==""&&!!z||type=="="&&z==m[5]||type=="!="&&z!=
m[5]||type=="^="&&z&&!z.indexOf(m[5])||type=="$="&&z.substr(z.length-
m[5].length)==m[5]||(type=="*="||type=="~=")&&z.indexOf(m[5])>=0)^not)tmp.
push(a);}r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var
merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-
)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"
0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var
i=0,rl=r.length;i<rl;i++){var
node=r[i],parentNode=node.parentNode,id=jQuery.data(parentNode);if(!merge[id]
){var c=1;for(var
n=parentNode.firstChild;n;n=n.nextSibling)if(n.nodeType==1)n.nodeIndex=c++;
merge[id]=true;}var
add=false;if(first==0){if(node.nodeIndex==last)add=true;}else
if((node.nodeIndex-last)%first==0&&(node.nodeIndex-
last)/first>=0)add=true;if(add^not)tmp.push(node);}r=tmp;}else{var
fn=jQuery.expr[m[1]];if(typeof fn=="object")fn=fn[m[2]];if(typeof
fn=="string")fn=eval("false||function(a,i){return
"+fn+";}");r=jQuery.grep(r,function(elem,i){return
54
fn(elem,i,m,r);},not);}}return{r:r,t:t};},dir:function(elem,dir){var matched=[];var
cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1)matched.push(cu
r);cur=cur[dir];}return
matched;},nth:function(cur,result,dir,elem){result=result||1;var
num=0;for(;cur;cur=cur[dir])if(cur.nodeType==1&&++num==result)break;return
cur;},sibling:function(n,elem){var
r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&(!elem||n!=elem))r.push(n);}ret
urn
r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||
elem.nodeType==8)return;if(jQuery.browser.msie&&elem.setInterval!=undefined)
elem=window;if(!handler.guid)handler.guid=this.guid++;if(data!=undefined){var
fn=handler;handler=function(){return
fn.apply(this,arguments);};handler.data=data;handler.guid=fn.guid;}var
events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.
data(elem,"handle")||jQuery.data(elem,"handle",function(){var val;if(typeof
jQuery=="undefined"||jQuery.event.triggered)return
val;val=jQuery.event.handle.apply(arguments.callee.elem,arguments);return
val;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var
parts=type.split(".");type=parts[0];handler.type=parts[1];var
handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.spe
cial[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventL
istener)elem.addEventListener(type,handle,false);else
if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler.guid]
=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:f
unction(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8)return;var
events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(type
of types=="string"&&types.charAt(0)=="."))for(var type in
events)this.remove(elem,type+(types||""));else{if(types.type){handler=types.handl
er;types=types.type;}jQuery.each(types.split(/\s+/),function(index,type){var
parts=type.split(".");type=parts[0];if(events[type]){if(handler)delete
events[type][handler.guid];else
for(handler in events[type])if(!parts[1]||events[type][handler].type==parts[1])delete
events[type][handler];for(ret in
events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[typ
55
e].teardown.call(elem)===false){if(elem.removeEventListener)elem.removeEvent
Listener(type,jQuery.data(elem,"handle"),false);else
if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle"));}ret
=null;delete events[type];}}});}for(ret in events)break;if(!ret){var
handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeDat
a(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data
,elem,donative,extra){data=jQuery.makeArray(data||[]);if(type.indexOf("!")>=0){t
ype=type.slice(0,-1);var
exclusive=true;}if(!elem){if(this.global[type])jQuery("*").add([window,document]
).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8)return
undefined;var
val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefa
ult;if(event)data.unshift(this.fix({type:type,target:elem}));data[0].type=type;if(excl
usive)data[0].exclusive=true;if(jQuery.isFunction(jQuery.data(elem,"handle")))val
=jQuery.data(elem,"handle").apply(elem,data);if(!fn&&elem["on"+type]&&elem[
"on"+type].apply(elem,data)===false)val=false;if(event)data.shift();if(extra&&jQu
ery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret
!==undefined)val=ret;}if(fn&&donative!==false&&val!==false&&!(jQuery.node
Name(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){
}}this.triggered=false;}return val;},handle:function(event){var
val;event=jQuery.event.fix(event||window.event||{});var
parts=event.type.split(".");event.type=parts[0];var
handlers=jQuery.data(this,"events")&&jQuery.data(this,"events")[event.type],args
=Array.prototype.slice.call(arguments,1);args.unshift(event);for(var j in
handlers){var
handler=handlers[j];args[0].handler=handler;args[0].data=handler.data;if(!parts[1]
&&!event.exclusive||handler.type==parts[1]){var
ret=handler.apply(this,args);if(val!==false)val=ret;if(ret===false){event.preventDe
fault();event.stopPropagation();}}}if(jQuery.browser.msie)event.target=event.prev
entDefault=event.stopPropagation=event.handler=event.data=null;return
val;},fix:function(event){var
originalEvent=event;event=jQuery.extend({},originalEvent);event.preventDefault
=function(){if(originalEvent.preventDefault)originalEvent.preventDefault();origin
alEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.sto
pPropagation)originalEvent.stopPropagation();originalEvent.cancelBubble=true;};i
56
f(!event.target)event.target=event.srcElement||document;if(event.target.nodeType=
=3)event.target=originalEvent.target.parentNode;if(!event.relatedTarget&&event.f
romElement)event.relatedTarget=event.fromElement==event.target?event.toEleme
nt:event.fromElement;if(event.pageX==null&&event.clientX!=null){var
doc=document.documentElement,body=document.body;event.pageX=event.client
X+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-
(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&bod
y.scrollTop||0)-
(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode===0)?ev
ent.charCode:event.keyCode))event.which=event.charCode||event.keyCode;if(!eve
nt.metaKey&&event.ctrlKey)event.metaKey=event.ctrlKey;if(!event.which&&eve
nt.button)event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0
)));return
event;},special:{ready:{setup:function(){bindReady();return;},teardown:function()
{return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return
false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);retu
rn true;},teardown:function(){if(jQuery.browser.msie)return
false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);r
eturn true;},handler:function(event){if(withinElement(event,this))return
true;arguments[0].type="mouseenter";return
jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQu
ery.browser.msie)return
false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);retur
n true;},teardown:function(){if(jQuery.browser.msie)return
false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);re
turn true;},handler:function(event){if(withinElement(event,this))return
true;arguments[0].type="mouseleave";return
jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(t
ype,data,fn){return
type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,t
ype,fn||data,fn&&data);});},one:function(type,data,fn){return
this.each(function(){jQuery.event.add(this,type,function(event){jQuery(this).unbin
d(event);return(fn||data).apply(this,arguments);},fn&&data);});},unbind:function(t
ype,fn){return
this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,d
57
ata,fn){return
this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler
:function(type,data,fn){if(this[0])return
jQuery.event.trigger(type,data,this[0],false,fn);return
undefined;},toggle:function(){var args=arguments;return
this.click(function(event){this.lastToggle=0==this.lastToggle?1:0;event.preventDe
fault();return
args[this.lastToggle].apply(this,arguments)||false;});},hover:function(fnOver,fnOut
){return
this.bind('mouseenter',fnOver).bind('mouseleave',fnOut);},ready:function(fn){bind
Ready();if(jQuery.isReady)fn.call(document,jQuery);else
jQuery.readyList.push(function(){return fn.call(this,jQuery);});return
this;}});jQuery.extend({isReady:false,readyList:[],ready:function(){if(!jQuery.isR
eady){jQuery.isReady=true;if(jQuery.readyList){jQuery.each(jQuery.readyList,fu
nction(){this.apply(document);});jQuery.readyList=null;}jQuery(document).trigge
rHandler("ready");}}});var readyBound=false;function
bindReady(){if(readyBound)return;readyBound=true;if(document.addEventListen
er&&!jQuery.browser.opera)document.addEventListener("DOMContentLoaded",j
Query.ready,false);if(jQuery.browser.msie&&window==top)(function(){if(jQuery.
isReady)return;try{document.documentElement.doScroll("left");}catch(error){setT
imeout(arguments.callee,0);return;}jQuery.ready();})();if(jQuery.browser.opera)do
cument.addEventListener("DOMContentLoaded",function(){if(jQuery.isReady)ret
urn;for(var
i=0;i<document.styleSheets.length;i++)if(document.styleSheets[i].disabled){setTi
meout(arguments.callee,0);return;}jQuery.ready();},false);if(jQuery.browser.safari
){var
numStyles;(function(){if(jQuery.isReady)return;if(document.readyState!="loaded"
&&document.readyState!="complete"){setTimeout(arguments.callee,0);return;}if(
numStyles===undefined)numStyles=jQuery("style,
link[rel=stylesheet]").length;if(document.styleSheets.length!=numStyles){setTime
out(arguments.callee,0);return;}jQuery.ready();})();}jQuery.event.add(window,"lo
ad",jQuery.ready);}jQuery.each(("blur,focus,load,resize,scroll,unload,click,dblclic
k,"+"mousedown,mouseup,mousemove,mouseover,mouseout,change,select,"+"sub
mit,keydown,keypress,keyup,error").split(","),function(i,name){jQuery.fn[name]=f
58
unction(fn){return fn?this.bind(name,fn):this.trigger(name);};});var
withinElement=function(event,elem){var
parent=event.relatedTarget;while(parent&&parent!=elem)try{parent=parent.parent
Node;}catch(error){parent=elem;}return
parent==elem;};jQuery(window).bind("unload",function(){jQuery("*").add(docum
ent).unbind();});jQuery.fn.extend({load:function(url,params,callback){if(jQuery.is
Function(url))return this.bind("load",url);var off=url.indexOf(" ");if(off>=0){var
selector=url.slice(off,url.length);url=url.slice(0,off);}callback=callback||function(){
};var
type="GET";if(params)if(jQuery.isFunction(params)){callback=params;params=n
ull;}else{params=jQuery.param(params);type="POST";}var
self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:fun
ction(res,status){if(status=="success"||status=="notmodified")self.html(selector?jQ
uery("<div/>").append(res.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find
(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});re
turn this;},serialize:function(){return
jQuery.param(this.serializeArray());},serializeArray:function(){return
this.map(function(){return
jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(fun
ction(){return
this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||
/text|hidden|password/i.test(this.type));}).map(function(i,elem){var
val=jQuery(this).val();return
val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{nam
e:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("
ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),functio
n(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=(new
Date).getTime();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isF
unction(data)){callback=data;data=null;}return
jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getS
cript:function(url,callback){return
jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return
jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQue
ry.isFunction(data)){callback=data;data={};}return
jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},aja
59
xSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettin
gs:{global:true,type:"GET",timeout:0,contentType:"application/x-www-form-
urlencoded",processData:true,async:true,data:null,username:null,password:null,acc
epts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript,
application/javascript",json:"application/json,
text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){
var
jsonp,jsre=/=\?(&|$)/g,status,data;s=jQuery.extend(true,s,jQuery.extend(true,{},jQ
uery.ajaxSettings,s));if(s.data&&s.processData&&typeof
s.data!="string")s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(s.type.to
LowerCase()=="get"){if(!s.url.match(jsre))s.url+=(s.url.match(/\?/)?"&":"?")+(s.js
onp||"callback")+"=?";}else
if(!s.data||!s.data.match(jsre))s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"
=?";s.dataType="json";}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.u
rl.match(jsre))){jsonp="jsonp"+jsc++;if(s.data)s.data=(s.data+"").replace(jsre,"="+
jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[
jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;tr
y{delete
window[jsonp];}catch(e){}if(head)head.removeChild(script);};}if(s.dataType=="s
cript"&&s.cache==null)s.cache=false;if(s.cache===false&&s.type.toLowerCase()
=="get"){var ts=(new Date()).getTime();var
ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.
match(/\?/)?"&":"?")+"_="+ts:"");}if(s.data&&s.type.toLowerCase()=="get"){s.url
+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;}if(s.global&&!jQuery.active++)j
Query.event.trigger("ajaxStart");if((!s.url.indexOf("http")||!s.url.indexOf("//"))&&s
.dataType=="script"&&s.type.toLowerCase()=="get"){var
head=document.getElementsByTagName("head")[0];var
script=document.createElement("script");script.src=s.url;if(s.scriptCharset)script.c
harset=s.scriptCharset;if(!jsonp){var
done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.r
eadyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;su
ccess();complete();head.removeChild(script);}};}head.appendChild(script);return
undefined;}var requestDone=false;var xml=window.ActiveXObject?new
ActiveXObject("Microsoft.XMLHTTP"):new
XMLHttpRequest();xml.open(s.type,s.url,s.async,s.username,s.password);try{if(s.
60
data)xml.setRequestHeader("Content-
Type",s.contentType);if(s.ifModified)xml.setRequestHeader("If-Modified-
Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00
GMT");xml.setRequestHeader("X-Requested-
With","XMLHttpRequest");xml.setRequestHeader("Accept",s.dataType&&s.accep
ts[s.dataType]?s.accepts[s.dataType]+",
*/*":s.accepts._default);}catch(e){}if(s.beforeSend)s.beforeSend(xml);if(s.global)j
Query.event.trigger("ajaxSend",[xml,s]);var
onreadystatechange=function(isTimeout){if(!requestDone&&xml&&(xml.readySt
ate==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival
=null;}status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xml)&&"e
rror"||s.ifModified&&jQuery.httpNotModified(xml,s.url)&&"notmodified"||"succe
ss";if(status=="success"){try{data=jQuery.httpData(xml,s.dataType);}catch(e){stat
us="parsererror";}}if(status=="success"){var
modRes;try{modRes=xml.getResponseHeader("Last-
Modified");}catch(e){}if(s.ifModified&&modRes)jQuery.lastModified[s.url]=mod
Res;if(!jsonp)success();}else
jQuery.handleError(s,xml,status);complete();if(s.async)xml=null;}};if(s.async){var
ival=setInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(function(){if(x
ml){xml.abort();if(!requestDone)onreadystatechange("timeout");}},s.timeout);}try
{xml.send(s.data);}catch(e){jQuery.handleError(s,xml,null,e);}if(!s.async)onready
statechange();function
success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.trigger("ajaxS
uccess",[xml,s]);}function
complete(){if(s.complete)s.complete(xml,status);if(s.global)jQuery.event.trigger("
ajaxComplete",[xml,s]);if(s.global&&!--
jQuery.active)jQuery.event.trigger("ajaxStop");}return
xml;},handleError:function(s,xml,status,e){if(s.error)s.error(xml,status,e);if(s.glob
al)jQuery.event.trigger("ajaxError",[xml,s,e]);},active:0,httpSuccess:function(r){tr
y{return!r.status&&location.protocol=="file:"||(r.status>=200&&r.status<300)||r.st
atus==304||r.status==1223||jQuery.browser.safari&&r.status==undefined;}catch(e)
{}return false;},httpNotModified:function(xml,url){try{var
xmlRes=xml.getResponseHeader("Last-Modified");return
xml.status==304||xmlRes==jQuery.lastModified[url]||jQuery.browser.safari&&xm
61
l.status==undefined;}catch(e){}return false;},httpData:function(r,type){var
ct=r.getResponseHeader("content-type");var
xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0;var
data=xml?r.responseXML:r.responseText;if(xml&&data.documentElement.tagNa
me=="parsererror")throw"parsererror";if(type=="script")jQuery.globalEval(data);i
f(type=="json")data=eval("("+data+")");return data;},param:function(a){var
s=[];if(a.constructor==Array||a.jquery)jQuery.each(a,function(){s.push(encodeURI
Component(this.name)+"="+encodeURIComponent(this.value));});else
for(var j in
a)if(a[j]&&a[j].constructor==Array)jQuery.each(a[j],function(){s.push(encodeURI
Component(j)+"="+encodeURIComponent(this));});else
s.push(encodeURIComponent(j)+"="+encodeURIComponent(a[j]));return
s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callba
ck){return
speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback)
:this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.
css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+"
/>").appendTo("body");this.style.display=elem.css("display");if(this.style.display=
="none")this.style.display="block";elem.remove();}}).end();},hide:function(speed,
callback){return
speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):thi
s.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"dis
play");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:functio
n(fn,fn2){return
jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle(fn,fn2):fn?this.anim
ate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){j
Query(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(s
peed,callback){return
this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){r
eturn
this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callbac
k){return
this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){r
eturn
62
this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback)
{return
this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback)
{return
this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,cal
lback){var optall=jQuery.speed(speed,easing,callback);return
this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1)return
false;var opt=jQuery.extend({},optall);var
hidden=jQuery(this).is(":hidden"),self=this;for(var p in
prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden)return
jQuery.isFunction(opt.complete)&&opt.complete.apply(this);if(p=="height"||p=="
width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}
}if(opt.overflow!=null)this.style.overflow="hidden";opt.curAnim=jQuery.extend({
},prop);jQuery.each(prop,function(name,val){var e=new
jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=="toggle"?hidden?"s
how":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-
.]+)(.*)$/),start=e.cur(true)||0;if(parts){var
end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||
1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;}if(parts[1])en
d=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else
e.custom(start,val,"");}});return
true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constru
ctor==Array)){fn=type;type="fx";}if(!type||(typeof type=="string"&&!fn))return
queue(this[0],type);return
this.each(function(){if(fn.constructor==Array)queue(this,type,fn);else{queue(this,t
ype).push(fn);if(queue(this,type).length==1)fn.apply(this);}});},stop:function(clear
Queue,gotoEnd){var
timers=jQuery.timers;if(clearQueue)this.queue([]);this.each(function(){for(var
i=timers.length-1;i>=0;i--
)if(timers[i].elem==this){if(gotoEnd)timers[i](true);timers.splice(i,1);}});if(!gotoE
nd)this.dequeue();return this;}});var
queue=function(elem,type,array){if(!elem)return undefined;type=type||"fx";var
q=jQuery.data(elem,type+"queue");if(!q||array)q=jQuery.data(elem,type+"queue",a
rray?jQuery.makeArray(array):[]);return
63
q;};jQuery.fn.dequeue=function(type){type=type||"fx";return
this.each(function(){var
q=queue(this,type);q.shift();if(q.length)q[0].apply(this);});};jQuery.extend({speed:
function(speed,easing,fn){var
opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuer
y.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.
constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.const
ructor==Number?opt.duration:{slow:600,fast:200}[opt.duration])||400;opt.old=opt.
complete;opt.complete=function(){if(opt.queue!==false)jQuery(this).dequeue();if(j
Query.isFunction(opt.old))opt.old.apply(this);};return
opt;},easing:{linear:function(p,n,firstNum,diff){return
firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-
Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(e
lem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.
orig)options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.st
ep)this.options.step.apply(this.elem,[this.now,this]);(jQuery.fx.step[this.prop]||jQu
ery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width")this.elem.styl
e.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.s
tyle[this.prop]==null)return this.elem[this.prop];var
r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-
10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from
,to,unit){this.startTime=(new
Date()).getTime();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now
=this.start;this.pos=this.state=0;this.update();var self=this;function
t(gotoEnd){return
self.step(gotoEnd);}t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==nul
l){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var
i=0;i<timers.length;i++)if(!timers[i]())timers.splice(i--
,1);if(!timers.length){clearInterval(jQuery.timerId);jQuery.timerId=null;}},13);}},
show:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);t
his.options.show=true;this.custom(0,this.cur());if(this.prop=="width"||this.prop=="
height")this.elem.style[this.prop]="1px";jQuery(this.elem).show();},hide:function(
){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.hid
e=true;this.custom(this.cur(),0);},step:function(gotoEnd){var t=(new
Date()).getTime();if(gotoEnd||t>this.options.duration+this.startTime){this.now=thi
64
s.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var
done=true;for(var i in
this.options.curAnim)if(this.options.curAnim[i]!==true)done=false;if(done){if(this
.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.st
yle.display=this.options.display;if(jQuery.css(this.elem,"display")=="none")this.el
em.style.display="block";}if(this.options.hide)this.elem.style.display="none";if(thi
s.options.hide||this.options.show)for(var p in
this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);}if(done&
&jQuery.isFunction(this.options.complete))this.options.complete.apply(this.elem);
return false;}else{var n=t-
this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options
.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.durati
on);this.now=this.start+((this.end-this.start)*this.pos);this.update();}return
true;}};jQuery.fx.step={scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scroll
Top:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.
elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.no
w+fx.unit;}};jQuery.fn.offset=function(){var
left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var
parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=ele
m.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(use
rAgent),fixed=jQuery.css(elem,"position")=="fixed";if(elem.getBoundingClientRe
ct){var
box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElemen
t.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollT
op,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-
doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while
(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^
t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2)border(offsetParent);if(!
fixed&&jQuery.css(offsetParent,"position")=="fixed")fixed=true;offsetChild=/^bo
dy$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParen
t.offsetParent;}while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tag
Name)){if(!/^inline|table.*$/i.test(jQuery.css(parent,"display")))add(-
parent.scrollLeft,-
parent.scrollTop);if(mozilla&&jQuery.css(parent,"overflow")!="visible")border(pa
rent);parent=parent.parentNode;}if((safari2&&(fixed||jQuery.css(offsetChild,"posit
65
ion")=="absolute"))||(mozilla&&jQuery.css(offsetChild,"position")!="absolute"))a
dd(-doc.body.offsetLeft,-
doc.body.offsetTop);if(fixed)add(Math.max(doc.documentElement.scrollLeft,doc.
body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));
}results={top:top,left:left};}function
border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(el
em,"borderTopWidth",true));}function
add(l,t){left+=parseInt(l)||0;top+=parseInt(t)||0;}return results;};})();
/**
* This jQuery plugin was inspired and based on Lightbox 2 by Lokesh Dhakar
(http://www.huddletogether.com/projects/lightbox2/)
* @name jquery-lightbox-0.5.js
* @version 0.5
*/
/**
*/
$.fn.lightBox = function(settings) {
settings = jQuery.extend({
imageLoading: 'images/lightbox-ico-
loading.gif', // (string) Path and the name of the loading icon
imageBtnPrev: 'images/lightbox-btn-prev.gif',
// (string) Path and the name of the prev button image
imageBtnNext: 'images/lightbox-btn-next.gif',
// (string) Path and the name of the next button image
67
imageBtnClose: 'images/lightbox-btn-close.gif',
// (string) Path and the name of the close btn
imageBlank: 'images/lightbox-blank.gif',
// (string) Path and the name of a blank image (one pixel)
imageArray: [],
activeImage: 0
68
},settings);
/**
*/
function _initialize() {
/**
* @param object objClicked The object (link) whick the user have
clicked
*/
function _start(objClicked,jQueryMatchedObj) {
69
// Hime some elements to avoid conflict with overlay in IE.
These elements appear above the overlay.
_set_interface();
settings.imageArray.length = 0;
settings.activeImage = 0;
if ( jQueryMatchedObj.length == 1 ) {
settings.imageArray.push(new
Array(objClicked.getAttribute('href'),objClicked.getAttribute('title')));
} else {
settings.imageArray.push(new
Array(jQueryMatchedObj[i].getAttribute('href'),jQueryMatchedObj[i].getAttribute
('title')));
while ( settings.imageArray[settings.activeImage][0] !=
objClicked.getAttribute('href') ) {
70
settings.activeImage++;
_set_image_to_view();
/**
<div id="jquery-overlay"></div>
<div id="jquery-lightbox">
<div id="lightbox-container-image-box">
<div id="lightbox-container-image">
<div id="lightbox-nav">
</div>
<div id="lightbox-loading">
71
<img src="../images/lightbox-
ico-loading.gif">
</a>
</div>
</div>
</div>
<div id="lightbox-container-image-data-box">
<div id="lightbox-container-image-data">
<div id="lightbox-image-details">
<span id="lightbox-image-details-
caption"></span>
<span id="lightbox-image-details-
currentNumber"></span>
</div>
<div id="lightbox-secNav">
<img src="../images/lightbox-
btn-close.gif">
</a>
</div>
</div>
</div>
</div>
72
*
*/
function _set_interface() {
$('body').append('<div id="jquery-overlay"></div><div
id="jquery-lightbox"><div id="lightbox-container-image-box"><div id="lightbox-
container-image"><img id="lightbox-image"><div style="" id="lightbox-nav"><a
href="#" id="lightbox-nav-btnPrev"></a><a href="#" id="lightbox-nav-
btnNext"></a></div><div id="lightbox-loading"><a href="#" id="lightbox-
loading-link"><img src="' + settings.imageLoading +
'"></a></div></div></div><div id="lightbox-container-image-data-box"><div
id="lightbox-container-image-data"><div id="lightbox-image-details"><span
id="lightbox-image-details-caption"></span><span id="lightbox-image-details-
currentNumber"></span></div><div id="lightbox-secNav"><a href="#"
id="lightbox-secNav-btnClose"><img src="' + settings.imageBtnClose +
'"></a></div></div></div></div>');
$('#jquery-overlay').css({
backgroundColor: settings.overlayBgColor,
opacity: settings.overlayOpacity,
width: arrPageSizes[0],
height: arrPageSizes[1]
}).fadeIn();
$('#jquery-lightbox').css({
left: arrPageScroll[0]
}).show();
$('#jquery-overlay,#jquery-lightbox').click(function() {
_finish();
});
$('#lightbox-loading-link,#lightbox-secNav-
btnClose').click(function() {
_finish();
return false;
});
$(window).resize(function() {
$('#jquery-overlay').css({
74
width: arrPageSizes[0],
height: arrPageSizes[1]
});
$('#jquery-lightbox').css({
left: arrPageScroll[0]
});
});
/**
*/
$('#lightbox-loading').show();
if ( settings.fixedNavigation ) {
$('#lightbox-image,#lightbox-container-image-data-
box,#lightbox-image-details-currentNumber').hide();
75
} else {
$('#lightbox-image,#lightbox-nav,#lightbox-nav-
btnPrev,#lightbox-nav-btnNext,#lightbox-container-image-data-box,#lightbox-
image-details-currentNumber').hide();
objImagePreloader.onload = function() {
$('#lightbox-
image').attr('src',settings.imageArray[settings.activeImage][0]);
_resize_container_image_box(objImagePreloader.width,objImagePreloader.
height);
objImagePreloader.onload=function(){};
};
objImagePreloader.src =
settings.imageArray[settings.activeImage][0];
};
/**
76
* @param integer intImageWidth The image´s width that will be
showed
*/
function
_resize_container_image_box(intImageWidth,intImageHeight) {
// Get the width and height of the selected image plus the
padding
// Diferences
77
if ( $.browser.msie ) {
___pause(250);
} else {
___pause(100);
$('#lightbox-container-image-data-box').css({ width:
intImageWidth });
$('#lightbox-nav-btnPrev,#lightbox-nav-btnNext').css({ height:
intImageHeight + (settings.containerBorderSize * 2) });
};
/**
*/
function _show_image() {
$('#lightbox-loading').hide();
$('#lightbox-image').fadeIn(function() {
_show_image_data();
_set_navigation();
});
_preload_neighbor_images();
};
78
/**
*/
function _show_image_data() {
$('#lightbox-container-image-data-box').slideDown('fast');
$('#lightbox-image-details-caption').hide();
if ( settings.imageArray[settings.activeImage][1] ) {
$('#lightbox-image-details-
caption').html(settings.imageArray[settings.activeImage][1]).show();
if ( settings.imageArray.length > 1 ) {
$('#lightbox-image-details-
currentNumber').html(settings.txtImage + ' ' + ( settings.activeImage + 1 ) + ' ' +
settings.txtOf + ' ' + settings.imageArray.length).show();
/**
*/
function _set_navigation() {
$('#lightbox-nav').show();
79
// Instead to define this configuration in CSS file, we define
here. And it´s need to IE. Just.
$('#lightbox-nav-btnPrev,#lightbox-nav-btnNext').css({
'background' : 'transparent url(' + settings.imageBlank + ') no-repeat' });
if ( settings.activeImage != 0 ) {
if ( settings.fixedNavigation ) {
$('#lightbox-nav-btnPrev').css({ 'background' :
'url(' + settings.imageBtnPrev + ') left 15% no-repeat' })
.unbind()
.bind('click',function() {
settings.activeImage =
settings.activeImage - 1;
_set_image_to_view();
return false;
});
} else {
$('#lightbox-nav-
btnPrev').unbind().hover(function() {
},function() {
80
$(this).css({ 'background' : 'transparent url('
+ settings.imageBlank + ') no-repeat' });
}).show().bind('click',function() {
settings.activeImage = settings.activeImage
- 1;
_set_image_to_view();
return false;
});
if ( settings.activeImage != ( settings.imageArray.length -1 ) ) {
if ( settings.fixedNavigation ) {
$('#lightbox-nav-btnNext').css({ 'background' :
'url(' + settings.imageBtnNext + ') right 15% no-repeat' })
.unbind()
.bind('click',function() {
settings.activeImage =
settings.activeImage + 1;
_set_image_to_view();
return false;
});
} else {
81
// Show the images button for Next buttons
$('#lightbox-nav-
btnNext').unbind().hover(function() {
},function() {
}).show().bind('click',function() {
settings.activeImage = settings.activeImage
+ 1;
_set_image_to_view();
return false;
});
_enable_keyboard_navigation();
/**
*/
function _enable_keyboard_navigation() {
82
$(document).keydown(function(objEvent) {
_keyboard_action(objEvent);
});
/**
*/
function _disable_keyboard_navigation() {
$(document).unbind();
/**
*/
function _keyboard_action(objEvent) {
// To ie
if ( objEvent == null ) {
keycode = event.keyCode;
escapeKey = 27;
// To Mozilla
} else {
keycode = objEvent.keyCode;
83
escapeKey = objEvent.DOM_VK_ESCAPE;
key = String.fromCharCode(keycode).toLowerCase();
_finish();
if ( settings.activeImage != 0 ) {
settings.activeImage = settings.activeImage - 1;
_set_image_to_view();
_disable_keyboard_navigation();
if ( settings.activeImage != ( settings.imageArray.length -
1)){
84
settings.activeImage = settings.activeImage + 1;
_set_image_to_view();
_disable_keyboard_navigation();
/**
*/
function _preload_neighbor_images() {
objNext.src = settings.imageArray[settings.activeImage +
1][0];
if ( settings.activeImage > 0 ) {
objPrev.src = settings.imageArray[settings.activeImage -
1][0];
/**
85
* Remove jQuery lightBox plugin HTML markup
*/
function _finish() {
$('#jquery-lightbox').remove();
$('#jquery-overlay').fadeOut(function() { $('#jquery-
overlay').remove(); });
/**
/ THIRD FUNCTION
* getPageSize() by quirksmode.com
* @return Array Return an array with page width, height and window
width, height
*/
function ___getPageSize() {
86
} else if (document.body.scrollHeight >
document.body.offsetHeight){ // all but Explorer Mac
xScroll = document.body.scrollWidth;
yScroll = document.body.scrollHeight;
xScroll = document.body.offsetWidth;
yScroll = document.body.offsetHeight;
if(document.documentElement.clientWidth){
windowWidth =
document.documentElement.clientWidth;
} else {
windowWidth = self.innerWidth;
windowHeight = self.innerHeight;
windowWidth =
document.documentElement.clientWidth;
windowHeight =
document.documentElement.clientHeight;
87
windowWidth = document.body.clientWidth;
windowHeight = document.body.clientHeight;
// for small pages with total height less then height of the
viewport
pageHeight = windowHeight;
} else {
pageHeight = yScroll;
// for small pages with total width less then width of the
viewport
pageWidth = xScroll;
} else {
pageWidth = windowWidth;
arrayPageSize = new
Array(pageWidth,pageHeight,windowWidth,windowHeight);
return arrayPageSize;
};
/**
/ THIRD FUNCTION
* getPageScroll() by quirksmode.com
88
*
*/
function ___getPageScroll() {
if (self.pageYOffset) {
yScroll = self.pageYOffset;
xScroll = self.pageXOffset;
yScroll = document.documentElement.scrollTop;
xScroll = document.documentElement.scrollLeft;
yScroll = document.body.scrollTop;
xScroll = document.body.scrollLeft;
return arrayPageScroll;
};
/**
*/
89
function ___pause(ms) {
curDate = null;
};
// Return the jQuery object for chaining. The unbind method is used to
avoid click conflict when the plugin is called more than once
return this.unbind('click').click(_initialize);
};
})(jQuery); // Call and execute the function immediately passing the jQuery object
/**
* This jQuery plugin was inspired and based on Lightbox 2 by Lokesh Dhakar
(http://www.huddletogether.com/projects/lightbox2/)
* @name jquery-lightbox-0.5.js
* @version 0.5
90
* @example Visit http://leandrovieira.com/projects/jquery/lightbox/ for more
informations about this jQuery plugin
*/
(function($){$.fn.lightBox=function(settings){settings=jQuery.extend({overlayBg
Color:'#000',overlayOpacity:0.8,fixedNavigation:false,imageLoading:'images/light
box-ico-loading.gif',imageBtnPrev:'images/lightbox-btn-
prev.gif',imageBtnNext:'images/lightbox-btn-
next.gif',imageBtnClose:'images/lightbox-btn-
close.gif',imageBlank:'images/lightbox-
blank.gif',containerBorderSize:10,containerResizeSpeed:400,txtImage:'Image',txtO
f:'of',keyToClose:'c',keyToPrev:'p',keyToNext:'n',imageArray:[],activeImage:0},set
tings);var jQueryMatchedObj=this;function
_initialize(){_start(this,jQueryMatchedObj);return false;}
while(settings.imageArray[settings.activeImage][0]!=objClicked.getAttribute('href'
)){settings.activeImage++;}
_set_image_to_view();}
91
container-image-data-box"><div id="lightbox-container-image-data"><div
id="lightbox-image-details"><span id="lightbox-image-details-
caption"></span><span id="lightbox-image-details-
currentNumber"></span></div><div id="lightbox-secNav"><a href="#"
id="lightbox-secNav-btnClose"><img
src="'+settings.imageBtnClose+'"></a></div></div></div></div>');var
arrPageSizes=___getPageSize();$('#jquery-
overlay').css({backgroundColor:settings.overlayBgColor,opacity:settings.overlayO
pacity,width:arrPageSizes[0],height:arrPageSizes[1]}).fadeIn();var
arrPageScroll=___getPageScroll();$('#jquery-
lightbox').css({top:arrPageScroll[1]+(arrPageSizes[3]/10),left:arrPageScroll[0]}).s
how();$('#jquery-overlay,#jquery-
lightbox').click(function(){_finish();});$('#lightbox-loading-link,#lightbox-secNav-
btnClose').click(function(){_finish();return
false;});$(window).resize(function(){var
arrPageSizes=___getPageSize();$('#jquery-
overlay').css({width:arrPageSizes[0],height:arrPageSizes[1]});var
arrPageScroll=___getPageScroll();$('#jquery-
lightbox').css({top:arrPageScroll[1]+(arrPageSizes[3]/10),left:arrPageScroll[0]});}
);}
function _set_image_to_view(){$('#lightbox-
loading').show();if(settings.fixedNavigation){$('#lightbox-image,#lightbox-
container-image-data-box,#lightbox-image-details-
currentNumber').hide();}else{$('#lightbox-image,#lightbox-nav,#lightbox-nav-
btnPrev,#lightbox-nav-btnNext,#lightbox-container-image-data-box,#lightbox-
image-details-currentNumber').hide();}
var objImagePreloader=new
Image();objImagePreloader.onload=function(){$('#lightbox-
image').attr('src',settings.imageArray[settings.activeImage][0]);_resize_container_i
mage_box(objImagePreloader.width,objImagePreloader.height);objImagePreloade
r.onload=function(){};};objImagePreloader.src=settings.imageArray[settings.activ
eImage][0];};function
_resize_container_image_box(intImageWidth,intImageHeight){var
intCurrentWidth=$('#lightbox-container-image-box').width();var
92
intCurrentHeight=$('#lightbox-container-image-box').height();var
intWidth=(intImageWidth+(settings.containerBorderSize*2));var
intHeight=(intImageHeight+(settings.containerBorderSize*2));var
intDiffW=intCurrentWidth-intWidth;var intDiffH=intCurrentHeight-
intHeight;$('#lightbox-container-image-
box').animate({width:intWidth,height:intHeight},settings.containerResizeSpeed,fu
nction(){_show_image();});if((intDiffW==0)&&(intDiffH==0)){if($.browser.msie
){___pause(250);}else{___pause(100);}}
$('#lightbox-container-image-data-box').css({width:intImageWidth});$('#lightbox-
nav-btnPrev,#lightbox-nav-
btnNext').css({height:intImageHeight+(settings.containerBorderSize*2)});};functi
on _show_image(){$('#lightbox-loading').hide();$('#lightbox-
image').fadeIn(function(){_show_image_data();_set_navigation();});_preload_neig
hbor_images();};function _show_image_data(){$('#lightbox-container-image-data-
box').slideDown('fast');$('#lightbox-image-details-
caption').hide();if(settings.imageArray[settings.activeImage][1]){$('#lightbox-
image-details-
caption').html(settings.imageArray[settings.activeImage][1]).show();}
if(settings.imageArray.length>1){$('#lightbox-image-details-
currentNumber').html(settings.txtImage+' '+(settings.activeImage+1)+'
'+settings.txtOf+' '+settings.imageArray.length).show();}}
function _set_navigation(){$('#lightbox-nav').show();$('#lightbox-nav-
btnPrev,#lightbox-nav-btnNext').css({'background':'transparent
url('+settings.imageBlank+') no-
repeat'});if(settings.activeImage!=0){if(settings.fixedNavigation){$('#lightbox-
nav-btnPrev').css({'background':'url('+settings.imageBtnPrev+') left 15% no-
repeat'}).unbind().bind('click',function(){settings.activeImage=settings.activeImag
e-1;_set_image_to_view();return false;});}else{$('#lightbox-nav-
btnPrev').unbind().hover(function(){$(this).css({'background':'url('+settings.image
BtnPrev+') left 15% no-repeat'});},function(){$(this).css({'background':'transparent
url('+settings.imageBlank+') no-
repeat'});}).show().bind('click',function(){settings.activeImage=settings.activeIma
ge-1;_set_image_to_view();return false;});}}
93
if(settings.activeImage!=(settings.imageArray.length-
1)){if(settings.fixedNavigation){$('#lightbox-nav-
btnNext').css({'background':'url('+settings.imageBtnNext+') right 15% no-
repeat'}).unbind().bind('click',function(){settings.activeImage=settings.activeImag
e+1;_set_image_to_view();return false;});}else{$('#lightbox-nav-
btnNext').unbind().hover(function(){$(this).css({'background':'url('+settings.image
BtnNext+') right 15% no-
repeat'});},function(){$(this).css({'background':'transparent
url('+settings.imageBlank+') no-
repeat'});}).show().bind('click',function(){settings.activeImage=settings.activeIma
ge+1;_set_image_to_view();return false;});}}
_enable_keyboard_navigation();}
function
_enable_keyboard_navigation(){$(document).keydown(function(objEvent){_keyb
oard_action(objEvent);});}
function _disable_keyboard_navigation(){$(document).unbind();}
function
_keyboard_action(objEvent){if(objEvent==null){keycode=event.keyCode;escape
Key=27;}else{keycode=objEvent.keyCode;escapeKey=objEvent.DOM_VK_ESC
APE;}
key=String.fromCharCode(keycode).toLowerCase();if((key==settings.keyToClose
)||(key=='x')||(keycode==escapeKey)){_finish();}
if((key==settings.keyToPrev)||(keycode==37)){if(settings.activeImage!=0){setting
s.activeImage=settings.activeImage-
1;_set_image_to_view();_disable_keyboard_navigation();}}
if((key==settings.keyToNext)||(keycode==39)){if(settings.activeImage!=(settings.i
mageArray.length-
1)){settings.activeImage=settings.activeImage+1;_set_image_to_view();_disable_
keyboard_navigation();}}}
94
function _preload_neighbor_images(){if((settings.imageArray.length-
1)>settings.activeImage){objNext=new
Image();objNext.src=settings.imageArray[settings.activeImage+1][0];}
if(settings.activeImage>0){objPrev=new
Image();objPrev.src=settings.imageArray[settings.activeImage-1][0];}}
function _finish(){$('#jquery-lightbox').remove();$('#jquery-
overlay').fadeOut(function(){$('#jquery-overlay').remove();});$('embed, object,
select').css({'visibility':'visible'});}
function ___getPageSize(){var
xScroll,yScroll;if(window.innerHeight&&window.scrollMaxY){xScroll=window.i
nnerWidth+window.scrollMaxX;yScroll=window.innerHeight+window.scrollMax
Y;}else
if(document.body.scrollHeight>document.body.offsetHeight){xScroll=document.b
ody.scrollWidth;yScroll=document.body.scrollHeight;}else{xScroll=document.bo
dy.offsetWidth;yScroll=document.body.offsetHeight;}
var
windowWidth,windowHeight;if(self.innerHeight){if(document.documentElement.
clientWidth){windowWidth=document.documentElement.clientWidth;}else{wind
owWidth=self.innerWidth;}
windowHeight=self.innerHeight;}else
if(document.documentElement&&document.documentElement.clientHeight){win
dowWidth=document.documentElement.clientWidth;windowHeight=document.do
cumentElement.clientHeight;}else
if(document.body){windowWidth=document.body.clientWidth;windowHeight=do
cument.body.clientHeight;}
if(yScroll<windowHeight){pageHeight=windowHeight;}else{pageHeight=yScroll;
}
if(xScroll<windowWidth){pageWidth=xScroll;}else{pageWidth=windowWidth;}
arrayPageSize=new
Array(pageWidth,pageHeight,windowWidth,windowHeight);return
95
arrayPageSize;};function ___getPageScroll(){var
xScroll,yScroll;if(self.pageYOffset){yScroll=self.pageYOffset;xScroll=self.pageX
Offset;}else
if(document.documentElement&&document.documentElement.scrollTop){yScroll
=document.documentElement.scrollTop;xScroll=document.documentElement.scro
llLeft;}else
if(document.body){yScroll=document.body.scrollTop;xScroll=document.body.scr
ollLeft;}
while(curDate-date<ms);};return this.unbind('click').click(_initialize);};})(jQuery);
/**
* This jQuery plugin was inspired and based on Lightbox 2 by Lokesh Dhakar
(http://www.huddletogether.com/projects/lightbox2/)
* @name jquery-lightbox-0.5.js
* @version 0.5
*/
96
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>3
5?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--
)r[e(c)]=k[c]||e(c);k=[function(e){return
r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new
RegExp('\\b'+e(c)+'\\b','g'),k[c]);return
p}('(6($){$.2N.3g=6(4){4=23.2H({2B:\'#34\',2g:0.8,1d:F,1M:\'18/5-33-
Y.16\',1v:\'18/5-1u-2Q.16\',1E:\'18/5-1u-2L.16\',1W:\'18/5-1u-2I.16\',19:\'18/5-
2F.16\',1f:10,2A:3d,2s:\'1j\',2o:\'32\',2j:\'c\',2f:\'p\',2d:\'n\',h:[],9:0},4);f I=N;6
20(){1X(N,I);u F}6 1X(1e,I){$(\'1U, 1S,
1R\').l({\'1Q\':\'2E\'});1O();4.h.B=0;4.9=0;7(I.B==1){4.h.1J(v
1m(1e.17(\'J\'),1e.17(\'2v\')))}j{36(f i=0;i<I.B;i++){4.h.1J(v
1m(I[i].17(\'J\'),I[i].17(\'2v\')))}}2n(4.h[4.9][0]!=1e.17(\'J\')){4.9++}D()}6
1O(){$(\'m\').31(\'<e g="q-13"></e><e g="q-5"><e g="5-s-b-w"><e g="5-s-
b"><1w g="5-b"><e 2V="" g="5-k"><a J="#" g="5-k-V"></a><a J="#" g="5-k-
X"></a></e><e g="5-Y"><a J="#" g="5-Y-29"><1w
W="\'+4.1M+\'"></a></e></e></e><e g="5-s-b-T-w"><e g="5-s-b-T"><e g="5-b-
A"><1i g="5-b-A-1t"></1i><1i g="5-b-A-1g"></1i></e><e g="5-1s"><a J="#"
g="5-1s-22"><1w W="\'+4.1W+\'"></a></e></e></e></e>\');f z=1D();$(\'#q-
13\').l({2K:4.2B,2J:4.2g,S:z[0],P:z[1]}).1V();f R=1p();$(\'#q-
5\').l({1T:R[1]+(z[3]/10),1c:R[0]}).E();$(\'#q-13,#q-5\').C(6(){1a()});$(\'#5-Y-
29,#5-1s-22\').C(6(){1a();u F});$(G).2G(6(){f z=1D();$(\'#q-
13\').l({S:z[0],P:z[1]});f R=1p();$(\'#q-5\').l({1T:R[1]+(z[3]/10),1c:R[0]})})}6
D(){$(\'#5-Y\').E();7(4.1d){$(\'#5-b,#5-s-b-T-w,#5-b-A-1g\').1b()}j{$(\'#5-b,#5-
k,#5-k-V,#5-k-X,#5-s-b-T-w,#5-b-A-1g\').1b()}f Q=v 1j();Q.1P=6(){$(\'#5-
b\').2D(\'W\',4.h[4.9][0]);1N(Q.S,Q.P);Q.1P=6(){}};Q.W=4.h[4.9][0]};6
1N(1o,1r){f 1L=$(\'#5-s-b-w\').S();f 1K=$(\'#5-s-b-w\').P();f 1n=(1o+(4.1f*2));f
1y=(1r+(4.1f*2));f 1I=1L-1n;f 2z=1K-1y;$(\'#5-s-b-
w\').3f({S:1n,P:1y},4.2A,6(){2y()});7((1I==0)&&(2z==0)){7($.3e.3c){1H(3b)}j{1
H(3a)}}$(\'#5-s-b-T-w\').l({S:1o});$(\'#5-k-V,#5-k-X\').l({P:1r+(4.1f*2)})};6
2y(){$(\'#5-Y\').1b();$(\'#5-b\').1V(6(){2u();2t()});2r()};6 2u(){$(\'#5-s-b-T-
w\').38(\'35\');$(\'#5-b-A-1t\').1b();7(4.h[4.9][1]){$(\'#5-b-A-
1t\').2p(4.h[4.9][1]).E()}7(4.h.B>1){$(\'#5-b-A-1g\').2p(4.2s+\' \'+(4.9+1)+\'
\'+4.2o+\' \'+4.h.B).E()}}6 2t(){$(\'#5-k\').E();$(\'#5-k-V,#5-k-X\').l({\'K\':\'1C
M(\'+4.19+\') L-O\'});7(4.9!=0){7(4.1d){$(\'#5-k-V\').l({\'K\':\'M(\'+4.1v+\') 1c
15% L-O\'}).11().1k(\'C\',6(){4.9=4.9-1;D();u F})}j{$(\'#5-k-
97
V\').11().2m(6(){$(N).l({\'K\':\'M(\'+4.1v+\') 1c 15% L-
O\'})},6(){$(N).l({\'K\':\'1C M(\'+4.19+\') L-O\'})}).E().1k(\'C\',6(){4.9=4.9-
1;D();u F})}}7(4.9!=(4.h.B-1)){7(4.1d){$(\'#5-k-X\').l({\'K\':\'M(\'+4.1E+\') 2l
15% L-O\'}).11().1k(\'C\',6(){4.9=4.9+1;D();u F})}j{$(\'#5-k-
X\').11().2m(6(){$(N).l({\'K\':\'M(\'+4.1E+\') 2l 15% L-
O\'})},6(){$(N).l({\'K\':\'1C M(\'+4.19+\') L-
O\'})}).E().1k(\'C\',6(){4.9=4.9+1;D();u F})}}2k()}6
2k(){$(d).30(6(12){2i(12)})}6 1G(){$(d).11()}6
2i(12){7(12==2h){U=2Z.2e;1x=27}j{U=12.2e;1x=12.2Y}14=2X.2W(U).2U();7((
14==4.2j)||(14==\'x\')||(U==1x)){1a()}7((14==4.2f)||(U==37)){7(4.9!=0){4.9=4.9-
1;D();1G()}}7((14==4.2d)||(U==39)){7(4.9!=(4.h.B-1)){4.9=4.9+1;D();1G()}}}6
2r(){7((4.h.B-1)>4.9){2c=v 1j();2c.W=4.h[4.9+1][0]}7(4.9>0){2b=v
1j();2b.W=4.h[4.9-1][0]}}6 1a(){$(\'#q-5\').2a();$(\'#q-13\').2T(6(){$(\'#q-
13\').2a()});$(\'1U, 1S, 1R\').l({\'1Q\':\'2S\'})}6 1D(){f
o,r;7(G.1h&&G.28){o=G.26+G.2R;r=G.1h+G.28}j
7(d.m.25>d.m.24){o=d.m.2P;r=d.m.25}j{o=d.m.2O;r=d.m.24}f
y,H;7(Z.1h){7(d.t.1l){y=d.t.1l}j{y=Z.26}H=Z.1h}j
7(d.t&&d.t.1A){y=d.t.1l;H=d.t.1A}j
7(d.m){y=d.m.1l;H=d.m.1A}7(r<H){1z=H}j{1z=r}7(o<y){1B=o}j{1B=y}21=v
1m(1B,1z,y,H);u 21};6 1p(){f o,r;7(Z.1Z){r=Z.1Z;o=Z.2M}j
7(d.t&&d.t.1F){r=d.t.1F;o=d.t.1Y}j 7(d.m){r=d.m.1F;o=d.m.1Y}2q=v 1m(o,r);u
2q};6 1H(2C){f 2x=v 2w();1q=2h;3h{f 1q=v 2w()}2n(1q-2x<2C)};u
N.11(\'C\').C(20)}})(23);',62,204,'||||settings|lightbox|function|if||activeImage||imag
e||document|div|var|id|imageArray||else|nav|css|body||xScroll||jquery|yScroll|contain
er|documentElement|return|new|box||windowWidth|arrPageSizes|details|length|clic
k|_set_image_to_view|show|false|window|windowHeight|jQueryMatchedObj|href|b
ackground|no|url|this|repeat|height|objImagePreloader|arrPageScroll|width|data|key
code|btnPrev|src|btnNext|loading|self||unbind|objEvent|overlay|key||gif|getAttribute|
images|imageBlank|_finish|hide|left|fixedNavigation|objClicked|containerBorderSi
ze|currentNumber|innerHeight|span|Image|bind|clientWidth|Array|intWidth|intImag
eWidth|___getPageScroll|curDate|intImageHeight|secNav|caption|btn|imageBtnPre
v|img|escapeKey|intHeight|pageHeight|clientHeight|pageWidth|transparent|___getP
ageSize|imageBtnNext|scrollTop|_disable_keyboard_navigation|___pause|intDiff
W|push|intCurrentHeight|intCurrentWidth|imageLoading|_resize_container_image
_box|_set_interface|onload|visibility|select|object|top|embed|fadeIn|imageBtnClose|
98
_start|scrollLeft|pageYOffset|_initialize|arrayPageSize|btnClose|jQuery|offsetHeigh
t|scrollHeight|innerWidth||scrollMaxY|link|remove|objPrev|objNext|keyToNext|key
Code|keyToPrev|overlayOpacity|null|_keyboard_action|keyToClose|_enable_keyb
oard_navigation|right|hover|while|txtOf|html|arrayPageScroll|_preload_neighbor_i
mages|txtImage|_set_navigation|_show_image_data|title|Date|date|_show_image|in
tDiffH|containerResizeSpeed|overlayBgColor|ms|attr|hidden|blank|resize|extend|clo
se|opacity|backgroundColor|next|pageXOffset|fn|offsetWidth|scrollWidth|prev|scro
llMaxX|visible|fadeOut|toLowerCase|style|fromCharCode|String|DOM_VK_ESCA
PE|event|keydown|append|of|ico|000|fast|for||slideDown||100|250|msie|400|browser|
animate|lightBox|do'.split('|'),0,{}))
99
ADMIN PART
CODING
100
LOGIN.PHP
<?php
session_start();
$name=$_SESSION['eid'];
include("config.php");
$catg=$_REQUEST['cat'];
$subcatg=$_REQUEST['subcat'];
$img=$_FILES['file']['tmp_name'];
$itemno=$_REQUEST['t1'];
$price=$_REQUEST['t2'];
$desc=$_REQUEST['text'];
$t=date("d-m-y h-i-s");
101
if($_REQUEST['sub'])
{
if(mysql_query("insert into items
values('$catg','$subcatg','$img','$ite
mno','$price','$desc','$t') "))
{
move_uploaded_file($_FILES['file'][
'tmp_name'],"itempics/$itemno.jpg")
;
?><head>
<script>
function AjaxFunction(cat_id)
{
var httpxml;
103
try
{
// Firefox, Opera 8.0+, Safari
httpxml=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
httpxml=new
ActiveXObject("Msxml2.XMLHTTP
");
104
}
catch (e)
{
try
{
httpxml=new
ActiveXObject("Microsoft.XMLHTT
P");
}
catch (e)
{
alert("Your browser does
not support AJAX!");
105
return false;
}
}
}
function stateck()
{
if(httpxml.readyState==4)
{
var
myarray=eval(httpxml.responseText);
// Before adding new we must remove
previously loaded elements
106
for(j=document.testform.subcat.optio
ns.length-1;j>=0;j--)
{
document.testform.subcat.remove(j);
}
for (i=0;i<myarray.length;i++)
{
var optn =
document.createElement("OPTION"
);
optn.text = myarray[i];
107
optn.value = myarray[i];
document.testform.subcat.options.ad
d(optn);
}
}
}
var url="dd.php";
url=url+"?cat_id="+cat_id;
url=url+"&sid="+Math.random();
httpxml.onreadystatechange=stateck;
httpxml.open("GET",url,true);
httpxml.send(null);
108
}
</script>
</head>
<style type="text/css">
<!--
.style3 {font-size: 18px; font-weight:
bold; }
-->
</style>
<body>
109
<br><br><br>
<center><font color="#660066"
size="+3">Add
Item</font></center>
<br><br>
<center><fieldset
style="width:50%">
<form name="testform"
method="post"
enctype="multipart/form-data" >
<table align="center">
<tr><td width="111"><span
class="style3">Category:</span></t
d>
110
<td width="264"><select name=cat
onChange="AjaxFunction(this.value
);">
<option value=''>Select
One</option>
<?php
require "config.php";// connection to
database
$q=mysql_query("select * from
category ");
while($n=mysql_fetch_array($q)){
111
echo "<option
value=".$n['cat_id'].">".$n['categor
y']."</option>";
}
?>
</select></td>
</tr>
112
</select></td>
</tr>
<tr>
<td><span
class="style3">Image:</span></td>
<td><input name="file"
type="file"></td></tr>
<tr>
<td><span class="style3">Item No:
</span></td>
<td><label>
<input name="t1" type="text"
id="t1">
</label></td>
113
</tr>
<tr>
<td><span
class="style3">Price:</span></td>
<td><label>
<input name="t2" type="text"
id="t2">
</label></td>
</tr>
<tr>
<td><span
class="style3">Description:</span>
</td>
114
<td><textarea name="text"
cols="35"
rows="6"></textarea></td></tr>
<tr><td colspan="2"
align="center"><input name="sub"
type="submit"
value="Submit"></td></tr>
</table>
</form>
</fieldset></center>
</body>
</html>
115
TESTING
Module testing:
Here testing is done at each module level. Each case has been
thoroughly tested to discover pitfalls.
System testing:
Here testing is done after all the modules have been integrated.
116
IMPLEMENTATION
117
in the candidate system and also the user staff an opportunity to
gain experience through operation.
118
FUTURE SCOPE
The future of this project depend on whether the author has enough
spare time over the next 2 month to continue with the developing.
The author feels that last few remaining features would round off
the system. If the author was to try to sell this system then more
system testing would have to be done, in a particular a more
comprehensive real – world. Testing environment would have to be
adopted along with some real words usage. Multiple concurrent
users would be command in real world usage but have been difficult
to test for considering there was only tester involved in this project.
This type of system would benefit for the hardware in case of a
system failure for the software in case of newly found bugs, in
return of a subscription free.
119
BIBLIOGRAPHY
PHP 6.0 AND MY SQL : PHP 6.0 & PHP AND MY SQL
120
CONCLUSION
121
THANK
YOU
122