ASA-IS-WEB-01

Adding a new domain to the server

Go into /etc/apache2/sites-available/ and create a new configuration. You can copy an existing site configuration for reference, but a sample is included below.

You’ll need to update the DocumentRoot and ServerName values for each VirtualHost.

You will also need to check that the certificate includes the new site you are adding, and if it does not then either update the certificate or add a new one and point to it from the conf file.

If the new site is being created solely as a redirect, update the RedirectMatch value, otherwise remove it.

After creating your new configuration file, you will need to run “sudo a2ensite <name of your new server>”.

<VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com

ServerAdmin asaweb@uw.edu
DocumentRoot /var/www/iss.uw.edu # The directory which you will use for serving files.

ServerName iss.uw.edu
ServerAlias asa-is-web-01.asa.uw.edu

# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf

RedirectMatch "^(.*)" "https://iss.washington.edu$1"
</VirtualHost>

<VirtualHost *:443>
ServerAdmin asaweb@uw.edu
DocumentRoot /var/www/iss.uw.edu

ServerName iss.uw.edu
ServerAlias asa-is-web-01.asa.uw.edu

SSLEngine on
SSLCertificateFile "/var/certs/asa-is-web-01.asa.uw.edu.crt"
SSLCertificateKeyFile "/var/certs/asa-is-web-01.asa.uw.edu.key"

RedirectMatch "^(.*)" "https://iss.washington.edu$1"
</VirtualHost>

Intranet Drafts

All existing pages, in draft mode, pulled in from the EIS Intranet.

ASA-IS-APPS-01

This is our application server, living in the ASA virtual server rack.

Notes

https://docs.google.com/document/d/1_dlqHQgrtEgPjGK73-eYDjTWVqUzo4qt5yV7j1MKEmo/edit?usp=sharing

AUTO

Introduction – UW Admissions Applications

Auto is an application created by Octamer that automates the acquisition of Undergraduate Applications from the Online vendor. It securely downloads and archives the Applications as PDF documents that can be viewed, reviewed, printed and otherwise utilized by the Enrollment Services sections of Admissions and Data Services, International Admissions and the Registrar’s Processing Center. Along with the many sources of Transcripts, Auto makes possible a Computer based repository that can be made available selectively to University Staff based on standardized roles to minimize paper and processing steps and to maximize timely throughput of Applicants. The current Online vendor is CollegeNet.

Basic AUTO Functionality

CollegeNet creates Applications based upon Online forms that are developed by Admissions. There are several types for Applicant categories; Freshmen, Post-Bac, Intl-Freshman, Transfer, etc. Some Application types are bundled with included documentation such as a Transcript or Letter. Every weekday morning at 02:00 hrs CollegeNet runs their Imager process and creates Zipped batches of 50 PDF’d Applications. A flat file is provided to allow the SDB import process to digest the incoming Applications. A UW-IT process gathers and utilizes the flat file and sends an Acknowledgement back to CollegeNet (at 03:00 hrs) to let their process know that the Applications have been received. The Imager process creates XML log files which are used by Auto to receive and sort the Applications. The Auto Button on the Microsoft Access form calls a batch script which does the bulk of Auto processing.

UAM – Undergrad Admissions Modernization

UAM incorporates some of Auto’s functionality within it. Currently Auto is still processing Transfer and International applications with Transcripts appended. Auto creates the Error Status reports which are shared with Admissions, Residency and OUR.

UAM on UWIT Wiki

AUTO – ongoing

Created in 2011 and before, AUTO continues to be used until the transition to UAM is complete. Now used for Transfer applications, online and post-bac. When attached transcripts for International Transfer applications became unattached a new process was developed to re-attach them so when they are printed they are printed together. When the migration from Vitcos to Agora occurred a new work around for the 2FA was developed. Constant maintenance and improvement are implemented as needed. AUTO was one of the main business processes that was migrated from the Datamgmt Domain utilizing the Server Venus to the new UWIT Delegated Domain EM and the fileserver Nikon.

Auto Script

#/bin/bash
# fileinfo.sh
#   New UW UG Application Script
#   2011-1103 -das-
#

/bin/date
AUTO="f:/1web/auto/"
ABIN="f:/1web/abin/"                                     #   point to progs
PATH="/bin:$ABIN:$PATH"                                  #   cygwin files 
# 
cd $AUTO                                                 #   goto working area
#
#  setup variables
export DATER=`date +%Y%m%d`                              #   yyyymmdd
export DATEW=`date +%y%m%d`                              #   yymmdd 
export DATEA=`date +%Y-%m%d`                             #   yyyy-mmdd
export ARGV=`basename "$1"`                              #   or pass in a date
if ! (test -e $ARGV) then
   export CC=`echo $ARGV|awk '{print substr($0,1,2)};'`  # century
   export YY=`echo $ARGV|awk '{print substr($0,3,2)};'`  # year
   export MM=`echo $ARGV|awk '{print substr($0,5,2)};'`  # month
   export DD=`echo $ARGV|awk '{print substr($0,7,2)};'`  # day
   export DATER=`echo $CC$YY$MM$DD`
   export DATEW=`echo $YY$MM$DD`    
   export DATEA=`echo $CC$YY-$MM$DD`   
fi 
export APPNAME=$DATEA.txt
#
echo "Automatic Download for $DATER"
#
# DEBUG 
 rm -f Control* *.zip                        #  delete previous files
#
#  retrieve files from CN sftp - archive or new
/bin/date
echo $ABIN/pscp.exe -2 -4 -C  -p -sftp -batch -pw "This is for UW" uwftp@sftp.applyweb.com:UW_Imager/archive/$CC$YY/$MM/$DD/\*\_$DATER\_\* .
# DEBUG
     $ABIN/pscp.exe -2 -4 -C  -p -sftp -batch -pw "This is for uwi" uwftp@sftp.applyweb.com:UW_Imager/archive/$CC$YY/$MM/$DD/\*\_$DATER\_\* .
if ! (test -e Control*) then
echo $ABIN/pscp.exe -2 -4 -C  -p -sftp -batch -pw "This is for UW" uwftp@sftp.applyweb.com:UW_Imager/\*\_$DATER\_\* .
# DEBUG
     $ABIN/pscp.exe -2 -4 -C  -p -sftp -batch -pw "This is for uwi" uwftp@sftp.applyweb.com:UW_Imager/\*\_$DATER\_\* .
fi

/bin/date
#DEBUG



   echo cp *.zip    f:/1Web/zipfiles
        cp *.zip    f:/1Web/zipfiles &
   echo cp Control* f:/1Web/ctlfiles
        cp Control* f:/1Web/ctlfiles

/bin/date

# 2011-1115  add cnet_appl_sea.111115   -das-
# 2011-1116  applhold as archive -das-

   echo $ABIN/pscp.exe -i $ABIN/key.ppk -p dale@140.142.17.136:/issdbftp/sr/app/applhold/cnet_appl_sea.$DATEW $APPNAME
        $ABIN/pscp.exe -i $ABIN/key.ppk -p dale@140.142.17.136:/issdbftp/sr/app/applhold//cnet_appl_sea.$DATEW $APPNAME
if ! (test -e $APPNAME) then
   echo $ABIN/pscp.exe -i $ABIN/key.ppk -p dale@140.142.17.136:/issdbftp/sr/app/cnet_appl_sea.$DATEW $APPNAME
        $ABIN/pscp.exe -i $ABIN/key.ppk -p dale@140.142.17.136:/issdbftp/sr/app//cnet_appl_sea.$DATEW $APPNAME

fi


#   archive webfile
   echo cp $APPNAME f:/applications
        cp $APPNAME f:/applications
   echo cp $APPNAME f:/1web/webfiles
        cp $APPNAME f:/1web/webfiles

#   get error report
   echo $ABIN/pscp.exe -i $ABIN/key.ppk -p dale@140.142.17.136:/issdbftp/sr/app/ugadmerr.txt ugadmerr.txt
        $ABIN/pscp.exe -i $ABIN/key.ppk -p dale@140.142.17.136:/issdbftp/sr/app/ugadmerr.txt ugadmerr.txt

/bin/date
   echo cp ugadmerr.txt f:/1web/ERRfiles/`find -maxdepth 1 -name ugadmerr.txt -printf "err%Ty%Tm%Td.txt\n"`
        cp ugadmerr.txt f:/1web/ERRfiles/`find -maxdepth 1 -name ugadmerr.txt -printf "err%Ty%Tm%Td.txt\n"`


# Folder code
#DIR="$( cd "$( dirname "$0" )" && pwd )"
# 00000000011111111112222222222333
# 12345678901234567890123456789012
# Control_7_20111103_000000581.xml

/bin/date
DIMS="f:/dims"                             # point to DIMS
CNTL="$( ls -1 Control* )"                 # daily Control XMLs
ZIPL="$( ls -1 *.zip )"                    # daily ZIPs
DDIR=$DIMS/$DATER                          # daily directory
PDIR=$DIMS/$DATER/print                    # batch print directory
# make print directory
echo mkdir -p $PDIR
     mkdir -p $PDIR
echo rm -f $PDIR/dirlist.txt
     rm -f $PDIR/dirlist.txt

# make sub directories and unzip PDFs
for j in $ZIPL;
    do
        /bin/date
    echo
    echo Process $j:
        echo
        ZBAT="$( basename `echo $j | awk 'BEGIN {FS="_"}{print $5}'` .zip ) "
        ZBAT="$( expr $ZBAT + 0 )"
        BDIR=$DIMS/$DATER/$ZBAT                 # batch sub-directory
    FDIR="$( echo $j | awk 'BEGIN {FS="_"}{print  $1$4}' )"
        echo mkdir -p $BDIR/$FDIR 
             mkdir -p $BDIR/$FDIR 
        echo cp $j $BDIR/$FDIR 
             cp $j $BDIR/$FDIR 
        /bin/date
        echo pushd $BDIR/$FDIR
             pushd $BDIR/$FDIR
        echo unzip -o $j
             unzip -o $j
        echo rm $j
             rm $j
        FLST="$( ls  UW*.pdf )"
    for i in $FLST;
    do
        echo $i "|" $BDIR/$FDIR "|"  $BDIR/$FDIR/$i >> $PDIR/dirlist.txt
    done
#  don't copy pdfs
#       echo cp *.pdf $PDIR
#       cp *.pdf $PDIR
        echo popd
             popd
    done 
/bin/date

Admission and Appeal form, Waitlist Form

SPECIAL ADMISSION AND APPEAL FORM:

This application uses the windows server Sweetwater and a OneDrive account to move files around.

https://forms.admit.washington.edu/appeal/pages/index.php
• Accepted file types can be easily added or removed. Currently PDF, PNG, and JPEG.
• The file upload fields have an “accept” attribute that only lets you choose the accepted file types.
• If you do manage to submit a bad file type, then the application throws an error.
• Perhaps we should put a notice on the form indicating the acceptable file types?
• For testing purposes, you can unsubmit your application at: https://forms.admit.washington.edu/appeal/admin/unsubmit.php

WAITLIST FORM:
https://forms.admit.washington.edu/waitlist/domestic/index.php
https://forms.admit.washington.edu/waitlist/international/index.php

• Dates have been changed, as requested.
• Access to these pages is currently restricted to our own team, but we can unlock it on request.

Files to Update with New Year

  • waitlist/domestic/index.php
    • the $thisyear variable
  • waitlist/international/index.php
    • the $thisyear variable
  • waitlist/project-temlpates/section/accept.twig
    • within the text
  • waitlist/project-temlpates/section/classes-instructions.twig
    • within the text
  • waitlist/project-temlpates/section/intro.twig
    • within the text

Advising Forum Recordings

OUR holds monthly advising forums using their registra Zoom account that are recorded.

Recordings are published to this NetID protected page:

https://registrar.washington.edu/advising-forums/

MP4 files are posted to this directory:

/data/www/cdn.doem.washington.edu/videos/our

 

Assets

Assets like images for newsletters or PDFs can go to the CDN on DOEM, which is on enroll21. If you ssh in, here’s the directory:
/www/cdn.doem.washington.edu/misc/admissions/2017

Images uploaded to a CMS that handles their own images, like WordPress, are usually just in their typical WordPress locations.

Admissions

Pages

Sample A Class

Sample a class is a page on the Admissions site that links to a PDF that rotates every quarter. A request may come in to update the PDF. The PDFs are located in the CDN: /data/www/cdn.doem.washington.edu/misc/admissions/2018/sample_a_class

Misc.

Admissions Calendar Events and UW in your Area are described in recurring procedures.

Integrations

GravityForms

Join the Email List and For HS Counselors are GravityForms forms on the Admissions site. We have a weekly cron job (on sudo) on emkojima that runs every Friday to pull the results in a CSV format and puts them in a shared drive that Neal and Jim of Admissions can access for their scripts. There is a project request to automate adding these into the CRM directly, in the pipeline. The password for root on emkojima is in Encryptr.

If you want to run the scripts manually, make sure to run them as su to get permissions to write to the folder.

Join the Email List – J:\Team\Admission Systems\Ellucian Recruiter\Imports\Join the Email List

Counselors – J:\Team\Admission Systems\Ellucian Recruiter\Imports\Counselors

Script location on emkojima – /home/emweb/scripts/admissions_gravity_forms_automation

The script logs to #logs in Slack about whether or not it succeeded every Friday:

Calendars

Calendar events are mentioned in recurring procedures.

UW in your Area

UW in your Area’s process is mentioned in recurring procedures.

Plugins

Super Cache Plugin

Super Cache is enabled on the admit site. When a content owner edits a page, Super Cache is configured to automatically remove that page from the cache so that visitors will immediately see those changes. However, Super Cache will not automatically flush the cache when you make theme updates, etc. If you make any theme/presentation modifications to the site outside of editing a post/page, then you should visit the Super Cache plugin and delete the cache pages; Super Cache will then begin repopulating the cache with your changes.

Super Cache also presented some difficulties during installation: it didn’t want to write/create its configuration files automatically. I had to follow the instructions in the Super Cache admin to create/edit these files in order to get Super Cache working; you might encounter similar issues.

Applications

Some applications are retired.

Admissions Forms

Unit  Admissions
Address  https://forms.admit.washington.edu/admin/
Language PHP
Framework  Athens/Forms

 Admissions Wait list and Appeal Form

Unit  Admissions
Address  

https://forms.admit.washington.edu/waitlist/domestic/index.php

https://forms.admit.washington.edu/waitlist/international/index.php

Language PHP
Framework

Documentation: https://cms.eis.washington.edu/intranet/eis/admission-and-appeal-form-waitlist-form/

Admitted Student Preview Web Schedule

Unit  Admissions
Address  https://apps.admit.washington.edu/asp_schedule/
Language primarily JS, PHP
Framework  Vue

Documentation: https://cms.eis.washington.edu/intranet/eis/admitted-student-preview-web-schedule/

Admitted Student Preview Registration

Unit  Admissions
Address  http://apps.admit.washington.edu/asp/
Language PHP
Framework  Athens

America Reads

Unit  OSFA
Address
Language PHP
Framework  None/Legacy

CeCredential

Unit  OUR
Address
Language PHP
Framework  Athens

Change of Grades

Unit OUR
Address  https://apps.registrar.washington.edu/grade-change/pages/change.php
Language PHP
Admin https://apps.registrar.washington.edu/grade-change/admin/

Childcare Application

Unit  OSFA
Address  Admin: https://apps.osfa.washington.edu/childcare_admin/

API: https://apps.osfa.washington.edu/childcare_api/

Application: https://apps.osfa.washington.edu/childcare_application/

Language PHP
Framework  API [Propel] Admin/Application [Vue]

No longer in active use. Investigating whether we can fully shut it down -PB 3/4/20

Commencement Form

Unit  OUR
Address https://registrar.washington.edu/commencement/
Language N/A
Framework  GravityForms
  •  Used by Tina Miller. Might get requests to update the dates from time to time.

Constitution Site?

Unit  OUR
Addres
Language
Framework

We need to move this over to Suzzallo’s site.

https://constitution.uw.edu/

We have access to the wp-admin.

Dean’s List

Unit  OUR
Address  https://apps.registrar.washington.edu/deanslist/
Language PHP, JS
Framework  Vue

Degree Program Proposal

Unit  OUR
Address
Language PHP
Framework  Athens

EFC Calculator

Unit  OSFA
Address  https://osfa.washington.edu/efc_utils/financial-aid-estimator/uw/full/dependent.php

https://osfa.washington.edu/efc_utils/financial-aid-estimator/uw/full/independent.php

Language PHP
Framework  JavaScript/HTML

Emergency Financial Situation

Unit  OSFA
Address  https://apps.osfa.washington.edu/emergency-financial-situation/admin/
Language PHP
Framework  Athens/Forms
  • This one is also known as Emergency Financial Aid / Emergency Aid.
  • The DB for this is osfa_fin_sit.

Food Security Grants

Unit  OSFA
Address  http://osfa.washington.edu/foods/grant/index
Language PHP
Framework Athens/Forms

Keep in mind that this is on enroll21! This also doesn’t have an admin side. It sends out emails when users submit applications. That function is in /foods/grant/index.php

Graduation (WAG)

Unit  OUR
Address  https://apps.registrar.washington.edu/graduation/seattle/admin/
Language PHP
Framework  Athens/Forms (fork)

Graduation Plan Expiration Date Form

Unit  OUR
Address https://depts.washington.edu/registra/staffFaculty/satisfactory/
Language PHP
Framework  N/A

Hardship Withdrawal App

Unit OUR
Address  https://apps.registrar.washington.edu/hardship/pages/index.php?form=apply
Language PHP
Admin https://apps.registrar.washington.edu/hardship/admin/

Hardware Inventory App

Unit EIS
Address  http://apps.registrar.washington.edu/inventory/pages/enter-item.php
Language PHP

Athens/Fork

Admin http://apps.registrar.washington.edu/inventory/admin/item-table.php

I-20 reporter

Unit  ISS & Admissions
Address  enroll22: /usr/lusers/emweb/i20-reporter
Language PHP
Framework  N/A

Uses SWS to pull student information and process documents from forms.admit.washington.edu into the CRM. Uses the EMSweetwater server.

The I-20 Document Inserter script relies on the I-20 Reporter service to upload documents to the CRM. See More about I-20 Document Inserter

 

ISS Forms

Unit  ISS
Address  https://apps.iss.washington.edu/forms/admin/
Language PHP
Framework  Athens/Forms

Net Price Calculator

Unit  OSFA
Address  https://osfa.washington.edu/wp/getting-started/net-price-calculator/
Language JS/HTML
Framework  None

OSFA Forms

Unit  OSFA
Address  https://apps.osfa.washington.edu/forms/admin/
Language PHP
Framework  Athens/Forms

Preferred Name

Unit  OUR
Address
Language PHP
Framework  None

Quarterly Time Schedule Forms

Unit  OUR
Address  http://depts.washington.edu/registra/RATS/tscf.php
Language PHP
Framework  N/A

 

Registrar MagicFAQ

Unit  OUR
Address  http://apps.registrar.washington.edu/MagicFAQAdmin/
Language PHP
Framework  N/A

Registrar Checkin

Unit  OUR
Address Visitor: https://apps.doem.washington.edu/queue/guest/guests.php?office=registrar
Admin: https://apps.doem.washington.edu/queue/admin/guests.php?office=registrar
Database  http://enroll22.s.uw.edu/padmin/db_structure.php?server=1&db=doem_queue
Language PHP
Framework  Athens

The business owners occasionally request a dump of information from this application. You may use the following query, and export the results to a spreadsheet:

SELECT guest.id, removed_at, created_at, updated_at, issue.name, issue.text, issue_category.name,issue_category.text FROM `guest` join `queue` on `guest`.`queue_id`=`queue`.`id` join `issue` on `guest`.`issue_id`=`issue`.`id` join `issue_category` on `issue`.`issue_category_id`=`issue_category`.`id` WHERE created_at > '2017-01-01' Order By created_at ASC;

Registrar Forms

Unit  OUR
Address
Language PHP
Framework  Athens/Forms

Return to Title 4 (R2T4)

Unit  OSFA
Address  https://apps.osfa.washington.edu/r2t4/pages/index.php
Language PHP
Framework  Athens

Scholarship

Unit  OSFA
Address  https://apps.osfa.washington.edu/scholarship/admin
Language PHP
Framework  Athens/Forms (fork)

Scholarship Supplement

Unit  OSFA
Address  https://apps.osfa.washington.edu/supplement/admin/
Language PHP
Framework  Athens/Forms (fork)

Self Sustaining Majors Page

Unit  OUR
Address
Language PHP
Framework  None/Legacy

Student Ethnicity Form

Unit OUR
Address  https://registrar.washington.edu/students/ethnicity-and-race-request/
Language PHP
Framework Gravity Forms

Once per year Bee Poh requests a data export. Just use the WordPress form export tool.

Veterans Certification

Unit  OSFA
Address  https://apps.osfa.washington.edu/veterans/admin/
Language PHP
Framework  Athens

 

Workstudy

Unit  OSFA
Address  https://apps.osfa.washington.edu/workstudy/admin/
Language PHP
Framework  Athens