Merge branch 'develop' into 3onyc-fix-hash-leak

This commit is contained in:
Blade Barringer
2015-08-22 17:45:47 -05:00
1848 changed files with 63651 additions and 41605 deletions
+6
View File
@@ -0,0 +1,6 @@
languages:
JavaScript: true
exclude_paths:
- "database_reports/*"
- "migrations/*"
+6
View File
@@ -8,12 +8,14 @@ config.json
npm-debug.log
lib
website/public/bower_components
website/public/new-stuff.html
website/build
newrelic_agent.log
.bower-tmp
.bower-registry
.bower-cache
.vagrant
Vagrantfile
*.log
src/*/*.map
@@ -22,4 +24,8 @@ test/*.js
test/*.map
website/public/docs
*.sublime-workspace
coverage
coverage.html
common/dist/scripts/habitrpg-shared.js
test/spec/mocks/translations.js
+3
View File
@@ -5,6 +5,9 @@
"browser": true,
"node": true,
"mocha": true,
"esnext": true,
"asi": true,
"boss": true,
+9 -4
View File
@@ -1,10 +1,15 @@
language: node_js
node_js:
- '0.10'
services:
- mongodb
before_install:
- "sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10"
- "echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list"
- "sudo apt-get update"
- "sudo apt-get install mongodb-org-server"
before_script:
- 'npm install -g grunt-cli mocha'
- export DISPLAY=:99.0
- sh -e /etc/init.d/xvfb start
- cp config.json.example config.json
- "until nc -z localhost 27017; do echo Waiting for MongoDB; sleep 1; done"
- "export DISPLAY=:99"
after_script:
- "./node_modules/.bin/lcov-result-merger 'coverage/**/*.info' | ./node_modules/coveralls/bin/coveralls.js"
-282
View File
@@ -1,282 +0,0 @@
<a name="">My app - Changelog</a>
# (2014-02-15)
## Documentation
- **rebirth:** Bullet point about repurchase of limited ed gear after Rebirth
([d3f4a561](watch/commits/d3f4a561fdf137e5d8f406bae03be4fef1caff22))
## Bug Fixes
- **#2003:** healer gear not showing
([949cd97b](watch/commits/949cd97b91b42e9450eba559bbfea17e239ab100))
- **#2375:** merge in @SabreCat's stats.jade changes "More elegant show/hide setup for attribute bonuses"
([518f200a](watch/commits/518f200a8fc7373b44ed7d7b5f016d921b0746bd))
- **allocateNow:** Send empty object to user.ops per @colegleason suggestion
([f6e12fa2](watch/commits/f6e12fa25e4366622db3e6f1b6ab03e848b49e10))
- **batch-update:** send errors to client if batch-update found an error, crash pid.
([f9679629](watch/commits/f967962996be69a5335454610af76d10e1db08b8))
- **beastmaster:** fixes #2557, adds opacity to previously-owned pets after they're mounted. You can earn them back again
([5caaff1c](watch/commits/5caaff1cea1a68fe572e7ddf4aac50248b13df5d))
- **bosses:** don't reset progress.up when starting a new quest. We want to be able to carry over damage from the same day a boss battle begins, even if the dailies were completed before battle-start. Fixes #2168
([4efd0f5e](watch/commits/4efd0f5ed8708f2491dd483f93e3d7a268a6337d))
- **bower:** updated jquery directory
([191b789d](watch/commits/191b789d760a7bdc7d1b53727f6127b677c78c94))
- **bs3:**
- fix to MemberModalCtrl parameter
([ebd1df93](watch/commits/ebd1df932e28263e5cc01e8a35f545ab26f1e8bd))
- port pet feeding bar
([5db96ebc](watch/commits/5db96ebca2fbd5b64f49af03a5137ea80f6b1673))
- **buffs:** Move help bubble to left of special buffs
([4f911a68](watch/commits/4f911a68d805742e6744383948eea6f224f2b0ea))
- **challenges:**
- better handling of deleted challenges. If !chal, break the task.challenge. Move the function into userController#score so we have access to next, etc. fixes #1883
([33b326b5](watch/commits/33b326b59685ea6e50f9950094d009460ce80094))
- challenge csv export now has proper filename
([36f21196](watch/commits/36f21196f466260b7cd52b283c50b9e16943f668),
[#2689](watch/issues/2689))
- **classes:**
- misc fixes
([d2121a85](watch/commits/d2121a858716cb5a532a53ee9c5a1adaa74a7f69))
- misc class fixes (not @snicker, ng-if on item store since we dynamically swap it sometimes)
([478be611](watch/commits/478be6111337cd200374f7f31b959725c6a0b945))
- **css:**
- temp fix for bailey height
([c8faffcc](watch/commits/c8faffcc7289090990c3a17ab8c07a00069f5ce4))
- menu and gems wallet margin
([975b5165](watch/commits/975b5165730477310aa64bac27ddc07a34ea6c1d))
- lighter columns title
([a22e2814](watch/commits/a22e28143f74302c8340c3d33b01af9714875523))
- better food tray
([1c41c4dd](watch/commits/1c41c4ddb9a5b04297a371bc4d6aba013ce33f17))
- **errors:**
- `return next(err)` when experiencing errors, instead of res.json(500,{err:err}). Let the top-level error handler handle this (needed for upcoming versionerror discarding)
([bf5e9016](watch/commits/bf5e9016a4cb7889b3a9e39b90eb35cb8f7f9ec8))
- handle if err.message == undefined, send err
([b42dacf2](watch/commits/b42dacf2035d62453b585cfcf453829a423b59de))
- **event-tracking:**
- typo
([ff9d4b88](watch/commits/ff9d4b886ef7a98da0514975441a8bb845496c31))
- stripe sub, not pp
([0c99976b](watch/commits/0c99976bf5a3c7f04f031d62a8b07c862c85a0a9))
- **find_uniq_user:** fix
([ecbe780e](watch/commits/ecbe780e70549b1470504efe052f238c89a9db14))
- **footer:** ensure window.env is accessible from static pages, so we can get deferred scripts on frontpage (esp google analytics)
([67ee011a](watch/commits/67ee011aa35969db93e2d7dc1cd1e1f587f146de))
- **groups:**
- pass missing next into Like function
([afee0968](watch/commits/afee0968f8f6923847e186d3e11b9745ced9606e))
- send error if +1 errored
([5b6c4427](watch/commits/5b6c4427b504b6143f24bfee314f562b9803c5a4))
- **hall:** let's try $gt instead of $ne:null, the query is still slow
([a72b0131](watch/commits/a72b013131cfc7fa5d3affdbfe59b5b3cb15ae89))
- **i18n:** do not save user language for now
([094a4be0](watch/commits/094a4be0015f0f0deaaf94a0734193eb40a8beae))
- **misc:**
- some styles & translations
([8f19f225](watch/commits/8f19f225f104960b3cf27e229a5571e014be697c))
- isStaticPage and debug buttons
([19139f56](watch/commits/19139f562b8e68ed43f4cab748920f1e0634e86e))
- **missing-gems:** remove ad-removal from script, since ads are part of subscription
([e1240dde](watch/commits/e1240dde1d3dcaca4235fad384fea5c07a3706bf))
- **mongoose:** typo
([2786b362](watch/commits/2786b362067efdd245c3efa3a4891021fcfaab2d))
- **mounts:**
- fix pets & mounts css to position the user based on pet/mount equip
([37340d23](watch/commits/37340d23180da02d3742dc9be40a5fb780ecb13b))
- Move avatar upward when mounted regardless of pet
([bc1adeb1](watch/commits/bc1adeb1277103a5ca1f756e175ed68bbe837a2f))
- **nodemon:**
- Add another ignore for weirdsauce Windoze dev environments
([3fda08c3](watch/commits/3fda08c366793c8fbcbf701a9594ae3b2fd8bbea))
- ignore CHANGELOG.md on watch
([d6c55952](watch/commits/d6c55952da8b49f36e9d8e4570d80931d081343d))
- **party:** Round boss health up instead of to nearest integer
([626da568](watch/commits/626da5681f5ea95700f8ddf40587c7184926971c),
[#2504](watch/issues/2504))
- **paypal:** fixes #2492, remove environment check for now, only have production-mode option. revisit
([1dc68112](watch/commits/1dc68112d131e4ebdec32ddff938eb6311d6565f))
- **performance:** cache spritesmith image, fix #2633
([f03d7d7d](watch/commits/f03d7d7dde4f8cb39babd2b982d77e7f88f349b7))
- **pets:** add questPets to UserSchema.items.mounts too fixes #2814
([42766125](watch/commits/42766125d5c8870f25c3a0a001473f700b8f6cc1))
- **profile:** fix bug where empty profile displayed on username click
([0579c432](watch/commits/0579c432489c4a038e8c9f95ea3b285f5abc146f),
[#2465](watch/issues/2465))
- **quests:**
- quests with a level cap cannot be bought before that level.
([dab9ddbd](watch/commits/dab9ddbda27f5e10e4545fea703deebfe2dd9975),
[#2707](watch/issues/2707))
- bug fix to multi-drop
([f478d10c](watch/commits/f478d10c20f816cd104b3f0da814c189957f45f5))
- list multiple rewards in dialog
([e48c7277](watch/commits/e48c7277f8256cf827790aece51e897fe0439374))
- **readme:** remove text about translations wip
([f2bb1fd2](watch/commits/f2bb1fd26e44a9eb0ba325776bf335e021beeece))
- **settings:**
- remove unnecessary code
([5f0cf657](watch/commits/5f0cf6575c0dc4cfc041956e3dc27898d8b4242d))
- reintroduce space between captions and help bubbles stripped during localization
([5ddf09fe](watch/commits/5ddf09fe13c7f8d844c8c47be0fb8f8b2fd1df33))
- **spells:**
- temp workaround for spell & task being undefined. #2649 #2640
([241d0414](watch/commits/241d04140f5db77929d9f597d232f55843bb0f5d))
- more $rootScope spell-casting bug fixes
([47bd6dcb](watch/commits/47bd6dcb79778d90d6f3ddeb003c3d8e45433333))
- add some spells tests, don't send up body to spell paths
([e0646bb9](watch/commits/e0646bb98d44b6874b5259107c9be5fa34c58933))
- some $rootScope.applying action fixes so cast-ending is immediate instead of waiting on response. Also, slim down party population to the essentials to avoid RequestEntityTooLarge
([c6f7ab8a](watch/commits/c6f7ab8a5c6f4e382208a928b90ba5f4eba9cd37))
- <ESC> to cancel spell-casting
([a1df41ad](watch/commits/a1df41ad8165cd9eb6d2d5d59c7fe404edde716c))
- **stable:** show hatchable combo when petOwned>0 (fyi @deilann)
([51bff238](watch/commits/51bff23885ca0080e7e71ff752daa0950ae923ae))
- **stats:** Better layout for attribute point allocation
([d782fc6b](watch/commits/d782fc6b6a3cd7e90d327c93a5764626b2990c74))
- **swagger:** fix jade script warning in swagger
([2e2fcfcf](watch/commits/2e2fcfcf464fbae21bff9e1be1ca915f071b976b))
- **tests:**
- include select2 in test manifest
([38b4cea7](watch/commits/38b4cea73299f51c4db7f6b2eb12533d219745f8))
- don't use cluster in tests, else we get "connection refused"
([7a479098](watch/commits/7a479098dc6535654e322c737d80813790967941))
- **todos:**
- add migration for dateCreated & dateCompleted #2478
([4cc39f16](watch/commits/4cc39f16a13f5fb9f0e3ddde7d274c0f224f4a0e))
- add dateCompleted to todos so they're archived 3 days after completion, not 3 days after creation. Fixes #2478
([b1afc177](watch/commits/b1afc177aa4bfc4cbd9b847e40431db91666d9c3))
- **toolbar:**
- Tweak Settings drop-down
([e241429c](watch/commits/e241429cc3d2eca18d2f5a9726f6caa6270a1b02))
- Tweak icon popovers
([4454204f](watch/commits/4454204f47f80e64119f7896bf246259173d115b))
- tweaks
([5501d57e](watch/commits/5501d57e107c0bc7085847b0c808f027360fa405))
- **translation:** Fix #2585.
([06200acc](watch/commits/06200accada462c3234ab407cfb0f6b684e5effe))
- **translations:**
- fix #2564 and similar ones
([42740902](watch/commits/42740902055a3807532028a5dfb39eff905c104f))
- add env.t to rootScope
([13131087](watch/commits/13131087ff9563d2d174b2c978102f0dc2b87387))
- remove translations for privacy & terms
([a9095f34](watch/commits/a9095f346479336be13b2bf341666b908fa30b3d))
- merge @luveluen pull request, fix some syntax
([a6c67f17](watch/commits/a6c67f17815558f19895b8f67d29c40c14689f09))
- @lefnire now everything is ok
([52decb7e](watch/commits/52decb7edeefb4755ea832b0cf63eaeea5e93259))
- correct some variables
([fba73953](watch/commits/fba739535bc1b630d73eb469448e9c3706043efd))
- revert some views
([d000c706](watch/commits/d000c70679ae0e13d9bec749295e42cc8e299c95))
- **user:**
- make sure next is passed to all routes, and is available in err-back of batch updates
([0c21f54c](watch/commits/0c21f54c67b52b07c417fd8216c6b04bce59d0ab))
- if need to upgrade site, send 501, not 400
([ab86ba11](watch/commits/ab86ba11bdb3379a8d8fa1814879640d61c57227))
- PUT user retricted path errors are 401, not 500
([0aec4caa](watch/commits/0aec4caa785c3b12e15f1c2e19c5b67b20d1a6e1))
- **winston:** typo
([83b3739f](watch/commits/83b3739f4671a08466e057242f936140d5c739ef))
## Features
- **administrators:** start adding features page for admin accounts
([f7f4a0c1](watch/commits/f7f4a0c166558ba7e5461732f7bb6d7bcac25f88))
- **attributes:** Add backfill button in flat and classbased allocation modes
([76a7ab5b](watch/commits/76a7ab5bcce2d486dab3f447f0659ba870d1ff7e))
- **bailey:** notif about STWC updates + scroll-purchase deadlines (@colegleason)
([90176444](watch/commits/90176444e9c7a318040829e8b71d1493b5d58e9e))
- **bug-crushing:** add the critical hammer of bug-crushing
([00af5f7d](watch/commits/00af5f7d0258b0f7dddef8ede40bd825b057748a))
- **challenges:**
- add angular-ui-select2 for simpler find/select challenge winner.
([9fa45217](watch/commits/9fa452173989889c48ed696a45cf4a1dc16294a4))
- add button for csv export
([ae0d758d](watch/commits/ae0d758d8fc751219a693fee7f3e3ebcfbd67590))
- add csv export for challenge progress. WIP, will refine this over time - but we need it something like this for the STWC come 1/31.
([16a602f9](watch/commits/16a602f94c3b7c99d49e42b47b4835b65a243690))
- markdown in challenge-descriptions
([41233c7b](watch/commits/41233c7b167905eeccfdff5589789e002ec23f97))
- **cheating:** prevent +habit spamming with a 10s timer
([ad4ca665](watch/commits/ad4ca6655a3bdd870bb08173530372f81fdc9102))
- **event-tracking:**
- better page-view tracking via ui-router
([b093717b](watch/commits/b093717b8d54b61e5d4b44b0d56a1f43308f078c))
- track registration count
([72b6c9bc](watch/commits/72b6c9bc9189275909804f9ecab18e9fe1f69d27))
- pass ga to server user.ops
([9217b517](watch/commits/9217b5174ab9ab4754269263b214f6bfe45d4f1d))
- track ecommerce events
([d89fb17b](watch/commits/d89fb17b03b2e2c0fb1da77fb13cc660a5b6c9d1))
- add server-side GA tracking for ecommerce events
([f7b4a04a](watch/commits/f7b4a04a590ade26871abc726ade2c666176488e))
- start adding some client-side GA event-tracking
([ffb42906](watch/commits/ffb42906e1d7c6bd8f01e715d98d96426bc6d0de))
- **groups:** add group chat notifications
([ce82be63](watch/commits/ce82be637d1d707e899aeee5f315da69367fa367))
- **habitBirthday:** add habitrpg birthday event. includes cakes for all pets, absurd party robes, npc swap, badge, etc. @lemoness
([aff885c0](watch/commits/aff885c05c03bd70beeb0db8d68922671fc46309))
- **homepage:**
- start cleaning up homepage, add navbar for play button & upcoming links
([0ddaae4d](watch/commits/0ddaae4d7525277e696a57d20234e49cd6fd1cbc))
- use .marketing for centering, add playbutton as static in footer. This is pretty ugly (http://gyazo.com/215e20729569689ab48cf56c71c1fe28), let's iterate / prettify. @deilann
([47bcaf83](watch/commits/47bcaf83e760dbb266ae7ff2f7299c2a1cdf3712))
- **marketing:**
- more copy for mobile
([cbb44847](watch/commits/cbb448478edfd0003c43d20ed216bab20d25dadd))
- start fleshing out the about page with images, content, etc. Create separate videos page
([cb079977](watch/commits/cb079977e6f35f9308ab28158373dd3e1de9f798))
- add video tuts on "learn more" page until we have some copy
([5028707c](watch/commits/5028707c7b174b5e050c7c1662155e781a6b415b))
- some frontpage updates, a screenshot, & "contact us" button mods
([a582a054](watch/commits/a582a0546d680d36a21c507deff725a6c38fdb28))
- **premium:**
- subscriber mystery item (doesn't yet do anything)
([d0342628](watch/commits/d0342628340ce7dce95fa20177ccbcfe1ebf93e6))
- backport server code for premium subs (it's just ccard handling & uer model stuff)
([3660f1a8](watch/commits/3660f1a85c1447de118f334a145d0d7698b93981))
- updates to group plans info page
([66f95cdd](watch/commits/66f95cdd4cfb698fddc765a77b66d29e31eb1361))
- backport client-side premium code to public repo, it's client-side anyway (@colegleason @paglias)
([2e18f0eb](watch/commits/2e18f0eb82f5efc77544d33d1db3fbb9cc583124))
- **quests:**
- add flags.levelDrops for dropping items at certain levels
([78315d82](watch/commits/78315d828ba9a1033526b9a72b7c385281e6ad0a))
- allow dropping scrolls in quests
([54064deb](watch/commits/54064debf3c95390b5507acd826f9db3339b9f09))
- allow html in quest notes
([800231cf](watch/commits/800231cf6481351032d4e5143edd54f5e7e3a179))
- add level requirement for quests
([9e69d795](watch/commits/9e69d7959f174955f44429a94f22ce40fc5f7861))
- add canBuy so we can exclude certain items from the market (if you can only find them on quest-drop, etc). This isn't the prettiest, change?
([f16654d2](watch/commits/f16654d2354dc86cc7c52e1cf0562f850cf203be))
- allow quests to drop multiple items
([d9e5725e](watch/commits/d9e5725ee13f7e9ad329fc548537d5265cf483ca))
- **rainbow-hair:** add rainbow hair colors
([82d9233d](watch/commits/82d9233d99167d6704c878884dcc49a55cc7d884))
- **restore:** add restore-gp back in. Parly to end the winter event, partly due to the convo at #2681 regarding subscriptions. Fixes #2681
([179316e1](watch/commits/179316e10fa7597b08573d94721861baa3dbbb1c))
- **toolbar:**
- try with icons instead of text, test against prod / beta & get a vote.
([7456f00d](watch/commits/7456f00dc6122ad293652b7a32fb4ce671f75241))
- add toolbar featuring navigation, gems / subs, bailey, & chat / invite notifications
([f72cb213](watch/commits/f72cb21300c078b439b3334bfa3e205ba04dc949))
- **tracking:** gems > toolbar separately from wallet
([f6abfc67](watch/commits/f6abfc67b31808c0e2d325c235747260855338c9))
- **valentine:** valentine event
([fd6eb872](watch/commits/fd6eb8724eae38d02849ffccb09f1f9c7d8e490d))
- **winter:**
- remove purchasable winter hair colors, keep available if they purchased during event
([f8796e90](watch/commits/f8796e9028d4f4cd2b5c5ede1734d2876d174dc9))
- remove winter scrolls & snowballs
([52f8f0d5](watch/commits/52f8f0d5b0fdf4271fcb5f7d497ad3bf544c24e8))
## Docs
- **rebirth:** Bullet point about repurchase of limited ed gear after Rebirth
+3 -3
View File
@@ -3,12 +3,12 @@
[Please see these instructions for reporting bugs](https://github.com/HabitRPG/habitrpg/issues/2760)
## Frequently Asked Questions
You might find help with your issue on the [Frequently Asked Questions](http://habitrpg.wikia.com/wiki/FAQ) page.
You might find help with your issue on the [Frequently Asked Questions](http://habitica.wikia.com/wiki/FAQ) page.
# Requesting a feature
HabitRPG uses [Trello](https://trello.com/b/EpoYEYod/habitrpg) to track feature requests. [Read more](https://trello.com/c/odmhIqyW/440-read-first-table-of-contents).
Habitica uses [Trello](https://trello.com/b/EpoYEYod/habitica) to track feature requests. [Read more](https://trello.com/c/odmhIqyW/440-read-first-table-of-contents).
# Contributing Code
See [Contributing to HabitRPG](http://habitrpg.wikia.com/wiki/Contributing_to_HabitRPG#Coders_.28Web_.26_Mobile.29)
See [Contributing to Habitica](http://habitica.wikia.com/wiki/Contributing_to_Habitica#Coders_.28Web_.26_Mobile.29)
+19 -19
View File
@@ -1,23 +1,23 @@
# HabitRPG Docs Project
# Habitica Docs Project
Generated documentation for all of HabitRPG's source files will be kept in the folder and subfolders. If you would like to use the existing documentation, or contribute to the documentation efforts, read on.
Generated documentation for all of Habitica's source files will be kept in the folder and subfolders. If you would like to use the existing documentation, or contribute to the documentation efforts, read on.
## Viewing Docs
You're looking at it!
You're looking at it!
Unless you are viewing this file directly from GitHub, you should see a list of files and folders to the left of this readme.
Unless you are viewing this file directly from GitHub, you should see a list of files and folders to the left of this readme.
If you are working locally, you can goto `localhost:3000/docs/` and view the Docs.
If you are working locally, you can goto `localhost:3000/docs/` and view the Docs.
All documentation is generated from comments in the code, into HTML files in the `public/docs/` folder. After you have cloned the HabitRPG repo locally, and done all the `npm install` goodness, the Docs should generate automagickly when you run `grunt run:dev`
All documentation is generated from comments in the code, into HTML files in the `public/docs/` folder. After you have cloned Habitica's repo locally, and done all the `npm install` goodness, the Docs should generate automagickly when you run `grunt run:dev`
## What I do now?
Well if you know Markdown, simply add detailed comments in the code using Markdown syntax.
Well if you know Markdown, simply add detailed comments in the code using Markdown syntax.
````
/*
/*
User.js
=======
@@ -32,35 +32,35 @@ var helpers = require('habitrpg-shared/script/helpers');
var _ = require('lodash');....
````
As you can see, you can use both multiline style comments `/* fancy stuff */` and inline comments `// Ooooh my`.
As you can see, you can use both multiline style comments `/* fancy stuff */` and inline comments `// Ooooh my`.
The exception being end of line comments
The exception being end of line comments
`text: String, // example: Wolf `
The above will not be on the "pretty print" side of the Docs, but will stay in the code. An example use case for end of line comments would be for FIXME notes.
Add anything that would be helpful to a developer regarding how to use the functions, variables, and objects associated with HabitRPG.
Add anything that would be helpful to a developer regarding how to use the functions, variables, and objects associated with Habitica.
**All documentation should be committed as pull request to the `docs-project` branch of HabitRPG.** Since we are adding comments directly to the code, I don't want to be editing files used for beta or master. We can merge in the docs after we're sure we didn't break anything.
**All documentation should be committed as pull request to the `docs-project` branch of Habitica's repo.** Since we are adding comments directly to the code, I don't want to be editing files used for beta or master. We can merge in the docs after we're sure we didn't break anything.
### jsDoc Syntax
Yes, the generator also supports jsDoc-style comments such as
Yes, the generator also supports jsDoc-style comments such as
````
@param {Array} files Array of file paths relative to the `inDir` to generate documentation for.
````
**Important Note:** If you use the `@param` syntax, you must use multiline comment blocks (ie `/* stuff */`), otherwise they won't be parsed like parameters.
This may or may not be useful for HabitRPG. Example use cases:
- Documenting the API
This may or may not be useful for Habitica. Example use cases:
- Documenting the API
- Javascript Models
## Okay, I added great comments. Now what?
If you're running locally, just re-run `grunt run:dev`. Any changed docs will be automagickly updated.
Once you're satisfied with the output, push your changes to your fork of HabitRPG and issue a Pull Request on the `docs-project` branch.
Once you're satisfied with the output, push your changes to your fork of the repo and issue a Pull Request on the `docs-project` branch.
It's that easy!
@@ -72,6 +72,6 @@ We also use the [Grunt-Docker](https://github.com/Prevole/grunt-docker) node mod
## Road Map
- Customize CSS with HabitRPG specific Styling
- Explore possibilities of importing Wiki content
- Specify style guide for consistency of comments
- Customize CSS with Habitica-specific Styling
- Explore possibilities of importing Wiki content
- Specify style guide for consistency of comments
+45 -31
View File
@@ -13,7 +13,7 @@ module.exports = function(grunt) {
// totalDims.width += dims.width;
// totalDims.height += dims.height;
// })
var COUNT = 6;//Math.ceil( (totalDims.width * totalDims.height) / (1024*1024*3) );
var COUNT = 7;//Math.ceil( (totalDims.width * totalDims.height) / (1024*1024*3) );
//console.log({totalDims:totalDims,COUNT:COUNT});
var sprite = {};
@@ -31,7 +31,7 @@ module.exports = function(grunt) {
// For hair, skins, beards, etc. we want to output a '.customize-options.WHATEVER' class, which works as a
// 60x60 image pointing at the proper part of the 90x90 sprite.
// We set up the custom info here, and the template makes use of it.
if (sprite.name.match(/hair|skin|beard|mustach|shirt|flower/) || sprite.name=='head_0') {
if (sprite.name.match(/hair|skin|beard|mustach|shirt|flower|^headAccessory_special_\w+Ears/) || sprite.name=='head_0') {
sprite.custom = {
px: {
offset_x: "-" + (sprite.x + 25) + "px",
@@ -57,25 +57,6 @@ module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
git_changelog: {
minimal: {
options: {
repo_url: 'https://github.com/habitrpg/habitrpg',
appName : 'HabitRPG',
branch_name: 'develop'
}
},
extended: {
options: {
file: 'EXTENDEDCHANGELOG.md',
repo_url: 'https://github.com/habitrpg/habitrpg',
appName : 'HabitRPG',
branch_name: 'develop',
grep_commits: '^perf|^style|^fix|^feat|^docs|^refactor|^chore|BREAKING'
}
}
},
karma: {
unit: {
configFile: 'karma.conf.js'
@@ -94,6 +75,20 @@ module.exports = function(grunt) {
sprite: sprite,
imagemin: {
spritesmith: {
options: {
optimizationLevel: 7
},
files: [{
expand: true,
flatten: true,
src: ["common/dist/sprites/*.png"],
dest: "common/dist/sprites/"
}]
}
},
cssmin: {
dist: {
options: {
@@ -154,8 +149,8 @@ module.exports = function(grunt) {
fileNameFormat: '${name}-${hash}.${ext}'
},
src: [
'website/build/*.js',
'website/build/*.css',
'website/build/*.js',
'website/build/*.css',
'website/build/favicon.ico',
'website/build/common/dist/sprites/*.png',
'website/build/common/img/sprites/backer-only/*.gif',
@@ -166,7 +161,7 @@ module.exports = function(grunt) {
}
},
nodemon: {
nodemon: {
dev: {
script: '<%= pkg.main %>'
}
@@ -174,7 +169,7 @@ module.exports = function(grunt) {
watch: {
dev: {
files: ['website/public/**/*.styl'], // 'public/**/*.js' Not needed because not in production
files: ['website/public/**/*.styl', 'common/script/**/*.coffee', 'common/script/**/*.js'], // 'public/**/*.js' Not needed because not in production
tasks: [ 'build:dev' ],
options: {
nospawn: true
@@ -202,7 +197,7 @@ module.exports = function(grunt) {
_.each(files[key].js, function(val){
var path = "./";
if( val.indexOf('common/') == -1)
if( val.indexOf('common/') == -1)
path = './website/public/';
js.push(path + val);
});
@@ -213,7 +208,7 @@ module.exports = function(grunt) {
var path = "./";
if( val.indexOf('common/') == -1) {
path = (val == 'app.css' || val == 'static.css') ? './website/build/' : './website/public/';
}
}
css.push(path + val)
});
@@ -228,12 +223,31 @@ module.exports = function(grunt) {
});
// Register tasks.
grunt.registerTask('compile:sprites', ['clean:sprite', 'sprite', 'cssmin']);
grunt.registerTask('build:prod', ['loadManifestFiles', 'clean:build', 'browserify', 'uglify', 'stylus', 'cssmin', 'copy:build', 'hashres']);
grunt.registerTask('build:dev', ['browserify', 'stylus']);
grunt.registerTask('compile:sprites', ['clean:sprite', 'sprite', 'imagemin', 'cssmin']);
grunt.registerTask('build:prod', ['loadManifestFiles', 'clean:build', 'browserify', 'uglify', 'stylus', 'cssmin', 'copy:build', 'hashres','prepare:staticNewStuff']);
grunt.registerTask('build:dev', ['browserify', 'stylus', 'prepare:staticNewStuff']);
grunt.registerTask('build:test', ['test:prepare:translations', 'build:dev']);
grunt.registerTask('run:dev', [ 'build:dev', 'concurrent' ]);
grunt.registerTask('test:prepare:translations', function() {
require('coffee-script');
var i18n = require('./website/src/i18n'),
fs = require('fs');
fs.writeFileSync('test/spec/mocks/translations.js',
"if(!window.env) window.env = {};\n" +
"window.env.translations = " + JSON.stringify(i18n.translations['en']) + ';');
});
grunt.registerTask('prepare:staticNewStuff', function() {
var jade = require('jade'),
fs = require('fs');
fs.writeFileSync(
'./website/public/new-stuff.html',
jade.compileFile('./website/views/shared/new-stuff.jade')()
);
});
if(process.env.NODE_ENV == 'production')
grunt.registerTask('default', ['build:prod']);
else
@@ -250,8 +264,8 @@ module.exports = function(grunt) {
grunt.loadNpmTasks('grunt-concurrent');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-spritesmith');
grunt.loadNpmTasks('grunt-contrib-imagemin');
grunt.loadNpmTasks('grunt-hashres');
grunt.loadNpmTasks('grunt-karma');
grunt.loadNpmTasks('git-changelog');
};
+1 -1
View File
@@ -1 +1 @@
web: ./node_modules/.bin/grunt nodemon;
web: node ./website/src/server.js
+5 -5
View File
@@ -1,12 +1,12 @@
HabitRPG [![Build Status](https://travis-ci.org/HabitRPG/habitrpg.png?branch=develop)](https://travis-ci.org/HabitRPG/habitrpg) [![Code Climate](https://codeclimate.com/github/HabitRPG/habitrpg.png)](https://codeclimate.com/github/HabitRPG/habitrpg) [![Bountysource](https://api.bountysource.com/badge/tracker?tracker_id=68393)](https://www.bountysource.com/trackers/68393-habitrpg?utm_source=68393&utm_medium=shield&utm_campaign=TRACKER_BADGE) [![Dependency Status](https://gemnasium.com/HabitRPG/habitrpg.svg)](https://gemnasium.com/HabitRPG/habitrpg)
Habitica [![Build Status](https://travis-ci.org/HabitRPG/habitrpg.png?branch=develop)](https://travis-ci.org/HabitRPG/habitrpg) [![Code Climate](https://codeclimate.com/github/HabitRPG/habitrpg.png)](https://codeclimate.com/github/HabitRPG/habitrpg) [![Coverage Status](https://coveralls.io/repos/HabitRPG/habitrpg/badge.svg?branch=develop)](https://coveralls.io/r/HabitRPG/habitrpg?branch=develop) [![Bountysource](https://api.bountysource.com/badge/tracker?tracker_id=68393)](https://www.bountysource.com/trackers/68393-habitrpg?utm_source=68393&utm_medium=shield&utm_campaign=TRACKER_BADGE) [![Dependency Status](https://gemnasium.com/HabitRPG/habitrpg.svg)](https://gemnasium.com/HabitRPG/habitrpg)
===============
[HabitRPG](https://habitrpg.com) is an open source habit building program which treats your life like a Role Playing Game. Level up as you succeed, lose HP as you fail, earn money to buy weapons and armor.
[Habitica](https://habitica.com) is an open source habit building program which treats your life like a Role Playing Game. Level up as you succeed, lose HP as you fail, earn money to buy weapons and armor.
We need more programmers! Your assistance will be greatly appreciated.
For an introduction to the technologies used and how the software is organised, refer to [Contributing to HabitRPG](http://habitrpg.wikia.com/wiki/Contributing_to_HabitRPG#Coders_.28Web_.26_Mobile.29) - "Coders (Web & Mobile)" section.
For an introduction to the technologies used and how the software is organised, refer to [Contributing to Habitica](http://habitica.wikia.com/wiki/Contributing_to_Habitica#Coders_.28Web_.26_Mobile.29) - "Coders (Web & Mobile)" section.
To set up a local install of HabitRPG for development and testing, see [Setting up HabitRPG locally](http://habitrpg.wikia.com/wiki/Setting_up_HabitRPG_locally), which contains instructions for Windows, *nix / Mac OS, and Vagrant.
To set up a local install of Habitica for development and testing, see [Setting up Habitica Locally](http://habitica.wikia.com/wiki/Setting_up_Habitica_Locally), which contains instructions for Windows, *nix / Mac OS, and Vagrant.
Then read [Guidance for Blacksmiths](http://habitrpg.wikia.com/wiki/Guidance_for_Blacksmiths) for additional instructions and useful tips.
Then read [Guidance for Blacksmiths](http://habitica.wikia.com/wiki/Guidance_for_Blacksmiths) for additional instructions and useful tips.
+4 -4
View File
@@ -1,11 +1,11 @@
# Vagrant #
Vagrant is a system to create reproducible and portable development
environments. Because of the variety of systems used for HabitRPG
environments. Because of the variety of systems used for Habitica
development and the various issues developers may encounter setting up
HabitRPG on them, vagrant provides a single development enviroment with
Habitica on them, vagrant provides a single development enviroment with
minimal dependencies on the developer's local platform. It can be used
on a variety of systems including Windows, Mac OS X, and Linux.
Instructions for using the HabitRPG Vagrant environment are in
[Setting up HabitRPG locally](http://habitrpg.wikia.com/wiki/Setting_up_HabitRPG_locally).
Instructions for using the Habitica Vagrant environment are in
[Setting up Habitica Locally](http://habitica.wikia.com/wiki/Setting_up_Habitica_Locally).
+2
View File
@@ -6,6 +6,8 @@ VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.provider "virtualbox" do |v|
v.memory = 768
v.cpus = 1
v.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate/vagrant", "1"]
end
config.vm.box = "thepeopleseason/habitrpg"
+34
View File
@@ -0,0 +1,34 @@
<a name="">My app - Changelog</a>
# (2015-05-08)
## Bug Fixes
- **Spring:** WHO IS LESLIE
([6685e935](watch/commits/6685e93554a1274dedb55dae054e787fb80eb440))
- **invite-friends:** text should be valid for both parties and guilds
([54e82a14](watch/commits/54e82a14a252c3b9923449a7ef7cee6033a5d160))
- **mystery:** It's 2015 now, Sabe
([00252f20](watch/commits/00252f200481f06de9bccd1e55275d5366b03919))
- **scoring:** move gainMP into score
([2fc0cb8f](watch/commits/2fc0cb8fa1b3b5975c16653cb110be2f03b5427e))
- **slimes:** Tweaks and missing sprite
([7d1a58ca](watch/commits/7d1a58ca002af9dac19aba65d6465bd23b28d649))
## Features
- **Spring:** Flung
([d50d4ad8](watch/commits/d50d4ad8bb0f89e39ceb6562e0f8f392f94b5444))
- **emails:** add support for weekly recap emails
([37f7db3c](watch/commits/37f7db3c4e3859d03fd55a44e63819e273a06442))
- **i18n:** upload japanese, serbian and chinese (taiwan)
([ee7ba19e](watch/commits/ee7ba19ed17e72b33cbef8a324266617d384f852))
- **mystery:** April Subscribee Items
([7a7fc968](watch/commits/7a7fc96818ffd7f92738e8c6cc8a59e48d60597d))
- **pets:** Slime Quest
([f13c6cba](watch/commits/f13c6cba0026c645b19a0b1355ba2c5b27f80878))
- **quests:** Boss damage from Habits
([43dcded0](watch/commits/43dcded051b602d8a4efc30eef45365abfd238b4))
- **scoring:** MP gain from Habits and Dailies
([7b22244f](watch/commits/7b22244f0123cf649c9f2aada0811f35a565688d))
+25 -25
View File
@@ -14,34 +14,34 @@
"tests"
],
"dependencies": {
"jquery": "~2.1.0",
"jquery.cookie": "~1.4.0",
"Angular-At-Directive": "snicker/Angular-At-Directive#c27bae207aa06d1e",
"BrowserQuest": "browserquest/BrowserQuest#c3a960b03031dad5d",
"angular": "1.3.9",
"angular-ui": "~0.4.0",
"angular-sanitize": "1.3.9",
"angular-bootstrap": "0.13.0",
"angular-filter": "0.5.1",
"angular-loading-bar": "0.6.0",
"angular-resource": "1.3.9",
"angular-ui-utils": "~0.1.0",
"angular-ui-select2": "git://github.com/angular-ui/ui-select2.git",
"angular-bootstrap": "~0.12.0",
"angular-loading-bar": "~0.6.0",
"bootstrap": "~3.1.0",
"bootstrap-growl": "git://github.com/ifightcrime/bootstrap-growl.git#master",
"bootstrap-tour": "~0.10.1",
"BrowserQuest": "git://github.com/browserquest/BrowserQuest.git",
"github-buttons": "git://github.com/mdo/github-buttons.git",
"marked": "~0.2.9",
"Angular-At-Directive": "git://github.com/snicker/Angular-At-Directive#master",
"js-emoji": "git://github.com/snicker/js-emoji#master",
"sticky": "*",
"swagger-ui": "git://github.com/wordnik/swagger-ui.git",
"angular-sanitize": "1.3.9",
"angular-ui": "0.4.0",
"angular-ui-router": "0.2.13",
"angular-ui-select2": "angular-ui/ui-select2#afa6589a54cb72815f",
"angular-ui-utils": "0.1.0",
"bootstrap": "3.1.0",
"bootstrap-growl": "ifightcrime/bootstrap-growl#162daa41cd1155f",
"bootstrap-tour": "0.10.1",
"css-social-buttons": "samcollins/css-social-buttons#v1.1.1 ",
"github-buttons": "mdo/github-buttons#v3.0.0",
"hello": "1.5.0",
"jquery": "2.1.0",
"jquery-colorbox": "1.4.36",
"jquery-ui": "1.10.3",
"jquery.cookie": "1.4.0",
"js-emoji": "snicker/js-emoji#f25d8a303f",
"marked": "0.2.9",
"ngInfiniteScroll": "1.0.0",
"jquery-colorbox": "~1.4.36",
"pnotify": "~1.3.1",
"jquery-ui": "~1.10.3",
"hello": "~1.5.0",
"css-social-buttons": "https://github.com/samcollins/css-social-buttons.git",
"angular-filter": "~0.5.1",
"angular-ui-router": "~0.2.13"
"pnotify": "1.3.1",
"sticky": "*",
"swagger-ui": "wordnik/swagger-ui#v2.0.24"
},
"devDependencies": {
"angular-mocks": "1.3.9"
+1 -1
View File
@@ -1,6 +1,6 @@
# Common
Shared resources useful for the multiple HabitRPG repositories, that way all the repositories remain in-sync with common characteristics. Includes things like:
Shared resources useful for the multiple Habitica repositories, that way all the repositories remain in-sync with common characteristics. Includes things like:
* Assets - sprites, images, etc
* CSS - especially, esp. sprite-sheet mapping
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+8 -2
View File
@@ -3,11 +3,11 @@
}*/
/* Comment out for holiday events */
/* .npc_ian {
.npc_ian {
background: url("/common/img/sprites/npc_ian.gif") no-repeat;
width: 78px;
height: 135px;
} */
}
.Gems {
display:inline-block;
@@ -37,6 +37,12 @@
margin-right: 10px;
}
.multi-achievement {
margin: auto;
padding-left: 0.5em;
padding-right: 0.5em;
}
[class*="Mount_Head_"], [class*="Mount_Body_"]{
margin-top:18px; /* Sprite accommodates 105x123 box */
}
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
+1146 -960
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 249 KiB

After

Width:  |  Height:  |  Size: 241 KiB

+3226 -2890
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 25 KiB

+2915 -1859
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 191 KiB

After

Width:  |  Height:  |  Size: 110 KiB

+1706 -1502
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 503 KiB

After

Width:  |  Height:  |  Size: 89 KiB

+2073 -1875
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 331 KiB

After

Width:  |  Height:  |  Size: 575 KiB

+1674 -1506
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 299 KiB

After

Width:  |  Height:  |  Size: 243 KiB

File diff suppressed because it is too large Load Diff
Binary file not shown.

After

Width:  |  Height:  |  Size: 204 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Some files were not shown because too many files have changed in this diff Show More