PPA_Admin_Design by chandiran.hema00

VIEWS: 0 PAGES: 18

									PPAnalyser.com

Design Document for Admin Side

Ver 1.0

Prepared by Cerulean Information Technology Pvt. Ltd.




                                Page 1 of 18
Table of Contents
1.     Login/Forgot Password ......................................................................................................................... 3
2.     Post Login Landing Page........................................................................................................................ 4
3.     Manage Administrators ........................................................................................................................ 5
     3.1.     Add Administrator......................................................................................................................... 6
4.     Edit Admin............................................................................................................................................. 7
5.     Manage Users ....................................................................................................................................... 8
     5.1.     Subscriptions ............................................................................................................................... 10
     5.2.     Add Subscription ......................................................................................................................... 10
     5.3.     Customer PPAs purchased details .............................................................................................. 11
     5.4.     Account Details ........................................................................................................................... 13
6.     Subscription Reports ........................................................................................................................... 14
     6.1.     View Details................................................................................................................................. 16
7.     Viewing Statistics ................................................................................................................................ 17




                                                                      Page 2 of 18
The following pages describe the contents and flow of screens for admin. All pages subsequent to login
will check whether a valid admin session exists.

1. Login/Forgot Password

Static Content
There is no static content on this page.

Dynamic Content
There is no dynamic content on this page unless a cookie is detected with the user id and password that
has been saved. In such a case retrieve the user id and password from the cookie and pre-load the form
values

Forms
There will be a login form with a Remember me checkbox. There will be a “Forgot Password” link which
will bring up a light-box into which the user will enter their email-address to be notified of their
password.

Form Processing
When the form is submitted, check if a valid user exists for the given id and encrypted password in the
table admin_users by attempting to retrieve the id of the admin and checking if the status is “A”. If valid,
store the admin id in session and update the last_login date for this record with the current date. If
invalid, return the user to the form with the message “Invalid username/password”.

If the user had checked the Remember me box, save the username and password in a cookie (valid for 6
months) for retrieval in the next visit by the user.

If the user clicks on Forgot Password, accept the email address and if the email address is found in the
admin_users table send the decrypted password to the email address of the user in the following email :



Dear <First Name>
                                               Page 3 of 18
As per your request we are sending you your password to access the PPAnalyser Admin Panel.



Your password is <unencrypted password>.



Regards,

PPAnalyser Admin team



If the email address is not found, display a message “Invalid email address”.




2. Post Login Landing Page

Static Content
There will be links to the following modules in the header (this will be repeated on all pages) with drop-
down options

        Manage administrators

        Manage Users

        Subscription Reports

        Viewing Statistics



There will also be an option to Change Password in the header which will open a light-box form with old
password, new password and confirm password. When the form is submitted check that the new
password and confirm password is the same and they are between 8 and 16 characters and contain at
least one alphabet and 1 number. If the two are the same, then check if the old password entered
matches the encrypted password stored in the table admin_user for the logged in user and if it does,

                                               Page 4 of 18
update the table with the new encrypted password. If the user had saved the password in a cookie,
update the password in the cookie as well.




Dynamic Content
The following will be displayed in the main body

Total Users : <Total count from users table>

Active Users : <Total count of users with status ‘A’ in users table>

Total PPAs : <Total count of records in the ppas table>

PPAs added in files : <Total count of distinct ppa_ids in the purchased_ppas table>




3. Manage Administrators

Static Content


“Create/Edit/Disable administrators using this section”

Dynamic Content
The table is sortable by any heading. The data is retrieved from the admin users table and displayed in
the table below in the order of admin name which is a combination of First name and Last Name. Paging
controls will be incorporated.

Admin name        Username        Account          Last Login     Status   Action
                                  Setup Date

A.N.Other         Abcdef          21/01/2010       16/03/2010     Active   Icons for Edit
                                                   12:00:00 PM             and
                                                                           Deactivate (If
                                                                           the status is in
                                                                           Inactive, then
                                                                           the icon will


                                                Page 5 of 18
                                                                             be Activate)




There will be a button to Add Administrator. The edit link will pass the admin id to Edit Admin. Clicking
on Deactivate will display an alert saying “Are you sure you want to Deactivate this user?” and on
confirmation will change the status to Inactive using AJAX and update the status and change the icon in
the table automatically as well. Similarly, the opposite change will be done for Reactivate.

3.1.     Add Administrator


Static Content
“Enter the details of the administrator and click “Submit” to create the account. A password will be
automatically generated and sent via email to the email address provided. “

Forms
Form Field Name                   Type                        Remarks
First Name                        Text Box                    Mandatory
Last Name                         Text Box                    Mandatory
Username                          Text Box                    Mandatory. Validate that the username
                                                              does not already exist as an admin
Email address                     Text Box                    Mandatory. Validate that the email
                                                              address does not already exist as an
                                                              admin and validate email format.


There will be “Submit” and “Cancel” buttons below the form with greater emphasis on Submit. The
admin will be created as active by default.

Form Processing

When the form is submitted, check that the username as well as the email address are both unique. If
either already exists, display the message Username already exists or Email already exists as the case
may be. If both are unique, then insert a record in the table admin_users by assigning a random 8
character alphanumeric password and with status “A”. The date of creation of the record will be
assigned as the current date and time. An email is then sent to the user in the following format :



                                               Page 6 of 18
Dear <First Name>,

Welcome to the PPAnalyser Admin Panel. You may login to the same using the following credentials :

URL : <Admin url from properties file>

Username : <Username>

Password : <Password>



Regards,

PPAnalyser Admin team




4. Edit Admin
Static Content
“Edit the details of the administrator and click Update to save the changes. “

Dynamic Content
The values will be pre-filled from the table admin_user based on the admin id received as input.

Forms
Form Field Name                   Type                        Remarks
First Name                        Text Box                    Mandatory
Last Name                         Text Box                    Mandatory
Username                          Text Box                    Mandatory. Validate that the username
                                                              does not already exist as an admin for
                                                              any other user
Email address                     Text Box                    Mandatory. Validate that the email
                                                              address does not already exist as an
                                                              admin for any other user and validate
                                                              email format.


There will be “Update” and “Cancel” buttons below the form with greater emphasis on Update.




                                               Page 7 of 18
Form Processing

When the form is submitted, check that the username as well as the email address do not already exist
for another admin user. If either already exists, display the message Username already exists or Email
already exists as the case may be. If both are unique, then update the record in the table admin_users,
The date of last update of the record will be assigned as the current date and time.




5. Manage Users
Static Content
“Enter the name of the user, email address, company name, postal code, country or date of registration
to locate the user“

Forms
Form Field Name                   Type                          Remarks
First Name                        Text Box
Last Name                         Text Box
Email address                     Text Box
Company Name
Country                           Multiple Select
Registration Date                 Date Picker                   There will be 2 date pickers for “From”
                                                                and “To”
Status                            Radio Button                  Subscribed, Expired or Both
Subscriber ID                     Text Box


The form is followed by a Search button. Any one field has to be filled in to search for a user.

Form Processing

The search is conducted by looking at the users table (and additionally address table by linking if one or
more countries are selected in the search condition). If the “From” date alone is filled search for all users
created on or after that date. If the “To” date alone is filled, all users created on or before that date are
included. If both are filled, then search between those dates. More than one condition can be provided.



                                                 Page 8 of 18
Dynamic Content

The search results are displayed below the form with a “loading” message displayed while the search is
being performed. The table is sortable by any heading. Prior to search, the full list of users is displayed in
alphabetical order. The deactivate/reactivate status is determined based on the user_status field
whereas the status that is displayed in the column is the user_subscription_status. Paging controls will
be incorporated. When sorting in the Name/last login column only the name is considered for sorting.
When sorting the set-up date/status column only the setup date is considered for sorting.

ID        Name/L     Company      Countr   Setup    PPAs         PPAs        Expire       Action
          ast        Name         y        Date     purchased    remaining   Date
          Login                            /
                                           Statu
                                           s

1         AN         Abcdef       Nether   22/12    100          2           21/12/20     Icons for
          Other                   lands    /2009                             10           Deactivat
                                           Subsc                                          e/Reactiv
          12/01/2                          ribed                                          ate,
          010                                                                             Account
          12:00:0                                                                         details,
          0 PM                                                                            Subscripti
                                                                                          ons, PPAs
                                                                                          purchased

2         AB         Sdijfkdf     USA      01/01    200          40          31/12/20     Icons for
          Gone                             /2010                             10           Deactivat
                                           Expir                                          e/Reactiv
          12/01/2                          ed                                             ate,
          010                                                                             Account
          12:00:0                                                                         details,
          0 PM                                                                            Subscripti
                                                                                          ons, PPAs
                                                                                          purchased




                                                Page 9 of 18
There will be a link to download the list as a CSV file which will include all fields. Clicking on
Activate/Reactivate will bring up an “Are you sure ?” confirmation alert. On confirmation the
user_status of the user will be updated with the change and the last_update date is updated with the
current date.

5.1.     Subscriptions

When the user clicks on the subscriptions link, the following page is displayed. Validation should be
done that a user id is received as input.

Static Content
“Click on “Add Subscription” to enter a manual subscription entry”

Dynamic Content
 “The following subscriptions have been previously purchased by this customer” . The table is sortable
by any column heading except Invoice. The data is retrieved for the user id received as input from the
table subscriptions with transaction_status as ‘A’.

Date           Transaction   Amount        PPAs Left     Payment     Credits        Expiry Date        Invoice
               Reference                                 Mode        Purchased

16/02/2010     1233123       € 2000        5             Online      100            15/02/2011         Icon for
                                                                                                       PDF




There will be a button for “Add Subscription” above the table. Clicking on the Invoice icon will open a
PDF version of the invoice as per the format supplied.

5.2.     Add Subscription

Static Content
“Enter the details of the subscription being manually added“

Forms
Form Field Name                   Type                      Remarks
Subscription Start Date           Date Picker               Mandatory
Subscription End Date             Date Picker               Mandatory – will default to Start date +
                                                            period mentioned in the properties file

                                                Page 10 of 18
                                                            but can be modified.
Payment Mode                      Radio Button              (C)heque, (A)djustment, (F)ree Trial
Amount                            Text Box                  Default 0 – Mandatory. Must be numeric,
                                                            decimals allowed
Transaction Reference             Text Box                  Mandatory
Number of credits                 Text Box                  Mandatory – Must be numeric without
                                                            decimals


The form is followed by a Submit button. The Subscription End date will be automatically calculated as
the period defined in the properties file from the Start Date if it is blank, but it can be edited.

Form Processing

On submission of the form, insert a record into the subscriptions table for the selected user id and
update the users table with the user subscription status as Subscribed, expiry date as the input
subscription end date.




5.3.     Customer PPAs purchased details

When the user clicks on the PPAs purchased link, the following page is displayed. Validation should be
done that a user id is received as input.

Forms
The                               Type                      Remarks
Purchased Date Range              Date Picker               There will be 2 date pickers for “From”
                                                            and “To”



Dynamic Content

The customer’s name is displayed in the heading from the users table. If no date range is specified all
PPAs purchased by this user are displayed for the selected user id. The data is retrieved using the
following query (with the date condition included based on usage) – SELECT a.ppa_id, g.form_name,
b.sic_code_id, c.sic_description, a.purchase_date, d.description, f.country FROM purchased_ppas a,
sic_codes c, ppa_descriptions d, companies e, countries f, ppas b LEFT JOIN form_types g ON
                                              Page 11 of 18
g.id=b.form_type_id WHERE a.user_id = <selected user id> AND (a.purchase_date BETWEEN <selected
from date> AND <selected to date> AND) b.id = a.ppa_id AND c.id = b.sic_code_id AND d.ppa_id = b.id
AND e.id = b.company_id and f.id = e.country_id.Paging controls will be incorporated. When sorting for
SIC only the sic code is considered for sorting and not the description.

PPA ID         Filing   SIC              Purchase Date         Description                    Country
5200005        SEC      133 -            22/01/2010            On April 30, 2008, the         USA
                        Pharmaceutical                         Company acquired all of
                                                               the membership interest
                                                               in DesignPac Gifts LLC
                                                               (DesignPac), a designer,
                                                               assembler and distributor
                                                               of gourmet gift baskets,
                                                               gourmet food towers and
                                                               gift sets, including a broad
                                                               range of branded and
                                                               private label components,
                                                               based in Melrose Park, IL.
                                                               The acquisition, for
                                                               approximately $33.4
                                                               million in cash, net of cash
                                                               acquired, was financed
                                                               utilizing a combination of
                                                               available cash generated
                                                               from operations and
                                                               through borrowings
                                                               against the Company's
                                                               revolving credit facility.
                                                               The purchase price is
                                                               subject to potential "earn-
                                                               out" incentives which
                                                               amount to a maximum of
                                                               $2.0 million through the
                                                               years ending June 27,
                                                               2010, upon achievement
                                                               of specified performance
                                                               targets. In its most
                                                               recently completed year
                                                               ended December 31,
                                                               2007, prior to the
                                                               acquisition, DesignPac
                                                               generated revenues of
                                                               approximately $53.3
                                                               million.
5200010        SEC      700 –            15/02/2010            On April 1, 2008, a            Netherlands
                        Agricultural                           subsidiary of the Company
                        Sciences                               purchased the stock of
                                                               Aearo Holding Corp., the
                                                               parent of Aearo
                                                               Technologies ("Aearo").
                                                               Aearo manufactures and

                                             Page 12 of 18
                                                                     sells various products,
                                                                     including personal
                                                                     protection equipment,
                                                                     such as eye, ear, head,
                                                                     face, fall and respiratory
                                                                     protection products



There will be a link to download the list as a CSV file which will include all fields.

5.4.      Account Details

Form
Form Field Name                     Type                       Remarks
First Name                          Text Box
Last Name                           Text Box
Email address                       Text Box
Address Section
Company Name                        Text Box
Phone No                            Text Box
Address Line 1                      Text Box
Address Line 2                      Text Box
City                                Text Box
State                               Dropdown
Zip code                            Text Box
Country                             Dropdown
Billing Information Section         Checkbox                   If unchecked the form fields below will
                                                               be displayed
Billing Address Line 1              Text Box
Billing Address Line 2              Text Box
Billing City                        Text Box
Billing State                       Dropdown
Billing Zip code                    Text Box
Billing Country                     Dropdown


The form is preloaded with information from the users and addresses table for the selected user.

Form Processing

The information is updated to the users and addresses table based on the changes made. If previously
billing address was same as the company address and now it is not the same, then a new record is
inserted with the billing address details and the new address id updated in the users table against the
                                                Page 13 of 18
billing_address_id . If previously they were different and now they are made the same, then the same id
as the company address id is updated against billing_address_id for the user.




Dynamic Content

The IP address log is displayed below the form from the table user_login_details using the following
query – SELECT ip_address, max(login_date) FROM user_login_details WHERE user_id = <selected user
id> GROUP by ip_address. Paging controls will be incorporated.

IP ADdresses used    Date Last used

202.114.103.20       21/12/2010

339.039.303.102      31/12/2010




6. Subscription Reports

Static Content
“Enter the date range for the report and select the type of transactions to include“

Forms
Form Field Name                   Type                       Remarks
Subscription Date                 Date Picker                There will be 2 date pickers for “From”
                                                             and “To”
Transaction Type                  Checkbox                   Online and Manual (both are checked by
                                                             default)
Subscription Type                 Checkbox                   Paid and Free (both are checked by
                                                             default)
Country                           Multiple Select            List of countries


The form is followed by a Search button. Any one field has to be filled in to search for a retailer and only
date is mandatory. If the “From” date alone is filled search for all advertisers registered on or after that

                                                Page 14 of 18
date. If the “to” date alone is filled, all advertisers on or before that date. If both are filled, then search
between those dates. More than one condition can be provided




Dynamic Content

The search results are displayed below the form with a “loading” message displayed while the search is
being performed. The table is sortable by any heading except Address and Action. The details are
retrieved using the following query SELECT YEAR(a.subscription_date), MONTH(a.subscription_date),
SUM(a.amount), SUM(a.credits_given) FROM subscriptions a WHERE a.subscription_date BETWEEN
<selected from date> AND <selected to date> AND a.transaction_status = ‘A’ AND a.transaction_type in
(<selected transaction type – if both are selected, then this condition should be skipped) AND
a.payment_mode (= or <> depending on selection) ‘F’ (if both options are selected for subscription type
then this condition should be skipped) GROUP BY YEAR(a.subscription_date),
MONTH(a.subscription_date)

If the country is selected then the query has to be modified as follows :

SELECT YEAR(a.subscription_date), MONTH(a.subscription_date), SUM(a.amount), SUM(a.credits_given)
FROM subscriptions a, users b, address c WHERE a.subscription_date BETWEEN <selected from date>
AND <selected to date> AND a.transaction_status = ‘A’ AND a.transaction_type in (<selected transaction
type – if both are selected, then this condition should be skipped) AND a.payment_mode (= or <>
depending on selection) ‘F’ (if both options are selected for subscription type then this condition should
be skipped) AND b.id=a.user_id AND c.id = b.user_address_id and c.country id IN (selected country ids
separated by commas) GROUP BY YEAR(a.subscription_date), MONTH(a.subscription_date)




Month and Year      Number of subscriptions     Total Amount      Total Credits    View Details

Jan 2010            40                          80000             4000             View Details

Feb 2010            20                          40000             2000             View Details

Total               60                          120000            6000



                                                 Page 15 of 18
Clicking on View Details will pass the parameters of the search and the month and year to the next
screen.




6.1.    View Details


Dynamic Content


“Subscription Report for <Month> <Year>”

The individual subscription details are displayed below where the above query is modified as follows



SELECT a.subscription_date, a.reference, a.transaction_type, a.payment_mode, b.first_name,
b.last_name, b.company_name, d.country, a.amount, a.credits_given FROM subscriptions a, users b,
address c , countries d WHERE a.subscription_date BETWEEN <selected from date> AND <selected to
date> AND a.transaction_status = ‘A’ AND a.transaction_type in (<selected transaction type – if both are
selected, then this condition should be skipped) AND a.payment_mode (= or <> depending on selection)
‘F’ (if both options are selected for subscription type then this condition should be skipped) AND
b.id=a.user_id AND c.id = b.user_address_id and c.country id IN (selected country ids separated by
commas) (if no country is selected, then the last condition is skipped)



Date              Transaction Reference     Payment          Customer        Country         Amount        Number of
                                            Type/Subscrip    Name/Compa                                    Credits
                                            tion Type        ny Name

01/01/2010        23838482                  Online/Paid      ABC/ XYZ Inc    USA             2000          100

15/01/2010        34494949                  Manual/Paid      An              Netherlands     2000          100
                                                             Other/Somebo
                                                             dy Ltd

28/01/2010        Free Trial                Manual/Free      GHI             UK              0             10

                                                                             Total           4000          210


                                             Page 16 of 18
There will be a link to download the list as a CSV file which will include all fields.




7. Viewing Statistics

Static Content
“Enter the date range for the report and select the type of PPAs to include“

Forms
The                                 Type                       Remarks
View Date Range                     Date Picker                There will be 2 date pickers for “From”
                                                               and “To”
Full Text Search                    Text box
Company Name PPA Disclosure         Text box
Acquisition Date                    Date Picker                There will be 2 date pickers for “From”
                                                               and “To”
Filing                              Date Picker                There will be 2 date pickers for “From”
                                                               and “To”
Acquisition Amount                  2 Text boxes               There will be 2 text boxes for “From” and
                                                               “To”
Reference Number                    Text Box
Deal Type                           Radio Button               All, Asset, Share
Other Options                       Checkboxes                 Useful life disclosed, advisory fee
                                                               disclosed
Quick SIC code file                 Textbox                    This will have an auto-complete from the
                                                               sic_codes table where the user can type
                                                               in the digits and the auto-complete will
                                                               show the description next to the codes
                                                               that match the typed in digits.
SIC Code Search                     Multiple Select            Will have the full list of sic codes
Intangibles includes                Multiple Select
Country/Region                      Multiple Select            Depending on selection the values will be
                                                               loaded from the countries or regions
                                                               table


Only the View date Range is mandatory and any date selected should automatically be changed to the
1st day of the selected month for the from date and last day of the select month for the to date. If only
date range is given then the data is retrieved with the following query – SELECT a.ppa_id, b.sic_code,
                                                   Page 17 of 18
c.sic_description, SUM(a.individual_views), SUM(a.consolidated_views), SUM(a.search_results),
COUNT(d.id) FROM ppa_individual_views a, ppas b, sic_codes c, purchased_ppas d WHERE
a.view_month BETWEEN <selected from date> AND <selected to date> AND d.ppa_id=a.ppa_id AND
d.purchase_date BETWEEN <selected from date> AND <selected to date> AND b.id=a.ppa_id and
c.id=b.sic_code_id



Where additional search criteria has been provided perform the search condition using the same search
logic as used in the front-end search and use the resulting list of PPA IDs as an additional condition as
follows :

SELECT a.ppa_id, b.sic_code, c.sic_description, SUM(a.individual_views), SUM(a.consolidated_views),
SUM(a.search_results), COUNT(d.id) FROM ppa_individual_views a, ppas b, sic_codes c, purchased_ppas
d WHERE a.ppa_id in (list of PPA ids returned by the search condition) AND a.view_month BETWEEN
<selected from date> AND <selected to date> AND d.ppa_id=a.ppa_id AND d.purchase_date BETWEEN
<selected from date> AND <selected to date> AND b.id=a.ppa_id and c.id=b.sic_code_id




Dynamic Content

Paging Controls will be implemented. For sorting in SIC code only the code and not the description will
be considered for sorting.

PPA ID          SIC code            Individual Views       Consolidated    Included in   Added to Folders
                                                           Views           Search
                                                                           Results
5200005         110-Cash gains      30                     10              45            25
5200010         811 – Timber        40                     20              60            30
                tracts


There will be a link to download the list as a CSV file which will include all fields.




                                                 Page 18 of 18

								
To top