diff --git a/nginx/public_html/index.js b/nginx/public_html/index.js index e41c4f3..d712577 100644 --- a/nginx/public_html/index.js +++ b/nginx/public_html/index.js @@ -85,7 +85,9 @@ function addToBinListIfLoggedIn(state){ // if bin is not already in the list: if(s.login.bin_ids.filter(bin_id=>bin_id===s.bin_id).length===0){ i(s, {id: s.bin_id, name: s.db[s.bin_id].model.name}); - s.login.bin_ids.push(s.bin_id); + // causes problems because ref_count isn't properly updated: + //s.login.bin_ids.push(s.bin_id); + ref(s, s.login.bind_ids, s.login.bind_ids.length, s.bin_id); } } } @@ -108,7 +110,7 @@ const reducer = handleActions({ 'login-succeeded': (s, {user, session_id}) => { i(s, user); s.login.is_logged_in=true; s.login.showing=true; s.login.password=''; ref(s, s.login, 'user_id', user.id); s.login.session_id=session_id; }, 'login-failed': (s) => { s.login.showing=true; s.login.password=''; }, 'logout-requested': (s) => { s.login.is_logged_in=false; s.login.showing=true; s.login.username=''; s.login.password=''; s.login.session_id=''; refAll(s, s.login, 'bin_ids', []); }, - 'user-bin-list-loaded': (s, bins) => { s.login.bins=bins; integrateAll(s, bins); refAll(s, s.login, 'bin_ids', bins.map(b=>b.id)); }, + 'user-bin-list-loaded': (s, bins) => { integrateAll(s, bins); refAll(s, s.login, 'bin_ids', bins.map(b=>b.id)); }, 'update-bin-name-editing': (s, is_editing) => { s.is_editing_bin_name=is_editing; }, 'update-bin-name': (s, name) => { s.temp_bin_name=name; }, 'commit-bin-name': (s) => { s.db[s.bin_id].model.name=s.temp_bin_name; s.is_editing_bin_name=false; addToBinListIfLoggedIn(s); }