PageSourceSearch

https://choiceliteracy.com/wp-content/plugins/membermouse/resources/js/user/mm-preview.js?ver=3.0.35

js choiceliteracy.com collected 2026-10-02 11:28:35 UTC 5,889 bytes, 169 lines download raw bytes

1/*!
2 * 
3 * MemberMouse(TM) (http://www.membermouse.com)
4 * (c) MemberMouse, LLC. All rights reserved.
5 */
6var MM_Preview = MM_Core.extend({
7    savePreview: function () {
8        var form_obj = new MM_Form('mm-preview-settings-bar');
9        var values = form_obj.getFields();
10        values.member_type_id = jQuery("#mm-preview-member_type").val();
11        values.mm_action = "savePreview";
12        values.preview_access_tags = this.getAccessTagsFromField();
13        values.mm_preview_days = jQuery("#mm-preview-days").val();
14
15        var module = "MM_PreviewView";
16        var method = "performAction";
17        var action = 'module-handle';
18        jQuery("#mm-preview_btn").attr('disabled', 'disabled');
19
20        var ajax = new MM_Ajax(false, module, action, method);
21        ajax.send(values, false, 'mmPreviewJs', 'handleSave');
22    },
23
24    enableChangeButton: function () {
25        jQuery("#mm-preview_btn").removeAttr('disabled');
26    },
27
28    hideNonMemberItems: function () {
29        var memberTypeId = jQuery("#mm-preview-member_type").val();
30        if (memberTypeId == "none") {
31            jQuery("#mm-preview_btn").removeAttr("disabled");
32            jQuery("#mm-show-at").hide();
33            return true;
34        }
35        return false;
36    },
37
38    changeMembershipLevel: function () {
39        var memberTypeId = jQuery("#mm-preview-member_type").val();
40
41        if (memberTypeId == "none") {
42            jQuery("#mm-preview_btn").removeAttr("disabled");
43            jQuery("#mm-show-at").hide();
44            jQuery("#mm-preview-access-tags").hide();
45            return true;
46        }
47        else if (memberTypeId == "") {
48            jQuery("#mm-show-at").show();
49            return false;
50        }
51        else {
52            jQuery("#mm-show-at").show();
53        }
54
55        var form_obj = new MM_Form('mm-preview-settings-bar');
56        var values = form_obj.getFields();
57        values.member_type_id = memberTypeId;
58        values.mm_action = "previewChangeMembership";
59
60        var module = "MM_PreviewView";
61        var method = "performAction";
62        var action = 'module-handle';
63
64        var ajax = new MM_Ajax(false, module, action, method);
65        ajax.useLoader = false;
66        ajax.send(values, false, 'mmPreviewJs', 'handleUpdate');
67
68    },
69
70    changeBundles: function () {
71        var form_obj = new MM_Form('mm-preview-settings-bar');
72        var values = form_obj.getFields();
73        values.member_type_id = jQuery("#mm-preview-member_type").val();
74        values.mm_action = "previewChangeBundles";
75        values.preview_access_tags = this.getAccessTagsFromField();
76
77        var module = "MM_PreviewView";
78        var method = "performAction";
79        var action = 'module-handle';
80
81        var ajax = new MM_Ajax(false, module, action, method);
82        ajax.useLoader = false;
83        ajax.send(values, false, 'mmPreviewJs', 'handleUpdate');
84    },
85
86    getAccessTagsFromField: function () {
87        var preview_access_tags = "";
88        var count = 0;
89        jQuery("select[name=preview_access_tags\\[\\]] :selected").each(function () {
90            preview_access_tags += jQuery(this).val() + ",";
91            count++;
92        });
93        jQuery("#mm-applied-tag-count").html(count);
94        return preview_access_tags;
95    },
96
97    startPreview: function () {
98        document.location.reload();
99    },
100
101    showAccessTags: function () {
102        if (jQuery("#mm-preview-access-tags").is(":hidden")) {
103            jQuery("#mm-preview-access-tags").show();
104        }
105        else {
106            jQuery("#mm-preview-access-tags").hide();
107        }
108    },
109
110    handleSave: function (data) {
111        if (data.type == 'error') {
112            alert(data.message);
113        }
114        else {
115            document.location.reload();
116        }
117    },
118
119    handleUpdate: function (data) {
120        if (data.type == 'error') {
121            alert(data.message);
122        }
123        else {
124            this.enableChangeButton();
125            if (data.message.access_tags != undefined) {
126                jQuery("#preview_access_tags").find("option").remove().end().append(data.message.access_tags);
127            }
128            if (data.message.days != undefined) {
129                jQuery("#mm-preview-days").find("option").remove().end().append(data.message.days);
130            }
131        }
132    },
133
134    syncIframesForAdminAccess: function () {
135        try {
136            var url = (window.location != window.parent.location)
137                ? document.referrer
138                : document.location.href;
139            if (url.indexOf("wp-admin") > 0 && url.indexOf("customize.php") < -1) {
140                jQuery("#mm-preview-settings-bar").hide();
141                var newURL = window.location + "&mm_preview_admin=1";
142                if (window.location != newURL) {
143                    jQuery("iframe", window.parent.document).each(function () {
144                        if (jQuery(this)[0].hasAttribute("src")) {
145                            var src = jQuery(this).attr('src');
146                            if ((src != null) && (src != undefined) && (src.indexOf("mm_preview_admin") < 0)) {
147                                var connector = (src.indexOf("?") > 0) ? "&" : "?";
148                                jQuery(this).attr('src', src + connector + "mm_preview_admin=1");
149                            }
150                        }
151
152
153                        if ((jQuery(this).location != undefined) && (jQuery(this).location != null)) {
154                            jQuery(this).location.reload();
155                        }
156
157                    });
158                }
159            }
160        }
161        catch (err) {
162            console.log("syncIframesForAdminAccess error:" + err.message);
163        }
164    }
165});
166var mmPreviewJs = new MM_Preview("MM_Preview", wp.i18n.__("Preview", "membermouse"));
167jQuery(document).ready(function () {
168    mmPreviewJs.syncIframesForAdminAccess();
169});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.