This commit introduces handlebars template system and completely replacing Swig and the Consolidate project to handle multiple template systems.
Fixes#1286
* fix(user): fix changeProfilePicture
* use promises to simplify callbacks
* use fs.unlink to delete old picture once the profile is updated
Fixes#1415
* fix(user): fix changeProfilePicture
* use promises to simplify callbacks
* use fs.unlink to delete old picture once the profile is updated
* log file errors to console
Fixes#1415
* fix(user): fix changeProfilePicture
* use promises to simplify callbacks
* use fs.unlink to delete old picture once the profile is updated
* log file errors to console
* update error handler module to handle file upload errors
Fixes#1415
* fix(user): fix changeProfilePicture
* use promises to simplify callbacks
* use fs.unlink to delete old picture once the profile is updated
* log file errors to console
* update error handler module to handle file upload errors
Fixes#1415
* Support params to state for menu items.
* feat(core): Add support for params in menu items
Proposed by @scfox
Fixes#1304
* Removed trailing space on test.
* Changed default params to be empty object instead of empty string.
* replacing file-stream-rotator with a better logging mechanism using winston which can be extended later for other use cases and integrations
* refactoring logger mechanism, accomodating for tests and environment variable configurations
* only enabling morgan logger if config.log.format option was defined, and disabling the app.log file transport option for the test environment
* disabling all kind of logging when in test enviroment
Update the core module to implement the style guidelines.
Reduce size of init.js - moved filter logic out to it's own config.
Rename Menus to menuService
Adds an angular $urlRouterProvider service Rule to the Core module
configuration, that removes any trailing slashes in the URL for all routes.
The Rule is defined in the core routes configuration. Thus, in order for
this to work on all routes in the application, we have to inject the Core
module into each client module, as a dependecy in the client.module
configuration. Otherwise, we'd have to define the Rule in each module's route
configuration individually.
Adds missing client-side route configuration tests.
Tests demonstrate that the various route configurations can handle a trailing
slash in the URL, and gets resolved to the correct client route.
Fixes#1075
The new WiredTiger engine is introduced in MongoDB 3.2.
It changes the output errmsg format for violation of unique index.
This commit adds support for the new format.
Fixes#1245
Update bower dependencies to more recent versions.
Resolved hard-coded dependency by updating file upload
PhantomJs to 2.x series for tests (@usta)
Fix assertion in tests for compatibility with MongoDB 3.2 (@rhutchison)
Improve coding style tests to avoid type errors (@ilanbiala)
Fix refresh showing flash of scrollbar in menu
Remove deprecated angular-ui-utils
Fixes#1124
Changed some bad comments referencing the Articles module in other modules.
Typo fixed in xxx.client.modules.js files ("Application" => "Applicaion")
Full stop character removed at the end of line comments
Removes the validator.escape on the profileImageUrl field in core server
controller.
The escaping was causing the profileImageUrl field to be an invalid path
for the image. We don't need to worry about xss vulnerabilities on this
field because no user input is provided; the name & path are generated
by the application logic.
Fixes#1127
Adds a check for the existence of the "guest" role in the state configuration
that we're transitioning to, in the core $stateChangeStart event handler. If
it exists, then we allow access.
Also, added validation of Authentication.user object. While writing
tests, I ran into an issue here when the Authentication service wasn't injected
into a controller. Probably best to have this check in place.
Fixes https://github.com/meanjs/mean/issues/1098
Adds the log options, and format to the Morgan middleware in the Express
configuration.
These options are defined in the environment configurations.
The implementation derived from https://github.com/meanjs/mean/pull/254
by @lirantal, which somehow got overlooked when merging 0.4.0 into
master.
Added tests for the Logger configuration.
Added the log settings to the Test env config.
Added environment variables for the log settings in the Test &
Production env configs.
Moved the Morgan Express middleware outside of the NODE_ENV ===
'development' check. Morgan should be used in all environments, and use
the settings set in each env config.
Changed the wording of the Stream option comments in the env configs.
Added Rotating Logs functionality, and refactored the log Stream
options. Added a new npm package, FileStreamRotator, for use with
Morgan's rotating logs functionality.
Also, refactored the log configuration tests to be more maintainable.
Added more tests, and refactored test suite to use mock-fs.
Removed the {{url}} from the Favicon path. This fixes the intermittent
issues with the path resolving to an invalid location.
Removed the url from the twitter:image & og:image tags, to be static
references to the logo.
Added the timeout option to the Mocha grunt task; set to 10000.
Removed the individual test suite timeouts, for all server tests.
Also, added global timeout for Mocha gulp task.
Added an options object to the database seed configuration. Currently,
the only option implemented is `logResults`; set using the seedDB env
config
options (default to "true").
Modified the definition of the env config for seedDB. It's now an
object, with
options.
Setting the logResults option is set to `false` in the core
configuration server test suite.
Also, fixed an issue with how env configs were reading the seedDB
setting from the env variables. Previously, the config was getting set
by
looking for merely the existence of the env variable (MONGO_SEED).
However,
if this setting existed but was set to "false", the seedDB would be
turned on.
Added the SeedDB user details to the env config, and seedDB options.
Added tests to the core server config test suite
should have seedDB configuration set for "regular" user
should have seedDB configuration set for admin user
should seed admin, and "regular" user accounts when NODE_ENV is set to
"test" when they already exist
should ONLY seed admin user account when NODE_ENV is set to "production"
with custom admin
should seed admin, and "regular" user accounts when NODE_ENV is set to
"test" with custom options
should NOT seed admin user account if it already exists when NODE_ENV is
set to "production"
should NOT seed "regular" user account if missing email when NODE_ENV
set to "test"
Added support for environment variables to seedDB env configs; currently
only supporting username & email.
Refactored how the SeedDB rejects were being handled