Admin

Sign in with Google

Welcome to the Admin Page!
This is the admin page for API Codex. It's currently security-through-obscurity so please do not share the /admin link with anyone who is not a content provider or 3scale employee. You can log in using the above link, at which point you'll be able to add new articles and share them. Contact *somebody* for administrator access so you can create "approved" content.

Content providers
Adding an article is really quite easy. Find an awesome article on the net, one that is going to be excellent on into the future. Go to the Form:Article page and fill in the name of the article. Try to eliminate the name of the blog or publication, just put the actual title of the article in there. Once you've done that, you will get a form to fill out with the details of the article. Fill in tags that make sense, the author, and a reasonable description of what a reader can expect to find in the article. Relevance is a totally arbitrary value. Steve Yegge's Google API rant is the only thing in here with a 10. Somebody ranting about a particular piece of the REST system is likely going to be lower. Try to think about how excellent this piece is compared to other articles. Put your initials in the "Reviewed by" field and you're good to go. There is a character limit on the summary, so be succinct. If it doesn't show up on the page after you save it, trim a bit. The character limit actually helps the resulting tables not be scary ugly.

Once you've submitted the form, check for red links. If the author's name is red, click on it, and put the following code in:

If one of the tags is red, check to make sure there's not a similar one. For instance, we've had Rest and REST as two separate entities (yay, unix). But if you need to add a tag, all you need to do is click on it and put the following in the page: 

Wiki Administrators
This system runs Mediawiki with Semantic Mediawiki extensions. Documentation for this setup is at http://www.semantic-mediawiki.org.

Important things to note:
 * Most administrative functions can be accessed via the Special:SpecialPages page
 * In order to be a content provider, a person has to be "promoted" to an admin using the Special:UserRights page. If you don't know what someone's username is, you can find it on the Special:ListUsers page.  This is because of the Special:ApprovedRevs extension, which can be controlled via the LocalSettings.php file in the root directory of mediawiki
 * The Mediawiki pages are on the system under /var/lib/mediawiki
 * A cron job runs every hour to find new content and tweet about it: /var/lib/mediawiki/bin/updaterevs.py
 * The CSS pages are in /var/lib/mediawiki/skins/chameleon/
 * If you want to change permissions, settings, plugins, these are in the /var/lib/mediawiki/LocalSettings.php file. You may need to check the instructions for a given plugin but they're easy to find on the mediawiki site.  This is the right place to start for just about any changes or to find out why things are working the way they are.

There's an excellent book that covers most of our setup here: http://www.amazon.com/Working-MediaWiki-Yaron-Koren-ebook/dp/B00AEYZCPA/ref=sr_1_1?ie=UTF8&qid=1401910814&sr=8-1&keywords=mediawiki

The tweets are sent out by an hourly cron job for /var/lib/mediawiki/bin/update_rss.py. This script can be edited to change the bar for "tweeted" content (6 or more if less than a year old, 8 or more if older). This will automatically find any pages that have changed or been added in the last hour. It stores the output in /var/lib/mediawiki/bin/tweet.log. Pretty simple script. It also creates the RSS file, which should be linked to /var/lib/mediawiki/latest.rss (or wherever you want the RSS to live).

System Administrators
This system is maintained and owned by 3scale. The software is Semantic Mediawiki. Instructions on how to bring up a new system: Clone apicodex repo on the /var/lib/mediawiki - https://github.com/3scale/apicodex install apache2 add apache vhost install php5 install php5-mysql install libapache2-php5 install mysql populate the database from the backup set up cron by doing 'sudo crontab /var/lib/mediawiki/crontab' check to make sure that /var/lib/mediawiki/bin/update_rss.py works correctly