{"version":3,"file":"../../js/llms-pa-discussion.min.js","sources":["llms-pa-discussion.js"],"sourcesContent":["/**\n * Discussion Functionality for Private Area Post Comments\n *\n * @package LifterLMS_Private_Areas/Scripts\n *\n * @since 1.0.0\n * @version 1.0.0\n */\n\n( function( $ ) {\n\n\tvar $list     = $( '.llms-pa-discussion-list' ),\n\t\t$comments = $list.find( '.comment' );\n\n\t/**\n\t * Handle AJAX Form Submission for comment form submissions\n\t *\n\t * @param    obj    e    JS event object\n\t * @return   void\n\t * @since    1.0.0\n\t * @version  1.0.0\n\t */\n\t$( '#llms_pa_leave_comment' ).on( 'click', function( e ) {\n\t\te.preventDefault();\n\n\t\tvar $form        = $( '#llms-pa-post-discussion-form' ),\n\t\t\tcomment_text = $form.find( '#llms_pa_post_comment' ).val(),\n\t\t\tparent_id    = $( 'input[name=\"llms_pa_comment_parent_id\"]' ).val(),\n\t\t\tnonce        = $( '#_pa_discussion_nonce' ).val(),\n\t\t\tpa_post_id   = $( 'input[name=\"llms_pa_post_id\"]' ).val();\n\n\t\tif ( ! comment_text ) {\n\t\t\treturn;\n\t\t}\n\n\t\tLLMS.Ajax.call( {\n\t\t\tdata: {\n\t\t\t\taction: 'llms_pa_comment_add',\n\t\t\t\tcomment: comment_text,\n\t\t\t\tnonce: nonce,\n\t\t\t\tparent_id: parent_id,\n\t\t\t\tpa_post_id: pa_post_id,\n\t\t\t},\n\t\t\tbeforeSend: function() {\n\n\t\t\t\tLLMS.Spinner.start( $form );\n\t\t\t\t$form.find( '.error' ).remove();\n\n\t\t\t},\n\t\t\tsuccess: function( r ) {\n\n\t\t\t\tif ( ! r.success ) {\n\t\t\t\t\tLLMS.Spinner.stop( $form );\n\t\t\t\t\t$form.prepend( '<p class=\"error\">' + r.message + '</p>' );\n\t\t\t\t} else if ( r.data && r.data.redirect ) {\n\t\t\t\t\twindow.location.href = r.data.redirect;\n\t\t\t\t\twindow.location.reload();\n\t\t\t\t}\n\n\t\t\t}\n\n\t\t} );\n\n\t} );\n\n\tif ( $comments.length ) {\n\n\t\t/**\n\t\t * Adds a \"cancel\" button when a replying to a comment\n\t\t *\n\t\t * @param    obj   $form  discussion form DOM element selector\n\t\t * @since    1.0.0\n\t\t * @version  1.0.0\n\t\t */\n\t\tfunction add_cancel( $form ) {\n\n\t\t\t$cancel = $( '<a class=\"llms-pa-comment-reply-cancel\" href=\"#\">' + LLMS.l10n.translate( 'Cancel' ) + '</a>' );\n\n\t\t\t$form.find( '.llms-form-field.type-submit' ).append( $cancel );\n\n\t\t\t$cancel.on( 'click', function( e ) {\n\t\t\t\te.preventDefault();\n\t\t\t\t$form.find( 'input[name=\"llms_pa_comment_parent_id\"]' ).val( '0' );\n\t\t\t\t$( '#llms-pa-post-discussion-form-wrap' ).append( $form );\n\t\t\t\t$( this ).remove();\n\t\t\t} );\n\n\t\t}\n\n\t\t/**\n\t\t * Moves the discussion form within a parent element (for replying to comments)\n\t\t *\n\t\t * @param    obl  $parent  DOM element selector of the element to append the form to\n\t\t * @return   void\n\t\t * @since    1.0.0\n\t\t * @version  1.0.0\n\t\t */\n\t\tfunction move_form( $parent ) {\n\n\t\t\tvar $form     = $( '#llms-pa-post-discussion-form' ),\n\t\t\t\tparent_id = $parent.attr( 'id' ).replace( 'comment-', '' );\n\n\t\t\tif ( ! $form.find( '.llms-pa-comment-reply-cancel' ).length ) {\n\t\t\t\tadd_cancel( $form );\n\t\t\t}\n\n\t\t\t$form.find( 'input[name=\"llms_pa_comment_parent_id\"]' ).val( parent_id );\n\n\t\t\t$parent.find( '.comment-body' ).first().append( $form );\n\n\t\t}\n\n\t\t/**\n\t\t * Makes an AJAX call to toggle comment status for a given comment\n\t\t *\n\t\t * @param    obj         $comment  DOM element for the comment\n\t\t * @param    {Function}  cb        callback function\n\t\t * @return   void\n\t\t * @since    1.0.0\n\t\t * @version  1.0.0\n\t\t */\n\t\tfunction toggle_comment_status( $comment, cb ) {\n\n\t\t\tvar $body = $comment.find( '.comment-body' ).first();\n\n\t\t\tLLMS.Ajax.call( {\n\t\t\t\tdata: {\n\t\t\t\t\taction: 'llms_pa_comment_toggle_status',\n\t\t\t\t\tcomment: $comment.attr( 'data-comment-id' ),\n\t\t\t\t},\n\t\t\t\tbeforeSend: function() {\n\t\t\t\t\tLLMS.Spinner.start( $body );\n\t\t\t\t},\n\t\t\t\tsuccess: function( r ) {\n\n\t\t\t\t\tif ( ! r.success ) {\n\t\t\t\t\t\tif ( r.message ) {\n\t\t\t\t\t\t\talert( r.message );\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tLLMS.l10n.translate( 'Unable to save comment status. Please try again.' );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tLLMS.Spinner.stop( $body );\n\t\t\t\t\tcb( r );\n\n\t\t\t\t}\n\n\t\t\t} );\n\n\t\t}\n\n\t\t/**\n\t\t * Binds the \"Reply\" and \"Mark Read\" links for all comments\n\t\t *\n\t\t * @return   void\n\t\t * @since    1.0.0\n\t\t * @version  1.0.0\n\t\t */\n\t\t$comments.each( function() {\n\n\t\t\tvar $comment = $( this ),\n\t\t\t\t$reply   = $comment.find( '.llms-pa-comment-reply' ).first(),\n\t\t\t\t$read    = $comment.find( '> .comment-body .llms-pa-comment-toggle-read' ).first();\n\n\t\t\t$reply.on( 'click', function( e ) {\n\t\t\t\te.preventDefault();\n\t\t\t\tmove_form( $comment );\n\t\t\t} );\n\n\t\t\t$read.on( 'click', function( e ) {\n\t\t\t\te.preventDefault();\n\t\t\t\ttoggle_comment_status( $comment, function( r ) {\n\t\t\t\t\tif ( r.success && r.data && r.data.status ) {\n\t\t\t\t\t\t$comment.removeClass( 'llms-pa-unread llmsa-pa-read' ).addClass( 'llms-pa-' + r.data.status );\n\t\t\t\t\t\t$read.attr( 'data-current-status', r.data.status );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t} );\n\n\t\t} );\n\n\t}\n\n} )( jQuery );\n"],"names":["$","$comments","find","move_form","$parent","$form","parent_id","attr","replace","length","$cancel","LLMS","l10n","translate","append","on","e","preventDefault","val","this","remove","first","comment_text","nonce","pa_post_id","Ajax","call","data","action","comment","beforeSend","Spinner","start","success","r","redirect","window","location","href","reload","stop","prepend","message","each","$comment","$reply","$read","cb","$body","status","removeClass","addClass","alert","jQuery"],"mappings":"CASA,SAAYA,GAEX,IACCC,EADeD,EAAG,4BACAE,KAAM,YAqFxB,SAASC,EAAWC,GAEnB,IAzBoBC,EAyBhBA,EAAYL,EAAG,iCAClBM,EAAYF,EAAQG,KAAM,MAAOC,QAAS,WAAY,IAEhDH,EAAMH,KAAM,iCAAkCO,SA5BjCJ,EA6BPA,EA3BbK,QAAUV,EAAG,oDAAsDW,KAAKC,KAAKC,UAAW,UAAa,QAErGR,EAAMH,KAAM,gCAAiCY,OAAQJ,SAErDA,QAAQK,GAAI,QAAS,SAAUC,GAC9BA,EAAEC,iBACFZ,EAAMH,KAAM,2CAA4CgB,IAAK,KAC7DlB,EAAG,sCAAuCc,OAAQT,GAClDL,EAAGmB,MAAOC,YAsBXf,EAAMH,KAAM,2CAA4CgB,IAAKZ,GAE7DF,EAAQF,KAAM,iBAAkBmB,QAAQP,OAAQT,GAtFlDL,EAAG,0BAA2Be,GAAI,QAAS,SAAUC,GACpDA,EAAEC,iBAEF,IAAIZ,EAAeL,EAAG,iCACrBsB,EAAejB,EAAMH,KAAM,yBAA0BgB,MACrDZ,EAAeN,EAAG,2CAA4CkB,MAC9DK,EAAevB,EAAG,yBAA0BkB,MAC5CM,EAAexB,EAAG,iCAAkCkB,MAE9CI,GAIPX,KAAKc,KAAKC,KAAM,CACfC,KAAM,CACLC,OAAQ,sBACRC,QAASP,EACTC,MAAOA,EACPjB,UAAWA,EACXkB,WAAYA,GAEbM,WAAY,WAEXnB,KAAKoB,QAAQC,MAAO3B,GACpBA,EAAMH,KAAM,UAAWkB,UAGxBa,QAAS,SAAUC,GAEXA,EAAED,QAGGC,EAAEP,MAAQO,EAAEP,KAAKQ,WAC5BC,OAAOC,SAASC,KAAOJ,EAAEP,KAAKQ,SAC9BC,OAAOC,SAASE,WAJhB5B,KAAKoB,QAAQS,KAAMnC,GACnBA,EAAMoC,QAAS,oBAAsBP,EAAEQ,QAAU,cAYhDzC,EAAUQ,QA8FdR,EAAU0C,KAAM,WAEf,IAAIC,EAAW5C,EAAGmB,MACjB0B,EAAWD,EAAS1C,KAAM,0BAA2BmB,QACrDyB,EAAWF,EAAS1C,KAAM,gDAAiDmB,QAE5EwB,EAAO9B,GAAI,QAAS,SAAUC,GAC7BA,EAAEC,iBACFd,EAAWyC,KAGZE,EAAM/B,GAAI,QAAS,SAAUC,GAjD9B,IAAgC4B,EAAUG,EAErCC,EAgDHhC,EAAEC,iBAlDsC8B,EAmDP,SAAUb,GACrCA,EAAED,SAAWC,EAAEP,MAAQO,EAAEP,KAAKsB,SAClCL,EAASM,YAAa,gCAAiCC,SAAU,WAAajB,EAAEP,KAAKsB,QACrFH,EAAMvC,KAAM,sBAAuB2B,EAAEP,KAAKsB,UApDzCD,GAF2BJ,EAmDPA,GAjDH1C,KAAM,iBAAkBmB,QAE7CV,KAAKc,KAAKC,KAAM,CACfC,KAAM,CACLC,OAAQ,gCACRC,QAASe,EAASrC,KAAM,oBAEzBuB,WAAY,WACXnB,KAAKoB,QAAQC,MAAOgB,IAErBf,QAAS,SAAUC,GAEXA,EAAED,UACHC,EAAEQ,QACNU,MAAOlB,EAAEQ,SAET/B,KAAKC,KAAKC,UAAW,qDAIvBF,KAAKoB,QAAQS,KAAMQ,GACnBD,EAAIb,UAvIT,CA+KKmB","sourceRoot":"../../js"}