Skip to content
Source code for myphdidea.org website
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
files
images
includes
libs
other
.project
LICENSE
README.txt
download_pdf.php
download_privatepdf.php
favicon.ico
index.php
invitation.php
login_google.php
login_orcid.php
logout.php
phdideastyle.css
prvw_pdf.php
robots.txt
rss.php
sitenews.php

README.txt

This is the source code of the www.myphdidea.org website as it appeared on March 2018, including some third party libraries it is built on. It is mostly written in PHP, MySQL and HTML. The code runs inside a CentOS webserver by A2 hosting (specs: 8 GB RAM+SSD), if your system is different, a few platform specific adaptations might be necessary. In order to deploy the code, you should:

1. Create a database called "phdideastore" and tables, using the script "other/phdideastore_structonly.sql" provided with this archive. For size reasons, except for country and institution names, no data is furnished with the tables, in particular no entries on researchers and their publications (given the size, you might have to get your webhost to change a few settings in my.ini, in particular to turn on mysql query caching). To get a snapshot of the full database, please visit the www.myphdidea.org website.

2. Copy the entire content of this archive to the "public_html" folder of your webserver, making private the directories "include" and "other", as well as "user_data/transcripts" and "user_data/uploads"

3. The following software packages have to be installed in order to take advantage of all the functionalities provided: ImageMagick(-6.7.2.7-6.el6.x86_64), pdftk(-2.02-1.el6.x86_64), OpenSSL(-1.0.1e-57.el6.x86_64), ghostscript (as "ghostscript921" i.e. newer 9.21 alongside older default version), as well as gperf(-3.03.-9.1.el6.x86_64) and OpenLink Virtuoso (installing the latter does not require the package manager, since it can be built from source, but gperf is a prerequisite to run it). Virtuoso will create a (private) Sparql endpoint at address localhost:8890

4. You should enter the password information for your MySQL database and email server in the file "header_functions.php", as well as set it to the correct time zone (also, talk to your host in case you run into issues with the system clock). Then, a number of accounts have to be created with google (oauth login+recaptcha), ORCID (oauth login), Twitter (automatic tweeting of content), and the key/secret pairs inserted in the appropriate places in "header_functions.php", "sidebar_login.php", "centerpage_profdesk_settings.php", "centerpage_profdesk_settings.php", and (for the reCaptcha) "centerpage_register_student.php" and "centerpage_register_guest.php". Also, a safestamper account should be created for timestamping, and username/password entered in "header_functions.php". You may also want to update the "Donate" page, and review all links to sites internal and external.

5. Visit the www.myphdidea.org website to download the graph database for Virtuoso, which contains information on proximity of research interests among academics, and load it (make sure the virtuoso-t process is running).

6. Finally, visit the website and click "Register student", filling out the form. After you have confirmed your email address, open phpmyadmin and manually change "student_verdict_summary" to "1" in the first line of the "student" table. You can now login and will receive superuser privileges, which allows you to manually authenticate new members, block offensive content and conduct polls (using "other/set_poll.php?question=Why?&answers[]=Reason A&answers[]=Reasons B")

Please note that testing the code is best done in an environment where you can set the system clock, since a lot of the functionalities involve (checking user engagement with) tasks that have to be completed before certain deadlines (which is also why having the server set to the correct time zone is important). For questions, please email info (at) myphdidea.org
You can’t perform that action at this time.