Skip to content
This repository was archived by the owner on Jan 18, 2018. It is now read-only.

Commit a712e1c

Browse files
Merge pull request #55 from GrahamCampbell/develop
Release V0.5 Alpha
2 parents 8295579 + 312aa51 commit a712e1c

File tree

375 files changed

+9234
-11141
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

375 files changed

+9234
-11141
lines changed

.gitignore

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
1-
#Ignore:
21
/bootstrap/compiled.php
32
/vendor
43
composer.phar
54
composer.lock
65
.DS_Store
7-
thumbs.db

.scrutinizer.yml

Lines changed: 0 additions & 14 deletions
This file was deleted.

.travis.yml

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,18 @@ php:
55
- 5.5
66

77
before_script:
8-
- curl -s http://getcomposer.org/installer | php
9-
- php composer.phar install --dev
10-
- php artisan basset:build --production
8+
- composer self-update
9+
- composer install --no-interaction --prefer-source --dev
10+
- php artisan asset:generate
11+
- mkdir -p build/logs
1112

12-
script: phpunit
13+
services:
14+
- redis-server
15+
16+
script:
17+
- vendor/bin/phpunit --coverage-clover build/logs/clover.xml
18+
19+
after_script:
20+
- wget https://scrutinizer-ci.com/ocular.phar
21+
- php ocular.phar code-coverage:upload --format=php-clover build/logs/clover.xml
22+
- php vendor/bin/coveralls -v

CHANGELOG.md

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,27 @@ CHANGE LOG
22
==========
33

44

5+
## V0.5 Alpha (19/12/2013)
6+
#### Major Release
7+
8+
* Made it PSR-2 compliant
9+
* Massive refactoring
10+
* Now leveraging CMS Core
11+
* Updated for Bootstrap 3.0.3
12+
* Improved styling generally
13+
* Navigation improvements
14+
* Queuing improvements
15+
* Added cron functionality
16+
* Minification and assets improvements
17+
* Massively improved blog system
18+
* Moved the CloudFlare integration to another package
19+
* Moved the log viewer to another package
20+
* Travis and Scrutinizer tweaks
21+
* Testing improvements
22+
* Updated doc blocks
23+
* Coding style fixes
24+
25+
526
## V0.4 Alpha (25/08/2013)
627
#### Major Release
728

@@ -51,7 +72,7 @@ CHANGE LOG
5172
## V0.3 Alpha (09/08/2013)
5273
#### Major Release
5374

54-
* Added native support for Cloudflare proxies
75+
* Added native support for CloudFlare proxies
5576
* Added proper model deletion
5677
* Added an actual profile page
5778
* Added user management
@@ -127,7 +148,7 @@ CHANGE LOG
127148
* Added a base model
128149
* Added the db tables for the models
129150
* Added a simple in-browser cache test
130-
* Added basic use of apache
151+
* Added basic use of apache
131152
* Updated travis config
132153
* Some composer tweaks
133154
* Use unsigned values in the db where possible

CONTRIBUTING.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
## Updating Your Fork
2+
3+
The latest and greatest source can be found on [GitHub](https://github.com/GrahamCampbell/Bootstrap-CMS).
4+
Before submitting a pull request, you should ensure that your fork is up to date.
5+
6+
You may fork Bootstrap CMS:
7+
8+
git remote add upstream git://github.com/GrahamCampbell/Bootstrap-CMS.git
9+
10+
The first command is only necessary the first time. If you have issues merging, you will need to get a merge tool such as [P4Merge](http://perforce.com/product/components/perforce_visual_merge_and_diff_tools).
11+
12+
You can then update the branch:
13+
14+
git pull --rebase upstream develop
15+
git push --force origin <branch_name>
16+
17+
Once it is set up, run `git mergetool`. Once all conflicts are fixed, run `git rebase --continue`, and `git push --force origin <branch_name>`.
18+
19+
20+
## Pull Requests
21+
22+
Please submit pull requests against the develop branch.
23+
24+
* Any pull requests made against the master branch will be closed immediately.
25+
* If you plan to fix a bug, please create a branch called `fix-`, followed by an appropriate name.
26+
* If you plan to add a feature, please create a branch called `feature-`, followed by an appropriate name.
27+
* Please follow the [PSR-2 Coding Style](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md) and [PHP-FIG Naming Conventions](https://github.com/php-fig/fig-standards/blob/master/bylaws/002-psr-naming-conventions.md).

LICENSE.md

Lines changed: 0 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -617,45 +617,3 @@ Program, unless a warranty or assumption of liability accompanies a
617617
copy of the Program in return for a fee.
618618

619619
END OF TERMS AND CONDITIONS
620-
621-
How to Apply These Terms to Your New Programs
622-
623-
If you develop a new program, and you want it to be of the greatest
624-
possible use to the public, the best way to achieve this is to make it
625-
free software which everyone can redistribute and change under these terms.
626-
627-
To do so, attach the following notices to the program. It is safest
628-
to attach them to the start of each source file to most effectively
629-
state the exclusion of warranty; and each file should have at least
630-
the "copyright" line and a pointer to where the full notice is found.
631-
632-
<one line to give the program's name and a brief idea of what it does.>
633-
Copyright (C) <year> <name of author>
634-
635-
This program is free software: you can redistribute it and/or modify
636-
it under the terms of the GNU Affero General Public License as published by
637-
the Free Software Foundation, either version 3 of the License, or
638-
(at your option) any later version.
639-
640-
This program is distributed in the hope that it will be useful,
641-
but WITHOUT ANY WARRANTY; without even the implied warranty of
642-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
643-
GNU Affero General Public License for more details.
644-
645-
You should have received a copy of the GNU Affero General Public License
646-
along with this program. If not, see <http://www.gnu.org/licenses/>.
647-
648-
Also add information on how to contact you by electronic and paper mail.
649-
650-
If your software can interact with users remotely through a computer
651-
network, you should also make sure that it provides a way for users to
652-
get its source. For example, if your program is a web application, its
653-
interface could display a "Source" link that leads users to an archive
654-
of the code. There are many ways you could offer source, and different
655-
solutions will be better for different programs; see section 13 for the
656-
specific requirements.
657-
658-
You should also get your employer (if you work as a programmer) or school,
659-
if any, to sign a "copyright disclaimer" for the program, if necessary.
660-
For more information on this, and how to apply and follow the GNU AGPL, see
661-
<http://www.gnu.org/licenses/>.

README.md

Lines changed: 65 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -3,31 +3,30 @@ Bootstrap CMS
33

44

55
[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/GrahamCampbell/Bootstrap-CMS/trend.png)](https://bitdeli.com/free "Bitdeli Badge")
6-
[![Build Status](https://travis-ci.org/GrahamCampbell/Bootstrap-CMS.png?branch=master)](https://travis-ci.org/GrahamCampbell/Bootstrap-CMS)
7-
[![Latest Version](https://poser.pugx.org/graham-campbell/bootstrap-cms/v/stable.png)](https://packagist.org/packages/graham-campbell/bootstrap-cms)
8-
[![Total Downloads](https://poser.pugx.org/graham-campbell/bootstrap-cms/downloads.png)](https://packagist.org/packages/graham-campbell/bootstrap-cms)
6+
[![Build Status](https://travis-ci.org/GrahamCampbell/Bootstrap-CMS.png?branch=develop)](https://travis-ci.org/GrahamCampbell/Bootstrap-CMS)
7+
[![Coverage Status](https://coveralls.io/repos/GrahamCampbell/Bootstrap-CMS/badge.png?branch=develop)](https://coveralls.io/r/GrahamCampbell/Bootstrap-CMS)
98
[![Scrutinizer Quality Score](https://scrutinizer-ci.com/g/GrahamCampbell/Bootstrap-CMS/badges/quality-score.png?s=df19b33e11d486109decb5c9c78b1d7d049ddde6)](https://scrutinizer-ci.com/g/GrahamCampbell/Bootstrap-CMS)
9+
[![Latest Version](https://poser.pugx.org/graham-campbell/bootstrap-cms/v/stable.png)](https://packagist.org/packages/graham-campbell/bootstrap-cms)
1010
[![Still Maintained](http://stillmaintained.com/GrahamCampbell/Bootstrap-CMS.png)](http://stillmaintained.com/GrahamCampbell/Bootstrap-CMS)
1111

1212

13-
Copyright © [Graham Campbell](https://github.com/GrahamCampbell) 2013
14-
15-
1613
## THIS ALPHA RELEASE IS FOR TESTING ONLY
1714

18-
#### I'd appriciate it if you'd leave my name in the footer unless you have changed my source significatly. If you do feel you have changed it significantly, i'd still appreciate some kind of link back. Thank you, and enjoy!
15+
#### I'd appreciate it if you'd leave my name in the footer unless you have changed my source significantly. If you do feel you have changed it significantly, I'd still appreciate some kind of link back, and remember that attribution is still required as stated in the license. Thank you, and enjoy!
1916

2017

2118
## What Is Bootstrap CMS?
2219

23-
Bootstrap CMS is a PHP CMS powered by [Laravel 4.0](http://laravel.com) with [Sentry 2.0](http://docs.cartalyst.com/sentry-2).
20+
Bootstrap CMS is a PHP CMS powered by [Laravel 4.0](http://laravel.com) with [CMS Core](https://github.com/GrahamCampbell/CMS-Core) and [Sentry 2](https://cartalyst.com/manual/sentry).
2421

2522
* Bootstrap CMS was created by, and is maintained by [Graham Campbell](https://github.com/GrahamCampbell).
23+
* Bootstrap CMS relies on my [CMS Core](https://github.com/GrahamCampbell/CMS-Core) package.
2624
* Bootstrap CMS uses [Travis CI](https://travis-ci.org/GrahamCampbell/Bootstrap-CMS) to run tests to check if it's working as it should.
27-
* Bootstrap CMS uses [Scrutinizer CI](https://scrutinizer-ci.com/g/GrahamCampbell/Bootstrap-CMS) to run additional tests and checks.
25+
* Bootstrap CMS uses [Scrutinizer CI](https://scrutinizer-ci.com/g/GrahamCampbell/Bootstrap-CMS) and [Coveralls](https://coveralls.io/r/GrahamCampbell/Bootstrap-CMS) to run additional tests and checks.
2826
* Bootstrap CMS uses [Composer](https://getcomposer.org) to load and manage dependencies.
29-
* Bootstrap CMS provides a [change log](https://github.com/GrahamCampbell/Bootstrap-CMS/blob/master/CHANGELOG.md), [releases](https://github.com/GrahamCampbell/Bootstrap-CMS/releases), and a [wiki](https://github.com/GrahamCampbell/Bootstrap-CMS/wiki).
30-
* Bootstrap CMS is licensed under the GNU AGPLv3, available [here](https://github.com/GrahamCampbell/Bootstrap-CMS/blob/master/LICENSE.md).
27+
* Bootstrap CMS provides a [change log](https://github.com/GrahamCampbell/Bootstrap-CMS/blob/develop/CHANGELOG.md), [releases](https://github.com/GrahamCampbell/Bootstrap-CMS/releases), and a [wiki](https://github.com/GrahamCampbell/Bootstrap-CMS/wiki).
28+
* Bootstrap CMS is licensed under the GNU AGPLv3, available [here](https://github.com/GrahamCampbell/Bootstrap-CMS/blob/develop/LICENSE.md).
29+
* Licenses for included components are available [here](https://github.com/GrahamCampbell/Bootstrap-CMS/tree/develop/licenses), excluding [Composer](https://getcomposer.org) installed components.
3130

3231

3332
## What Does Testing Release Mean?
@@ -37,6 +36,7 @@ Basically, expect no support what so ever. This includes, but is not exclusive t
3736
* No support or help will be given during installation or updating.
3837
* No database migration support between updates
3938
* Updates may not be backwards compatible
39+
* From V0.4, a migration path will always be provided between tagged releases
4040
* Some of the config may be for features that don't exist yet.
4141
* Some config may even brake the entire site
4242
* Just remember, this software comes WITHOUT ANY WARRANTY
@@ -47,9 +47,9 @@ Basically, expect no support what so ever. This includes, but is not exclusive t
4747

4848
## System Requirements
4949

50-
Bootstrap CMS was designed to run on a Linux machine with PHP 5.4 and MySQL 5.5.
50+
Bootstrap CMS was designed to run on a Linux machine with PHP 5.5 and MySQL 5.5.
5151

52-
* PHP 5.4.7+ or PHP 5.5+ is required.
52+
* PHP 5.4.7+ or PHP 5.5+ is required.
5353
* MySQL 5.1+, 5.5+, or 5.6+ is required. MySQL 5.7+ may work, but is untested.
5454
* You will need [Composer](https://getcomposer.org) installed to load the dependencies of Bootstrap CMS.
5555
* You will need to configure the site in the app/config folder before production.
@@ -62,7 +62,7 @@ Please check the system requirements before installing Bootstrap CMS.
6262

6363
1. You may install by cloning from github, or via composer.
6464
* Github: `git clone [email protected]:GrahamCampbell/Bootstrap-CMS.git`
65-
* Composer: `composer create-project graham-campbell/bootstrap-cms --prefer-dist`
65+
* Composer: `composer create-project graham-campbell/bootstrap-cms --prefer-dist -s dev`
6666
2. From a command line open in the folder, run `composer install`.
6767
3. Enter your database details into `app/config/databse.php`.
6868
4. Run `php artisan app:install` to setup and seed your database.
@@ -75,21 +75,30 @@ Please check the system requirements before installing Bootstrap CMS.
7575
7. Additionally, you may to setup some of Bootstrap CMS's other features (see below).
7676
* Some things, like [caching](#setting-up-caching) and [queuing](#setting-up-queing), are disabled out of the box
7777
* This is to allow Bootstrap CMS to work with minimal setup
78+
* Please note that queuing is required in order to use the cron functionality which can do things like notify users of upcoming events, or send out weekly activity digests
7879

7980

8081
## Setting Up Queuing
8182

83+
Bootstrap CMS provides queuing functionality, and when enabled, requires 3 separate queues.
84+
* One queue (the mail queue) will be used for sending emails
85+
* One queue (the cron queue) will be used for all cron jobs
86+
* One queue (the default queue) will be used for all other jobs
87+
* These queues must be separate to avoid unexpected functionality
88+
8289
Note that `beanstalkd` requires a local server, while `sqs` and `iron` are cloud based.
90+
Also note that `sqs` support is not 100% complete and is mainly untested.
8391

8492
1. Choose your poison - I'd recommend [IronMQ](http://www.iron.io/mq).
8593
2. Enter your queuing server details into `app/config/queue.php`.
8694
3. You can also set a separate mail queue in `app/config/mail.php`.
87-
4. For [IronMQ](http://www.iron.io/mq), the queue subscription path is `/queue/receive`.
95+
4. For [IronMQ](http://www.iron.io/mq), you can run the command `php artisan queue:iron`.
8896
5. You can find out more about queuing by heading over to the [Laravel Docs](http://laravel.com/docs/queues).
8997

9098

9199
## Setting Up Caching
92100

101+
Bootstrap CMS provides caching functionality, and when enabled, requires a caching server.
93102
Note that caching will not work with Laravel's `file` or `database` cache drivers.
94103

95104
1. Choose your poison - I'd recommend [Redis](http://redis.io).
@@ -108,13 +117,28 @@ Bootstrap CMS natively supports [Google Analytics](http://www.google.com/analyti
108117

109118
## Setting Up Themes
110119

111-
Bootstrap CMS also ships with 13 themes from [Bootswatch](http://bootswatch.com/2).
120+
Bootstrap CMS also ships with 14 themes, 12 from [Bootswatch](http://bootswatch.com).
112121

113122
1. You can set your theme in `app/config/theme.php`.
114123
2. You can also set your nav bar style in `app/config/theme.php`.
115124
3. After making theme changes, you will have to run `php artisan app:update`.
116125

117126

127+
## Setting Up Plugins
128+
129+
Bootstrap CMS supports plugins through [CMS Core](https://github.com/GrahamCampbell/CMS-Core).
130+
Note that Bootstrap CMS already ships with the [CMS LogViewer](https://github.com/GrahamCampbell/CMS-LogViewer) plugin.
131+
132+
1. Add the plugin's package name to your `composer.json`.
133+
2. Add the service provider for the plugin in`app/config/cms.php`.
134+
3. Run `composer update` then `php artisan app:update` to install the plugin.
135+
136+
137+
## Usage
138+
139+
There is currently no usage documentation besides the [API Documentation](http://grahamcampbell.github.io/Bootstrap-CMS) for Bootstrap CMS.
140+
141+
118142
## Updating Your Fork
119143

120144
The latest and greatest source can be found on [GitHub](https://github.com/GrahamCampbell/Bootstrap-CMS).
@@ -128,19 +152,38 @@ The first command is only necessary the first time. If you have issues merging,
128152

129153
You can then update the branch:
130154

131-
git pull --rebase upstream master
155+
git pull --rebase upstream develop
132156
git push --force origin <branch_name>
133157

134158
Once it is set up, run `git mergetool`. Once all conflicts are fixed, run `git rebase --continue`, and `git push --force origin <branch_name>`.
135159

136160

161+
## Pull Requests
162+
163+
Please submit pull requests against the develop branch.
164+
165+
* Any pull requests made against the master branch will be closed immediately.
166+
* If you plan to fix a bug, please create a branch called `fix-`, followed by an appropriate name.
167+
* If you plan to add a feature, please create a branch called `feature-`, followed by an appropriate name.
168+
* Please follow the [PSR-2 Coding Style](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md) and [PHP-FIG Naming Conventions](https://github.com/php-fig/fig-standards/blob/master/bylaws/002-psr-naming-conventions.md).
169+
170+
137171
## License
138172

139-
Bootstrap CMS - A CMS Powered By Laravel 4
173+
GNU AFFERO GENERAL PUBLIC LICENSE
174+
175+
Bootstrap CMS Is A PHP CMS Powered By Laravel 4.0 With CMS Core And Sentry 2
140176
Copyright (C) 2013 Graham Campbell
141177

142-
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
178+
This program is free software: you can redistribute it and/or modify
179+
it under the terms of the GNU Affero General Public License as published by
180+
the Free Software Foundation, either version 3 of the License, or
181+
(at your option) any later version.
182+
183+
This program is distributed in the hope that it will be useful,
184+
but WITHOUT ANY WARRANTY; without even the implied warranty of
185+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
186+
GNU Affero General Public License for more details.
143187

144-
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
145-
146-
You should have received a copy of the GNU Affero General Public License along with this program. If not, see http://www.gnu.org/licenses/.
188+
You should have received a copy of the GNU Affero General Public License
189+
along with this program. If not, see <http://www.gnu.org/licenses/>.

0 commit comments

Comments
 (0)