Commit Graph

140 Commits

Author SHA1 Message Date
2e7f6cced6 changed userserviceimpl to constructor injection. this broke the pathetic excuse of a unit test I had made. no regrets 2019-12-10 20:13:31 +05:30
849a5133d7 slight optimizations to chatview template variable 2019-12-10 19:50:15 +05:30
b83417570d changed myuserdetailsservice to use userservice instead of calling userrolerepository directly. 2019-12-09 21:02:25 +05:30
f9e6e3085c cleanup of java backend (removed todos and obsolete code) 2019-12-09 20:49:19 +05:30
b47206496f changed sprintf-js to sprintf in browserify shim options 2019-12-09 15:58:09 +05:30
b9bd79bbed added back user search funtionality in typescript 2019-12-08 19:46:09 +05:30
b1bcd1d081 added bundle.js to gitignore to stop diff pollution. it will have to be separately compiled on project build 2019-12-07 20:49:23 +05:30
767d7d7b03 implemented message post in ts + some optimizations 2019-12-07 20:45:50 +05:30
874683ad0c Wrapped markdownit js dep into a service, and added send and receive templates to chatview 2019-12-07 16:15:29 +05:30
ba7dbb6f93 removed config files 2019-12-07 14:54:06 +05:30
f19fef7c57 sanitized user view as well 2019-12-07 14:47:25 +05:30
e110ce5135 moved around html sanitizing to fix html not being rendered when loading chat messages 2019-12-07 13:34:54 +05:30
6ecdf34b64 removed obsolete js deps 2019-12-07 12:32:20 +05:30
434e308f24 ts integrated and working preliminarily 2019-12-07 11:31:42 +05:30
d05f08630a ts integrated and working preliminarily 2019-12-07 11:30:51 +05:30
29a31ab60d pre integration commit 2019-12-06 19:58:53 +05:30
f0e8beb27c moved to typescript for frontend 2019-12-02 17:30:00 +05:30
bfe2c21e1b moved js deps to global head fragment 2019-12-01 12:49:39 +05:30
b41d811521 js deps are taken from local node_modules during development and cdn after compilation using browserify shim 2019-12-01 11:28:07 +05:30
3427da19a6 testing out browserify and yarn 2019-11-30 13:06:10 +05:30
3d28adbe68 added a unit test for reegistration. Also some cleanup 2019-11-30 10:17:30 +05:30
d193ec0f11 Javascript user search implemented 2019-11-30 00:43:50 +05:30
62a7e192e6 Made optimizations to service and repo layers
-disabled open session in view
-added transactional to service classes and transactional read only
where necessary
-changed chatmessage query a bit
2019-11-28 11:08:50 +05:30
49f765737e initial implementation of registration captcha 2019-11-26 11:49:00 +05:30
ea4b2eb1b1 token auth filter now only catches badcredentialsexception instead of all exceptions. This prevents it from absorbing ALL exception stacktraces 2019-11-26 11:47:25 +05:30
493d3cd079 change json api demo endpoint to only allow access to super user. Token is now obtained from chat endpoint 2019-11-25 12:19:43 +05:30
d26ea2749e minor change to chat area scroll animation 2019-11-25 12:19:43 +05:30
a41af9ba4e added alertify.js 2019-11-25 12:19:43 +05:30
4b20c33ec1 added error handling to message sending 2019-11-25 12:19:43 +05:30
f95b14d4e9 added metadata for token timeout property 2019-11-25 12:19:43 +05:30
5c653b669b token expiry and other errors are reported in web frontend with alerts. Later, the alterts must be replaced with a js notification library 2019-11-25 12:19:43 +05:30
9165770546 Token auth filter now return 440 http code on expired token 2019-11-25 12:19:43 +05:30
c2e0951144 change to lazy fetching in *toOne relationships and modified repository queries accordingy with join fetch to avoid n+1 queries 2019-11-25 12:19:43 +05:30
bf195efea7 minor change to user service impl 2019-11-25 12:19:43 +05:30
796d4ae032 cleanup up main class 2019-11-25 12:19:43 +05:30
87783f2463 admin menu now shows actual username instead of dummy name 2019-11-25 12:19:43 +05:30
e2e2428410 removed unneeded idb init code and moved sessions reset query to query.prop 2019-11-25 12:19:43 +05:30
0ecfda9980 db init service now uses hibernate connection instead of separate connection. Also, user sessions are now reset using jdbc as well 2019-11-25 12:19:43 +05:30
bee90dcef0 added logging to initializer service 2019-11-25 12:19:43 +05:30
f72f1b76fe cleaned up dbinitializerservice 2019-11-25 12:19:42 +05:30
80c7c18881 Token is delete and evicted from cache when num sessions hits 0. Also cleaned up loggeduser and added some logging 2019-11-25 12:19:42 +05:30
ed82bea521 Implemented token usage in front end and removed password storage
Token and username are stored in localstorage and cleared on logout.
2019-11-25 12:19:42 +05:30
1d36c317cf reduced token cache duration to 10 minutes 2019-11-25 12:19:42 +05:30
9a922cf5b9 added cacheevict 2019-11-25 12:19:42 +05:30
4c11415d9c removed old commented beanfilter code 2019-11-25 12:19:42 +05:30
eb7b2ab6d7 added further logging to tokenauthfilter 2019-11-25 12:19:42 +05:30
b0e67cc416 added exception handling to tokenauthfilter 2019-11-25 12:19:42 +05:30
8a339ddf83 Implemented token expiry
Token expiry can be set from properties file

Also changed tokenauthfiter from genericfilterbean to
onceperrequestfiter
2019-11-25 12:19:42 +05:30
25f55a6262 some optimizations 2019-11-25 12:19:42 +05:30
130525738a more refactoring and token is now deleted from database on logout 2019-11-25 12:19:42 +05:30
5e80815e53 changed user token cache expiry to 1 minute 2019-11-25 12:19:42 +05:30
0ca1c47011 further cleanup and added get by token string in usertokenservice 2019-11-25 12:19:42 +05:30
deaefaf866 cleaned up the code a bit 2019-11-25 12:19:42 +05:30
264bc9efde switched to beanutil to get beans outside spring handled classes 2019-11-25 12:19:42 +05:30
1ecbc91e0e transferred token auth files 2019-11-25 12:19:42 +05:30
a91a142685 changed usersession fetchtype to lazy 2019-11-25 12:19:42 +05:30
84c2c7c245 csrf is enabled again 2019-11-25 12:19:42 +05:30
f06bf516dd chat page now uses classname instead of queryselector to extract user name 2019-11-25 12:19:42 +05:30
4d10e172cc left out deleted file by mistake 2019-11-25 12:19:42 +05:30
9140885398 updated schema initilization script and switched back to jdbc based initialization 2019-11-25 12:19:42 +05:30
5a79c7026e application now resets online flag and num_sessions to 0 on startup 2019-11-25 12:19:42 +05:30
2564fdca35 Switched to persistent storage of active users. This solves the issue of tracking active user with multiple sessions 2019-11-25 12:19:42 +05:30
d1a2d58411 proper formatting for last active 2019-11-25 12:19:42 +05:30
74396ccd68 added thymeleaf template logic for active users in chat page 2019-11-25 12:19:42 +05:30
e85650d499 static chat js 2019-11-25 12:19:42 +05:30
d577e38692 Added markdown rendering to chat area 2019-11-25 12:19:42 +05:30
08c2ec786c messages are now sanitized for unsafe html/js using DOMPurify 2019-11-25 12:19:42 +05:30
14843cd8f0 Done logic for getting online users and their last active time 2019-11-25 12:19:42 +05:30
8824678682 Homepage now says welcome guest instead of anonymouseUser 2019-11-25 12:19:42 +05:30
fd6de29a89 Done get and post logic
Also added an initial input box for passphrase which is set to hidden
later
2019-11-25 12:19:42 +05:30
ed3853c5ea changed to queryselector to extract username and date and last message fields in userbox 2019-11-25 12:19:42 +05:30
7775dd798e Added code for chat card
Chat card displayed only when at least one user selected
User box highlighted when selected
Hover color for user box added
2019-11-25 12:19:42 +05:30
579f819254 set active css class to user boxes on click 2019-11-25 12:19:42 +05:30
dacf0f90dc improved chat UI 2019-11-25 12:19:42 +05:30
3692608d8f added user change passphrase page and some general adjustments 2019-11-25 12:19:41 +05:30
5c056cf5a0 First Commit
This branch seeks to implement the admin area of the web app in a
pre-made template. For now, start-bootstrap has been chosen. In this
commit, the home page of the admin area has been implemented in a red
black theme.

Rest of the functionality will be implemented in subsequent commits.
2019-11-25 12:19:41 +05:30
be78f63f66 fixed pom 2019-11-25 12:19:41 +05:30
d6a6d32225 deleted obsolete file 2019-11-25 12:19:41 +05:30
febfaeec9a Changes to error model and login/registration cards
Added json property names to error model
Switched to grid offset instead of changing card width using CSS
2019-11-25 12:19:41 +05:30
d3ac95e8f4 Implemented primitive rest validation.
A better implementation to be done later.
2019-11-25 12:19:41 +05:30
97091123b9 Revert "Architecutre improvements and validation"
This reverts commit c1fd68901e6defa3f88359e65707eea0a8ceb3eb.
2019-11-25 12:19:41 +05:30
acbacc8fa8 Architecture improvements and validation
Improved system architecture and added sample regex validation to
registration
2019-11-25 12:19:41 +05:30
4607ae5e17 Architecutre improvements and validation
Improved system architecture and added sample regex validation to
registration
2019-11-25 12:19:41 +05:30
2625cf7865 add bootstrap to web front-end 2019-11-25 12:19:41 +05:30
bb9a4c9b3a Added database initialization logic 2019-11-25 12:19:41 +05:30
3ea46b584a zz 2019-11-25 12:19:41 +05:30
d8ce654df6 Finished a working prototype with E2E 2019-10-02 21:49:52 +05:30
216c429e1f encrypted message test 2019-09-27 20:42:27 +05:30
b65237d9eb many changes 2019-09-27 12:07:55 +05:30
128e330342 First commit 2019-09-17 13:03:38 +05:30