George Mason University Antonin Scalia Law School

How to Disable Plugins Outside MODX Manager

Since we are using CAS Authentication plugin to add an extra security layer to our MODX Manager, we need a way to disable the plugin in case something goes wrong and we don’t want to get locked out of our own site. Here are the steps to disable plugins outside the Manager:

  1. Log into the cloud dashboard and temporarily add phpMyAdmin to the cloud
  2. Log into phpMyAdmin, browse the modx_site_plugins table for the CAS plugin, double-click on the disable column to change the value from 0 to 1 to disable the plugin
  3. Manually clear the cache by logging into sFTP and delete everything in the core/cache directory
  4. Log back into the cloud dashboard to turn off phpMyAdmin

Creating a Spreadsheet for Full-time Faculty

A request to pull the following information from the full-time faculty directory:

  • Last Name
  • First Name
  • Title
  • Degrees and Schools
  • SSRN link
  • Subjects taught
  • Area(s) of Expertise
  • CV (PDF link if they have one posted)
  • Email
  • Bio (link to profile page)

Create a chunk (ditto.faculty_list_2021_ABA) using tr and td tags:

<tr>
<td>[[+lname]]</td>
<td>[[+pref_name:default=`[[+fname]]`]]</td>
<td>[[+title_main]]</td>
<td>[[+degree6:isnot=``:then=`[[+degree6:ReplaceDegrees]]`]][[+alma_mater6:isnot=``:then=`, [[+alma_mater6]]; `]][[+degree5:isnot=``:then=`[[+degree5:ReplaceDegrees]]`]][[+alma_mater5:isnot=``:then=`, [[+alma_mater5]]; `]][[+degree4:isnot=``:then=`[[+degree4:ReplaceDegrees]]`]][[+alma_mater4:isnot=``:then=`, [[+alma_mater4]]; `]][[+degree3:isnot=``:then=`[[+degree3:ReplaceDegrees]]`]][[+alma_mater3:isnot=``:then=`, [[+alma_mater3]]; `]][[+degree2:isnot=``:then=`[[+degree2:ReplaceDegrees]]`]][[+alma_mater2:isnot=``:then=`, [[+alma_mater2]]; `]][[+degree1:ReplaceDegrees]][[+alma_mater1:isnot=``:then=`, [[+alma_mater1]]`]]</td>
<td>[[+ssrn:isnot=``:then=`https://ssrn.com/author=[[+ssrn]]`]]</td>
<td>[[+faculty_subject_category:convert_ids_to_pagetitles_1]]</td>
<td>[[+expertise:convert_output_list_1]]</td>
<td>[[+cv_pdf:isnot=``:then=`https://www.law.gmu.edu/[[+cv_pdf]]`]]</td>
<td>[[+email]]</td>
<td>https://www.law.gmu.edu/faculty/directory/fulltime/[[+alias]]</td>
</tr>

The square brackets ([[+lname]]) correspond with the form field inside MODX. To see how the fields were created, take a look at the 2015_faculty_profile chunk.

After creating the ditto.faculty_list_2021_ABA chunk, put it inside the script below:

<table>
[[getResources? &showHidden=`1` &includeTVs=`1` &tvPrefix=`` &limit=`0` &sortbyTV=`lname` &sortdirTV=`ASC` &parents=`5842` &depth=`1` &tpl=`ditto.faculty_list_2021_ABA` &sortBy=`lname` &sortDir=`ASC` &display=`all` &filter=`hide_all,1,2`]]
</table>

Past the script above on any page inside MODX to populate the table. The tag &parents=`5842` refers to the ID number of the full-time faculty directory.

Creating “In the News” Content

“In the News” content can be found under Resource ID 11086 and should be contained within the year of posting.

The simplest way to create an “In the News” item is to duplicate an existing resource from an existing faculty. Once you make a duplication, uncheck the published radio button to prevent the resource from showing up in the public

In fields 1 and 2, enter the headline of the content. For consistency, do not preface the name with “Professor”.

In field 3, enter a readable url that matches with the title of the content.

On the Template Variables tab, scroll down to “URL for in the News”. Enter the link to the article, and be sure to include the Source in the “Source for in the News” field below:

MODx comments

MODx comments will not appear when viewing the source code of a page. This is especially useful when trying to keep old banners on the homepage while having it out of sight.

To use MODx comments, use the following syntax:

[[- ]]

Course Schedule Conversion for MODX

This tutorial walks through the steps to convert course schedule from Excel file into MODX.

  1. Open up the original Excel file (provided by Deborah), merge multiple faculty into one row, then delete all the empty rows.
  2. Open up the Course Schedule Sample Excel file
  3. Copy and paste each column such as Course Title, Credit, and Course Number into the sample Excel file. Do it for both Day and Evening courses.
  4. Once everything is in place, copy all (except for row 1) from the Excel file to an HTML editor:

    <div class="table-wrap">
    <table id="course-schedule" class="sortable" border="1" cellspacing="0">
    <tbody>
    <tr>
    <th>Sched.</th>
    <th>Course Name</th>
    <th>Num. (Sec.) CRN</th>
    <th>Instructor(s)</th>
    <th class="unsortable">Days, Time</th>
    <th>Final Exam</th>
    <th class="unsortable">Syllabus</th>
    </tr>
    <!--SCHEDULE STARTS HERE-->
    <!--Paste the table from Excel into here-->
    <!--SCHEDULE ENDS HERE-->
    </tbody>
    </table>
    </div><!--end table-wrap-->

  5. Save as an HTML file and view it in the browser. Clean up all the extra spaces using Search & Replace. For examples: ( 3 cr) to (3cr) and ( 001 ) to (001)
  6. Next, perform Search & Replace for notes items: //, (W), (E), +, and (N.1) to (N.9)


    <a href="[[~[[*id]]]]#permission" title="With witten permission of instructor only.">//</a>

    <a href="[[~[[*id]]]]#writing" title="This course has been designated as a writing course.">(W)</a>

    <a href="[[~[[*id]]]]#experimental" title="This course has been designated as an experiential course.">(E)</a>

    <a href="[[~[[*id]]]]#prerequisites" title="This course has prerequisites.">+</a>

    <a href="[[~[[*id]]]]#n1" title="See Note 1">(N.1)</a>

    Note that (N.1) to (N.9) are different for Day than Evening. For Evening change the anchor ID from #n1 to #n1-eve.

  7. Copy and paste notes from the original Excel file to the bottom of the HTML page. Reformat the notes to include all the anchor links.
  8. Once everything looks good, paste into MODX

    Change text case

    This step is not required, but here’s are tips for change the case of text in Excel.

Full-Time Faculty Table

The Full Time Faculty Table implements one ditto that calls two separate chunks.

The chunks are:

ditto.people_finder.odd.tr.2018

and

ditto.people_finder.even.tr.2018

The structure of both dittos are the same, with only the row background color being different using the existing even and odd classes within the main style sheet.

When calling the ditto, filter the results using:

&parents=`5842,1794`

This sorts the list based on Faculty Type.

When adding fields use the + sign instead of the usual *, so to add the professor’s title, it would look like this:

[[+title_main]]

To integrate a link, use this format:

<a href="mailto:[[+email]]"">[[+email]] </a>

Main Site Top Navigation Bar

Assigning new pages to different sections of the site are done within the resource itself under Template Variables.

However, adding sections to the Top Navigation Bar requires manually editing a Chunks within MODX.

To add a new Admissions Program to the Admissions section, for example, Navigate to Elements, select Chunks, then Navigation, and select the nav_admissions chunk to manually add the page. Be sure to use Resource IDs in place of the URL.

How to Upgrade MODX Revolution

  1. Clear the site cache and the two logs (Error Logs and Manager Actions under the Reports menu)
  2. Flush Permissions and Log Out
  3. Backup files and database through cPanel
  4. Use CPanel to delete all the files in the cache folder (core/cache).
  5. Download the latest version of MODX Revolution, unzip, and merge (not replace) with the current installation (folders: connectors, core, manager, and setup) via FTP client
  6. Change setup directory permissions (no sudo is required)
    cd public_html
    find setup/ -type d -exec chmod 755 {} \;
    find setup/ -type f -exec chmod 644 {} \;
  7. Go to law.gmu.edu/setup. Click next, next, next (maybe one more next) and that should be it.

Source: Upgrading MODX
Also check out Bob Ray’s guide for upgrade.

Add Breaking News on The Mason Law’s Homepage

To post one announcement on the Mason Law homepage, use this example:

ANNOUNCEMENTS: <a href="">Information on Spring 2015 Laptop Exams</a>

To post multiple news, use this example:

<div class="announcements">Announcements:</div>

<ul>
<li><a href="[~15~]">Spring 2013 Class Schedule and Registration Information</a></li>
<li><a href="[~8476~]">Information on Fall 2012 Laptop Exam Software</a></li>
</ul>