@@ -14,7 +14,7 @@ export default class PostDialog extends Component {
1414
1515 this . previewToggled = false
1616
17- this . toggledEditMode = false
17+ this . isEditMode = false
1818 }
1919
2020 /**
@@ -54,7 +54,7 @@ export default class PostDialog extends Component {
5454 } , 150 )
5555
5656 if ( edit ) {
57- this . toggledEditMode = edit
57+ this . isEditMode = edit
5858
5959 saveButtonRoot . innerHTML = 'ZAPISZ'
6060
@@ -67,8 +67,8 @@ export default class PostDialog extends Component {
6767 saveButtonRoot . innerHTML = 'DODAJ'
6868 }
6969
70- if ( ! edit && this . toggledEditMode ) {
71- this . toggledEditMode = false
70+ if ( ! edit && this . isEditMode ) {
71+ this . isEditMode = false
7272
7373 this . clearForm ( )
7474 }
@@ -310,59 +310,89 @@ export default class PostDialog extends Component {
310310
311311 const app = window . app
312312 const postsPage = app . getPostsPage ( )
313- const snackbar = app . elements . addedPostSnackbar
313+ const snackbar = app . elements . addPostSnackbar
314314 const snackbarText = snackbar . elements . text
315315
316316 if ( this . verifyData ( ) ) {
317317 this . toggle ( false )
318318
319- snackbarText . innerHTML = ( ! this . toggledEditMode ) ? 'Pomyślnie dodano post' : 'Pomyślnie zapisano post'
319+ snackbarText . innerHTML = ( ! this . isEditMode ) ? 'Pomyślnie dodano post' : 'Pomyślnie zapisano post'
320320 snackbar . toggle ( true )
321321
322322 const post = postsPage . clickedPost
323323
324324 const title = this . elements . titleTextField . getValue ( )
325325 const content = this . elements . contentTextField . getValue ( )
326326
327- const index = postsPage . postsData . indexOf ( post . props . data )
328- const media = ( previewMedia . style . display !== 'none' ) ? previewMedia . src : null
327+ if ( this . isEditMode ) {
328+ const index = postsPage . postsData . indexOf ( post . props . data )
329+ const media = ( previewMedia . style . display !== 'none' ) ? previewMedia . src : null
329330
330- if ( postsPage . listLoaded ) {
331- const postInList = postsPage . elements . list . items [ index ]
331+ function updatePost ( post , titleElement , contentElement , imgElement , title , content , media ) {
332+ titleElement . innerHTML = title
333+ contentElement . innerHTML = content
332334
333- postInList . elements . title . elements . text . innerHTML = title
334- postInList . elements . content . elements . text . innerHTML = content
335+ if ( imgElement != null ) {
336+ imgElement . style . display = ( media == null ) ? 'none' : 'inline-block'
335337
336- const img = postInList . elements . picture . elements . text . getElementsByTagName ( 'img' ) [ 0 ]
338+ if ( media != null ) imgElement . src = media
339+ }
340+ }
337341
338- if ( img != null ) {
339- img . style . display = ( media == null ) ? 'none' : 'inline-block'
342+ if ( postsPage . listLoaded ) {
343+ const postInList = postsPage . elements . list . items [ index ]
344+ const titleElement = postInList . elements . title . elements . text
345+ const contentElement = postInList . elements . content . elements . text
346+ const imgElement = post . elements . picture . elements . text . getElementsByTagName ( 'img' ) [ 0 ]
340347
341- if ( media != null ) img . src = media
348+ updatePost ( postInList , titleElement , contentElement , imgElement , title , content , media )
342349 }
343- }
344350
345- if ( postsPage . tableLoaded ) {
346- const postInTable = postsPage . elements . table . cells [ index ]
351+ if ( postsPage . tableLoaded ) {
352+ const postInTable = postsPage . elements . table . cells [ index ]
353+ const titleElement = postInTable . elements . title
354+ const contentElement = postInTable . elements . content
355+ const imgElement = postInTable . elements . picture . getElementsByTagName ( 'img' ) [ 0 ]
356+
357+ updatePost ( postInTable , titleElement , contentElement , imgElement , title , content , media )
358+ }
347359
348- postInTable . elements . title . innerHTML = title
349- postInTable . elements . content . innerHTML = content
360+ post . elements . title . innerHTML = title
361+ post . elements . content . innerHTML = content
350362
351- const img = postInTable . elements . picture . getElementsByTagName ( 'img' ) [ 0 ]
363+ postsPage . postsData [ index ] . title = title
364+ postsPage . postsData [ index ] . content = content
365+ postsPage . postsData [ index ] . media = media
366+ } else {
367+ const postData = {
368+ id : 9 ,
369+ media : 'http://img11.deviantart.net/a66d/i/2015/109/3/b/forest_wallpaper_16_9_by_iorgudesign-d8qa67w.jpg' ,
370+ title : 'Test' ,
371+ author : 'Mikołaj Palkiewicz' ,
372+ content : 'Card with picture test' ,
373+ date : '14.04.2017 10:38' ,
374+ avatar : 'https://scontent-waw1-1.xx.fbcdn.net/v/t1.0-9/14581320_549947718524540_5437545186607783553_n.jpg?oh=1d709d8978f80d6887041c3e9583f27f&oe=59994281' ,
375+ likes : [ ] ,
376+ comments : [ ]
377+ }
352378
353- if ( img != null ) {
354- img . style . display = ( media == null ) ? 'none' : 'inline-block'
379+ const _postsData = [ ]
380+ _postsData . push ( postData )
355381
356- if ( media != null ) img . src = media
382+ for ( var i = 0 ; i < postsPage . postsData . length ; i ++ ) {
383+ _postsData . push ( postsPage . postsData [ i ] )
357384 }
358- }
359385
360- post . elements . title . innerHTML = title
361- post . elements . content . innerHTML = content
386+ postsPage . postsData = _postsData
387+
388+ if ( postsPage . tableLoaded ) {
389+ postsPage . elements . table . setCells ( postsPage . postsData )
390+ }
362391
363- postsPage . postsData [ index ] . title = title
364- postsPage . postsData [ index ] . content = content
365- postsPage . postsData [ index ] . media = media
392+ if ( postsPage . listLoaded ) {
393+ postsPage . elements . list . setCells ( postsPage . postsData )
394+ }
395+ }
366396
367397 setTimeout ( function ( ) {
368398 self . clearForm ( )
0 commit comments