Compare commits

..

348 Commits

Author SHA1 Message Date
b50b144b38 Refactor: convert ERB to HAML, optionally associations, simplify navigation and views 2026-07-30 22:11:43 -07:00
224ecbd2c8 Upgrade ruby 3.2.2 to 3.4.3 and rails 7 to 8 2025-04-24 03:49:24 -07:00
0df075fb5d Add czechers checkers concept page 2025-03-27 20:54:39 +00:00
4b830bdb4b Uodate git url 2025-03-27 20:53:06 +00:00
41506fa3e9 Add swipable delete to all doodads on index 2025-03-27 16:59:13 +00:00
e9e684f67d Use safer identity args for dfx 2024-07-18 15:03:39 +00:00
901b4bab5e Disable Delayed Job scheduler and Telegram bots 2024-06-24 09:52:17 +00:00
87bb7bb12f Remove index sums 2024-06-03 23:09:16 +00:00
7c828d9799 Fix icpswap pool index parser 2024-05-22 05:57:20 +00:00
00dcf1c6e5 Require login to add tokens 2024-04-20 02:42:23 +00:00
3525a35c36 Add swipe delete global doodads 2024-03-26 15:09:03 +00:00
bf118277f3 Update metapurse policies for private 2024-03-25 17:57:17 +00:00
74403c0ee2 Add tendy to default metapurse data 2024-03-25 15:27:47 +00:00
afe858ade9 Add private metapurse for users 2024-03-25 14:59:01 +00:00
4ae78edc49 Allow anon controlled metapurses 2024-03-25 13:59:35 +00:00
49883bcdbf Add default data values for new MetaPurse 2024-03-25 13:42:02 +00:00
3f3cee4df8 Add data view to metapurses 2024-03-25 13:26:28 +00:00
042c07f026 Adds ICP price support from binance for MetaPurse 2024-03-25 12:54:43 +00:00
75cfd7c4c0 Show price in metapurse 2024-03-14 04:28:17 +00:00
0c75a358fd Canister feature admins only 2024-03-11 02:47:33 +00:00
0cb2fb1dce UI match permissions 2024-03-10 23:47:59 +00:00
d68b1f8025 Add placeholder text. Simple rescues 2024-03-10 23:38:10 +00:00
12193503c2 Fix Metapurse total. Use number with delimiter 2024-03-10 13:54:47 +00:00
331389d8eb Try rescue broken metapurse 2024-03-10 13:46:34 +00:00
80c0c5d882 Add Metapurse total value 2024-03-10 13:45:58 +00:00
0639740344 Disable devise recoverable user email recovery 2024-03-10 13:13:32 +00:00
3719c7acf9 Add Metapurse 2024-03-10 13:08:14 +00:00
92b65a9101 Add token table association 2024-03-08 04:36:08 +00:00
448fa1a0b3 Add seed tokens 2024-02-08 16:57:34 +00:00
977214d102 Add refresh method to Token model 2024-02-08 16:57:27 +00:00
d720367521 Improve post delete style 2024-02-08 15:56:59 +00:00
f4148602a3 Update dev port 2024-02-08 15:54:12 +00:00
c386d5b271 Bug fix for when transfer_fee nil 2023-12-21 15:19:46 +00:00
94deb14d7e Limit token launch policy 2023-12-14 18:28:40 +00:00
ddf50b8266 Add start to Token creation feature 2023-12-09 05:27:08 +00:00
015e6dc520 Bugfix dip20 logo fetch 2023-12-08 11:07:21 +00:00
50b2d3c666 Add dip20 holder count and improve token show style 2023-12-08 10:48:09 +00:00
a6ddfcac24 Improve style of seats show display name above sit button 2023-12-06 15:23:23 +00:00
1faee1d530 Enable tables and seats 2023-12-06 13:03:36 +00:00
cb38b5ad8a Update capistrano puma 2023-12-06 12:53:53 +00:00
3725b7a476 Add todo push notifications 2023-12-06 08:48:49 +00:00
1f7ea47d1f Improve room index headline style 2023-12-05 10:59:18 +00:00
1e2d55e02e Pundit authorization sitewide 2023-12-05 10:55:29 +00:00
5dfcab4538 Update to puma 6 2023-12-04 20:50:51 +00:00
14a5fb5a10 Remove uglifier 2023-12-04 19:17:41 +00:00
7c12582387 Config uglifier 2023-12-04 19:09:04 +00:00
b8f7e56aa9 Config uglifier 2023-12-04 19:02:45 +00:00
d7b0d832bd Update puma gem 2023-12-04 17:30:57 +00:00
37fd707b24 Remove prodcution puma config to use default 2023-12-04 16:59:49 +00:00
7410fb8f03 Add 1 puma worker 2023-12-04 16:36:50 +00:00
d1f1fbbfc2 Add production puma config to repo 2023-12-04 16:21:56 +00:00
8eaeb04afa Update config for Rails 7 2023-12-04 16:00:28 +00:00
d7ed683dbe Improve Send Message button text 2023-12-04 12:44:12 +00:00
2d5f08fc49 Upgrade to ruby 3.2.2 2023-12-04 12:42:40 +00:00
1df60730f3 Bundle update 2023-12-04 12:06:30 +00:00
1962224aae Trying rails 6.1 config 2023-12-04 12:05:31 +00:00
dae38f52d0 Remove old uri version from gemfile 2023-12-04 12:02:53 +00:00
fadc9b230b Try old config setting for bugfix 2023-12-04 11:59:25 +00:00
a3fb1a22fc Add net-http gem for bugfix 2023-12-04 11:52:11 +00:00
76d392998e Upgrade config for Rails 7 2023-12-04 10:33:27 +00:00
9388c87477 Refine permissions and style 2023-12-04 10:10:55 +00:00
a59ab6cf03 Add Messages to Rooms 2023-12-04 09:37:57 +00:00
c583ee7f32 Add Chat Rooms with Turbo 2023-12-04 08:27:21 +00:00
6480644923 Upgrade to rails 7 2023-12-03 16:22:44 +00:00
eeced4eccb Rename Rooms to VideoRooms 2023-12-03 16:02:27 +00:00
e18cd8c76d Add Command scaffold and bot join table 2023-12-03 13:16:27 +00:00
363986d4fd Add TelegramWallet to bots 2023-12-02 16:32:39 +00:00
dd9872bd4a Add basic Telegram ICP wallet 2023-12-01 18:59:50 +00:00
499e46a468 Fix deprecated Pundit import syntax 2023-12-01 18:09:09 +00:00
58da926c87 Add telegram subscriber ids to Bots 2023-11-29 18:08:16 +00:00
de3cffbc9e Add gem capistrano3-delayed-job 2023-11-29 13:39:08 +00:00
44f75490a0 Add ActiveJob to start telegram bots 2023-11-29 13:27:03 +00:00
11077b1dc4 Add bots scaffold 2023-11-28 12:04:44 +00:00
e920a8feb9 Style improve nav spacing 2023-11-26 11:32:29 +00:00
bbb152fa5d Add micropost form to project show view 2023-11-26 10:09:55 +00:00
e5ad663e50 dev env title 2023-11-24 04:18:52 +00:00
60318bdbf5 Remove padding from headline 2023-11-24 04:12:22 +00:00
1cfc23a683 Contain own posts 2023-11-24 04:11:43 +00:00
f9ad8257f2 Add padding to contain 2023-11-24 04:10:01 +00:00
067af6f877 Anon user name 2023-11-23 14:49:46 +00:00
28ed4c1a86 Improve nav wallet style 2023-11-22 12:45:48 +00:00
de5961e602 Bugfix feed error 2023-11-22 12:38:20 +00:00
cc102a5e2b Bugfix global doodad footer template rendering 2023-11-22 12:24:45 +00:00
0114233f59 Add global property to Doodads 2023-11-22 12:11:12 +00:00
24e346ce60 Use polymorphic relationships for followable 2023-11-21 17:19:33 +00:00
e13ba15989 Improve feed 2023-11-21 14:59:40 +00:00
3418d9b7d1 Move files for bugfix 2023-11-21 12:46:14 +00:00
ba7aa67f07 Little style upgrade 2023-11-21 12:03:52 +00:00
3368617fb3 Add microposts to projects 2023-11-21 11:57:29 +00:00
768f89eecf Improve public home routes 2023-11-21 09:32:24 +00:00
f3739754b5 Style microposts 2023-11-21 09:26:09 +00:00
40438b4ea4 Improve style and routes 2023-11-20 15:40:51 +00:00
cf22312f2d Include followed profile posts in feed 2023-11-20 15:40:22 +00:00
3a18d741c2 Quickfix micropost feed and policy 2023-11-15 16:23:23 +00:00
3ba380e63b Fix unauthenticated route 2023-11-15 16:16:11 +00:00
669df703aa Make microposts polymorphic for profiles and users 2023-11-15 16:11:32 +00:00
e8d66e5243 Add post feed 2023-11-15 13:05:07 +00:00
e999470b72 Add microposts 2023-11-15 12:30:47 +00:00
e8599242ee Exploratory dev custom host. Prep reintro of thirteen tien len 2023-11-14 15:39:55 +00:00
d3481526a2 Use Anton font 2023-11-14 15:19:03 +00:00
65e68b3555 Improve profile style 2023-11-12 12:05:04 +00:00
35fbf649fe Improve token index style 2023-11-12 07:37:09 +00:00
2936cb33e1 Improve token index style 2023-11-12 06:21:52 +00:00
4bd3fdb361 Bugfix doodad user owner now optional 2023-11-12 06:10:56 +00:00
9879c8d239 Fix home page doodad overflow 2023-11-12 05:58:37 +00:00
a155b83a1b Add follow / unfollow button 2023-11-11 17:32:29 +00:00
6ab972ed38 Save data as float not int 2023-11-11 16:59:47 +00:00
4ff1dcf179 Improved display format for transfer fee 2023-11-11 16:38:48 +00:00
0319932f28 Improve ux link token logo to token show page 2023-11-11 16:29:08 +00:00
9f48f3aaa9 Smaller Token index font 2023-11-11 16:27:24 +00:00
9b20545578 Fix token logo url parser 2023-11-11 16:21:32 +00:00
6f24e84a25 Fix token transfer fee parse 2023-11-11 16:08:36 +00:00
3e589b4a26 Improve token logo widths 2023-11-11 16:07:43 +00:00
0dc4fc1121 Improve token index style 2023-11-11 15:58:14 +00:00
138d6050db Refresh token upon creation, allow delete 2023-11-11 15:06:47 +00:00
3bf5a82e86 Add basic icrc1 standard token parsing 2023-11-11 15:00:17 +00:00
5cdc00206c Add basic token canister parsing 2023-11-11 14:18:38 +00:00
a71010bf9f Add basics of Follower feature 2023-11-11 11:34:52 +00:00
fd0c70f217 Improve style make the text pop 2023-11-11 10:28:45 +00:00
19f416e9b7 Improve style 2023-11-09 17:54:40 +00:00
049149fd28 Improve style 2023-11-08 17:56:30 +00:00
afcadd2a26 Improve profile style 2023-11-08 17:38:38 +00:00
22bcbb5961 Fix long wallet id breaking mobile style 2023-11-08 16:17:06 +00:00
a430b41c8a Add DSCVR logo to social links 2023-11-08 13:57:44 +00:00
5495f38ae2 Social links formatting and style 2023-11-08 13:24:56 +00:00
8d89ff9cc0 Style profile show 2023-11-08 07:19:12 +00:00
adee6dcfd6 Style social links 2023-11-08 06:50:08 +00:00
9836aab757 Style profile headline 2023-11-08 06:29:31 +00:00
d04ff35533 Add icons to social links 2023-11-08 06:20:58 +00:00
5a4f314aab Add social links to profiles 2023-11-07 16:50:08 +00:00
a8fea8314f Style profile index 2023-11-07 04:09:00 +00:00
a7f01374fd Add user profiles 2023-11-06 17:21:23 +00:00
5f0658b750 Create basic User index show 2023-11-06 05:21:19 +00:00
02bd25b724 Improve textarea style 2023-10-29 11:20:56 +00:00
2b62269638 Fix token auth vs policy bug 2023-10-27 07:15:29 +00:00
c66ba3caac Allow public new doodad 2023-10-27 06:46:24 +00:00
32013a4e51 Rename Home to Public 2023-10-27 06:17:22 +00:00
cd83e39d64 Allow function in production 2023-10-27 06:10:31 +00:00
eb0a131403 Add token links in footer 2023-10-27 06:00:16 +00:00
39d1a5d6f9 Hide Add Canister button 2023-10-27 04:59:08 +00:00
0105134a7f Add Token scaffold 2023-10-27 04:50:02 +00:00
bf0e558bdd Improve style 2023-10-27 04:47:29 +00:00
bdf63fbbd9 Merge branch 'add-peetreon-projects' 2023-10-26 04:45:06 +00:00
2fc6245a50 Add project scaffold 2023-10-26 01:34:10 +00:00
dccc356561 Add project scaffold 2023-10-26 01:18:42 +00:00
2d0b3205d9 Add turbo frame for wallet balance 2023-10-25 02:00:34 +00:00
929c98bb14 Add webrtc chat 2023-10-23 06:58:18 +00:00
43a71faddf Upgrade to Rails 6 2023-10-23 01:46:50 +00:00
79b3b21aba Enable private doodads 2023-10-14 23:58:44 +00:00
c661d85727 Fix icy pepe eyecandy replace svg with png 2023-10-11 21:49:50 +00:00
f098c7b529 Hide wallet balance because too slow 2023-10-10 17:07:43 +00:00
a96ed295e4 Add eth balance to navigation wallet 2023-09-29 18:08:59 +00:00
0d3d2ed5b0 Add doodads 2023-09-29 17:59:13 +00:00
59fb2ab3e6 Rebrand to My Tendy Zone 2023-09-24 14:10:37 +00:00
145b63551d Fix typo 2023-09-24 13:43:22 +00:00
28c41a0c6b Update Gemfile.lock 2023-09-24 09:53:07 +00:00
3fb775fa35 Improve UI eyecandy rebrand to My Tendy Zone 2023-09-24 09:50:53 +00:00
cd6914198b Disable turbolinks 2023-09-24 09:50:24 +00:00
a71e4523d1 Add Canister scaffold 2023-09-24 09:49:42 +00:00
f621b90bd9 Add csrf header 2023-09-18 19:03:13 +00:00
184f26718b Fix doctype html 2023-09-18 18:08:24 +00:00
2fc656c053 Disable csrf to debug 2023-09-18 18:01:45 +00:00
47d63306ba Add redis gem 2023-09-18 17:53:08 +00:00
824795f620 Add domain to action cable allow list 2023-09-18 17:19:59 +00:00
6063b3e083 Fix videocall react cable 2023-09-18 15:37:33 +00:00
46fa3c712d Custom home page per domain 2023-09-17 17:53:14 +00:00
d7ed50c5a4 Fix react videochat component 2023-09-17 17:23:03 +00:00
b378f2a93d Update todo 2023-08-11 14:13:42 +00:00
cf45d8c38c Troubleshooting video chat component 2023-08-11 14:06:43 +00:00
108d5882a5 Update component name from App to VideoCall 2023-08-11 13:30:11 +00:00
c568d35d47 Update uglifier config 2023-08-11 13:27:14 +00:00
18d386a337 Update video chat code 2023-08-11 13:24:12 +00:00
c37157781f Add video chat 2023-08-11 12:45:59 +00:00
327028f3a3 Add source for video chat feature 2023-08-11 11:50:39 +00:00
f064add019 Reenable icypee nft logo eyecandy 2023-07-27 06:32:31 +00:00
48356ecd3b Pay winner ICYPEES rewards 2023-07-26 00:38:01 +00:00
9445656565 Hide soft token 2023-07-20 18:46:01 +00:00
b63246e6f6 Update deploy config 2023-07-20 18:34:44 +00:00
e2e1741a1c Show soft token in seat 2023-07-20 18:28:49 +00:00
924e514ad2 Remove hotfix to make admin 2023-07-20 18:18:42 +00:00
799b8e4ae6 Hotfix to make admin 2023-07-20 18:17:13 +00:00
3c24b0212a Hotfix to make admin 2023-07-20 18:15:28 +00:00
60435e06a9 Hotfix to make admin 2023-07-20 18:09:28 +00:00
d2eb76b855 Add wallet principal to user and player 2023-07-09 13:39:39 +00:00
b7576482c9 Landing page eyecandy improve 2023-07-08 08:57:05 +00:00
0db111a43d Add music video 2023-05-10 15:25:10 +00:00
b806737181 Add Icy Pepe NFT svg to eyecandy 2023-05-10 14:23:37 +00:00
0620472638 Add private urls to tables 2023-05-10 14:15:43 +00:00
b1c6ef71ed Remove skyspaces frame 2023-05-06 14:02:44 +00:00
4eae32da35 Add skyspaces frame 2023-05-05 06:44:36 +00:00
0a017b6197 Adds GONGO to home screen eyecandy 2023-05-02 11:51:01 +00:00
b1640e25ce Improve home page eyecandy 2023-04-30 12:29:35 +00:00
d8cde29c81 Add livereload to guard 2023-04-30 10:13:54 +00:00
1dbd9c887a Increase size of floating coin eyecandy 2023-04-30 06:53:22 +00:00
d9645d990c Add eyecandy bouncing coins 2023-04-29 15:24:12 +00:00
8e2cbb6146 Improve style of telegram link 2023-04-29 13:24:20 +00:00
468268c049 Add google font Anton similar to Impact 2023-04-29 12:43:54 +00:00
c684832726 Improve style 2023-04-29 12:33:37 +00:00
163f681fa1 Add telegram link 2023-04-29 11:08:36 +00:00
950f487a9c Add bort policy 2023-04-28 18:12:20 +00:00
d0aef1f0fb Hide user email domain 2023-04-28 18:12:09 +00:00
ac4285ac15 Add pundit authorization policies 2023-04-28 17:59:23 +00:00
986664ca82 Improve player inventory UI 2023-04-28 10:22:57 +00:00
19a450b1fe Ignore vim undo files 2023-04-28 10:22:27 +00:00
301830323f Update deploy config 2023-04-28 10:21:57 +00:00
d7ceb08d53 upgrade ruby 2023-04-03 14:59:55 +00:00
63a9cf946b Update ruby version 2023-03-25 16:07:26 +00:00
feba35eb43 Upgrade ruby 2022-05-24 11:26:36 -07:00
ae03f0720f Suited run spec 2022-05-20 23:12:55 -07:00
af4e97e102 Fix tests for new seat order 2021-12-18 23:28:11 -08:00
54eccc469a Remove sleep deprecated race condition workaround 2021-12-18 23:06:10 -08:00
2d8972a9cd Add instructions for dev env setup 2021-12-10 07:18:29 -08:00
eb21f11bcb Disable react 2021-12-06 01:42:39 -08:00
6ccbc22cb2 Add qr code to table 2021-11-27 00:21:55 -08:00
47939d6590 Add ideas for new tests 2021-11-21 02:08:29 -08:00
5563194cac Disable confirmation dialogs 2021-11-21 02:08:09 -08:00
c237a03316 Enable ajax loads 2021-11-20 07:46:32 -08:00
86ca66d02f Add sloppy ajax loading of game plays 2021-11-20 04:07:58 -08:00
89cd4d9795 Fix play order 2021-11-20 04:07:25 -08:00
01e4bbcf1e Fix Play Now button 2021-11-20 04:06:53 -08:00
570f5ee176 Fix display if player to beat is removed 2021-11-20 03:04:17 -08:00
0bfa0cd003 Merge pull request 'Fix winner check' (#1) from fix-winner-check into master
Reviewed-on: #1
2021-11-20 02:31:40 -08:00
dd94041ead Fix winner check 2021-11-20 01:48:58 -08:00
336ba03e13 Add auto play for bots 2021-11-20 00:09:01 -08:00
adb8d2fa92 Add seat management fix new game button 2021-11-17 07:56:39 -08:00
bdce615cac Change selected card style 2021-11-17 07:54:43 -08:00
4d81e9e076 Update default secret values 2021-11-16 06:53:56 -08:00
35552c1e1f Disabled control buttons when not in control 2021-11-15 18:54:38 -08:00
df66a535d8 Add about page with attributions 2021-11-13 17:29:01 -08:00
d728b2b85d Update git repo url 2021-11-13 17:28:22 -08:00
436b227600 Update deploy config 2021-11-13 02:29:34 -08:00
90c2f3172d Update deploy config 2021-11-13 01:26:53 -08:00
2a088661a1 Create button to remove bots 2021-11-10 22:14:43 -08:00
72a26675b5 Method must return boolean, not nil 2021-11-10 21:36:11 -08:00
bd76b33038 Add Bot button respects seat occupied status 2021-11-10 21:24:15 -08:00
3ee699aa4d Add more tests for Bots 2021-11-08 22:56:53 -08:00
27af043720 Silence deprecation warnings because factory_girl 2021-11-08 22:13:41 -08:00
ab42853cc1 Avoid js driver 2021-11-08 21:49:31 -08:00
ef1704d24c Adds Bot button and start of Bot Players 2021-11-07 21:48:48 -08:00
cbcd4caaea Use spring in test env 2021-11-07 21:47:37 -08:00
a056762208 Use spring gem to speed up dev testing 2021-11-06 23:09:16 -07:00
1627be37ce Fix failing tests 2021-11-05 22:37:14 -07:00
041f7c6163 Test click confirm 2021-11-05 22:00:26 -07:00
7c77ee7688 Use case insensitive test for devise sessions 2021-11-05 21:47:02 -07:00
726fab89aa Fix failing tests 2021-11-05 21:26:14 -07:00
a2e20659ac Install capybara-screenshot gem 2021-11-05 21:02:11 -07:00
37fa81aa0a Table must be created before game for test setup 2021-11-04 22:56:09 -07:00
16c4ca936d Fix test navigation 2021-11-03 06:41:15 -07:00
d305d256d1 Dirty fix race condition 2021-11-03 01:07:09 -07:00
65b7c90722 Fix test game path 2021-11-02 20:27:29 -07:00
dc58e28520 Fix card labels 2021-11-02 19:47:51 -07:00
b920410af6 Install ci_reporter gem for Jenkins 2021-10-17 22:03:46 -07:00
3d3bd2d70e Fix tests 2021-09-19 00:26:45 -07:00
fad9c4534a Visit table path instead of game path 2021-09-19 00:24:45 -07:00
b2d13e5856 Move card data to checkbox 2021-09-19 00:21:28 -07:00
05cdf854b7 Config dev email 2021-09-19 00:20:52 -07:00
e8bd50aacb Test helper find card by data 2021-09-19 00:19:53 -07:00
caab453d64 Fix game helper setup include a table 2021-09-19 00:15:09 -07:00
172b682389 Improve selected card UI 2021-09-19 00:13:58 -07:00
e8417c23f7 Capybara test requires visible checkbox 2021-09-18 23:44:02 -07:00
d9fc82d62b Mark test as pending 2021-07-24 04:53:54 -07:00
61cbb753aa Fix syntax errors 2021-07-24 02:15:33 -07:00
398a811810 Fix game tests 2021-07-16 23:24:42 -07:00
6b720d83c9 Mark test as pending 2021-07-16 21:27:42 -07:00
5e63580be8 Fix player count game validation 2021-07-08 23:47:37 -07:00
4ebe60d104 Bugfix spec test 2021-07-08 02:49:57 -07:00
8b5ebc7f7e Bugfix spec test 2021-07-08 01:33:16 -07:00
a13dafc3c5 Update specs 2021-07-07 23:14:13 -07:00
1d7a46f764 Add webdrivers and update gems 2021-07-07 23:13:33 -07:00
0e825aca15 Update syntax of config 2021-07-07 23:02:39 -07:00
4503d117d6 Add card data attribute to inventory cards 2021-07-07 23:01:09 -07:00
aef7f19d6d Fix link route name 2021-07-07 23:00:21 -07:00
b6faf01c06 Fix nil argument bug 2021-07-07 22:42:43 -07:00
23d8b5a1e9 Move to new domain 2021-02-05 05:47:35 -08:00
51cb6b4d56 Use sub folder in production 2020-08-17 00:33:15 -07:00
c49316e348 Use sub folder in production 2020-08-17 00:10:16 -07:00
f5f4845ac2 Update git repo url 2020-08-17 00:05:45 -07:00
3c2b1f4990 Update env to system wide rbenv 2020-08-17 00:04:37 -07:00
99ac2d4f13 Use sub folder in production 2020-08-16 23:58:22 -07:00
e0766fb680 Update gems 2019-11-10 01:52:13 -08:00
59bae293d6 Use image asset tag for cards 2019-11-06 15:10:16 -08:00
cc2ccaed31 Serve static in production 2019-11-06 14:49:39 -08:00
4ba180197f Add tutorial link to home screen 2019-11-06 04:53:17 -08:00
e4f3e46ac6 Redirect to ssl https 2019-11-05 23:44:09 -08:00
7d94762f75 Update devise deprecated code 2019-11-05 23:30:25 -08:00
1f6fb1bad4 Remove upmin-admin gem 2019-11-05 23:03:36 -08:00
99b16f05e2 Use player display_name 2019-11-04 05:06:38 -08:00
a275ed100c Autoload game updates if not taking turn 2019-11-04 05:06:03 -08:00
c14e35bb50 Fix New Game button 2019-11-04 03:54:06 -08:00
7fb829a318 before filter debug 2019-10-29 07:24:43 -07:00
674585bfdc before filter debug 2019-10-29 07:23:37 -07:00
2c4913054f Config deploy for production 2019-10-29 07:14:22 -07:00
43e2ef9ed3 Config deploy for production 2019-10-29 07:07:38 -07:00
7efb52f7c1 Config deploy for production 2019-10-29 07:04:50 -07:00
4beb237a48 Config deploy for production 2019-10-29 07:03:04 -07:00
ce988f54af Config deploy for production 2019-10-29 06:59:02 -07:00
ebf42aa26a Config deploy for production 2019-10-29 06:47:52 -07:00
7c1390ed3c Config deploy for production 2019-10-29 06:43:22 -07:00
f847ca02b9 Updat bin stub 2019-10-29 06:39:36 -07:00
5ca1b68f90 Config deploy for production 2019-10-29 06:32:21 -07:00
f39687b54e Update migrations 2019-10-29 06:12:08 -07:00
1fb3cc5a5c Config deploy for production 2019-10-29 05:33:55 -07:00
191182b80c Config deploy for production 2019-10-29 03:18:24 -07:00
327e50b197 Fix player count in table index, adds user_count to table 2019-10-29 03:10:40 -07:00
5453be7d2d Start adding New Game button to table 2019-10-28 07:08:38 -07:00
12ae163ecd Disable rspec 2019-10-28 05:08:51 -07:00
9416387fe7 Add double run bombs. Logic still incomplete. 2019-10-27 01:34:52 -07:00
19c64bcd84 Add card backs for other players inventory 2019-10-27 00:43:47 -07:00
c64407d0f8 Improve card style 2019-10-27 00:42:52 -07:00
f65a7db32a Add style fir middle player inventory 2019-10-27 00:00:13 -07:00
c6ad426ea2 Fix turn order 2019-10-26 06:17:55 -07:00
6b1179a833 Fix active player id list 2019-10-26 05:40:59 -07:00
d736810cfe Add winner message 2019-10-26 05:31:12 -07:00
f00a111e5e Imorove turn logic regress new end of game bugs 2019-10-26 05:21:20 -07:00
5e3cd7b8ce Improve style 2019-10-26 05:20:15 -07:00
175bb04d31 Disable spring 2019-10-26 04:31:02 -07:00
2702983318 Clear Play To Beat when play is passed by all other players 2019-10-26 04:28:19 -07:00
3c12ce661b Improve style of play to beat 2019-10-26 04:24:34 -07:00
25499b8355 Fix logic for next players turn 2019-10-26 02:18:39 -07:00
c291ed4b66 Improve style of user selected cards 2019-10-26 01:54:09 -07:00
43be6e687a Improve style of player taking turn 2019-10-26 01:52:52 -07:00
9927ca5934 Add visual for player taking turn 2019-10-26 01:37:54 -07:00
ee981552b6 Add play to beat image ui 2019-10-26 01:36:58 -07:00
02cb5e9a65 Add user count validation to start game 2019-10-26 00:41:32 -07:00
f89a62a324 Update gems 2019-10-25 23:29:04 -07:00
51e0f1ad62 Lock sprockets version to avoid config change 2019-10-25 23:28:30 -07:00
62a233d160 Add win count column to user 2019-10-24 19:52:03 -07:00
b5174c1c7f Add confirm alert to pass or stand from seat 2019-10-24 19:51:28 -07:00
bf8549e9a7 Add seats 3 and 4 to tablé 2019-10-24 19:45:33 -07:00
a78538a77b Fix sit stanđ seat player logic 2019-10-24 19:43:57 -07:00
8bcb4c759a Fix bug for player display_name without user 2019-10-24 19:40:04 -07:00
82b26de7aa Add removal of soft_user token 2019-10-24 19:38:28 -07:00
452115a21b Remove unused code 2019-10-24 17:15:59 -07:00
860cc648c6 Fix missing record error with find_by 2019-10-24 17:15:04 -07:00
de11d5e87a Find first empty seat 2019-10-24 17:03:53 -07:00
cda8fc178f Improve player hand style 2019-10-24 17:02:41 -07:00
88a8dbe6a8 Add jquery reloading of table. Fix Play Now 2019-10-21 05:52:44 -07:00
97568ad303 Toying with Play Now 2019-10-20 21:59:40 -07:00
ecda1b8705 Auto refresh unless my turn 2019-10-20 21:57:26 -07:00
bcf28940c4 Toying with stand from active game 2019-10-20 21:56:06 -07:00
72726117cd Add play hand and pass function. 2 player game capable 2019-10-20 18:20:39 -07:00
918fd8f81e Add style for player hand 2019-10-20 17:26:52 -07:00
47cd880041 Adds top seat, player, controls 2019-10-20 16:55:12 -07:00
aab6008279 Adds top seat, player, controls 2019-10-20 05:06:22 -07:00
7183d91d7c Rewrite without react. Can sit stand at a table 2019-10-19 00:38:46 -07:00
7ff24c0266 New dev url 2019-10-19 00:37:07 -07:00
b37d8bec33 Hide tutorial button 2019-10-18 21:12:03 -07:00
fa061de65d Update capybara 2019-10-02 00:24:01 -07:00
21 changed files with 347 additions and 398 deletions

View File

@ -1 +1 @@
3.2.2
3.4.3

13
Gemfile
View File

@ -1,8 +1,8 @@
source 'https://rubygems.org'
ruby '3.2.2'
gem 'rails', '~> 7.0'
# TODO Upgrade sprockets
gem 'redis', '~> 4.0'
ruby '3.4.3'
gem 'rails', '~> 8.0'
gem 'redis' #, '~> 4.0'
# gem 'bootsnap'
gem 'sprockets' #, '~> 3.7'
gem 'sass-rails' #, '~> 4.0.3'
# gem 'uglifier' #, '>= 1.3.0'
@ -17,7 +17,7 @@ gem 'devise_invitable'
gem 'haml-rails'
gem 'high_voltage'
gem 'pg'
gem 'puma', '6'
gem 'puma' #, '6'
gem 'pundit'
gem 'simple_form'
gem 'dotenv-rails'
@ -61,7 +61,8 @@ group :development do
gem 'guard-ctags-bundler'
end
group :development, :test do
gem 'factory_girl_rails'
# todo upgrade to factory_bot
# gem 'factory_girl_rails'
gem 'faker'
gem 'pry-rails'
gem 'pry-rescue'

View File

@ -8,113 +8,111 @@ GIT
GEM
remote: https://rubygems.org/
specs:
actioncable (7.1.2)
actionpack (= 7.1.2)
activesupport (= 7.1.2)
actioncable (8.0.2)
actionpack (= 8.0.2)
activesupport (= 8.0.2)
nio4r (~> 2.0)
websocket-driver (>= 0.6.1)
zeitwerk (~> 2.6)
actionmailbox (7.1.2)
actionpack (= 7.1.2)
activejob (= 7.1.2)
activerecord (= 7.1.2)
activestorage (= 7.1.2)
activesupport (= 7.1.2)
mail (>= 2.7.1)
net-imap
net-pop
net-smtp
actionmailer (7.1.2)
actionpack (= 7.1.2)
actionview (= 7.1.2)
activejob (= 7.1.2)
activesupport (= 7.1.2)
mail (~> 2.5, >= 2.5.4)
net-imap
net-pop
net-smtp
actionmailbox (8.0.2)
actionpack (= 8.0.2)
activejob (= 8.0.2)
activerecord (= 8.0.2)
activestorage (= 8.0.2)
activesupport (= 8.0.2)
mail (>= 2.8.0)
actionmailer (8.0.2)
actionpack (= 8.0.2)
actionview (= 8.0.2)
activejob (= 8.0.2)
activesupport (= 8.0.2)
mail (>= 2.8.0)
rails-dom-testing (~> 2.2)
actionpack (7.1.2)
actionview (= 7.1.2)
activesupport (= 7.1.2)
actionpack (8.0.2)
actionview (= 8.0.2)
activesupport (= 8.0.2)
nokogiri (>= 1.8.5)
racc
rack (>= 2.2.4)
rack-session (>= 1.0.1)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.2)
rails-html-sanitizer (~> 1.6)
actiontext (7.1.2)
actionpack (= 7.1.2)
activerecord (= 7.1.2)
activestorage (= 7.1.2)
activesupport (= 7.1.2)
useragent (~> 0.16)
actiontext (8.0.2)
actionpack (= 8.0.2)
activerecord (= 8.0.2)
activestorage (= 8.0.2)
activesupport (= 8.0.2)
globalid (>= 0.6.0)
nokogiri (>= 1.8.5)
actionview (7.1.2)
activesupport (= 7.1.2)
actionview (8.0.2)
activesupport (= 8.0.2)
builder (~> 3.1)
erubi (~> 1.11)
rails-dom-testing (~> 2.2)
rails-html-sanitizer (~> 1.6)
activejob (7.1.2)
activesupport (= 7.1.2)
activejob (8.0.2)
activesupport (= 8.0.2)
globalid (>= 0.3.6)
activemodel (7.1.2)
activesupport (= 7.1.2)
activerecord (7.1.2)
activemodel (= 7.1.2)
activesupport (= 7.1.2)
activemodel (8.0.2)
activesupport (= 8.0.2)
activerecord (8.0.2)
activemodel (= 8.0.2)
activesupport (= 8.0.2)
timeout (>= 0.4.0)
activestorage (7.1.2)
actionpack (= 7.1.2)
activejob (= 7.1.2)
activerecord (= 7.1.2)
activesupport (= 7.1.2)
activestorage (8.0.2)
actionpack (= 8.0.2)
activejob (= 8.0.2)
activerecord (= 8.0.2)
activesupport (= 8.0.2)
marcel (~> 1.0)
activesupport (7.1.2)
activesupport (8.0.2)
base64
benchmark (>= 0.3)
bigdecimal
concurrent-ruby (~> 1.0, >= 1.0.2)
concurrent-ruby (~> 1.0, >= 1.3.1)
connection_pool (>= 2.2.5)
drb
i18n (>= 1.6, < 2)
logger (>= 1.4.2)
minitest (>= 5.1)
mutex_m
tzinfo (~> 2.0)
addressable (2.8.5)
public_suffix (>= 2.0.2, < 6.0)
airbrussh (1.5.0)
securerandom (>= 0.3)
tzinfo (~> 2.0, >= 2.0.5)
uri (>= 0.13.1)
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
airbrussh (1.5.3)
sshkit (>= 1.6.1, != 1.7.0)
ast (2.4.2)
ast (2.4.3)
babel-source (5.8.35)
babel-transpiler (0.7.0)
babel-source (>= 4.0, < 6)
execjs (~> 2.0)
base64 (0.2.0)
bcrypt (3.1.20)
bcrypt_pbkdf (1.1.0)
bcrypt_pbkdf (1.1.1)
benchmark (0.4.0)
better_errors (2.10.1)
erubi (>= 1.0.0)
rack (>= 0.9.0)
rouge (>= 1.0.0)
bigdecimal (3.1.4)
binding_of_caller (1.0.0)
debug_inspector (>= 0.0.1)
builder (3.2.4)
capistrano (3.18.0)
bigdecimal (3.1.9)
binding_of_caller (1.0.1)
debug_inspector (>= 1.2.0)
builder (3.3.0)
capistrano (3.19.2)
airbrussh (>= 1.0.0)
i18n
rake (>= 10.0.0)
sshkit (>= 1.9.0)
capistrano-bundler (2.1.0)
capistrano-bundler (2.1.1)
capistrano (~> 3.1)
capistrano-db-tasks (0.6)
capistrano (>= 3.0.0)
capistrano-postgresql (6.2.0)
capistrano (>= 3.0)
sshkit (>= 1.17.0)
capistrano-rails (1.6.3)
capistrano-rails (1.7.0)
capistrano (~> 3.1)
capistrano-bundler (>= 1.1, < 3)
capistrano-rails-console (2.3.0)
@ -123,15 +121,15 @@ GEM
capistrano-rbenv (2.2.0)
capistrano (~> 3.1)
sshkit (~> 1.3)
capistrano3-puma (6.0.0.beta.1)
capistrano3-puma (6.0.0)
capistrano (~> 3.7)
capistrano-bundler
puma (>= 5.1, < 7.0)
capybara (3.39.2)
capybara (3.40.0)
addressable
matrix
mini_mime (>= 0.1.3)
nokogiri (~> 1.8)
nokogiri (~> 1.11)
rack (>= 1.6.0)
rack-test (>= 0.6.3)
regexp_parser (>= 1.5, < 3.0)
@ -139,6 +137,8 @@ GEM
capybara-screenshot (1.0.26)
capybara (>= 1.0, < 4)
launchy
childprocess (5.1.0)
logger (~> 1.5)
ci_reporter (2.1.0)
builder (>= 2.1.2)
rexml
@ -153,61 +153,58 @@ GEM
coffee-script-source
execjs
coffee-script-source (1.12.2)
concurrent-ruby (1.2.2)
connection_pool (2.4.1)
concurrent-ruby (1.3.5)
connection_pool (2.5.1)
crass (1.0.6)
database_cleaner (2.0.2)
database_cleaner (2.1.0)
database_cleaner-active_record (>= 2, < 3)
database_cleaner-active_record (2.1.0)
database_cleaner-active_record (2.2.0)
activerecord (>= 5.a)
database_cleaner-core (~> 2.0.0)
database_cleaner-core (2.0.1)
date (3.3.4)
debug_inspector (1.1.0)
devise (4.9.3)
date (3.4.1)
debug_inspector (1.2.0)
devise (4.9.4)
bcrypt (~> 3.0)
orm_adapter (~> 0.1)
railties (>= 4.1.0)
responders
warden (~> 1.2.3)
devise_invitable (2.0.9)
devise_invitable (2.0.10)
actionmailer (>= 5.0)
devise (>= 4.6)
diff-lcs (1.5.0)
docile (1.4.0)
dotenv (2.8.1)
dotenv-rails (2.8.1)
dotenv (= 2.8.1)
railties (>= 3.2)
drb (2.2.0)
ruby2_keywords
diff-lcs (1.6.1)
docile (1.4.1)
dotenv (3.1.8)
dotenv-rails (3.1.8)
dotenv (= 3.1.8)
railties (>= 6.1)
drb (2.2.1)
ed25519 (1.3.0)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
erubi (1.12.0)
erubi (1.13.1)
erubis (2.7.0)
eventmachine (1.2.7)
execjs (2.9.1)
factory_girl (4.9.0)
activesupport (>= 3.0.0)
factory_girl_rails (4.9.0)
factory_girl (~> 4.9.0)
railties (>= 3.0.0)
faker (3.2.2)
execjs (2.10.0)
faker (3.5.1)
i18n (>= 1.8.11, < 2)
ffi (1.16.3)
ffi (1.17.2)
ffi (1.17.2-x86_64-linux-gnu)
formatador (1.1.0)
friendly_id (5.4.2)
activerecord (>= 4.0.0)
globalid (1.2.1)
activesupport (>= 6.1)
guard (2.18.1)
guard (2.19.1)
formatador (>= 0.2.4)
listen (>= 2.7, < 4.0)
logger (~> 1.6)
lumberjack (>= 1.0.12, < 2.0)
nenv (~> 0.1)
notiffany (~> 0.0)
ostruct (~> 0.6)
pry (>= 0.13.0)
shellany (~> 0.0)
thor (>= 0.18.1)
@ -231,7 +228,7 @@ GEM
guard (~> 2.1)
guard-compat (~> 1.1)
rspec (>= 2.99.0, < 4.0)
haml (6.2.3)
haml (6.3.0)
temple (>= 0.8.2)
thor
tilt
@ -240,7 +237,7 @@ GEM
activesupport (>= 5.1)
haml (>= 4.0.6)
railties (>= 5.1)
high_voltage (3.1.2)
high_voltage (4.0.0)
html2haml (2.3.0)
erubis (~> 2.7.0)
haml (>= 4.0)
@ -248,37 +245,42 @@ GEM
ruby_parser (~> 3.5)
http_parser.rb (0.8.0)
hub (1.12.4)
i18n (1.14.1)
i18n (1.14.7)
concurrent-ruby (~> 1.0)
importmap-rails (1.2.3)
importmap-rails (2.1.0)
actionpack (>= 6.0.0)
activesupport (>= 6.0.0)
railties (>= 6.0.0)
inline_svg (1.9.0)
inline_svg (1.10.0)
activesupport (>= 3.0)
nokogiri (>= 1.6)
interception (0.5)
io-console (0.6.0)
irb (1.10.0)
rdoc
reline (>= 0.3.8)
jbuilder (2.11.5)
io-console (0.8.0)
irb (1.15.2)
pp (>= 0.6.0)
rdoc (>= 4.0.0)
reline (>= 0.4.2)
jbuilder (2.13.0)
actionview (>= 5.0.0)
activesupport (>= 5.0.0)
jquery-rails (4.6.0)
rails-dom-testing (>= 1, < 3)
railties (>= 4.2.0)
thor (>= 0.14, < 2.0)
jquery-ui-rails (6.0.1)
jquery-ui-rails (7.0.0)
railties (>= 3.2.16)
json (2.7.0)
language_server-protocol (3.17.0.3)
launchy (2.5.2)
json (2.10.2)
language_server-protocol (3.17.0.4)
launchy (3.1.1)
addressable (~> 2.8)
listen (3.8.0)
childprocess (~> 5.0)
logger (~> 1.6)
lint_roller (1.1.0)
listen (3.9.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
loofah (2.22.0)
logger (1.7.0)
loofah (2.24.0)
crass (~> 1.0.2)
nokogiri (>= 1.12.0)
lumberjack (1.2.10)
@ -287,167 +289,178 @@ GEM
net-imap
net-pop
net-smtp
marcel (1.0.2)
marcel (1.0.4)
matrix (0.4.2)
method_source (1.0.0)
method_source (1.1.0)
mini_mime (1.1.5)
mini_portile2 (2.8.5)
minitest (5.20.0)
mini_portile2 (2.8.8)
minitest (5.25.5)
multi_json (1.15.0)
mutex_m (0.2.0)
nenv (0.3.0)
net-imap (0.4.7)
net-imap (0.5.7)
date
net-protocol
net-pop (0.1.2)
net-protocol
net-protocol (0.2.2)
timeout
net-scp (4.0.0)
net-scp (4.1.0)
net-ssh (>= 2.6.5, < 8.0.0)
net-smtp (0.4.0)
net-sftp (4.0.0)
net-ssh (>= 5.0.0, < 8.0.0)
net-smtp (0.5.1)
net-protocol
net-ssh (7.2.0)
nio4r (2.7.0)
nokogiri (1.15.5)
net-ssh (7.3.0)
nio4r (2.7.4)
nokogiri (1.18.8)
mini_portile2 (~> 2.8.2)
racc (~> 1.4)
nokogiri (1.15.5-x86_64-linux)
nokogiri (1.18.8-x86_64-linux-gnu)
racc (~> 1.4)
notiffany (0.1.3)
nenv (~> 0.1)
shellany (~> 0.0)
orm_adapter (0.5.0)
parallel (1.23.0)
parallel_tests (4.3.0)
ostruct (0.6.1)
parallel (1.27.0)
parallel_tests (5.1.0)
parallel
parser (3.2.2.4)
parser (3.3.8.0)
ast (~> 2.4.1)
racc
pg (1.5.4)
pry (0.14.2)
pg (1.5.9)
pp (0.6.2)
prettyprint
prettyprint (0.2.0)
prism (1.4.0)
pry (0.15.2)
coderay (~> 1.1)
method_source (~> 1.0)
pry-rails (0.3.9)
pry (>= 0.10.4)
pry-rescue (1.5.2)
pry-rails (0.3.11)
pry (>= 0.13.0)
pry-rescue (1.6.0)
interception (>= 0.5)
pry (>= 0.12.0)
psych (5.1.1.1)
psych (5.2.3)
date
stringio
public_suffix (5.0.4)
puma (6.0.0)
public_suffix (6.0.1)
puma (6.6.0)
nio4r (~> 2.0)
pundit (2.3.1)
pundit (2.5.0)
activesupport (>= 3.0.0)
racc (1.7.3)
rack (3.0.8)
rack-livereload (0.5.1)
rack
rack-session (2.0.0)
racc (1.8.1)
rack (3.1.13)
rack-livereload (0.6.1)
rack (>= 3.0, < 3.2)
rack-session (2.1.0)
base64 (>= 0.1.0)
rack (>= 3.0.0)
rack-test (2.1.0)
rack-test (2.2.0)
rack (>= 1.3)
rackup (2.1.0)
rackup (2.2.1)
rack (>= 3)
webrick (~> 1.8)
rails (7.1.2)
actioncable (= 7.1.2)
actionmailbox (= 7.1.2)
actionmailer (= 7.1.2)
actionpack (= 7.1.2)
actiontext (= 7.1.2)
actionview (= 7.1.2)
activejob (= 7.1.2)
activemodel (= 7.1.2)
activerecord (= 7.1.2)
activestorage (= 7.1.2)
activesupport (= 7.1.2)
rails (8.0.2)
actioncable (= 8.0.2)
actionmailbox (= 8.0.2)
actionmailer (= 8.0.2)
actionpack (= 8.0.2)
actiontext (= 8.0.2)
actionview (= 8.0.2)
activejob (= 8.0.2)
activemodel (= 8.0.2)
activerecord (= 8.0.2)
activestorage (= 8.0.2)
activesupport (= 8.0.2)
bundler (>= 1.15.0)
railties (= 7.1.2)
railties (= 8.0.2)
rails-dom-testing (2.2.0)
activesupport (>= 5.0.0)
minitest
nokogiri (>= 1.6)
rails-html-sanitizer (1.6.0)
rails-html-sanitizer (1.6.2)
loofah (~> 2.21)
nokogiri (~> 1.14)
nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
rails_layout (1.0.42)
railties (7.1.2)
actionpack (= 7.1.2)
activesupport (= 7.1.2)
irb
railties (8.0.2)
actionpack (= 8.0.2)
activesupport (= 8.0.2)
irb (~> 1.13)
rackup (>= 1.0.0)
rake (>= 12.2)
thor (~> 1.0, >= 1.2.2)
zeitwerk (~> 2.6)
rainbow (3.1.1)
rake (13.1.0)
rake (13.2.1)
rb-fchange (0.0.6)
ffi
rb-fsevent (0.11.2)
rb-inotify (0.10.1)
rb-inotify (0.11.1)
ffi (~> 1.0)
rbnacl (3.4.0)
ffi
rbnacl-libsodium (1.0.16)
rbnacl (>= 3.0.1)
rdoc (6.6.0)
rdoc (6.13.1)
psych (>= 4.0.0)
react-rails (3.1.1)
react-rails (3.2.1)
babel-transpiler (>= 0.7.0)
connection_pool
execjs
railties (>= 3.2)
tilt
redis (4.8.1)
regexp_parser (2.8.3)
reline (0.4.1)
redis (5.4.0)
redis-client (>= 0.22.0)
redis-client (0.24.0)
connection_pool
regexp_parser (2.10.0)
reline (0.6.1)
io-console (~> 0.5)
responders (3.1.1)
actionpack (>= 5.2)
railties (>= 5.2)
rexml (3.2.6)
rouge (4.2.0)
rspec (3.12.0)
rspec-core (~> 3.12.0)
rspec-expectations (~> 3.12.0)
rspec-mocks (~> 3.12.0)
rspec-core (3.12.2)
rspec-support (~> 3.12.0)
rspec-expectations (3.12.3)
rexml (3.4.1)
rouge (4.5.1)
rspec (3.13.0)
rspec-core (~> 3.13.0)
rspec-expectations (~> 3.13.0)
rspec-mocks (~> 3.13.0)
rspec-core (3.13.3)
rspec-support (~> 3.13.0)
rspec-expectations (3.13.3)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.12.0)
rspec-mocks (3.12.6)
rspec-support (~> 3.13.0)
rspec-mocks (3.13.2)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.12.0)
rspec-rails (6.1.0)
actionpack (>= 6.1)
activesupport (>= 6.1)
railties (>= 6.1)
rspec-core (~> 3.12)
rspec-expectations (~> 3.12)
rspec-mocks (~> 3.12)
rspec-support (~> 3.12)
rspec-support (3.12.1)
rubocop (1.58.0)
rspec-support (~> 3.13.0)
rspec-rails (7.1.1)
actionpack (>= 7.0)
activesupport (>= 7.0)
railties (>= 7.0)
rspec-core (~> 3.13)
rspec-expectations (~> 3.13)
rspec-mocks (~> 3.13)
rspec-support (~> 3.13)
rspec-support (3.13.2)
rubocop (1.75.3)
json (~> 2.3)
language_server-protocol (>= 3.17.0)
language_server-protocol (~> 3.17.0.2)
lint_roller (~> 1.1.0)
parallel (~> 1.10)
parser (>= 3.2.2.4)
parser (>= 3.3.0.2)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml (>= 3.2.5, < 4.0)
rubocop-ast (>= 1.30.0, < 2.0)
regexp_parser (>= 2.9.3, < 3.0)
rubocop-ast (>= 1.44.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.30.0)
parser (>= 3.2.1.0)
unicode-display_width (>= 2.4.0, < 4.0)
rubocop-ast (1.44.1)
parser (>= 3.3.7.2)
prism (~> 1.4)
ruby-progressbar (1.13.0)
ruby2_keywords (0.0.5)
ruby_parser (3.20.3)
ruby_parser (3.21.1)
racc (~> 1.5)
sexp_processor (~> 4.16)
rubyzip (2.3.2)
rubyzip (2.4.1)
sass-rails (6.0.0)
sassc-rails (~> 2.1, >= 2.1.1)
sassc (2.4.0)
@ -460,65 +473,74 @@ GEM
tilt
sdoc (2.6.1)
rdoc (>= 5.0)
securerandom (0.4.1)
selenium-webdriver (4.10.0)
rexml (~> 3.2, >= 3.2.5)
rubyzip (>= 1.2.2, < 3.0)
websocket (~> 1.0)
sexp_processor (4.17.0)
sexp_processor (4.17.3)
shellany (0.0.1)
simple_form (5.3.0)
simple_form (5.3.1)
actionpack (>= 5.2)
activemodel (>= 5.2)
simplecov (0.22.0)
docile (~> 1.1)
simplecov-html (~> 0.11)
simplecov_json_formatter (~> 0.1)
simplecov-html (0.12.3)
simplecov-html (0.13.1)
simplecov_json_formatter (0.1.4)
spring (4.1.3)
spring (4.3.0)
spring-commands-rspec (1.0.4)
spring (>= 0.9.1)
sprockets (4.2.1)
sprockets (4.2.2)
concurrent-ruby (~> 1.0)
logger
rack (>= 2.2.4, < 4)
sprockets-rails (3.4.2)
actionpack (>= 5.2)
activesupport (>= 5.2)
sprockets-rails (3.5.2)
actionpack (>= 6.1)
activesupport (>= 6.1)
sprockets (>= 3.0.0)
sshkit (1.21.6)
sshkit (1.24.0)
base64
logger
net-scp (>= 1.1.2)
net-sftp (>= 2.1.2)
net-ssh (>= 2.8.0)
ostruct
sshkit-interactive (0.3.0)
sshkit (~> 1.12)
stimulus-rails (1.3.0)
stimulus-rails (1.3.4)
railties (>= 6.0.0)
stringio (3.1.0)
stringio (3.1.7)
temple (0.10.3)
thor (1.3.0)
tilt (2.3.0)
timeout (0.4.1)
turbo-rails (1.5.0)
actionpack (>= 6.0.0)
activejob (>= 6.0.0)
railties (>= 6.0.0)
thor (1.3.2)
tilt (2.6.0)
timeout (0.4.3)
turbo-rails (2.0.13)
actionpack (>= 7.1.0)
railties (>= 7.1.0)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
unicode-display_width (2.5.0)
unicode-display_width (3.1.4)
unicode-emoji (~> 4.0, >= 4.0.4)
unicode-emoji (4.0.4)
uri (1.0.3)
useragent (0.16.11)
warden (1.2.9)
rack (>= 2.0.9)
webdrivers (5.3.1)
nokogiri (~> 1.6)
rubyzip (>= 1.3.0)
selenium-webdriver (~> 4.0, < 4.11)
webrick (1.8.1)
websocket (1.2.10)
websocket-driver (0.7.6)
websocket (1.2.11)
websocket-driver (0.7.7)
base64
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.5)
will_paginate (4.0.0)
will_paginate (4.0.1)
xpath (3.2.0)
nokogiri (~> 1.8)
zeitwerk (2.6.12)
zeitwerk (2.7.2)
PLATFORMS
ruby
@ -546,7 +568,6 @@ DEPENDENCIES
devise_invitable
dotenv-rails
ed25519
factory_girl_rails
faker
friendly_id (~> 5.4.0)
guard-bundler
@ -569,10 +590,10 @@ DEPENDENCIES
pg
pry-rails
pry-rescue
puma (= 6)
puma
pundit
rack-livereload
rails (~> 7.0)
rails (~> 8.0)
rails_layout
rb-fchange
rb-fsevent
@ -580,7 +601,7 @@ DEPENDENCIES
rbnacl (~> 3.4)
rbnacl-libsodium
react-rails
redis (~> 4.0)
redis
rspec-rails
rubocop
sass-rails
@ -597,7 +618,7 @@ DEPENDENCIES
will_paginate
RUBY VERSION
ruby 3.2.2p53
ruby 3.4.3p32
BUNDLED WITH
2.4.22

View File

@ -1,13 +1,13 @@
# The game class
class Game < ActiveRecord::Base
belongs_to :table
belongs_to :table, optional: true
has_many :seats
has_many :players, dependent: :destroy
has_many :users, through: :players
has_many :player_cards, through: :players
has_many :plays, through: :players
belongs_to :play_to_beat
belongs_to :controlling_player, class_name: "Player", foreign_key: "controlling_player_id"
belongs_to :play_to_beat, optional: true
belongs_to :controlling_player, class_name: "Player", foreign_key: "controlling_player_id", optional: true
accepts_nested_attributes_for :players
#validates :title, presence: true
after_create :add_table
@ -177,7 +177,7 @@ class Game < ActiveRecord::Base
@inventory_counts.include? 0
end
private
# private
def add_table
self.table ||= Table.create current_game_id: self.id

View File

@ -1,7 +1,7 @@
# Associates users to games
class Player < ActiveRecord::Base
belongs_to :game
belongs_to :user
belongs_to :user, optional: true
has_many :player_cards
has_many :plays
@ -32,7 +32,7 @@ class Player < ActiveRecord::Base
def display_name
return user.email.split("@")[0] if self.user
return "BotPlayer" if self.is_bot?
return "BotPlayer #{self.id}" if self.is_bot?
return ("Guest" + self.soft_token)[0..9] if self.soft_token
return "Empty"
end

View File

@ -1,6 +1,6 @@
class PlayerCard < ActiveRecord::Base
belongs_to :player
belongs_to :play
belongs_to :play, optional: true
def to_s
# TODO: Shouldn't hard code face cards here

View File

@ -14,12 +14,12 @@ class Seat < ActiveRecord::Base
self.reload
if self.player == nil
# TODO: Decouple seat from game
# self.player_id = self.table.current_game.add_player_from_user(current_user).id
self.player_id = self.table.current_game.add_player_from_user(current_user).id
end
# self.player.user_id = current_user.id
# self.player.soft_token = current_user.soft_token
# self.player.save
self.player.user_id = current_user.id
self.player.soft_token = current_user.soft_token
self.player.save
self.user_id = current_user.id
self.user_soft_token = current_user.soft_token

View File

@ -6,7 +6,7 @@ class Table < ActiveRecord::Base
has_many :users, through: :seats
has_many :games
has_many :players, through: :games
belongs_to :token
# belongs_to :token
#TODO: Deprecated current_game_id from database.
# Instead calculate with self.current_game
#
@ -14,7 +14,7 @@ class Table < ActiveRecord::Base
#TODO: Should these be part of Game initialize instead of callback?
after_create :add_seats
# after_create :add_game
after_create :add_game # TODO decouple game from table
# Returns the newest joinable table or creates a new table if none are found
# scope :play_now, lambda { |user|
@ -36,6 +36,8 @@ class Table < ActiveRecord::Base
def add_game
self.games.create
# game = self.games.new
# game.
end
# private

View File

@ -1,5 +1,5 @@
class Token < ActiveRecord::Base
enum standard: [:dip20, :icrc1, :unknown]
enum :standard, [:dip20, :icrc1, :unknown]
validates :canister_id, uniqueness: true, allow_nil: true
before_create :refresh

View File

@ -1,5 +1,5 @@
class User < ActiveRecord::Base
enum role: [:user, :vip, :admin]
enum :role, [:user, :vip, :admin]
after_initialize :set_default_role, if: :new_record?
validates :email, presence: true, uniqueness: true
validates :soft_token, presence: true, uniqueness: true

View File

@ -15,11 +15,11 @@ class TablePolicy
end
def create?
@current_user.admin?
@current_user.admin? || true
end
def new?
@current_user.admin?
@current_user.admin? || true
end
def edit?
@ -36,7 +36,8 @@ class TablePolicy
end
def play_now?
@current_user.admin? || @current_user.email == "bort@13.24x7.hk"
return true
# @current_user.admin? || @current_user.email == "bort@13.24x7.hk"
end
def new_game?

View File

@ -1,37 +0,0 @@
<nav>
<ul>
<% if current_user.signed_in? %>
<li><%= link_to 'My Tendy Zone', root_path, class: "home-link", data: { turbo: false } %></li>
<% end %>
<li><%= link_to 'Public', '/public', data: { turbo: false } %></li>
<li><%= link_to 'Tokens', tokens_path %></li>
<li><%= link_to 'Profiles', profiles_path %></li>
<li><%= link_to 'Projects', projects_path %></li>
<li><%= link_to 'MetaPurse', metapurses_path %></li>
<% if policy(:canister).index? %>
<li><%= link_to 'Canisters', canisters_path %></li>
<% end %>
<li><%= link_to 'Doodads', doodads_path, data: { turbo: false } %></li>
<% if policy(:bot).index? %>
<li><%= link_to 'Bots', bots_path %></li>
<% end %>
<% if policy(:table).index? %>
<li><%= link_to 'Tables', tables_path %></li>
<% end %>
<% if policy(:room).index? %>
<li><%= link_to 'Chat', rooms_path %></li>
<% end %>
<% if current_user.signed_in? %>
<% if current_user.admin? %>
<li><%= link_to 'Users', users_path %></li>
<% end %>
<% end %>
<% if current_user.signed_in? %>
<li><%= link_to 'My account', edit_user_registration_path %></li>
<li><%= link_to 'Sign out', destroy_user_session_path, :method=>'delete' %></li>
<% else %>
<li><%= link_to 'Sign in', new_user_session_path %></li>
<li><%= link_to 'Sign up', new_user_registration_path %></li>
<% end %>
</ul>
</nav>

View File

@ -0,0 +1,28 @@
%nav
%ul
%li= link_to 'Home', root_path, class: "home-link", data: { turbo: false }
-# - if current_user.signed_in?
-# %li= link_to 'My Tendy Zone', root_path, class: "home-link", data: { turbo: false }
-# %li= link_to 'Public', '/public', data: { turbo: false }
-# %li= link_to 'Tokens', tokens_path
-# %li= link_to 'Profiles', profiles_path
-# %li= link_to 'Projects', projects_path
-# %li= link_to 'MetaPurse', metapurses_path
-# - if policy(:canister).index?
-# %li= link_to 'Canisters', canisters_path
-# %li= link_to 'Doodads', doodads_path, data: { turbo: false }
-# - if policy(:bot).index?
-# %li= link_to 'Bots', bots_path
- if policy(:table).index?
%li= link_to 'Tables', tables_path
-# - if policy(:room).index?
-# %li= link_to 'Chat', rooms_path
- if current_user.signed_in?
- if current_user.admin?
%li= link_to 'Users', users_path
- if current_user.signed_in?
%li= link_to 'My account', edit_user_registration_path
%li= link_to 'Sign out', destroy_user_session_path, :method=>'delete'
- else
%li= link_to 'Sign in', new_user_session_path
%li= link_to 'Sign up', new_user_registration_path

View File

@ -26,7 +26,7 @@
<header>
<%= render "layouts/navigation_links" %>
<%= render "layouts/navigation_wallet" %>
<%# <%= render "layouts/navigation_wallet" %1> %>
</header>
<%= render "layouts/flashmessages" %>
@ -35,9 +35,9 @@
<%= yield %>
</div>
<footer>
<%= render "layouts/footer" %>
</footer>
<%# <footer> %>
<%# <%= render "layouts/footer" %1> %>
<%# </footer> %>
</body>
</html>

View File

@ -5,15 +5,15 @@
None
- else
%div.hand-type= @game.play_to_beat.play.hand_type.capitalize
%span= @game.play_to_beat.play.to_s
-# - @game.play_to_beat.play.player_cards.each do |card|
= card.to_s
%div= @game.play_to_beat.play.try("player").try("display_name")
%ol#cards-to-beat
- @game.play_to_beat.play.player_cards.reverse.each_with_index do |card, index|
%li{style: "z-index: #{100 - index};"}
-# TODO: Don't hard code face cards here
%img{alt: card.rank + ' ' + card.suit,
src: "#{image_path('cards/png/' + (card.rank.gsub('J','jack').gsub('Q','queen').gsub('K','king').gsub('A','ace') + '_of_' + card.suit.downcase + 's.png').gsub('11','jack').gsub('12','queen').gsub('13','king').gsub('14','ace').gsub('15','2'))}" }
%div.hand-type= @game.play_to_beat.play.hand_type.capitalize
%span= @game.play_to_beat.play.to_s
-# - @game.play_to_beat.play.player_cards.each do |card|
= card.to_s
%div= @game.play_to_beat.play.try("player").try("display_name")
%ol#cards-to-beat
- @game.play_to_beat.play.player_cards.reverse.each_with_index do |card, index|
%li{style: "z-index: #{100 - index};"}
-# TODO: Don't hard code face cards here
%img{alt: card.rank + ' ' + card.suit,
src: "#{image_path('cards/png/' + (card.rank.gsub('J','jack').gsub('Q','queen').gsub('K','king').gsub('A','ace') + '_of_' + card.suit.downcase + 's.png').gsub('11','jack').gsub('12','queen').gsub('13','king').gsub('14','ace').gsub('15','2'))}" }

View File

@ -2,14 +2,15 @@
- @game = seat.game
.seat{class: "position-#{@seats.index(seat) + 1}"}
- if seat.user_soft_token
-# - if seat.user_soft_token
- if seat.player
-# = button_to remove_player_seat_path(seat), :data => { :confirm => 'Are you sure you want to remove this player?' } do
-# TODO: Remove Player button
-# = button_to remove_player_seat_path(seat) do
- "Remove Player"
.user{id: "user-#{seat.user_soft_token}", class: @game.try("controlling_player") == seat.player ? "taking-turn" : "",
data: {soft_token: seat.user_soft_token} }
.user-name= seat.user_soft_token[0..3]
.user-name= seat.player.display_name
-# .user-soft-token= seat.user.soft_token
-# TODO user principal
-# .user-principal= seat.user_soft_token[0..3]
@ -19,14 +20,14 @@
= seat.player.inventory.count
-# Show player controls if player is owned by current_user
- if seat.user.soft_token == current_user.soft_token
- if seat.player.soft_token == current_user.soft_token
= form_for(@game,
url: play_hand_game_path(@game),
method: "post",
name: "player_controls_" + seat.user_id.to_s,
id: "player_controls_" + seat.user_id.to_s) do |f|
name: "player_controls_" + seat.player_id.to_s,
id: "player_controls_" + seat.player_id.to_s) do |f|
%ul#inventory
-# - seat.player.inventory.each do |card|
- seat.player.inventory.each do |card|
%li
%label
= check_box_tag 'player_card_ids[]',
@ -34,7 +35,7 @@
false,
data: {value: card.id, card_name: card.rank.gsub('11','J') .gsub('12','Q') .gsub('13','K') .gsub('14','A') .gsub('15','2') + ' ' + card.suit}
-# %input{form: "player_controls_" + card.player_id.to_s,
%input{form: "player_controls_" + card.player_id.to_s,
type: "checkbox",
name: "player_card_ids[]",
data: {value: card.id, card_name: card.rank.gsub('11','J') .gsub('12','Q') .gsub('13','K') .gsub('14','A') .gsub('15','2') + ' ' + card.suit}}
@ -52,7 +53,7 @@
.seat-controls
- if seat.occupied?
- if seat.player.try("is_bot?")
-# = button_to remove_bot_seat_path(seat) do
= button_to remove_bot_seat_path(seat) do
- "- Bot"
- if seat.occupied_by? current_user
-# = button_to stand_seat_path(seat), :data => { :confirm => 'Are you sure you want to leave this seat?' } do
@ -66,6 +67,6 @@
- else
= button_to sit_seat_path(seat) do
- "Sit"
-# = button_to add_bot_seat_path(seat) do
= button_to add_bot_seat_path(seat) do
- "+ Bot"

View File

@ -17,7 +17,7 @@
-# - if @game.winner_player_id || @game.nil?
-# = button_to 'New Game', new_game_table_path(@table)
- if @game && !@game.startable?
- if (@game && !@game.startable?) || !@game
#table-controls
#newgame= button_to 'New Game', new_game_table_path(@table)

View File

@ -1,85 +1,12 @@
#home-headline.home-headline
- if request.base_url.match(/pin|my|fireside/)
%h1 Your own public tendy zone 🍗
- else
%h1 Web3 Social Gaming <br/>Crypto Rewards
- if @feed_items.any?
.contain
%h2 Post feed
= render 'shared/feed'
.contain
#doodads
%h2 Doodads
- if current_user.signed_in?
%p= link_to '+ New Doodad', new_doodad_path
= render @doodads
:javascript
function destroyDoodad(doodad_id) {
return fetch("/doodads/" + doodad_id, {
method: 'DELETE',
headers: {
"Content-Type": "application/json",
"Accept": "application/json"
}
})
.then(response => response)
};
// var s2 = Swiped.init({ query: '.bar li', list: true, left: 200, right: 200 });
var index_doodad_swiped = Swiped.init({ query: '#doodads .doodad',
list: true,
left: 200,
right: 200,
onOpen: function() {
var doodad_id = this.elem.className.split("-")[1];
destroyDoodad(doodad_id)
.then(results => console.log(results));
this.destroy(true)
}
});
-# #canisters
= render @canisters
- if current_user.signed_in?
= link_to '+ Add Existing Canister', new_canister_path
#home-headline
%h1 Thirteen <br/>Tien Len
#main-menu
-# - if policy(:table).play_now?
= link_to 'Play 13 Now', play_now_path
-# - else
Soon
-# = link_to 'Browse Tables', tables_path
-# = link_to 'Tutorial', tutorial_path
-# = link_to 'About', page_path('about')
- if policy(:table).play_now?
= link_to 'Play Now', play_now_path
- else
Soon
= link_to 'Browse Tables', tables_path
= link_to 'Tutorial', tutorial_path
= link_to 'About', page_path('about')
-# - if !request.base_url.match(/pin|my|fireside/)
- unless current_user.signed_in?
.eyecandy.icypepe
= image_tag "icy pepe.png", style: 'width: 800px'
-# = inline_svg_tag "Icy Pepe.svg"
- 5.times do |i|
.eyecandy
= image_tag "gongo-logo.png"
- 10.times do |i|
.eyecandy
= image_tag "ICYPEES-glass.png"
- 20.times do |i|
.eyecandy
= image_tag "chicken-tenders.png"
-# - 10.times do |i|
.eyecandy.roundcandy
= image_tag "tendy-logo.jpg"
- 10.times do |i|
.eyecandy
= image_tag "ICYPEES-coin.png"
-# - Dir.glob("app/assets/images/cards/png/**").each do |card_img|
- puts card_img
= image_tag
-# %iframe#videoplayer{:allowfullscreen => "", :frameborder => "0", :height => "480", :mozallowfullscreen => "true", :src => "https://archive.org/embed/my-dinner-with-andre-conspiracy-theory-scene-hd", :webkitallowfullscreen => "true", :width => "640", :autostart => "true"}
-# %iframe{:allow => "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share", :allowfullscreen => "", :frameborder => "0", :height => "315", :src => "https://www.youtube.com/embed/kK-1axSGkXc", :title => "YouTube video player", :width => "560"}
-# %iframe#videoplayer{:allow => "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share", :allowfullscreen => "", :frameborder => "0", :height => "315", :src => "https://www.youtube.com/embed/PhIM5k_m_hs", :title => "YouTube video player", :width => "560"}
-# .video-cover
-# = video_tag "video.mp4", autoplay: true, id: "videoplayer", loop: true

View File

@ -13,6 +13,9 @@ module MyTendyZone
config.load_defaults 7.0
# config.active_support.cache_format_version = 7.0
# TODO move secrets to credentials
config.secrets = config_for(:secrets)
# Configuration for the application, engines, and railties goes here.
#
# These settings can be overridden in specific environments using the files

View File

@ -10,7 +10,9 @@ Devise.setup do |config|
# Configure the e-mail address which will be shown in Devise::Mailer,
# note that it will be overwritten if you use your own mailer class
# with default "from" parameter.
config.mailer_sender = 'no-reply@' + Rails.application.secrets.domain_name
# TODO move secrets to credentials
# config.mailer_sender = 'no-reply@' + Rails.application.secrets.domain_name
config.mailer_sender = 'no-reply@' + Rails.configuration.secrets.domain_name
# Configure the class responsible to send e-mails.
# config.mailer = 'Devise::Mailer'

View File

@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema[7.1].define(version: 2024_03_25_142502) do
ActiveRecord::Schema[7.2].define(version: 2024_03_25_142502) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
@ -79,7 +79,7 @@ ActiveRecord::Schema[7.1].define(version: 2024_03_25_142502) do
t.integer "sluggable_id", null: false
t.string "sluggable_type", limit: 50
t.string "scope"
t.datetime "created_at", precision: nil
t.datetime "created_at"
t.index ["slug", "sluggable_type", "scope"], name: "index_friendly_id_slugs_on_slug_and_sluggable_type_and_scope", unique: true
t.index ["slug", "sluggable_type"], name: "index_friendly_id_slugs_on_slug_and_sluggable_type"
t.index ["sluggable_type", "sluggable_id"], name: "index_friendly_id_slugs_on_sluggable_type_and_sluggable_id"