Commit 00d0e57e859454c62084893a74fad71c26d5c50c
1 parent
14c2a37d
Exists in
master
and in
4 other branches
Commits are arranged below their first parent.
Showing
1 changed file
with
19 additions
and
2 deletions
Show diff stats
app/models/graph/json_builder.rb
| ... | ... | @@ -181,7 +181,8 @@ module Graph |
| 181 | 181 | end |
| 182 | 182 | |
| 183 | 183 | time_range = leaves.last.time..leaves.first.time |
| 184 | - space = find_free_space(time_range, 2) | |
| 184 | + space_base = get_space_base(leaves, map) | |
| 185 | + space = find_free_space(time_range, 2, space_base) | |
| 185 | 186 | leaves.each do |l| |
| 186 | 187 | l.spaces << space |
| 187 | 188 | # Also add space to parent |
| ... | ... | @@ -223,13 +224,29 @@ module Graph |
| 223 | 224 | end |
| 224 | 225 | end |
| 225 | 226 | |
| 227 | + def get_space_base(leaves, map) | |
| 228 | + space_base = 1 | |
| 229 | + if leaves.last.parents.size > 0 | |
| 230 | + first_parent = leaves.last.parents.first | |
| 231 | + if map.include?(first_parent.id) | |
| 232 | + first_p = map[first_parent.id] | |
| 233 | + if first_p.space > 0 | |
| 234 | + space_base = first_p.space | |
| 235 | + end | |
| 236 | + end | |
| 237 | + end | |
| 238 | + space_base | |
| 239 | + end | |
| 240 | + | |
| 226 | 241 | def mark_reserved(time_range, space) |
| 227 | 242 | for day in time_range |
| 228 | 243 | @_reserved[day].push(space) |
| 229 | 244 | end |
| 230 | 245 | end |
| 231 | 246 | |
| 232 | - def find_free_space(time_range, space_step, space_base = 1, space_default = 1) | |
| 247 | + def find_free_space(time_range, space_step, space_base = 1, space_default = nil) | |
| 248 | + space_default ||= space_base | |
| 249 | + | |
| 233 | 250 | reserved = [] |
| 234 | 251 | for day in time_range |
| 235 | 252 | reserved += @_reserved[day] | ... | ... |