Skip to content

Commit

Permalink
Initial Coordino commit.
Browse files Browse the repository at this point in the history
  • Loading branch information
Datawalke committed Aug 7, 2011
0 parents commit 51f08b1
Show file tree
Hide file tree
Showing 1,020 changed files with 235,357 additions and 0 deletions.
7 changes: 7 additions & 0 deletions LICENSE.txt
@@ -0,0 +1,7 @@
Copyright (c) 2011 Jim Walker

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
86 changes: 86 additions & 0 deletions README.txt
@@ -0,0 +1,86 @@
==================================
Requirements
==================================
All that is required is your basic LAMP/WAMP stack.
However the best-case conditions:
- PHP5+
- MySQL 5.1+

==================================
How to Install
==================================
Unzip the Coordino package your root working www directory.
ex: /var/www/htdocs/test.com

Then open your web browser and proceed to http://test.com to complete instillation.

==================================
Widget Tokens
==================================
Tokens may be used to render dynamic content to the user.
The following tokens are available:
The logged in user's username. - [user.username]
The logged in user's reputation. - [user.reputation]
The logged in user's age. - [user.age]
The logged in user's website. - [user.website]
The logged in user's information. - [user.info]
The logged in user's location. - [user.location]
The logged in user's answer count. - [user.answer-count]
The logged in user's comment count. - [user.comment-count]
The logged in user's question count. - [user.question-count]
A link to the user's profile. - [user.profile-link]

For example:
Hello [user.username], Welcome to Coordino!
Check out your profile at: [user.profile-link]
Or answer some questions!

==================================
Remote Auth. Logins
==================================
Coordino works in two modes:
1.) An internal userbase. (Remote Auth Only "No")
2.) Remote userbase. (Remote Auth Only "Yes")
These settings may be changed in the administration setting under "Admin" -> "Remote Settings"

The internal userbase is the standard setting for Coordino. New users will register either by asking a question,
answering a question or registering themselves. The users username, password, and email are kept internally.

However, if you have an external userbase already and do not wish to have all of your users re-register for a system you can use a form of automatic integration. You must create a script that first compiles a message and then forwards it to Coordino's Remote Login system based off of your current logged in user's details.

The following user details from your userbase are needed:
-Username
-Email Address
The following extra message details are needed:
-Timestamp
-Remote Auth Key (Found in Remote Settings)
-Hash

Take the following example in PHP:
<?
/*
* Remote authentication for PHP
*
* This is meant to be used as a template to base the integration with your application.
*/

/* The following values should comefrom your source of information */
$username = 'BillyRogan';
$email = 'rbillyscool@aol.com';

/* Insert your Authentication key here */
$key = '98y94NIUfafnajskfn9823JNAIUz';

/* Build the Message */
$timestamp = time();
$message = $username . $email . $timestamp . $key;
$hash= md5($message);
/* Set the URL of your Answer Engine install and form the correct remote authentication URL. */
$url = 'http://your.domain.com/coordino_install/access/remote' . $name . '/' . $email . '/' . $timestamp . '/' . $hash;
header('Location: ' . $url);
?>

The username and email address are pulled from your current userbase.
Then a message is compiled with the User's username, email, a timestamp, and your remote auth key. That message is then md5'd into a check hash. A URL is then formed with the correct information and the remote logged in user is then forwarded to the Coordino Remote Access URL.


Binary file added app/.DS_Store
Binary file not shown.
5 changes: 5 additions & 0 deletions app/.htaccess
@@ -0,0 +1,5 @@
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>
75 changes: 75 additions & 0 deletions app/app_controller.php
@@ -0,0 +1,75 @@
<?php
/**
* Application level Controller
*
* This file is application-wide controller file. You can put all
* application-wide controller-related methods here.
*
* PHP versions 4 and 5
*
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
* Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
*
* Licensed under The MIT License
* Redistributions of files must retain the above copyright notice.
*
* @copyright Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://cakephp.org CakePHP(tm) Project
* @package cake
* @subpackage cake.cake.libs.controller
* @since CakePHP(tm) v 0.2.9
* @license MIT License (http://www.opensource.org/licenses/mit-license.php)
*/

/**
* This is a placeholder class.
* Create the same file in app/app_controller.php
*
* Add your application-wide methods in the class below, your controllers
* will inherit them.
*
* @package cake
* @subpackage cake.cake.libs.controller
* @link http://book.cakephp.org/view/957/The-App-Controller
*/
class AppController extends Controller {
public $pageTitle;

public function beforeFilter() {

/**
* reCAPTCHA API Information
*/
$this->Recaptcha->publickey = Configure::read('recaptcha.publickey');
$this->Recaptcha->privatekey = Configure::read('recaptcha.privatekey');
}

public function getWidgets($page='') {
if(empty($page)) { $page = $_SERVER['REQUEST_URI']; }
if(strpos($_SERVER['REQUEST_URI'], 'questions/') == 1) { $page = '/questions/view'; }
$this->set('widgets', $this->Widget->findPage($page));
}
public function isAdmin($id='') {
if(!$this->User->adminCheck($id, 'update')) {
$this->set('admin', true);
return true;
}
return false;
}
public function underMaintenance() {
$maintenance = $this->Setting->find('first', array('conditions' => array('name' => 'site_maintenance')));
if(($maintenance['Setting']['value'] == 'yes') && ($_SERVER['REQUEST_URI'] != '/maintenance')) {
$this->redirect('/maintenance');
}
}
public function __encrypt($string) {
return $string;
}

public function __decrypt($string) {
return $string;
}



}
Binary file added app/config/.DS_Store
Binary file not shown.
74 changes: 74 additions & 0 deletions app/config/acl.ini.php
@@ -0,0 +1,74 @@
;<?php die() ?>
; SVN FILE: $Id: acl.ini.php 7945 2008-12-19 02:16:01Z gwoo $
;/**
; * Short description for file.
; *
; *
; * PHP versions 4 and 5
; *
; * CakePHP(tm) : Rapid Development Framework http://www.cakephp.org/
; * Copyright 2005-2008, Cake Software Foundation, Inc. (http://www.cakefoundation.org)
; *
; * Licensed under The MIT License
; * Redistributions of files must retain the above copyright notice.
; *
; * @filesource
; * @copyright Copyright 2005-2008, Cake Software Foundation, Inc. (http://www.cakefoundation.org)
; * @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
; * @package cake
; * @subpackage cake.app.config
; * @since CakePHP(tm) v 0.10.0.1076
; * @version $Revision: 7945 $
; * @modifiedby $LastChangedBy: gwoo $
; * @lastmodified $Date: 2008-12-18 18:16:01 -0800 (Thu, 18 Dec 2008) $
; * @license http://www.opensource.org/licenses/mit-license.php The MIT License
; */

; acl.ini.php - Cake ACL Configuration
; ---------------------------------------------------------------------
; Use this file to specify user permissions.
; aco = access control object (something in your application)
; aro = access request object (something requesting access)
;
; User records are added as follows:
;
; [uid]
; groups = group1, group2, group3
; allow = aco1, aco2, aco3
; deny = aco4, aco5, aco6
;
; Group records are added in a similar manner:
;
; [gid]
; allow = aco1, aco2, aco3
; deny = aco4, aco5, aco6
;
; The allow, deny, and groups sections are all optional.
; NOTE: groups names *cannot* ever be the same as usernames!
;
; ACL permissions are checked in the following order:
; 1. Check for user denies (and DENY if specified)
; 2. Check for user allows (and ALLOW if specified)
; 3. Gather user's groups
; 4. Check group denies (and DENY if specified)
; 5. Check group allows (and ALLOW if specified)
; 6. If no aro, aco, or group information is found, DENY
;
; ---------------------------------------------------------------------

;-------------------------------------
;Users
;-------------------------------------

[username-goes-here]
groups = group1, group2
deny = aco1, aco2
allow = aco3, aco4

;-------------------------------------
;Groups
;-------------------------------------

[groupname-goes-here]
deny = aco5, aco6
allow = aco7, aco8
44 changes: 44 additions & 0 deletions app/config/bootstrap.php
@@ -0,0 +1,44 @@
<?php
/* SVN FILE: $Id: bootstrap.php 7945 2008-12-19 02:16:01Z gwoo $ */
/**
* Short description for file.
*
* Long description for file
*
* PHP versions 4 and 5
*
* CakePHP(tm) : Rapid Development Framework (http://www.cakephp.org)
* Copyright 2005-2008, Cake Software Foundation, Inc. (http://www.cakefoundation.org)
*
* Licensed under The MIT License
* Redistributions of files must retain the above copyright notice.
*
* @filesource
* @copyright Copyright 2005-2008, Cake Software Foundation, Inc. (http://www.cakefoundation.org)
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
* @package cake
* @subpackage cake.app.config
* @since CakePHP(tm) v 0.10.8.2117
* @version $Revision: 7945 $
* @modifiedby $LastChangedBy: gwoo $
* @lastmodified $Date: 2008-12-18 18:16:01 -0800 (Thu, 18 Dec 2008) $
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
*/
/**
*
* This file is loaded automatically by the app/webroot/index.php file after the core bootstrap.php is loaded
* This is an application wide file to load any function that is not used within a class define.
* You can also use this to include or require any files in your application.
*
*/
/**
* The settings below can be used to set additional paths to models, views and controllers.
* This is related to Ticket #470 (https://trac.cakephp.org/ticket/470)
*
* $modelPaths = array('full path to models', 'second full path to models', 'etc...');
* $viewPaths = array('this path to views', 'second full path to views', 'etc...');
* $controllerPaths = array('this path to controllers', 'second full path to controllers', 'etc...');
*
*/
//EOF
?>

0 comments on commit 51f08b1

Please sign in to comment.