Skip to content

Commit

Permalink
Copy file from 3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
tunnhn committed Nov 13, 2017
1 parent c642246 commit 7abf53f
Show file tree
Hide file tree
Showing 1,047 changed files with 199,247 additions and 0 deletions.
25 changes: 25 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
.DS_store
.idea/
__*.php
node_modules/
/assets/fonts/iconfont.ttf
/assets/fonts/iconfont.woff
/assets/fonts/icons.eot
/assets/fonts/icons.svg
/assets/fonts/icons.ttf
/assets/fonts/icons.woff
/assets/fonts/icon.eot
/assets/fonts/icon.svg
/assets/fonts/icon.ttf
/assets/fonts/icon.woff
/assets/fonts/iconfont.eot
/assets/fonts/iconfont.svg
/inc/test.php
cache/
/languages/learnpress-vi.mo
/languages/learnpress-vi.po
test list.txt

package-lock.json
/vendor/
composer.lock
28 changes: 28 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
language: php

php:
- 7.1
- 7.0
- 5.6
- 5.5
- 5.4
- hhvm
- nightly

matrix:
fast_finish: true
allow_failures:
- php: nightly

sudo: false

before_script:
- composer install

script:
- ./vendor/bin/phpcs -d date.timezone=UTC

branches:
only:
- develop
- master
158 changes: 158 additions & 0 deletions Gulpfile.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,158 @@
/**
* Gulp tasks
*
* 1/ Run "npm install gulp -g" if you did not run it any time in the past.
* 2/ Run "npm install gulp --save-dev" to install gulp in your project directory.
* 3/ Run "npm install package-name[ package-name...] --save-dev
*/
'use strict';
const zip = require('gulp-zip');

var gulp = require('gulp'),
gulpCopy = require('gulp-copy'),
clean = require('gulp-clean'),
scss = require('gulp-sass'),
liveReload = require('gulp-livereload'),
sourceMaps = require('gulp-sourcemaps'),
readFile = require('read-file'),
replace = require('gulp-replace'),
mkdirp = require("mkdirp"),
concat = require('gulp-concat');

gulp.task('scss', function () {
return gulp.src(['assets/scss/**/*.scss'])
.pipe(sourceMaps.init())
.pipe(scss())
.pipe(sourceMaps.write())
.pipe(gulp.dest('assets/css'))
.pipe(liveReload());
});

gulp.task('watch', function () {
liveReload.listen();
gulp.watch(['assets/scss/**/*.scss'], ['scss']);
gulp.watch(['assets/js/admin/utils/*.js'], ['compress-js']);
});

gulp.task('default', ['scss', 'watch', 'compress-js']);


var uglify = require('gulp-uglify');
var pump = require('pump');

gulp.task('compress-js', function (cb) {
return gulp.src('assets/js/admin/utils/*.js')
.pipe(concat('utils.js'))
.pipe(uglify())
.pipe(gulp.dest('assets/js/admin'))
});
/*
* SVN: Copy working directory to SVN and prepare something before submitting.
*/
var rootPath = '/Users/tu/Documents/foobla',
svnPath = rootPath + '/svn/learnpress',
releasePath = rootPath + '/releases/learnpress',
svnTrunkPath = svnPath + '/trunk',
svnTagsPath = svnPath + '/tags',
currentVer = null,
copySvnFiles = [
'assets/**/*',
'dummy-data/**/*',
'inc/**/*',
'languages/**/*',
'templates/**/*',
'index.php',
'learnpress.php'
],
getCurrentVer = function (force) {
if (currentVer === null || force === true) {
currentVer = readFile.sync('learnpress.php', {encoding: 'utf8'}).match(/Version:\s*(.*)/);
currentVer = currentVer ? currentVer[1] : null;
}
return currentVer;
},
updateReadme = function (version, callback) {
return gulp.src(['readme.txt'])
.pipe(replace(/Stable tag: (.*)/g, 'Stable tag: ' + version))
.pipe(gulp.dest(svnTrunkPath, {overwrite: true}))
.on('end', function () {
callback ? callback() : 'do nothing';
});
};
// Clear trunk/tag path
gulp.task('clr-tag', function () {
return gulp.src(svnTagsPath + '/' + getCurrentVer() + '/', {read: false}).pipe(clean({force: true}));
});
gulp.task('clr-trunk', function () {
return gulp.src(svnTrunkPath + '/', {read: false}).pipe(clean({force: true}));
});

// Copy working dir to trunk
gulp.task('copy-trunk', ['clr-trunk'], function () {
mkdirp(svnTrunkPath);
return gulp.src(copySvnFiles).pipe(gulpCopy(svnTrunkPath));
});

// Copy trunk to current tag
gulp.task('copy-tag', ['clr-tag'], function () {
var tagPath = svnTagsPath + '/' + getCurrentVer();
mkdirp(tagPath);
process.chdir(svnTrunkPath);
var copyFiles = copySvnFiles;
copyFiles.push('readme.txt');
return gulp.src(copyFiles).pipe(gulpCopy(tagPath));
});

gulp.task('clr-release', function () {
return gulp.src(releasePath + '/', {read: false}).pipe(clean({force: true}));
});

gulp.task('copy-release', ['clr-release'], function () {
mkdirp(releasePath);
process.chdir(svnTrunkPath);
var copyFiles = copySvnFiles;
copyFiles.push('readme.txt');
return gulp.src(copyFiles).pipe(gulpCopy(releasePath));
});

gulp.task('release', ['copy-release'], function () {
process.chdir(releasePath);
var zipPath = releasePath.replace(/learnpress/, '');
return gulp.src(zipPath + '/**/learnpress/**/*')
.pipe(zip('learnpress.' + getCurrentVer(true) + '.zip'))
.pipe(gulp.dest(zipPath));
});

// main task
gulp.task('svn', ['scss', 'copy-trunk'], function () {
updateReadme(getCurrentVer(true), function () {
return gulp.start('release', ['copy-tag']);
})
});

// end of the world!

gulp.task("compile-sass-to-css", function (project) {
return gulp.src([
'sources/' + project + '/assets/sass/style.scss',
'sources/' + project + '/shortcodes/**/assets/sass/*.scss',
'!sources/' + project + '/shortcodes/**/assets/sass/*-options.scss',
'sources/' + project + '/inc/widgets/**/assets/sass/*.scss',
'!sources/' + project + '/inc/widgets/**/assets/sass/*-options.scss',
])

.pipe(concat('_tmp-options.scss'))
.pipe(gulp.dest('sources/' + project + '/assets/sass/'))
.pipe(sourcemaps.init())
.pipe(rename('style.unminify.css'))
.pipe(sass())
.pipe(sourcemaps.write({includeContent: false, sourceRoot: 'src'}))
.pipe(lec())
.pipe(gulp.dest('sources/' + project + '/'))
.pipe(rename('style.css'))
.pipe(cssmin())
.pipe(lec())

.pipe(gulp.dest('sources/' + project + '/'))
.pipe(livereload());
});
136 changes: 136 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
[![Stories in Ready](https://badge.waffle.io/LearnPress/LearnPress.svg?label=ready&title=Ready)](http://waffle.io/LearnPress/LearnPress)

<a href="http://thimpress.com/learnpress" target="_blank">LearnPress</a> is a comprehensive WordPress LMS Plugin for WordPress. This WordPress LMS Plugin can be used to easily create & sell courses online. Each course curriculum can be made with lessons & quizzes which can be managed with easy-to-use user interface, we really made it for lazy people.

[youtube https://www.youtube.com/watch?v=rRWPl5-Hb4k&hd=1&&cc_load_policy=1]

**LearnPress LMS Plugin works with your theme**
We create LearnPress LMS Plugin to work with any WordPress themes.

Here are some WordPress Themes designed to work with LearnPress: [Education WordPress Theme](http://themeforest.net/item/education-wordpress-theme-education-wp/14058034 "Education WordPress Theme") and [LMS WordPress theme](http://themeforest.net/item/lms-wordpress-theme-elearning-wp/11797847 "LMS WordPress Theme"). More will coming soon.


**LearnPress Support WordPress Multisites**

**LearnPress features**
*Create course*
LearnPress LMS Plugin provide an excellent user interface to create a course with options you need. You can find it easy to make a full curriculum layout as well as edit and maintain it.
You can also export course and import to other website which also using LearnPress. We will provide the feature allow you to import course from other WordPress LMS plugins soon.

*Manage course*
With the course you've created, you can share it, manage it, watch statistic about number of student, its trend, etc.

*Sell course*
LearnPress is free but it still allow you to sell courses you create with support many billing method such as paypal, woocommerce, stripe, etc.

*Communicate with your students*
With BuddyPress support, LearnPress will help you to communicate with your student or instructor via WordPress forum. Learning is not only on your own. Study, make friends and have fun.

*LearnPress provide a bunch of add-on*
Add-on is used to providing extra features for LearnPress and you can also write it.

<a href="http://docs.thimpress.com/learnpress" target="_blank">LearnPress WordPress LMS Plugin Documentation</a>

**LearnPress is free and always will be**
Education should be free and we want you to bring it to as many people as you can. Therefore, we create LearnPress as a tool for you to create course and share it. We'll continue developing it as long as we can and make it better and better.

**LearnPress is actively developed**
We are developing and improving LearnPress day by day and bringing new features to you cos we want LearnPress to become the best WordPress plugin in LMS.

**Free add-ons for LearnPress WordPress LMS Plugin:**

- [LearnPress Wishlist](https://wordpress.org/plugins/learnpress-wishlist) - add courses to a wishlist for students.
- [LearnPress Course Review](https://wordpress.org/plugins/learnpress-course-review) - review course for enrolled students.
- [LearnPress Import/Export](https://wordpress.org/plugins/learnpress-import-export) - export or import course or courses out-of-box.
- [LearnPress Prerequisites Courses](https://wordpress.org/plugins/learnpress-prerequisites-courses) - require student to pass some courses in order to enroll other course.
- [LearnPress bbPress Integration](https://wordpress.org/plugins/learnpress-bbpress) - add bbPress Forum support for LearnPress WordPress LMS Plugin.
- [LearnPress BuddyPress Integration](https://wordpress.org/plugins/learnpress-buddypress) - add BuddyPress support for LearnPress WordPress LMS Plugin.

**Premium add-ons for LearnPress WordPress LMS Plugin:**

- [Certificates add-on for LearnPress](http://thimpress.com/shop/certificates-add-on-for-learnpress/) - adding drag & drop certificates builder as well as selecting designed certificate for each LMS course, your student will get particular certificate when they finished a course.
- [Co-instructors add-on for LearnPress](http://thimpress.com/shop/co-instructors-add-on-for-learnpress/) - multiple instructors support for each LMS course.
- [Collections add-on for LearnPress](http://thimpress.com/shop/collections-add-on-for-learnpress/) - making LMS courses collection by selecting number of courses, this is helpful if you want to combine multiple LMS courses into a collection for a group of skills.
- [Stripe Payment method for LearnPress](http://thimpress.com/shop/stripe-add-on-for-learnpress/) - Stripe payment method for LearnPress WordPress LMS Plugin.
- [WooCommerce add-on for LearnPress](http://thimpress.com/shop/woocommerce-add-on-for-learnpress/) - using WooCommerce as payment gateway for LearnPrss WordPress LMS Plugin.

**WordPress LMS Plugin - LearnPress ROADMAP:**

- Payment Method support (first priority)
- Authorize.net
- Google Checkout
- Amazon Payments
- Dwolla
- Braintree
- Samurai by FeeFighters
- WePay
- 2Checkout
- Assignment
- Gradebook
- Paid MemberShip Pro
- Events
- myCRED integration
- Share Grade
- BadgeOS
- Content Drip
- Manually reset quiz for retake
- Create quiz from randoms questions in question bank
- Attachment restriction for lesson
- Mathjax support
- Presentation support (maybe support SlideShare)
- Show enrolled user
- Student ranks
- REST API for mobile app
- No distraction mode (when doing quiz)
- Report/feedback about a question/quiz/lesson
- Commission for payment method
- Instructor's note
- Private message from Admin to teacher
- Group payment
- Announcement (come up with email)

Any suggestions for this WordPress LMS Plugin? Send us <a href="http://thimpress.com/learnpress-suggestion/" target="_blank">here.</a>


##Installation

**From your WordPress dashboard**
1. Visit 'Plugin > Add new'.
2. Search for 'LearnPress'.
3. Activate LearnPress from your Plugins page.

**From WordPress.org**
1. Search, select and download LearnPress.
2. Activate the plugin through the 'Plugins' menu in WordPress Dashboard.

##Frequently Asked Questions

**What is LearnPress ?**
LearnPress is a plugin to create a LMS website, to spread out course, or sell course.

**Where can I find LearnPress documentation and user guides?**
If you want to use LearnPress to build a Learning Management Website, please refer to our user guides in <a href="http://docs.thimpress.com/learnpress/" target="_blank">LearnPress official site.</a>
And if you want to extending or theming LearnPress, see our <a href="https://github.com/LearnPress/LearnPress/wiki">Wiki</a>

**Where can I get support or talk to other users?**
If you get troubles when using LearnPress you can ask for help on the LearnPres Support Forum

For help with premium add-ons, use our helpdesk.

**Where can I ask for new features or suggest ideas or themes for LearnPress?**
You can send us your ideas through form <a href="http://thimpress.com/learnpress-suggestion/" target="_blank">here.</a>here

**Where can I report bugs or contribute to the project?**
You can also report bugs on LearnPress Support Forum or LearnPress <a href="https://github.com/LearnPress/LearnPress/issues" target="_blank">Github Repository</a>.

**Where can I find the REST API documentation?**
We will provide documentation about LearnPress REST API really soon.

**LearnPress is great, can I contribute to it?**
Yes, you can and we appreciate it. Join in our <a href="https://github.com/LearnPress/LearnPress" target="_blank">Github Repository</a>.

**LearnPress Translation project**
https://www.transifex.com/projects/p/learnpress/

**Other note**
<a href="http://docspress.thimpress.com/learnpress" target="_blank">Documentation</a> is available in ThimPress site.
Loading

0 comments on commit 7abf53f

Please sign in to comment.