diff --git a/mailpoet/assets/css/src/generic/_helpers.scss b/mailpoet/assets/css/src/generic/_helpers.scss index 9280a82782..c705e611b5 100644 --- a/mailpoet/assets/css/src/generic/_helpers.scss +++ b/mailpoet/assets/css/src/generic/_helpers.scss @@ -67,3 +67,21 @@ span.mailpoet-gap-half { .not-small-screen { @include respond-to(small-screen) { display: none !important; } } + +.with-spinner { + pointer-events: none; + touch-action: none; + + &:after { + background: rgba(#fff, .8) no-repeat center; + background-image: url('data:image/gif;base64,R0lGODlhMAAwAPceAAB8utDn8h+LwkKdy1+pz2iqy5nF25nH3w+DvbHX6aDN5FCkz9/u9q7V6DKVx8Hf7u/3+i6TxUKdyk2izfD3+2utz+Hv916q0GGr0DGUxprI4J/M5B6LwaHO5Q+DvhGEvrHW6XauyiKNws7m8VOlzs/m8u72+pHG4X68273d7Z/N5RCEviCJvS+NvHC01z+RuWiv1I7E4K7V6SKEtT2KscLf7q/W6d3t9XC1157N5Ax+t3C12C+Hs4G+3DqOud7u9mOt06DO5SGJvS6Luq/V6RCEve/3+87l8R2IvqLP5WGt0xKCuh+FuCeGtjOIsz2LsnG12GGs0m+013+93A6BupzM5IC93IzD31edwbHW6g+CvLvb7GCs0xCDvC+ItV6kxsTg76DN5UCax1OhyGSoym2qya3U6c/m8cDe7i+TxSCMwjGUxZDF4IC614G92o7E37DW6ZLG4SGJvJ/N5C+Muh2IvUuQshCDvUKPtT6TvX272+Tx99Dm8kaTue/2+r/d7Y/F4HG11zGQvw6DvSCKv2+01m+z1p7N5RKEvR+JvzGRwUCXw1KgyGCozGmv0/L4+w6CvL7d7VGkzmyqyZHD3ZHE39zt9UGdyy+UxsPg7j+cyh2LwV+ozrzc7IK+3C+NvUCQuL/e7R+IvWiv0yGKvi+Pv0OaxmarzjSRv1Shxx+Jvm6z1mKozE+jzpPF3xOFvx6LwiySxTOVx2mqzJLD3KLO5vH3+57M5ECcymCqzwyCvU6jzsHe7hKFvj6byiGMwn+uxp3J4Q2CvTCMuz+Ru2ev02ev1IC924/E4MDe7fP5+1+pzmCpzmWoyjCUxpTE3UCcyZ/M41OkzJXG3iCIvEKbx3683IK+3ePw92601zaTwjGQwFCjzZPF4EGcys3l8WCq0GKr0Gutzbzd7B+Mwmyry3esxprJ4aLO5LHX6u32+i+TxuDu9l+q0VKlz6/V6HWtyWCs0hCDvl+s0qHN5Gutzp7K4VCfx2asz3C01h+LwbLX6o7F4C+QwUSYw1aiyCH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAwAeACwAAAAAMAAwAIQAfLoPg70RhL4iib0oirwvi7lYp89aqdBhrtNttNdutddwtddxtth3udp7u9uBvtygzuWiz+al0Oaq0+i+3u3D4O7N5fHR5/LW6vTh7/fk8fjw9/v3+v38/f4AAAAAAAAF/6AnjmRpnmiqrmzrvnAszzTJXVQ9d5NiDADAQwezOAjBpJDY0hiU0CFTVQFCldLpKXINCgqGRVZLenQNEjL1eqioVZhr463aFKAWuuqpzOhTFlAQfykOSgiEKB1ISW6JJhNKBo8nCUpplCV8AAGZJlYABJ42kqMjF0oJpiKoSQtqC30oHKVkmwAqoAVqd0EDe0kCagJJkykKl1oSSgwqkcVatxMqi0qOOhVKBB0rhkkHTAdKDiyBSnM1DXgttwB5M+bQTaBBfjEZUAMaL9mCMBBXrrngAgWBQBQVEFyJMMPMFTQoJLQLMiZGvysBCBhIkMAAgQBdAByUgaFXyJMACiZgmLJhIsogBjaoMcIIJQEH7+jw6EhvwMYJ3DzduMBhldGjSJGGAAAh+QQJBAAVACwEAAQAJwAoAIQAfLoQg70hi8AvkcEyksFBmsdDnMhPostTpMxgrNJutNdyttiAvdyQxeCezeSgzuWu1ei+3e3O5fHg7/bv9/sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF/2AljmRJRpFkrmxLNYsRADQtOG1uUsxc/7SIbjhZ+IDAoQ5yRP4KyhbDSQsUEorCgBFdJZwDXHeoQBaE46ED2UgrJ8CAyj38/ub0nAQozucOT35DQHiCKxA/B4Y5djR9iyYEPxSQLD8DlSsUgZklET8JnZ6goiSbNVClI5yqFU2UkBQBBgwRlI0Aj4JrNaG8NAiVgDUQFac1aIJ7PyO4BosGiSNwP21+vzSFuADJacu9JRNNcm4RTQATJoh8Yw1IuiNTQAaFLBHRQFwt28APsKYPBDgJpaMMFQIGFiSQQQWAPjUNI1Yp1mUCP4kBFKRzI2EYRgb//EBIIPCHFQUNQgZWkoDCTQgAIfkECQMAEwAsBAAEACYAKACEAHy6D4O9H4rAIYvAM5LCQZvIUKPNX6zTYa3UcLXYgL3ckMXhoM3lr9bpvNzsw+Duz+bx4O/27/f7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABf/gJI5kOUbPI5ls20oNMgB0PSCNq5MRUv9AQAAR2bF6wWRNYDQ1AsrooklKRAmFRKJQqAVW1IkvWGCASRKGQRGeWIEFR9vICDLmRgnUC8EbD0B9fjoRQHeDOoA1BYg7ezRyjS0NPwaSLgY/h5cmMzVnnCQ/BKEmhYulJQ4/bKkjqzUHriMSP4yzIqO4IgI/oKmKNJuulKi4tT+RjQ4BCUUjwQC3jV00CIKnNcN4dT/PE9EAgngQQLInj0LjYRDpXyXFmm0LdixvtsouDtWsLuE0BsyYSMPvxzkX98hk2UIgSoImDNJFSRIgBxUJ/ybSOPAtTIQDEpVwlNTgQC8gAg4LNPh1SYIDByx1hAAAIfkECQMAAQAsBAAEACQAKAAACP8AAwgcSLDgwBKhQrEzyLChQXXpyjkDQLHiCnfnFjrcyK5dxY8gKbYLtdFgCU0hU4J0p66kQBkrVMq0GK1kOZnrNJlrh1JliY0eQ7aS0bIgOxk9KdZ0eE6oxo3RyAFoBzXkUpcCoxVlqC6mxZ9YwwatSDIs1lAgz5kN2+qjprVY1YEEC7dqxVZ1XbateDVvQ6kV/Zb8uE6wQ3ZuDTdEW9GcYoaIK759bDAx5YIfnV0uuO7j1s03K8rYPFCGZdJyPz7dPBaAO9ICI/M1HOqzwL0V6cI1TU53gBJeKa4ouxZ4RbUETadd2xQkcYGhP5JD57KEu5DIC7aWnG51bHRJP1I1bdhcpaZ25TRNVFmuZLTgM1OuGO1SHe74H1t5Lxlqu8x2+4XFzjmtwEfROuUQtRk7CfnmUEAAIfkECQQAAQAsBAAEACMAKAAACP8AAwgcSLAgwRo1jBhcyLAgO3rx5AGYSPHSAnoKGzZkF4+ix48T40XS6LAjyJMe42XU+E4iypcT5UXTWO/lpUvz6l1S89IeQ5Mf571bSTDagpPxDNoDuYAdyQDsLoGcOTAaSJ9PBy6lWI+gEZcx+WQtGEki1YFHPY4cW5CPWIKRPp5lqzHtxEt0nxr56DSvRqsUF/glaRfA3MEGpVJErNGjGsYM2XnEC9lg3MCVDe6tmNng5M4FPToATZAnRaKd53l8R1og4LutofKNrRpza8kesZJWTPEt6K8e5a2lixruVbpLDxOEB/JSX43s7A43WPvjxeJG3gEN23DrSTWX6sUpu9nzL1iYJ+WxJmmkOnqP854/jeQeZvzBRozypihvXrTiiBkRyXQaBQQAIfkECQMAAQAsBAAEACUAKAAACP8AAwgcSLAgwWTJShhcyJBhh2LEAEicOMxYh4YYB/44dmeix493jCXLaFCZsY8oUxZTRlIgnI4pY3q8E4dkIJmiiBULRGyYTGMYT6IcNmehsjkRUQJdKNQjsZEZfyT1GMggMpTIWg6cg+AjVIHKYEpEoFDrwBJdJ95hKbCYR7JmC5b4WExgso9w4lqdWOxHW6d6FxIjVlagWAB+A2ecA1hxRrcTizrGOBUA28kMPYrC3HDuRGKcGd6deCz0wtESQZsu+KPxaoIeh70uKMrj5dmQJeadLZDxZ95gvQIPkBuAat6tPWYFXhxA4dfK0kq883w1HJAXed/8SCwxxoRmm6c57nB7YAefx1uKp0gskDFitT1K1opMukyUa+MqW38fwO64yRRjX0wIHOOdYnMU4xN3xcy32g8IxRUQACH5BAkDAAEALAQABAAnACgAAAj/AAMIHEiw4MA9NWr4MciwoUM/QQwRAkCxoqA+MhxqLLjH0J2KIEPeCcRnY0M/eUKqXGloocmBMj6unAnyTsaXhmgKylOoUB5BNA2ZzKkyTxCXBCECVSnUIVGQeUpu5JMyZFODMkIOAvRyIKBBIW8mlUlxkNSuAvmArXgHqcCnAMyiLagWKkE+IbnOLQgo5J6BcPPsZViVYlM/ZAGcHTwQL9uFQewyNliYUMk+IINMNhgkD6C/ApdS3PwSpCDSG/+A7INao+qKelo7fE1RsGyGjmvfbgiS0G6GogG4/R2gUGbiBCNXtI08gJ+1FBcTD9xc4J681QMUBnBH+u7nNb3fQ85aUy9yuLXFt0ZPUdBRg35AM2ZvMY+hQD8BsN4sAzrNisPt5Qd9K2mGGh+F+LfSfrLJ0EdwFBFiiIHE+fHHH/J1FRAAIfkECQQAAQAsBAAEACgAKAAACP8AAwgcSLDgwBI1alAwyLChwwAUpjFzBqCixRXSov14yPEgM4sgQ1ZkVqJjQwrQRKoMKW2hyYFEVqyceZHIywAfV3KA1kwaxZnMTOYMCY2IS4IliKQUGfThUIvQNnKMxoGpQyIhVzy7SeGZTJA2DVL4WnFFyZsCS5AFsOLoQGkgzaJFulZawRQht84l+CzkWYHLQELba3BpxWUDKYSUSnjgj5Au+1q027igYQDRBMK1GLYyTJDNBP6s6LmgYqgCQTorXbCqxQB4UbN+C632MwqxKw6efVIwb4e+fzMEqUY4w9EA3BoPEJjzcr7Bn0NcLB1w9Ocl8lYPcFmu9LFx/y43xxr3tvTmxDM/Ry8Yjnje7EU6k9ZMPeuYNAEg5k1h88rdv5UQn2zG/RDNMmsBsJ1AuKXA2E0BAQAh+QQJAwABACwEAAQAKAAnAAAI/wADCBxIsOBACg8ejDDIsKHDABY6kPgAoKJFCRg0UHjIceADDBZDiqyIYWFHhhRIjFwpUsLGkwNBUGRJs+IHEDADgKQZYUIFCRxoYji5syUIkwQpgJCwcujDohY54ORogalIpwxBiPQQ4uVJDR5ETi1IYWZFD0hzjghr8YPXgVbPps0ZYIRIEgUfiNRA16AGkWkvhJTQl2FcABcOirRQ2KAFkS//WpzQ2HBIvgEEWxxbOWbIxAEyhHzbWWDIDKajljYY1GLqioRXEzz8gMJg2bNDWtB7ETfckAF4w/Yt8PBrAKiJB0AIIoTACMCVG5wQkrP0AJKHX1ese/tAzdq9Cz2viNk79bZzlVNgazM9ca0hP5S/Dv4i4+31L4IgjTt/SBEbSAcCeyIFKB0Fh1n0gHcj5OcecRRs8BMApQUEACH5BAkDAAEALAQABAAoACcAAAj/AAMIHEiw4EAToUL9MMiwoUOBHUZ9AkCxoqhRHUw83DiQj4sPFUOK/DBqIUeGJkaJXMkSlMaTA2WAZEkz5AcZMAOopPkJlAsXoCbSHHVyp8hPGQ2a6ACKJdGHRiuC4sORT1ORTxnKEIkAUM4AgBCIxGnwx0yKCKh+DcBHbMUPLwleRat2LVu3FF0U/CHSq92BgETW1Rky61+BcwFkNXEWwODDfGy+7BAS1GGDiTsIdBFS82WClCs+FUox7meBIT+htni6oKiQbCu3Jhg1YeHZAzlXtF3RE27EIXlTNNw6scbUvwO8riiQNIDfJpATrui5daiQegOEpmgZt8fXnk3gPnWcPECouFG7l+/Ydz1tm4+Ti4fvXuBWmyfqT68cH3dUqaG49x9FZK0nw3gI6BeACXMR594PoyBQoIIL4hYQACH5BAkEAAEALAQABAAoACUAAAj/AAMIHEiw4MAzaNAYXMiw4cAwZNYAmEhRzJgwDjMSRENmBcWPIFewuaGRIYQxIFOqJAOhJMETHlXK/LhCoUsyM9OIKUNGjJqZZUriTCkmTEuDYdKszFiGKMmMaMSkJNPQDEgPZlwKZJOSzUIIMSd6OKP1oAeaRwkOpUi2rNmPVAneAOnVLcEwIG0KXAtAjF2DUinGDQABZNu/A+dSXPHwo1/EBQNPxBiAb1bId+EK/EkxLWbCjgV+TPO5IOeJARRPfFxaoGQAN9B8HNN6YFOKCT/Wrf0ajeq+tV1/bPlRTfAAEikK71y7MEXjlT9SLm1VsEC8FXlLH3iW4lPMsocPP+TLGvLtiYMDhKd4GbMZzt8Folx8GDIEngYhdJ+4ov7xAFyBdMJ/aqUUFIF75YWgbdYtOBAaHnjgmYMQtFdbQAAh+QQJAwABACwEAAQAKAAjAAAI/wADCBxIsOBAE5kyGVzIsKFAE0FSmQJAseKdU0EYONw4MEWqiiBDUjylkeNCEx9FqgRJ0iRBFXdWyrQIx2UANjJVmVrFytTElVZMnlKZSsVJOKxUntpoRaSpkg4ZpATJpmEKkUZt4gyZtaCJmBZT2Bx4BCzFOyYM/qx4ZCzBqyBZFWQQsqpbglsrih2YtGKqu2rjDqQLEipggYQrpg2gAqSpwwanAsjal2JNyC9B/g1ACuRizA8dCwRZCnRBVSBHV3xseuBaACYSA2DdOsDrFHApbq79OoAJ0bVtpw4AklTwAKiG9679u6IqgZK7goYjmLFm3iCzNq9o+PCRkFArzzg2LVluR66Y81LsLhnA3rvfr3s1C+BOd5cMSln8nLmiecAm6OdeQ1vRdliAQTnESin8HWhSg8EFBAAh+QQJAwACACwEAAQAKAAkAAAI/wAFCBxIsODAHw8eBDDIsKFDAT/i2LkDoKJFOm3gmHjIceCDNhZDiqzY5kfHhibsjFwp0s7CkwPnUGRJs+IdODAFxKmJp40bPHRotjkJciQeOCYLmpiDZ+XQh0VD1sHJ8YdKkW8cwhmZNeebkXMYBphZEcGDnAMDIAh5Z2PBpiFfohX4QOTTgyLDziX4NS7BqADs7DUIl+RAEyKTDk4r0u1Wi4IXF7xaUS9gqpJjhowc1KLbzAIRXxQYkg7ogp0rkraI5zTBwgB+BAjZ2rVAwAlDurEtEPaPH7R5C4C9uqJp3nJCCqwT8jNo4KMFUAag9/SckE+vQ7YNm6poi3Ilz0FuPnB67czT7woYX1bx4L4W3QsoSkf+XPaGlSLYnRkOWQAI2AcRaNqFhJlwArhhF4JvWaQegxCt1RWEBM1RXUEBAQAh+QQJBAABACwEAAQAKAAmAAAI/wADCBxIsOBAIzVq/DDIsKFDgUSACAFAsaIQIESMPNw48AeQIhVDigQAZCFHhkaAjFwpsuRJgkFAspxJsQiRlwF2zPThY8cOH0Nm7jipciSQIBoLGgniYyWQjTpF+qjBsUZTkT0cEhkZBGeAIFwZ/pBJEcERrwKPIAhZJCnBohXPok3bsuAPkV3nDgQb0qRAuAB86C14leJTgUZEUh08sAbbgVsrCmb8NuTNAIDzUhbI17DAiRXdbk5ccYjAkKY3EwxaMQBpipNVCywM4Ifjiodl5wyZMGRW3Zh535UMPADt06WLs6YoEElI0ZSHU0TyN6TmzZ0BDA0Q2bNs2pcDrEFFEgP64NuhB8a4rpp27uICY4j0C/9IXfhpyQJAQB94dorhAWfVSNsV111I7wH3WkW/4RdcWezVZ5h5+PXQn0EBAQAh+QQJAwABACwEAAQAKAAnAAAI/wADCBxIsODAEn/+GFzIsOFAOLlgAZg48RWuWa5sOdx4UBLFjyABvKKlkeNCBrlCqvz4ahYDkwRvrZzJEg7MALNmxrqYC5eumbRMpgzZ6lbJgrdiqcy1kVZIXCU4/sEVMihDOCFv3QzgKuvJVx91Rd0a4M/Pjy8LDqU4lmyAEiCZEmQA0pXbmCDbBlgLANfdglQpthpoC6TCvwdBDpQpGHHBVh9t7v2o1fHij3LBUjxquTBFWQI/+rVMUCLFAJ4njiYtMPDEsphZD+SbMLbsyRT/pO57O4BrAKE/9/7dGhct3bd36+ptkPFEucwH/q4cHfZHzsx/Q4/eFW116xS39zAuoXmirrTMneeOXuL3RKuybdXyGFK8Zawr4cuGq5J67/roMafURK3oFR0tuUjGUUAAIfkECQMAAQAsBAAEACgAKAAACP8AAwgcSLAgwRIlDCpcyFAghDC5fgGYSPFXrjAQGmocWEISxY8gJ0pKuFEhg1whU4LMxaAkQSK9VMqk2IuIywDBZPrytWvXTpnBSqIMeTFjwYdDV2rMCdIXyYYlfIUMupBIyDA3A4QJadMgg5gUhfHKKpCXsI+9WhZMOnEs2bJKD4LE+nbg1o9PA+z66KtuQakUdw2EADKv3xIgjd6dmMuvQbZ0ITsuuBhA4wASKRqd7PDjL4F8Of/9CJpiX9EDAU8MgDgw6oF7KRp+DRsvbYWqAdzGTXo3QcIUN/kmWPny8ACSj7fWfDxAbsHHKwOY/ZpXXN+8wE4Upna3dABdb0conXobaUrjk3lJ+qmSqmhgM4WFfy+T5W34IXdR54wfwKaixzGwn0YBAQAh+QQJBAACACwFAAQAJwAoAAAI/wAFCBxIsODAGjUCGFzIsCGFEzto6ABAkeIMHDYaaixIAcXEiiBD4lC4ceGNHR9DqgSJ40ZJgjZSrpxZMcdLASho6qCBIyIPmjtK4ljJw6ZBCjmGqsShcYdKGilKBqChEgXDHCpP3BSINWTGgjdC6iC5VUAAmTpcElRakWxZASlEEgwQ0ujbgSdCqhXAFgCNuwapVmQqMKRbwHBDUhBggyXiwCBt9rX7mKtjCilQ4NCxuPJACiB1eN4omOJojaUBnG7YN+pqg61fQ64o2+AMkLUJgq7II/fArhQJ++77NTdd3L4FpBZeGzjFw6uPD/adQiaAva/z1q2dIjVFq6uR3i5e+hgFDxo7cEikCR6x95k6iiOmWVHHDuyA4+pE0dlzjvH1oXdCf68FkIJrbwUEACH5BAkDAAEALAYABAAmACgAAAj/AAMIHEiwYIAfDx5QMMiwYUMKNpQwAUCxIhMlNhxqJPhDScWPIAEsUfJjI8OOIVOCVLLQpEAbS1TKrLikiksoMps8kSLlyROZVjZ6DPmkSkuCFKpESanEoRSiD0w++AlSCsMqIW26FIgVZEakMStSGbGV4AgqH5eUHLj0I9myZkFGGfgDpFa4BK+AXPujLYAneBlSpTiXrhQqUQMXfADyqGKNgwF8fayxK2HKG+taxLyxyUfOkD+DbugXQOLRBZ9WPI16YOS1rQc6ER1bIIWPTWoPtAygsO7Sk2MzFqtbYGTfsXkDgN16hFzdI8JSpOJ4tF67wiNTnAJ3SpQk1QNQNEii/XJZCtJ9QoHyZLZKq91npqQSfOtE+R+jMN/aFy1+/ZzZEMV9HzERhQ3hcUZBQgluFBAAIfkECQMAEQAsCAAEACQAKAAACP8AIwgcSJBggAcPGBRcyLBhBAgJCjgAQLEiggUHFDrcyIBAxY8gKRJ4sHFhgAEhU4JcAKGkwAYIVMq0qKBkAZkOBhgggFLmAYceQy5o0LIggwY9QRJgeECoxo0KBIQsUPBByJouBzYF2aCgAYsBslaNafGpwABSSYotGGDlQghd1y7cWtGs3I0LPi6967Ltx6J8NyYFEDewQwUfqRp2yOCjg8UbJ1aE7HAw5YaD7V6OcLOi2s0DM4MmKJni6IEQHJ8WiLjigtUR8lbEOtpvRcCgB+8dTZdi2NENQCoGHYAsRQS4C0KgnbU3xcIMPQpg3jCA7I8/HfYekEAzAwWDK+40Zmg75AACBQaUnlpSgfGZKRFAdwjhOvyPCzRvfBD0PgH9WTFwwALvUeRAAUSNxgBCv8kVEAAh+QQJBAABACwJAAQAIwAoAAAI/wADCBxIkCAYMBQKKlzI8EYQLl0ASJyI5UuQhAwzBrjBZaLHjxK5bNFYkCPIkx+5YNSYJSLKlxK7BNFo5SUWLFxwYGHy8kTGElpSZllJMMiXk1wybpn45QbJjVhAWskYBIDPpwNPgBzJkCjWAFuCTuzi9evPj1/MftXq0anap0cnJn1L8sZHt3QzRp04M2/GLB7n+l1IwSOTwRm9eETMcK9ExgsdAyjLWDJXyAMlU0bMcyJmgoUpfh5YlelogXEl9v1s1+Nmv5IFY2Y78bLALSX8Ag5csGoX219LuJSohSgOj1fXglwdoLRHLHgz3kg9MfnAjiAtlqWQBXtKhrRBMivBgoPLzZdTqYqFiVJLlqcUvLMPHJ3kFvkwudT/SsGoZOJcXPQZBVsA91VAACH5BAkDAAEALAcABAAlACgAAAj/AAMIHEiwYIAHD0oYXMiQYRBu1QBInKiNS5CGGAdiu9ZlosePXbg8yLgQxMeTKLlRIEmQQkeUMCV2OcFyYJCP1KpxyVZtW0wuNQVG3HbRIIUgEU8CrVliZEZsST1mCxo0yMuJTqmSLHEVQJeVWrd+XBo244mP2MqSjAqArFqGDz6CfcuQbVG6JT26xdvSIzW+DH1OBLyQLWGDbLMeDpDNo+LDbNMuFkjN42SBFDxWuxzg5sS9hO1exuaxC8ES1TbjZbsUG5eJNN96xiqQ20eFZbnqHeiyNG6quid+JWiy9F2WZz/GJtj4YzXJGB+wlQha4OuT1YLMJRhEG8rqA6+jLtRWDQqXapVhTjXbNSbKLo8bUrDt/vt2lg+4tH9vDXrZIFwIphk3xwGGDUJlBQQAIfkECQMAFAAsBQAEACcAKACEAHy6D4O9EIS+H4vBL5DBRJjDUJ/HVqLIY6nNZqzPcLTWjsXgkcbhn83kstfqvd3tw+Du0efy3u728Pf7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABf8gJY5kKUoQNJls61JNMgB0TRzOq5tG7fsCRWS3a/yOtcSK2Jogn4Ick9UjFBSKAuEJSExNkiVp0tgevV9mpHBOTxeBn9S9i8RrAjH9ZfcV9kQLPxKAO2w1CIU6EUB6iiaHNA2PLkY1CpRNPgSZLTM1nSyRAI6how+hJQo+qKkjPTWtrhSfNLMjmyMRDAWTlJY0iRG1f5SjkxN3NEOKjDUBSwh+j6OJJz8LhYI+zCKjAt1pEQI+mGPKAOBu4z7QJg4/AgxfDOQ+cyXSPwXhLWtH1lro+0GgQSkyoxDtGHjESoIsZpAE1OEAHRckAfDtmMDwop9SRCIosIgRASFFDgwORKwxAIFBVxMePDj5JQQAIfkECQQAAQAsBAAEACgAKAAACP8AAwgcSLDgwBGZMlEwyLChQ4MAIkZcIWmOpYcYH2KSyBEApxEZQxLU1LGjpIUiM3Iq2XFFg5QY50yStJFlRE4wRY5oQLIkzpwi52zyCVQkBUoeOr4sGnJEUokrUDLF6JSjpKkhK3UEiRVjz5tdMVrqKDUsw68A5ph12IDjpLUNKXDUBLfhUIl1z3LMaxAt34JoLR29RPgqXLSdAnDcVPduRIE1I5btyhGTwJUSl4ZtK/GnVomX1l7iWEmgXI4Xu47lKBVzxNBdR3cmOKJj6amfJXIdiHbF7py1rRqk8HTib50rOHqYLJAzVErMHVZKzlGzQdcSN6kVK5vjT4fYQTc8OB6AQoPu3kOG74hJ0qRLjomKbFDcpn0P1kNSkGTf/kmmI6xn00dhWTIHJ/VFpMkkc0QXFgWddJIaTAEBACH5BAkDABMALAQABQAoACcAhAB8ug+DvRCEvh2KwSONwzGUxj6ayUOdylCiy2GozGioyJTG357M5K3U6LLX6sTg78/m8t/u9u/2+gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAX/4CSOZGlOwJEs0um+MATMcwLBOP7Q/NHmQBKDxxM0gkjGgMhLIJGShoEJcD6RkSnReg0uAsRjNwgB0wS/cU7GQ6i9xNs7p63NcxFi+u6qAxZ8MA1NgTA8BSILDg97gUs0IjwGhSJ+jJKUE34ROzSTlH4TnTOfhaEoNIiUBDwiBa2FEpgTCDxifIM0Cok9hQc8DCKyPBF8eTxpCb13vzRcokSAbwtxJbVncl0QAm0mEmYzAtlI2zwBjSK5Z9JAEtRhL8pEB8U4DKxbOPLzDugQDs3y5djHhMABBQheUbETpAG4hRAD3AoiwQ9EIgjQkSF40QYfCQwUWAQQIAGDepkmBXBi1CUEACH5BAkDAAEALAQABQAoACcAAAj/AAMIHEiwoMGCJg4qXMiQoIwVMCw0nEgRBoCLLxJS3GhwxcWLK2RwHBlAxseTMEhuTPHi5MeUKimWaOkSZsyJMRC4FHlzYgmdH1do7Mnw50kXRHG6LJG0Ic2LNk2kaFqwxEmhAlUAYOGCKdUATwGoEOji5FSqWl8KbHFyaNOTLQSeZPFVIIuTAax+fFE3gMWPKVKg7Pv3YuCTKPqGPay2btiEcPve/bgW71cLkf2eHIv2aNaTfKmG5WwC6EWvRPVeRDC0MIDQRMPazOsyBtEYLiUSdL0CNckSHvcaLH3V90bgJ1kfNHn1xMgTwT/yPOgao/GDM10CmE1d+2sVbgWaOlDBVjt3hdXhvnAB48Vk7+cXyjDtvf7q6RtNhLXv0kV4jhbAQF99CHTV1HgwvPdRCzDg15cFgf03UUAAIfkECQQAEwAsBAAHACgAJQCEAHy6D4O9EIS+HYm/IIq+MY++QZfCU53CaK/ScLTXgL3ckMbhnczko8/mr9Xpvd3tz+bx4e/28vj7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABf/gJI5kaZ6TI6Fs20aC8Lh0jQB4Uu/ng/8InlCU+AGHwoURt0DyIAGjYFVCJKjOEdQYJEVwBEeWxFjORrefbiwycEeSJYQt+v4Eo/LPQB+5fwwiaThifRN6OF0ERlh0cXsiRgWGIwNGE3Y4fJQTfzgRPj8HnBNFPw+hOAqkngAPmQCblK0rRgSkBZedjJSPOAOCRoGGDm+HRrJ0rcMTUT8Rfak4WIOxfa1dItIAhVlKRtAkB1JzThBL2XDOOALlQhACRgGNI99GTTwN8UZnJ9Wa/VhEaJXDxT8cBRqckNCAYKIappaAMWDFQC6JD3c8WIexI44A+HhIOOgRCD0eERQUcOwYAEHAMQwOOCyAgBkpba+QhAAAIfkECQMAEwAsBAAJACgAIwCEAHy6DoO9EYS+HovBMJTGQJzKUqPMYqnOaKrMksTdksXek8bgn83loM7lsNbpwN7u0Ofy3Oz18Pf7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABf/gJI5kaZ6khJbq6qbE8SZE+7oFACjro9e31UGnY5wkAiIhEjRFAkSAwDbKRSFNky8qI0Wiu+xJAX6QhkSDGGXVdSffKHPtBLcY0QIdZYgaJ2g6DnsneGkiA1FUhCISeSJRBIwniUSQRHqTJW0AEnE6mZpVUQ9bOmqio5aOmKmqOpc6A64iBFEinLSssiJ9RH+iDlwihqeunH+7OnOTEGDMgQChjL5uJKZFk2RyJdU6ZnvOUagpUEQCWGsOSUQBi8RgAAtiC/HgY/EGzCsRnDoJL6IROeDgnYQG3gYGQRAPU4EDCApUasijiQNzDTO2A9YkgkCNXN51/JjxwD1GERgNHMCIyQADkalKwXQRAgAh+QQJAwARACwEAAgAKAAkAIQAfLoPg74ei8EgjMIwlMZAnMpTo8xiqc5rrM2SxeCfzeShzuWw1um93e3R5/Ld7fXt9foAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF/2AkjqKikGiqrmoCBA8rz+gB3AWts8jtJ7vgiOHznYSpWMoRKAYayBQiAEkVigBHlPQg3BCoB/a4jTCL2pHNZyiTrr7DCIJVus3YaoTIvpMMRUc9Pgx+IwpFbRFePnqGdD4EIkWShiOMN5M+OZYicDcPDkWcnYM3DQ1FQJ0RnwAPYpusrUWaN5WdA7URAkWOfrG3IoBGnYg+YBHHN4qGroURkD5pd6K+I8Q4htkAciPWP3cuRXYiaz5QW+A33iQQTT4B1EEM8DcwKsvhQeNF0C1YABgot2KBLizJWJwbtYBghAcMXMXRYSoggQIIDkjEskpHvYAgQQYgs8MBt5ABDxv8EvJgIcpu6e5AYIAAkw8BBhI4tOQA1c4ZIQAAIfkECQQAAQAsBAAGACgAJgAACP8AAwgcSDAAA3EFEypcyDCAn3AAAHxrSLFigDkrIgIAZ7FjQnEaNfrxSBJiyIgJSHYEedLbOJUWE5wEMAemRQYZNSKYaLMiuJM8ezZkcLKmUIo/NXo7mrCDq4F+Tr5k6tDVLwArBspUSlWgpJApAySNaJTqnJAcA1wV2dVhSGcC37YV6CykW65zvYVkMA7t3AAsI47rq/Hp3LEAxhHF21avxrga4c6t+1htyJFdF0f85TVkWaZnNSIMsDWipMZgByIIOfUoYbYCES9l6jhiWoGayR7tdpJBQcQSe347eRvqao0rgnr8ljMiAt8JQ3smKV1jWIWBlbZmOK62aKQzAXg+64CZoJ8OX2cWZ5j9pDNv4sJ5837ScMzj4fPr/HwTuH605anEgH/hIQAOdEf5kQA4a4X0CzjX/eXQYAF2FBAAIfkEBQMAAgAsBAAFACgAJwAACP8ABQgcSJAgEUcoCipcyJBhAEYAIi5qSLGiwB+OImoEYLGjwkMbNwbwSNJFyI2RSHbMeJLRoUcqLaI4uWhkTItETh662fEHoo2QbPKs2Cik0KENf4QEhNRiUY0Tm1J8FDKl1IYgNTK6SvFpxJ1cGf7UCDPsIyI9FkXdGDVsoo0CqEINK3AR3EgbG9EV4BVAJLwa9dLtG0muxL12NQrcqAgxXAGKNpa9ahgAJIF9wV7NGlFwTq1hE38daPQqYLIDIc6VKhqAYIEBQmrmCSjkj4J9ARxVebqzQqUbEVlVGWBsREi3P548oZKzxuEKTYZcBN1h64gJu54EkCjM5IGPwqg8Dvma4sztABAtcuRiUWT02TsSgYS+/sbZPV3Qt3+yUfKbj6CwH3+M7MbTI4C0N2BEiTRCxF4F/WWgRQEBADs='); + background-size: 24px 24px; + border-radius: 2px; + content: ''; + height: calc(100% + 2px); + left: -1px; + position: absolute; + top: -1px; + width: calc(100% + 2px); + } +} diff --git a/mailpoet/assets/js/src/common/index.ts b/mailpoet/assets/js/src/common/index.ts index 326f7b1d1e..8e7d0c4d0f 100644 --- a/mailpoet/assets/js/src/common/index.ts +++ b/mailpoet/assets/js/src/common/index.ts @@ -11,3 +11,4 @@ export * from './listings'; export * from './error_boundary'; export * from './functions'; export * from './utils'; +export * from './thumbnail'; diff --git a/mailpoet/assets/js/src/common/utils.ts b/mailpoet/assets/js/src/common/utils.ts index 9790a3fe58..49313b2c28 100644 --- a/mailpoet/assets/js/src/common/utils.ts +++ b/mailpoet/assets/js/src/common/utils.ts @@ -1,4 +1,3 @@ export const getLinkRegex = () => /\[link\](.*?)\[\/link\]/g; export const isTruthy = (value: string | number | boolean) => [1, '1', true, 'true'].includes(value); - diff --git a/mailpoet/assets/js/src/newsletter_editor/components/save.js b/mailpoet/assets/js/src/newsletter_editor/components/save.js index ccc051bff6..e02724f617 100644 --- a/mailpoet/assets/js/src/newsletter_editor/components/save.js +++ b/mailpoet/assets/js/src/newsletter_editor/components/save.js @@ -6,7 +6,7 @@ import Marionette from 'backbone.marionette'; import $ from 'jquery'; import Blob from 'blob'; import FileSaver from 'file-saver'; -import * as Thumbnail from 'common/thumbnail.ts'; +import { isTruthy, fromNewsletter } from 'common'; import _ from 'underscore'; import SuperModel from 'backbone.supermodel/build/backbone.supermodel'; @@ -99,7 +99,7 @@ Module.save = function () { }; Module.saveTemplate = function (options) { - return Thumbnail.fromNewsletter(App.toJSON()).then(function (thumbnail) { + return fromNewsletter(App.toJSON()).then(function (thumbnail) { var data = _.extend(options || {}, { thumbnail_data: thumbnail, body: JSON.stringify(App.getBody()), @@ -116,7 +116,7 @@ Module.saveTemplate = function (options) { }; Module.exportTemplate = function (options) { - return Thumbnail.fromNewsletter(App.toJSON()).then(function (thumbnail) { + return fromNewsletter(App.toJSON()).then(function (thumbnail) { var data = _.extend(options || {}, { thumbnail_data: thumbnail, body: App.getBody(), @@ -573,6 +573,9 @@ Module.NewsletterPreviewModel = SuperModel.extend({ previewSendingError: false, previewSendingSuccess: false, sendingPreview: false, + mssPendingApproval: window.mailpoet_mss_key_pending_approval, + mssKeyPendingApprovalRefreshMessage: true, + awaitingKeyCheck: false, }, }); @@ -588,6 +591,7 @@ Module.NewsletterPreviewView = Marionette.View.extend({ return { 'change .mailpoet_browser_preview_type': 'changeBrowserPreviewType', 'click #mailpoet_send_preview': 'sendPreview', + 'click #refresh-mss-key-status': 'refreshMssKeyStatus', }; }, initialize: function (options) { @@ -606,7 +610,11 @@ Module.NewsletterPreviewView = Marionette.View.extend({ this.$('#mailpoet_preview_to_email').val() || window.currentUserEmail, previewSendingError: this.model.get('previewSendingError'), sendingPreview: this.model.get('sendingPreview'), - mssKeyPendingApproval: window.mailpoet_mss_key_pending_approval, + mssKeyPendingApproval: this.model.get('mssPendingApproval'), + mssKeyPendingApprovalRefreshMessage: this.model.get( + 'mssKeyPendingApprovalRefreshMessage', + ), + awaitingKeyCheck: this.model.get('awaitingKeyCheck'), }; }, changeBrowserPreviewType: function (event) { @@ -712,11 +720,11 @@ Module.NewsletterPreviewView = Marionette.View.extend({ )}

${MailPoet.I18n.t( 'newsletterPreviewErrorSignUpForSendingService', @@ -744,6 +752,31 @@ Module.NewsletterPreviewView = Marionette.View.extend({ }); return undefined; }, + refreshMssKeyStatus: function () { + this.model.set('awaitingKeyCheck', true); + + return MailPoet.Ajax.post({ + api_version: window.mailpoet_api_version, + endpoint: 'services', + action: 'checkMSSKey', + data: { + key: window.mailpoet_api_key, + }, + }) + .done((response) => { + this.model.set('awaitingKeyCheck', false); + if (response.data && response.data.result.code === 200) { + this.model.set( + 'mssPendingApproval', + !isTruthy(response.data.result.data.is_approved), + ); + this.model.set('mssKeyPendingApprovalRefreshMessage', false); + } + }) + .fail(() => { + this.model.set('awaitingKeyCheck', false); + }); + }, }); App.on('before:start', function (BeforeStartApp) { diff --git a/mailpoet/tests/javascript_newsletter_editor/newsletter_editor/components/save.spec.js b/mailpoet/tests/javascript_newsletter_editor/newsletter_editor/components/save.spec.js index 6f0934a94c..0015ced7df 100644 --- a/mailpoet/tests/javascript_newsletter_editor/newsletter_editor/components/save.spec.js +++ b/mailpoet/tests/javascript_newsletter_editor/newsletter_editor/components/save.spec.js @@ -278,7 +278,7 @@ describe('Save', function () { }, }, 'newsletter_editor/App': { App }, - 'common/thumbnail.ts': { + common: { fromNewsletter: function () { return promiseMock; }, diff --git a/mailpoet/views/newsletter/editor.html b/mailpoet/views/newsletter/editor.html index d19fed0b4b..1e0b95eaf7 100644 --- a/mailpoet/views/newsletter/editor.html +++ b/mailpoet/views/newsletter/editor.html @@ -374,6 +374,7 @@ var mailpoet_email_editor_tutorial_seen = '<%= editor_tutorial_seen %>'; var mailpoet_email_editor_tutorial_url = '<%= cdn_url('newsletter-editor/editor-drag-demo.20190226-1505.mp4') %>'; var mailpoet_installed_at = '<%= settings.installed_at %>'; + var mailpoet_api_key = '<%= settings.mta.mailpoet_api_key %>'; <% endblock %> diff --git a/mailpoet/views/newsletter/templates/components/newsletterPreview.hbs b/mailpoet/views/newsletter/templates/components/newsletterPreview.hbs index 785cbafd2e..a80dc0df3c 100644 --- a/mailpoet/views/newsletter/templates/components/newsletterPreview.hbs +++ b/mailpoet/views/newsletter/templates/components/newsletterPreview.hbs @@ -57,8 +57,11 @@ {{#if mssKeyPendingApproval }} -

+
<%= __('You’ll soon be able to send once our team reviews your account. In the meantime, you can send previews to [link]your authorized emails[/link].')|replaceLinkTags('https://account.mailpoet.com/authorization', {'target': '_blank', 'rel': 'noopener noreferrer'})|raw %> + {{#if mssKeyPendingApprovalRefreshMessage }} + <%= __('If you have already received approval email, click [link]here[/link] to update the status.')|replaceLinkTags('#', {'id': 'refresh-mss-key-status'})|raw %> + {{/if}}
{{/if}}