summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2018-12-15 12:24:31 +0100
committerNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2018-12-15 12:24:31 +0100
commit2c3aa52b642858b85ba756df927ff5730f5ee73d (patch)
tree2273f5eb7b9dce79bb0833714cd390e2f3e01113 /src
parent7184f076617493b29ddaf4413ab58d14bba4b9d4 (diff)
...
Diffstat (limited to 'src')
-rw-r--r--src/battle/query/btl_character_turn.erl2
-rw-r--r--src/battle/query/btl_join.erl46
-rw-r--r--src/login/query/lgn_sign_in.erl5
-rw-r--r--src/map/query/map_update.erl7
-rw-r--r--src/roster/query/rst_update.erl5
-rw-r--r--src/special/spe_map.erl6
-rw-r--r--src/special/spe_player.erl27
7 files changed, 65 insertions, 33 deletions
diff --git a/src/battle/query/btl_character_turn.erl b/src/battle/query/btl_character_turn.erl
index fe41c67..9d00834 100644
--- a/src/battle/query/btl_character_turn.erl
+++ b/src/battle/query/btl_character_turn.erl
@@ -230,7 +230,7 @@ send_to_database (Update, Request) ->
(
battle_db,
ataxia_security:user_from_id(PlayerID),
- ataxic:value(ataxic:sequence(Ops)),
+ ataxic:update_value(ataxic:sequence(Ops)),
BattleID
),
diff --git a/src/battle/query/btl_join.erl b/src/battle/query/btl_join.erl
index aa7249a..3ab7be8 100644
--- a/src/battle/query/btl_join.erl
+++ b/src/battle/query/btl_join.erl
@@ -90,29 +90,43 @@ authenticate_user (Input) ->
-spec handle_new_attack (input()) -> query_state().
handle_new_attack (Input) ->
PlayerID = <<"">>,
- PlayerDBUser = shr_db_user:player(PlayerID),
+ PlayerDBUser = ataxia_security:user_from_id(PlayerID),
PartySize = 8,
- DBCond =
- recl:ge
+
+ AvailableBattle =
+ ataxia_client:update_and_fetch_any
(
- recl:update_field
+ btl_pending,
+ PlayerDBUser,
+ ataxic:update_lock
(
- btl_builder:get_free_slots_field(),
- [recl:current_value()]
+ ataxic:apply_function
+ (
+ ataxia_lock,
+ locked,
+ [
+ ataxic:constant(PlayerDBUser),
+ ataxic:constant(60)
+ ]
+ )
),
- recl:constant(PartySize)
+ ataxic:ge
+ (
+ ataxic:field
+ (
+ ataxia_entry:get_value_field(),
+ ataxic:field
+ (
+ btl_pending_battle:get_free_slots_field(),
+ ataxic:current_value()
+ )
+ ),
+ ataxic:constant(PartySize)
+ )
),
- TempLockQuery =
- shr_db_query:first_match
- (
- db_name,
- PlayerDBUser,
- DBCond,
- shr_db_query:temporary_lock(PlayerDBUser)
- ),
+ ...
- %% Need: find[lone]; update; fetch
-spec fetch_data (input()) -> query_state().
fetch_data (Input) ->
diff --git a/src/login/query/lgn_sign_in.erl b/src/login/query/lgn_sign_in.erl
index 5883acf..19c4efe 100644
--- a/src/login/query/lgn_sign_in.erl
+++ b/src/login/query/lgn_sign_in.erl
@@ -88,7 +88,7 @@ commit_update (QueryState) ->
(
player_db,
ataxia_security:user_from_id(PlayerID),
- ataxic:value
+ ataxic:update_value
(
ataxic:sequence
(
@@ -105,7 +105,8 @@ commit_update (QueryState) ->
)
]
)
- )
+ ),
+ PlayerID
),
shr_timed_cache:update(player_db, any, PlayerID, UpdatedPlayer),
diff --git a/src/map/query/map_update.erl b/src/map/query/map_update.erl
index d9e3e73..791bab1 100644
--- a/src/map/query/map_update.erl
+++ b/src/map/query/map_update.erl
@@ -116,11 +116,11 @@ commit_update (QueryState, Input) ->
Map = QueryState#query_state.map,
ok =
- ataxia_client:commit
+ ataxia_client:update
(
map_db,
ataxia_security:user_from_id(PlayerID),
- ataxic:value
+ ataxic:update_value
(
ataxic:sequence
(
@@ -142,7 +142,8 @@ commit_update (QueryState, Input) ->
)
]
)
- )
+ ),
+ MapID
),
shr_timed_cache:update(map_db, PlayerID, MapID, Map),
diff --git a/src/roster/query/rst_update.erl b/src/roster/query/rst_update.erl
index 8afa249..f329038 100644
--- a/src/roster/query/rst_update.erl
+++ b/src/roster/query/rst_update.erl
@@ -142,14 +142,15 @@ commit_update (QueryState, Input) ->
(
roster_db,
ataxia_security:user_from_id(PlayerID),
- ataxic:value
+ ataxic:update_value
(
ataxic:update_field
(
rst_roster:get_characters_field(),
ataxic:sequence(QueryList)
)
- )
+ ),
+ RosterID
),
shr_timed_cache:update(roster_db, PlayerID, RosterID, UpdatedRoster),
diff --git a/src/special/spe_map.erl b/src/special/spe_map.erl
index 1de946b..dbd6c3e 100644
--- a/src/special/spe_map.erl
+++ b/src/special/spe_map.erl
@@ -24,15 +24,15 @@ grant_additional (OwnerID) ->
ataxia_client:add
(
map_db,
- ataxia_security:any(),
- [ataxia_security:user_from_id(OwnerID)],
+ ataxia_security:only_allow(ataxia_security:any()),
+ ataxia_security:only_allow(ataxia_security:user_from_id(OwnerID)),
Map
),
MapSummary = shr_map_summary:new(MapID, <<"Untitled Map">>),
PlayerUpdateQueryOp =
- ataxic:value
+ ataxic:update_value
(
ataxic:update_field
(
diff --git a/src/special/spe_player.erl b/src/special/spe_player.erl
index 4b9a80a..65c651c 100644
--- a/src/special/spe_player.erl
+++ b/src/special/spe_player.erl
@@ -98,12 +98,15 @@ generate (Username, Password, Email) ->
Player = shr_player:new(<<"">>, Username, Password, Email),
+ JanitorOnlyPermission =
+ ataxia_security:allow_only(ataxia_security:janitor()),
+
{ok, PlayerID} =
ataxia_client:add
(
player_db,
- ataxia_security:janitor(),
- ataxia_security:janitor(),
+ JanitorOnlyPermission,
+ JanitorOnlyPermission,
Player
),
@@ -116,7 +119,7 @@ generate (Username, Password, Email) ->
ataxic:sequence_meta
(
[
- ataxic:value
+ ataxic:update_value
(
ataxic:sequence
(
@@ -139,10 +142,22 @@ generate (Username, Password, Email) ->
]
)
),
- ataxic:read_permission(ataxic:constant(ataxia_security:any())),
- ataxic:write_permission
+ ataxic:update_read_permission
(
- ataxic:constant([ataxia_security:user_from_id(PlayerID)])
+ ataxic:constant
+ (
+ ataxia_security:allow_only(ataxia_security:any())
+ )
+ ),
+ ataxic:update_write_permission
+ (
+ ataxic:constant
+ (
+ ataxia_security:allow_only
+ (
+ ataxia_security:user_from_id(PlayerID)
+ )
+ )
)
]
),