{"version":3,"sources":["favorites.js"],"names":["window","undefined","wp","document","$","jQuery","$document","astoundifyFavorites","toggleListField","el","val","siblings","show","hide","openPopUp","content","magnificPopup","open","items","src","config","popupHtml","replace","type","closePopUp","close","favoriteCreate","ajax","post","data","done","link","replaceWith","fail","notices","favoriteEditForm","form","remove","favoriteEdit","formData","FormData","append","send","dataType","contentType","processData","template","favorite_id","favoriteRemove","target_id","length","listCreateForm","listEditForm","listCreate","find","insertBefore","listEdit","list_id","listRemove","ready","on","e","this","preventDefault","confirm","i18n","confirmRemove"],"mappings":"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","file":"favorites.min.js","sourcesContent":["/**\r\n * Favorite Form\r\n *\r\n * @since 1.0.0\r\n */\r\n( function( window, undefined ) {\r\n\r\n\twindow.wp = window.wp || {};\r\n\r\n\tvar document = window.document;\r\n\tvar $ = window.jQuery;\r\n\tvar wp = window.wp;\r\n\r\n\t/**\r\n\t * @since 1.0.0\r\n\t */\r\n\tvar $document = $(document);\r\n\r\n\t/**\r\n\t * Toggle List Field\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.toggleListField = function( el ) {\r\n\t\tif ( 'new' === el.val() ) {\r\n\t\t\tel.siblings( '.astoundify_favorites_list_new' ).show();\r\n\t\t}\r\n\t\telse {\r\n\t\t\tel.siblings( '.astoundify_favorites_list_new' ).hide();\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n\t * Open Pop Up\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.openPopUp = function( content ) {\r\n\r\n\t\tif ( ! content ) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t$.magnificPopup.open( {\r\n\t\t\titems: {\r\n\t\t\t\tsrc: astoundifyFavorites.config.popupHtml.replace( '%%CONTENT%%', content ),\r\n\t\t\t\ttype: 'inline'\r\n\t\t\t}\r\n\t\t} );\r\n\t};\r\n\r\n\t/**\r\n\t * Close Pop Up\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.closePopUp = function() {\r\n\t\t$.magnificPopup.close();\r\n\t};\r\n\r\n\t/**\r\n\t * Create Favorite\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.favoriteCreate = function( el ) {\r\n\t\twp.ajax.post( 'astoundify_favorites_favorite_create', el.data() )\r\n\t\t\t.done( function( data ) {\r\n\t\t\t\tif ( data.link ) {\r\n\t\t\t\t\t$( '.astoundify-favorites-link[data-af_data=\"' + el.data( 'af_data' ) + '\"]' ).replaceWith( $( data.link ) );\r\n\t\t\t\t}\r\n\t\t\t} )\r\n\t\t\t.fail( function( data ) {\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} );\r\n\t};\r\n\r\n\t/**\r\n\t * Open Edit Form Favorite\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.favoriteEditForm = function( el ) {\r\n\t\twp.ajax.post( 'astoundify_favorites_favorite_edit_form', el.data() )\r\n\t\t\t.done( function( data ) {\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.form );\r\n\t\t\t} )\r\n\t\t\t.fail( function( data ) {\r\n\t\t\t\tif ( data.link ) {\r\n\t\t\t\t\t$( '.astoundify-favorites-link[data-af_data=\"' + el.data( 'af_data' ) + '\"]' ).replaceWith( $( data.link ) );\r\n\t\t\t\t}\r\n\t\t\t\t$( '#astoundify-favorite-' + el.data( 'af_favorite_id' ) ).remove();\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} );\r\n\t};\r\n\r\n\t/**\r\n\t * Update Favorite\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.favoriteEdit = function( el ) {\r\n\r\n\t\t// Create formData\r\n\t\tvar formData = new FormData( el[0] );\r\n\t\tformData.append( 'action', 'astoundify_favorites_favorite_edit' );\r\n\r\n\t\t// AJAX\r\n\t\twp.ajax.send( {\r\n\t\t\t\tdataType: 'json',\r\n\t\t\t\tdata : formData,\r\n\t\t\t\tcontentType: false, // required\r\n\t\t\t\tprocessData: false // required\r\n\t\t\t} )\r\n\t\t\t.done( function( data ) {\r\n\t\t\t\tif ( data.template ) {\r\n\t\t\t\t\t$( '#astoundify-favorite-' + data.favorite_id ).replaceWith( data.template );\r\n\t\t\t\t}\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} )\r\n\t\t\t.fail( function( data ) {\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} );\r\n\t};\r\n\r\n\t/**\r\n\t * Remove Favorite\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.favoriteRemove = function( el ) {\r\n\t\twp.ajax.post( 'astoundify_favorites_favorite_remove', el.data() )\r\n\t\t\t.done( function( data ) {\r\n\t\t\t\tif ( data.link ) {\r\n\t\t\t\t\t$( '.astoundify-favorites-link[data-af_data=\"' + data.target_id + '\"]' ).replaceWith( $( data.link ) );\r\n\t\t\t\t}\r\n\t\t\t\t$( '#astoundify-favorite-' + data.favorite_id ).remove();\r\n\t\t\t\tastoundifyFavorites.closePopUp();\r\n\t\t\t} )\r\n\t\t\t.fail( function( data ) {\r\n\t\t\t\t$( '#astoundify-favorite-' + el.data( 'af_favorite_id' ) ).remove();\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} );\r\n\t\tif ( ! $( '.astoundify-favorite' ).length ) {\r\n\t\t\t$( '#astoundify-favorite-0' ).show();\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n\t * Open Create Form List\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.listCreateForm = function( el ) {\r\n\t\twp.ajax.post( 'astoundify_favorites_list_create_form', el.data() )\r\n\t\t\t.done( function( data ) {\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.form );\r\n\t\t\t} )\r\n\t\t\t.fail( function( data ) {\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} );\r\n\t};\r\n\r\n\t/**\r\n\t * Open Edit Form List\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.listEditForm = function( el ) {\r\n\t\twp.ajax.post( 'astoundify_favorites_list_edit_form', el.data() )\r\n\t\t\t.done( function( data ) {\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.form );\r\n\t\t\t} )\r\n\t\t\t.fail( function( data ) {\r\n\t\t\t\t$( '#astoundify-favorite-list-' + el.data( 'af_list_id' ) ).remove();\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} );\r\n\t};\r\n\r\n\t/**\r\n\t * Create List\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.listCreate = function( el ) {\r\n\r\n\t\t// Create formData\r\n\t\tvar formData = new FormData( el[0] );\r\n\t\tformData.append( 'action', 'astoundify_favorites_list_create' );\r\n\t\tformData.append( 'list_name', el.find( 'input[name=\"list_name\"]' ).val() );\r\n\r\n\t\t// AJAX\r\n\t\twp.ajax.send( {\r\n\t\t\t\tdataType: 'json',\r\n\t\t\t\tdata : formData,\r\n\t\t\t\tcontentType: false, // required\r\n\t\t\t\tprocessData: false // required\r\n\t\t\t} )\r\n\t\t\t.done( function( data ) {\r\n\t\t\t\tif ( data.template ) {\r\n\t\t\t\t\t$( data.template ).insertBefore( '#astoundify-favorite-list-new' );\r\n\t\t\t\t}\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} )\r\n\t\t\t.fail( function( data ) {\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} );\r\n\t};\r\n\r\n\t/**\r\n\t * Edit List\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.listEdit = function( el ) {\r\n\r\n\t\t// Create formData\r\n\t\tvar formData = new FormData( el[0] );\r\n\t\tformData.append( 'action', 'astoundify_favorites_list_edit' );\r\n\t\tformData.append( 'list_name', el.find( 'input[name=\"list_name\"]' ).val() );\r\n\r\n\t\t// AJAX\r\n\t\twp.ajax.send( {\r\n\t\t\t\tdataType: 'json',\r\n\t\t\t\tdata : formData,\r\n\t\t\t\tcontentType: false, // required\r\n\t\t\t\tprocessData: false // required\r\n\t\t\t} )\r\n\t\t\t.done( function( data ) {\r\n\t\t\t\tif ( data.template ) {\r\n\t\t\t\t\t$( '#astoundify-favorite-list-' + data.list_id ).replaceWith( data.template );\r\n\t\t\t\t}\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} )\r\n\t\t\t.fail( function( data ) {\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} );\r\n\t};\r\n\r\n\r\n\t/**\r\n\t * Remove List\r\n\t * \r\n\t * @since 1.0.0\r\n\t */\r\n\tastoundifyFavorites.listRemove = function( el ) {\r\n\t\twp.ajax.post( 'astoundify_favorites_list_remove', el.data() )\r\n\t\t\t.done( function( data ) {\r\n\t\t\t\t$( '#astoundify-favorite-list-' + data.list_id ).remove();\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} )\r\n\t\t\t.fail( function( data ) {\r\n\t\t\t\tastoundifyFavorites.openPopUp( data.notices );\r\n\t\t\t} );\r\n\t};\r\n\r\n\r\n\t/***********************************\r\n\t * Wait for DOM ready.\r\n\t *\r\n\t * @since 1.0.0\r\n\t ***********************************/\r\n\t$document.ready( function() {\r\n\r\n\t\t// FAVORITE ACTION\r\n\r\n\t\t// Add favorite\r\n\t\t$document.on( 'click', '.astoundify-favorites-link.inactive', function(e) {\r\n\t\t\tif ( 0 !== $( this ).data( 'user_id' ) ) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tastoundifyFavorites.favoriteCreate( $( this ) );\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t} );\r\n\r\n\t\t// Open edit favorite form\r\n\t\t$document.on( 'click', '.astoundify-favorites-link.active, .astoundify-favorites-edit-favorite', function(e) {\r\n\t\t\te.preventDefault();\r\n\t\t\tastoundifyFavorites.favoriteEditForm( $( this ) );\r\n\t\t} );\r\n\r\n\t\t// Edit favorite\r\n\t\t$document.on( 'submit', '.astoundify-favorites-form-favorite-edit', function(e) {\r\n\t\t\te.preventDefault();\r\n\t\t\tastoundifyFavorites.favoriteEdit( $( this ) );\r\n\t\t} );\r\n\r\n\t\t// Remove favorite\r\n\t\t$document.on( 'click', '.astoundify-favorites-remove-favorite', function(e) {\r\n\t\t\te.preventDefault();\r\n\t\t\tvar confirmDelete = window.confirm( astoundifyFavorites.i18n.confirmRemove );\r\n\t\t\tif ( true === confirmDelete ) {\r\n\t\t\t\tastoundifyFavorites.favoriteRemove( $( this ) );\r\n\t\t\t}\r\n\t\t} );\r\n\r\n\t\t// LIST ACTIONS\r\n\r\n\t\t// Open create list form\r\n\t\t$document.on( 'click', '.astoundify-favorites-create-list', function(e) {\r\n\t\t\te.preventDefault();\r\n\t\t\tastoundifyFavorites.listCreateForm( $( this ) );\r\n\t\t} );\r\n\r\n\t\t// Open edit list form\r\n\t\t$document.on( 'click', '.astoundify-favorites-edit-list', function(e) {\r\n\t\t\te.preventDefault();\r\n\t\t\tastoundifyFavorites.listEditForm( $( this ) );\r\n\t\t} );\r\n\r\n\t\t// Edit/Create List\r\n\t\t$document.on( 'submit', '.astoundify-favorites-form-list-edit', function(e) {\r\n\t\t\te.preventDefault();\r\n\t\t\tvar list_id = $( this ).find( 'input[name=\"_list\"]' ).val();\r\n\t\t\tif ( '0' === list_id ) { // Create List\r\n\t\t\t\tastoundifyFavorites.listCreate( $( this ) );\r\n\t\t\t} else { // Edit List\r\n\t\t\t\tastoundifyFavorites.listEdit( $( this ) );\r\n\t\t\t}\r\n\t\t} );\r\n\r\n\t\t// Remove List\r\n\t\t$document.on( 'click', '.astoundify-favorites-remove-list', function(e) {\r\n\t\t\te.preventDefault();\r\n\t\t\tvar confirmDelete = window.confirm( astoundifyFavorites.i18n.confirmRemove );\r\n\t\t\tif ( true === confirmDelete ) {\r\n\t\t\t\tastoundifyFavorites.listRemove( $( this ) );\r\n\t\t\t}\r\n\t\t} );\r\n\r\n\t\t// SELECT LIST\r\n\r\n\t\t// Select list field\r\n\t\t$document.on( 'change', '.astoundify_favorites_list', function() {\r\n\t\t\tastoundifyFavorites.toggleListField( $( this ) );\r\n\t\t} );\r\n\r\n\t} );\r\n\r\n}( window ) );\r\n"]}