Giter Site home page Giter Site logo

ekcgroup / intranet Goto Github PK

View Code? Open in Web Editor NEW
6.0 4.0 2.0 5.18 MB

CC & EKC Staff Intranet's built on Concrete5 and Codeigniter

Home Page: https://intranet.eastkent.ac.uk

License: MIT License

PHP 83.66% CSS 8.74% JavaScript 7.61%
intranet concrete5 codeigniter bootstrap jquery jquery-ui datatables sortable pace-js grocery

intranet's Introduction

Build Status Scrutinizer Code Quality

CC & EKC Staff Intranet

CC & EKC Staff Intranet's is built using Concrete5 and Codeigniter, with a single bootstrap theme across both platforms; combined makes a elegant Intranet solution, rich with functionality and the ability for users to maintain their own content.

This is the theme only!

Screenshots

Desktop

Mobile

Installation

1.. Download and install the latest version of Concrete5 from https://www.concrete5.org/ in your servers webroot.

2.. Download and configure the latest version of Codeigniter from https://www.codeigniter.com/' in WEBROOT/dashboard`

3.. In dashboard/application/config/config.php set $config['index_page'] = ''; and $config['base_url'] = 'https://DOMAIN.COM/dashboard'; and $config['encryption_key'] = 'FOLLOWCIINSTRUCTIONS'

4.. Clone this repository into the webroot. This may override some files.

cd /WEBROOT
git init
git remote add origin URL
git fetch
git pull origin master
git submodule update --init --recursive

5.. Add the following to dashboard/application/config/config.php

#Random 32 length key
$config['concrete5authkey'] = '';

$config['ldapserver'] = 'ldap://'.$config['ldapip'];
$config['ldapip'] = '';
$config['ldapshortdomain'] = 'CANT-COL'.'\\';
$config['ldapdomain'] = 'cant-col.ac.uk';
$config['ldapuserou'] = 'OU=Accounts,DC=cant-col,DC=ac,DC=uk';
$config['ldapbindun'] = 'ldapquery';
$config['ldapbindpass'] = '';
$config['ldapdashboardgroupsou'] = 'OU=Dashboard_Group';

//If you dont need all duplicate ou path otherwise error
$config['ldapuserjobouone'] = 'OU=Staff,OU=Accounts,DC=cant-col,DC=ac,DC=uk';
$config['ldapuserjoboutwo'] = 'OU=Student,OU=Accounts,DC=cant-col,DC=ac,DC=uk';
$config['ldapuserjobouthree'] = 'OU=Admins,OU=Staff,OU=Accounts,DC=cant-col,DC=ac,DC=uk';
$config['ldapuserjoboufour'] = 'OU=Staff,OU=Accounts,DC=cant-col,DC=ac,DC=uk';
$config['ldapuserjoboufive'] = 'OU=Staff,OU=Accounts,DC=cant-col,DC=ac,DC=uk';

$config['ldapadminun'] = 'administrator';
$config['ldapadminpass'] = '';

$config['timezone'] = 'Europe/London';

$config['safeipone'] = '';
$config['safeiptwo'] = '';
$config['safeipthree'] = '';
$config['safeipfour'] = '';
$config['safeipfive'] = '';
$config['safeipsix'] = '';
$config['safeipseven'] = '';
$config['safeipeight'] = '';

6.. Import the dashboard config dashboard/import.sql

7.. Copy the database config and change the variable to intranet and add the concrete5 database settings dashboard/application/config/database.php

$db['intranet'] = array(

Updates

Note* git commands will override files which have been edited since your last pull request.

  1. git pull origin master

  2. git submodule foreach git pull origin master

  3. https://documentation.concrete5.org/developers/installation/upgrading-concrete5

  4. https://www.codeigniter.com/userguide3/installation/upgrade_301.html

Apache VHost

<VirtualHost *:80>
   ServerAdmin webmaster.cant-col.ac.uk
   ServerName intranet.cant-col.ac.uk
   ServerAlias intranet.cant-col.ac.uk
   RewriteRule /(.*) https://intranet.cant-col.ac.uk/$1 [L]
</VirtualHost>


<VirtualHost *:443>
   ServerAdmin webmaster.cant-col.ac.uk
   ServerName intranet.cant-col.ac.uk
   ServerAlias intranet.cant-col.ac.uk
   ErrorLog /var/log/httpd/intranet-error.log
   CustomLog /var/log/httpd/intranet-access.log combined
   DocumentRoot /var/www/html/intranet
   Include /var/www/certs/ssl-apache.conf

   <Directory /var/www/html/intranet >
     #AllowOverride All
      <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME}/index.php !-f
        RewriteRule . index.php [L]
     </IfModule>

      SetEnvIf Request_URI ^/dashboard/computing-support/new-staff-export require_auth=true
      SetEnvIf Request_URI ^/dashboard/computing-support/new-staff-export/complete require_auth=true

      # Auth
      AuthUserFile /var/www/htpasswd
      AuthName "Password Protected"
      AuthType Basic
      Order Deny,Allow
      Deny from all
      Satisfy any
      Require valid-user
      Allow from env=!require_auth

   </Directory>
   <Directory /var/www/html/intranet/dashboard >
      AllowOverride All
   </Directory>
</VirtualHost>

LetsEncrypt Certificate

We recommend securing your site with a LetsEncrypt certificate.

apt install -y certbot
letsencrypt certonly --webroot -w /var/www/html/certificate.cant-col.ac.uk -d .cant-col.ac.uk

Auto Pull from master

If you fork this repository, you can add the following to cron to pull all updates from master.

#Pull Git
*/5 * * * * cd /var/www/html/intranet && git pull origin master >/dev/null 2>&1
*/5 * * * * cd /var/www/html/intranet && git submodule foreach git pull origin master >/dev/null 2>&1
*/5 * * * * chown -R apache:apache /var/www/html/intranet >/dev/null 2>&1

intranet's People

Contributors

canterburycollege avatar williambargent avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

intranet's Issues

Sidebar doesn't show in Safari

The sidebar doesn't seem to show on mobile or desktop when using Safari on a Mac.
Styling is done by bootstrap but functionality is MetisMenu.
There isn't any errors showing in the console.

Toolbar responsiveness

The toolbar which is displayed above content on most pages isn't response.
Ideally this div should be scroll-able however this was preventing the drop-downs from opening.

More investigation needed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.