| Ecommerce Home | Accounts | Getting Started | Tools/Guides | Contact Us | Search |

AVAILABLE FOR: iu= IU - www.indiana.edu, www.iupui.edu, www.iun.edu, www.iusb.edu, www.iuk.edu

E-Store@IU Shopping Cart
Merchant Guide

Table of Contents


Who should read this document?

IU merchants who would like to set up a website storefront in their central WWW server information provider account, and optionally securely accept credit card payments from customers with immediate authorization.

Return to Top of Page


What is E-Store@IU?

E-Store@IU is web shopping cart software designed by UITS/WebTech Services for use in your account on the Webserve central web server. Used together with product pages that you design it is the basis of an Internet 'store' with you as the 'merchant'. E-Store@IU can also optionally use the IU Internet Payment Authorization Service (IPAS) if an E-Store@IU merchant would like to accept securely immediate credit card payment for purchases from customers.

Prospective merchants install and configure the E-Store@IU software, and create a series of web pages describing their wares. Specific HTML markup is inserted within the pages to link to the E-Store@IU software where desired. Estore includes software to tally and archive daily sales and send a sales report to the merchant, who then fills the customer orders.

E-Store@IU handles many aspects of a customer's shopping experience and has many merchant-configurable features which can be manipulated using a supplied web-based configuration editor. Some of E-Store@IU's features are highlighted below.

Return to Top of Page


Can E-Store@IU perform immediate credit card authorizations?

Yes, E-Store@IU is IPAS-aware. IPAS is IU's Internet Payment Authorization Service offered by the IU Office of the Treasurer. If you make the necessary arrangements with the IU Office of the Treasurer, E-Store@IU can be enabled to accept credit card payment for your products and services directly over the web with immediate authorization.

Return to Top of Page


How do I install/uninstall E-Store@IU to/from my account?

E-Store@IU is installed into your central WWW server account by logging into the account and running its installation program as shown below.

veritas:myaccount > install_estorepf
Before you uninstall E-Store@IU from your account, be certain that you have examined the sales, sales_daily, and sales_archive directories (see below) and retrieved any sales data you wish to keep. These directories will be deleted as part of the deinstallation. E-Store@IU is uninstalled from your central WWW server account by logging into the account and running its deinstallation program as shown below.

veritas:myaccount > uninstall_estore

The installation of E-Store@IU creates a number of directories and files, the layout of which is shown below. The '~' (tilde) symbol is a stand-in for your account's main directory.

Return to Top of Page


How do I configure E-Store@IU for my particular store?

After installing E-Store@IU, there are many options and values which you can initially set that will specify how the shopping cart operates and how the pages it produces look.

The configuration values are entered and modified with the web-based E-Store@IU Configuration Editor. After you install E-Store@IU, you can call up the configuration editor with the URL:

https://www.indiana.edu/~{accountname}/estore/tools/estore_edit.cgi

You will need to supply the IU Network ID and password for the account in which you installed E-Store@IU in order to begin editing. The Network ID password is supplied to you when you receive your central server IP account. Although you can make the login password to your IP account the same as the account's Network ID password, they are not necessarily the same. If you need assistance determining the Network ID password for your IP account, please contact IU Account Administration at the e-mail address: valid@indiana.edu.

An appendix to this document, The E-Store@IU Configuration Reference Guide, has been supplied to assist you as you use the configuration editor.

Return to Top of Page


How do I create my product description pages?

A 'product description page' is an HTML page that includes information about one or more of your products or services. The linkage to the E-Store program is handled by HTML fragments which you insert. These fragments make buttons appear on the page corresponding to E-Store's 'View Cart' and 'Add to Cart' functions. Although you can make these buttons appear virtually anywhere on a product description page, it is customary that an 'Add to Cart' type button is included near each item so that the customer can unambigously select it to place the item in their cart. As part of the HTML fragment that defines an 'Add to Cart' button, you also specify a one line description of the product or service and its price. This description and price are sent to the E-Store@IU program when the customer presses that particular 'Add to Cart' button. The 'View Cart' button can be placed one or more times at desired positions on the page.

IMPORTANT NOTE
The '|' (vertical bar) character is used in the one line description of the product or service referred to above as a field delimiter and so you must NOT use this character within any of the fields in the line.

A sample beginning product description page has been provided. If you view and save the source of this page as HTML you can see the actual HTML coding showing how to represent the images for the 'Add to Cart' and 'View Cart' buttons. If you wish to change the image for the 'Add to Cart' button, simply replace the ~/wwws/estore/add2order.gif file with one you have obtained or created (it can also be a JPEG (.jpg) file) and change the corresponding reference to the add2order.gif file in the ~/wwws/estore/add2cart file. Similarly, do the same thing for the ~/wwws/estore/vieworder.gif and its corresponding ~/wwws/estore/viewcart.

Keep in mind that you can have as many 'Add to Order' and 'View Order' button image styles as you like as long as each image file has a corresponding 'add2cart' or 'viewcart' file and that you refer to them correctly in your product description pages. It is suggested however that you keep all images and add2cart/viewcart files in your ~/wwws/estore directory for greater organizational efficiency.


How will I get records of my sales?

The E-Store@IU Utilities will assist you in the management of your E-Store website storefront. The Utilities consist of two scripts; the E-Store End of Day Script and the E-Store Housekeeper Script. Both of these scripts are run automatically each day to gather and deliver .sale files to the merchant via email and perform housekeeping duties on the ~/estore file directory hierarchy to prevent files supporting incomplete shopping experiences from accumulating.

The Utilities are activated by the job scheduling capability of the operating system that supports E-Store@IU for the merchant. In the case of the UNIX operating system, the job scheduler is a program named 'cron'.

The E-Store Schedule File (~estore/tools/estore.crontab) contains UNIX cron utility directives to schedule the execution of the E-Store Housekeeper and E-Store End of Day Script. You will normally not need to modify this file and you should only do so if you are already familiar with the type and format of the directives stored in the file.

For more information on using the Cron job scheduling facility with your account, see Scheduling Jobs on the Central WWW Servers

Important Note: If you are already using the UNIX cron job scheduling system to arrange for the execution of other non-E-Store@IU programs in your account prior to the installation and use of E-Store@IU, you will need to merge the contents of the estore.crontab file with your own file of crontab directives and re-register the schedule with the 'crontab' UNIX command.

The E-Store@IU Utilities scripts are described below:


How can I test my storefront without going 'live' with the public?

It is strongly advised that you create a rigorous plan for testing your E-Store@IU storefront. The extent of your testing depends on whether you have arranged with the IU Office of the Treasurer to have your storefront 'IPAS/Paypal-enabled' which allows customers to pay by credit card and get an immediate payment authorization.

If you decide that you do not need immediate credit card purchase authorization (using the IPAS/Paypal mechanism), and elect only to use the mail-in and fax-in order form features of E-Store@IU, you should still plan on testing your storefront thoroughly to make certain that the configuration is the way you want it and your product description, and E-Store header, footer, and field information files are as you would like them to appear.

If you have worked with the IU Office of the Treasurer to IPAS/PayPal-enable your storefront, you will also need to test the immediate credit card payment authorization feature of your storefront.

There are 2 levels of testing that you can perform with E-Store, IPAS/PayPal, and the IU Office of the Treasurer before you allow real customers to make real purchases with immediate credit card purchase authorization. Real purchases will show up in the IU general ledger associated with your account. This can be thought of as 'going live'.


How do I 'go live' with customers?

When you and the Office of the Treasurer are satisfied that E-Store@IU is handling purchases assisted by IPAS and PayPal properly, and that the transctions are appearing correctly in the IU general ledger, you can agree on a date and time when your entire IPAS/PayPal-enabled secure E-Store@IU storefront can be opened to Internet customers.

Return to Top of Page


Appendix A
The E-Store@IU Configuration Reference Guide

This reference is provided to help you as you enter values for the items that the E-Store@IU Configuration editor can change to customize various aspects of how E-Store@IU presents itself to your customers.

Merchant Information
These values are specified by the merchant and describe the demographics of the merchant, such as the merchant's name, address, and email address, the web address of the entry page, the web address of a page to show if the customer exits, etc. In addition there are customer service-related values which specify the phone, fax and email information for the merchant's customer service area.
Setting Description Example Notes
Merchant Name Required
Official merchant name
Indiana University Merchant --
Merchant Address Required
Official merchant street address
601 N. MyStreet St. --
Merchant City Required
Official merchant city
Bloomington --
Merchant State *Required
Official merchant state
Indiana Merchant State or Merchant Country must be specified
Merchant Zip *Required
Official merchant zip code
47404-3797 Must be a 5 or 9-digit number
Merchant Country *Required
Official merchant country
United States --
Merchant Email *Required
Official non-customer service merchant email address
mystore@indiana.edu --
Merchant Entry URL *Required
Web address of page to display to 'enter' the store
https://www.indiana.edu/
~myaccount/mystore/index.html
--
Merchant Exit URL *Required
Web address of page to display when a customer elects to 'exit' the store by clicking a 'leave store' button displayed on an E-Store@IU generated page.
http://www.indiana.edu/
~myaccount/mystore/estore_exit.html
--
Customer Service Phone Customer service phone number 812-555-1212
800-555-1212
--
Customer Service Email Customer service electronic mail address customer_help@indiana.edu --
Customer Service Fax Customer service fax number 812-555-1212
800-555-1212
--

Required Values
These 'yes' or 'no' values answer the question: 'What fields will I require the customer to enter before proceeding with the next step of their order? If you specify 'yes' for any of these options an indicator will be placed next to the field name and the customer will be required to put a value into the field before proceeding to the next step of the order.
Setting Description Example Notes
Billing Name Required? Specifies if the billing name will be a required piece of customer information yes or no Default is yes
Billing Address Line 1 Required? Specifies if the first line of the billing address will be required; this is normally used for a company or firm name yes or no Default is no
Billing Address Line 2 Required? Specifies if the second line of the billing address will be required; this is normally used as a street address yes or no Default is yes
Billing Address Line 3 Required? Specifies if the third line of the billing address will be required; this is normally used for a mail stop, room number, or 'to the attention of' at the address yes or no Default is no
Billing City Required? Specifies if the city of the billing address will be required yes or no Default is yes
Billing State Required? Specifies if the state of the billing address will be required yes or no Default is yes; Billing State or Billing Country must be specified
Billing Zipcode Required? Specifies if the zipcode of the customer's billing address will be required yes or no Default is yes if Billing State is specified
Billing Country Required? Specifies if the country of the customer's billing address will be required yes or no Default is United States
Billing Other Country Required? Specifies if an alternate country in the customer's shipping address will be required. yes or no Default is yes; only if Billing State and Billing Country have not been entered
Ship-to Name Required? Specifies if the ship-to name will be a required field yes or no Default: yes
Shipping Address Line 1 Required? Specifies if the first line of the shipping address will be a required field. This line is normally used for a company or firm name. yes or no Default: no
Shipping Address Line 2 Required? Specifies if the second line of the shipping address will be a required field. This line is normally used as a street address yes or no Default is yes
Shipping Address Line 3 Required? Specifies if the third line of the shipping address will be a required field. This line is normally used for a mail stop, room number, or 'to the attention of' at the address yes or no Default is no
Shipping City Required? Specifies if the city of the shipping address will be required. yes or no Default is yes
Shipping State Required? Specifies whether the customer will be required to enter a value for the 'shipping state' field yes or no The default value is yes, unless a Billing Country is specified.
Shipping Zipcode Required? Specifies whether the customer will be required to enter a value for the 'shipping zipcode' field as part of the shipping address. yes or no This field is automatically required if Billing State is specified
Shipping Country Required? Specifies whether the customer will be required to enter a value for the 'shipping country' field as part of the shipping address yes or no Default is United States
Shipping Other Country Required? Specifies whether the customer will be required to enter a value for the 'shipping other country' fieldif the of the billing address will be required yes or no Default is yes; only if Billing State and Billing Country have not been entered
Shipping Amount Required? Specifies whether the customer will be required to enter a value for the shipping amount field. yes or no Default is yes
Shipping Special or Other Instructions Required? Specifies whether the customer will be required to enter a value for the 'shipping special instructions' field. yes or no Default is no
Customer Phone Required? Specifies if the customer must specify a value for the customer contact telephone number field yes or no Default is yes
Customer Fax Required? Specifies if the customer must specify a value for the customer contact fax number number field yes or no Default is no
Customer Email Address Required? Specifies if the customer must specify a value for the customer e-mail address field. Note that if E-Store@IU is to email the customer an order confirmation, this field must be required. yes or no Default is yes

Discount Codes
One or more discounts can be assigned a code which may consist of letters and/or numbers. A 1 to 100 value (meaning 1 to 100 percent) is associated with that code which is the percentage of the total order (before tax and shipping) which will be deducted, if the customer specifies that discount code as a response to the discount code prompt. Examples of codes and associated percentages might be: BIGSALE, 50% and SPRING, 20% and so on.
Item Description Example Notes
Discount Code/Percentage Values A discount value expressed as a percentage is paired with a discount code which may be from 1 to 10 characters. The discount code is not case sensitive so 'HOTSALE' is the same as 'HotSale'. For example, if the customer were to enter 'HOTSALE' into a discount code field and the merchant had specified that the customer should receive a 30% discount if they enter that code, E-Store@IU will discount the customer's purchase amount BEFORE any shipping charges (if applicable) are added. --
Discount Prompt Label Specifies the text of the prompt that appears before the discount code field so that the merchant can name the discount code as they wish. SmartShopper Code
Source Code
Discount Code
There is no default value

Sales Tax Calculations
The sales tax which should be added to the customer's purchase amount is based on the state or country they select (upper-lower case) in the Billing Address portion of the Customer Information Form. It is important to note that the ability to collect sales tax based on the home state of the customer is being considered by the federal and many state governments as a requirement for merchants doing business on the Internet. A sales tax rate is specified by associating a state or country with a tax-rate expressed as a percentage. Note: No sales tax for a given state or country will be collected if you do not associate a state or country with a tax-rate value.

Mail-in or Fax-in Payment Methods Accepted
These values specify which payment methods are accepted for mail-in or fax-in order forms generated by E-Store@IU.
Mail-In/Fax-In Credit Cards Accepted Allowed values from which 1 or more may be selected include: VISA, MasterCard, Discover, American Express, Diner's Club, MasterCard
Mail-In Non-credit Payments Accepted Allowed values from which 1 or more may be selected include: Travelers Check, Money Order, Check

Header and Footer Filenames
These values specify the names of merchant-created HTML files that are used as page 'header' and 'footer' content on various E-Store-generated pages. These files are HTML 'fragments' which can contain almost any sequence of HTML codes. However, there are some restrictions. Header files must not contain </body>...</html> sequences because E-Store will be inserting additional content after the header. Footer files must not contain <html>...<body> sequences because E-Store will be inserting additional content before the footer.
Item Description Example Notes
Cart Header Name of HTML file in ~/wwws/estore to fill top area of page CartHeader.html File should begin with <html>...<body>, and not contain </body></html>
Cart Footer Name of HTML file in ~/wwws/estore to fill bottom area of page CartFooter.html File should end with </body></html>..., and not contain <html>...<body>
Customer Information Form Header Name of HTML file in ~/wwws/estore to fill top area of page CustomerInfoHeader.html File should begin with <html>..., and not contain </body></html>
Customer Information Form Footer Name of HTML file in ~/wwws/estore to fill bottom area of page CustomerInfoFooter.html File should end with </body></html>..., and not contain <html>...<body>
Order Summary Header Name of HTML file in ~/wwws/estore to fill top area of page OrderSummaryHeader.html File should begin with <html>..., and not contain </body></html>
Order Summary Footer Name of HTML file in ~/wwws/estore to fill bottom area of page OrderSummaryFooter.html File should end with </body></html>..., and not contain <html>...<body>
Authorization Error Header Name of HTML file in ~/wwws/estore to fill top area of page AuthorizationErrorHeader.html File should end with </body></html>..., and not contain <html>...<body>
Authorization Error Footer Name of HTML file in ~/wwws/estore to fill bottom area of page AuthorizationErrorFooter.html File should end with </body></html>..., and not contain <html>...<body>
Order Receipt Header Name of HTML file in ~/wwws/estore to fill top area of page OrderReceiptHeader.html File should begin with <html>..., and not contain </body></html>
Order Receipt Footer Name of HTML file in ~/wwws/estore to fill bottom area of page OrderReceiptFooter.html File should end with </body></html>..., and not contain <html>...<body>
Order By Mail Print-out Form Header Name of HTML file in ~/wwws/estore to fill top area of page OrderByMailHeader.html File should end with </body></html>..., and not contain <html>...<body>
Order By Fax Print-out Form Header Name of HTML file in ~/wwws/estore to fill top area of form OrderByFaxHeader.html File should end with </body></html>..., and not contain <html>...<body>

Feature Options
These options can be set to 'yes' or 'no' and control whether specific program options of E-Store will be used or not.
Item Description Example Notes
Use Gift Prompt? Specifies whether or not a yes/no field is displayed inquiring whether the customer's order is a gift. yes or no Default is no
Use Special Instructions Prompt? Specifies that a text area be included for customer to enter special shipping or other instructions for handling the order. yes or no Default is no
Email Order Confirmation Receipt to Customer? Specifies whether or not the customer is sent an order confirmation receipt via e-mail after they have completed their order. This field has no meaning unless the customer is required to enter an email address. yes or no Default is no

Customer Information Form
Field Information Filenames
These entries optionally specify the names of merchant-created HTML files that provide additional information for a single field or group of fields on the customer information form. These files are HTML 'fragments' since they must not contain contain <html>...<body> or </body>...</html> HTML codes in order to display properly.
Setting Description Example Notes
Billing Address Information Name of HTML file in ~/wwws/estore whose contents will precede the billing address information fields on the page BillingAddressInfo.html File should not contain <html>...<body> or </body>...</html>
Shipping Address Information Name of HTML file in ~/wwws/estore whose contents will precede the shipping address information fields ShippingAddressInfo.html File should not contain <html>...<body> or </body>...</html>
Suggestion: This HTML file might include a statement that the customer should fill out the shipping name address fields only if one or more of them will be DIFFERENT from the billing name and address fields.
Shipping Charge Information Name of HTML file in ~/wwws/estore whose contents will precede the shipping amount field.
File should not contain <html>...<body> or </body>...</html>
ShippingChargeInfo.html This HTML file should describe how to calculate shipping charges so that the customer can enter the amount into the field.
Discount Information Name of HTML file in ~/wwws/estore whose contents will precede the discount code field on the page DiscountInfo.html File should not contain <html>...<body> or </body>...</html>
Contact Information Name of HTML file in ~/wwws/estore whose contents will precede the customer contact information fields on the page ContactInfo.html File should not contain <html>...<body> or </body>...</html>
Gift Information Name of HTML file in ~/wwws/estore whose contents will precede the question to the customer about whether the the purchase is a gift. GiftInfo.html File should not contain <html>...<body> or </body>...</html>
Special Shipping or Other Instructions Information Name of HTML file in ~/wwws/estore whose contents will precede the field for the customer to enter special shipping or other instructions for handling the order. ShippingSpecialInfo.html File should not contain <html>...<body> or </body>...</html>


Appendix B
Files Supporting a Shopping Session

The majority of the files that support a shopping session with E-Store@IU are self-managing and should be of little concern to the merchant. They are presented here primarily to document them for possible reference by developers working with the E-Store@IU software itself.

One file type that will likely be of interest to the merchant is the .sale file, discussed below under 'The Sale File'. The presence of a sale file indicates a customer purchase that obtained approval from IPAS/PayPal for payment and for which a receipt was generated and delivered to the customer. It is the sale files for a given day which are gathered together by the E-Store End of Day Script (see the section titled: How will I get records of my sales?

The Session File

The 'session file' is used by E-Store to help manage the context of the shopping session as the customer move from product description page to product description page in your store. Each shopping session has a uniquely named 'session file' in the ~/estore/sessions directory in your account. A session file's name consists of the numeric session identifier and a file extension of '.session'. An example session file is shown below and each line is explained.

Line 1: myaccount-19990503165308
Line 2: 1
Line 3: https://www.indiana.edu/~myaccount/productpage.shtml
Line 4: 1


The Cart File (~/estore/carts)

A 'cart file' contains data pertaining the items that the customer had indicated should go into their 'shopping cart'. Each shopping session has a uniquely named 'cart file' in the ~/estore/carts directory in your account. A cart file's name consists of the numeric session identifier and a file extension of '.cart'. In the example below, the customer has placed 2 items in their cart; the fields of each line consist of the quantity, the product code, the product description and the price each of the item. Each field is separated by a '|' (vertical bar character).

1|HYP72|Hypatia Vol. 7, No. 2 Feminism and Language|16.95
1|HYP12|Hypatia Volume 1, Number 2|12.95

The Customer File (~/estore/customers)

A 'customer file' contains data pertaining the that the customer has entered after they have elected to go to the 'checkout'. The items that they are asked to enter include information about the billing address, the shipping address, shipping charges (if any), discount codes, special shipping instructions, special instructions if the purchase is a gift, etc. Each shopping session has a uniquely named 'customer file' in the ~/estore/customers directory in your account. A customer file's name consists of the numeric session identifier and a file extension of '.customer'.

BillingName=John Public
BillingAddr1=
BillingAddr2=1114 Anytowns Street
BillingAddr3=
BillingCity=Bloomington
BillingState=IN
BillingCountry=United States
BillingOCountry=
BillingZip=47401-4434
CustomerEmail=public@mailstop.com
CustomerFax=812-555-1212
CustomerPhone=812-555-1213
ShippingName=
ShippingAddr1=
ShippingAddr2=
ShippingAddr3=
ShippingCity=
ShippingState=
ShippingZip=
ShippingCountry=United States
ShippingOCountry=
ShippingGift=n
ShippingSpecial=

The Order File (~/estore/orders)

The 'order file' is created only if the customer is paying by credit
card and requesting immediate payment authorization through IPAS/PayPal.
The 'order file' is created just before the customer is presented with
the University Credit Card Data Entry Form to enter their credit
card information. Note that it is not E-Store@IU that presents this form,
it is the IU Internet Payment Authorization Service (IPAS).

Each shopping session has a uniquely named 'order file' in the ~/estore/orders directory in your account. An 'order file's name consists of the order identifier for the order and a file extension of '.order'. An example 'order file' is shown below with each line explained.

Line 1: May 20, 1999- 1:20pm
Line 2: https://www.indiana.edu/~myaccount/estore/estore.cgi
Line 3: 92722441325896
Line 4:   103.95


The Sale File - (~/estore/sales)

The 'sale file' is created only if the customer is paying by credit card and requesting immediate payment authorization through IPAS/PayPal. Additionally, it is only created if the authorization attempt with PayPal was successful. The combination of data stored in the cart, customer, and order files for a given shopping session makes up the data in a 'sale file'. Each shopping session which ends in a successful purchase with immediate payment authorization has a uniquely named 'sale file' in the ~/estore/sales directory in your account. A sale file's name consists of the order identifier for the order and a file extension of '.sale'. An example 'sale file' is shown below. At the end of the day, sale files are gathered together into a 'daily' file which is then delivered to the merchant. In addition, all 'sale files' are archived in the ~/estore/sales_archive directory in you account. The merchant is responsible for managing this 'sales_archive' directory as sale files will be deposited there into perpetuity. The individual sale files and the aggregated daily sales file are structured to allow for easy reformatting if needed for post-processing by a Point of Sale system.

# ******************************************************
# myaccount-19990428143530.sale
# ******************************************************
OrderId=myaccount-19990428143530 
OrderDate=April 28, 1999
OrderTime= 2:35pm
OrderSession=9253281303335
BillingName=John Public
BillingAddr1=
BillingAddr2=1114 S. Anytowns Street
BillingAddr3=
BillingCity=Bloomington
BillingState=IN
BillingCountry=United States
BillingOCountry=
BillingZip=47401-4533
CustomerEmail=public@mailstop.com
CustomerFax=
CustomerPhone=812-555-1212
ShippingName=Sara Public
ShippingAddr1=1343 S. Anytowns Street
ShippingAddr2=
ShippingAddr3=
ShippingCity=Bloomington
ShippingState=IN
ShippingZip=47404
ShippingCountry=United States
ShippingOCountry=
ShippingGift=n
ShippingSpecial=
ItemNumber=1
ItemQuantity=1
ItemCode=0-253-21217-0
ItemDesc=Frontier Indiana (paper)
ItemPrice=  18.95
ItemExtendedPrice=  18.95
OrderUniqueItems=1
OrderTotalItems=1
OrderSubtotal=    18.95
OrderDiscountCode=IUSPECIAL
OrderDiscountPercent=50
OrderDiscountAmount=     9.47
OrderTaxPayee=Indiana
OrderTaxPercent=5
OrderTaxAmount=     0.47
ShippingAmount=     0.00
OrderTotal=     9.95




Last Modified: 16 January 2009
Copyright 2009, The Trustees of Indiana University