source: extensions/Piwecard/template/ecard.tpl @ 20421

Revision 20421, 9.7 KB checked in by julien1311, 7 years ago (diff)

[piwecard] email preview in admin

  • Property svn:eol-style set to native
Line 
1{include file='include/colorbox.inc.tpl'}
2{combine_script id='piwecard' load="footer" path='plugins/Piwecard/js/piwecard.js'}
3
4{footer_script require="piwecard"}{literal}
5jQuery(document).ready(function(){
6        jQuery("#createECardOpen").colorbox({
7                inline:true,
8                href:"#addECardForm",
9                width:"50%",
10                minWidth:"500px",
11                height:"90%",
12                onComplete:function(){
13                        {/literal}var nbMaxRecipients = {$ecard.nb_max_recipients};{literal}   
14                        $("#cboxLoadedContent").css('background-color', $("#thePicturePage").css('background-color'));
15                        $(".ecard_defaultText").each(function(){
16                                defaultTextFocusOut($(this));
17                        });
18                        if (nbMaxRecipients <= 1)
19                                $('#ecard_add_recipient').css("display", "none");
20                }
21        });
22       
23        jQuery(document).on("focusin", ".ecard_defaultText", function() {
24                defaultTextFocusIn($(this));
25        });
26   
27    jQuery(document).on("focusout", ".ecard_defaultText", function() {
28                defaultTextFocusOut($(this));
29        });
30       
31        function defaultTextFocusIn(element) {
32                if (element.val() == element[0].title) {
33                        element.removeClass("ecard_defaultTextActive");
34                        element.val("");
35                }
36        }
37       
38        function defaultTextFocusOut(element) {
39                if (element.val() == "") {
40                        element.addClass("ecard_defaultTextActive");
41                        element.val(element[0].title);
42                }
43        }
44       
45        $('#ecard_add_recipient').click(function() {
46                var num = $('.ecard_name_recipient').length-1;
47                var newNum = new Number(num + 1);
48                {/literal}var nbMaxRecipients = {$ecard.nb_max_recipients}-1;{literal}
49               
50                if (newNum <= nbMaxRecipients) {
51                        var newRecipient = $('#ecard_field_recipient_' + num).clone().attr('id', 'ecard_field_recipient_' + newNum);
52                       
53                        newRecipient.find('.ecard_mandatory_fields').remove();
54                        newRecipient.find('.ecard_error').css("display", "none");
55                        newRecipient.find('#ecard_recipient_name_' + num + '_error').attr('id', 'ecard_recipient_name_' + newNum + '_error');
56                        newRecipient.find('#ecard_recipient_email_' + num + '_error').attr('id', 'ecard_recipient_email_' + newNum + '_error');
57                        newRecipient.find('#ecard_recipient_name_' + num).attr({
58                                                                                                        id: 'ecard_recipient_name_' + newNum,
59                                                                                                        name: 'ecard_recipient_name[' + newNum+']',
60                                                                                                        value: ''
61                        });
62                        newRecipient.find('#ecard_recipient_email_' + num).attr({
63                                                                                                        id: 'ecard_recipient_email_' + newNum,
64                                                                                                        name: 'ecard_recipient_email[' + newNum+']',
65                                                                                                        value: ''
66                        });
67                        newRecipient.find('#ecard_recipient_name_' + newNum).removeClass("ecard_error_input");
68                        newRecipient.find('#ecard_recipient_email_' + newNum).removeClass("ecard_error_input");
69                        defaultTextFocusOut(newRecipient.find('#ecard_recipient_name_' + newNum));
70                        defaultTextFocusOut(newRecipient.find('#ecard_recipient_email_' + newNum));
71                       
72                        $('#ecard_field_recipient_' + num).after(newRecipient);
73                }
74                if (newNum == nbMaxRecipients) {
75                        $('#ecard_add_recipient').css("display", "none");
76                }
77        });
78});
79
80function piwecard_checkForm(form) {
81        var titleOK = piwecard_checkField(form.ecard_title, 0, 'block');
82        var messageOK = piwecard_checkField(form.ecard_message, 0, 'block');
83        var senderNameOK = piwecard_checkField(form.ecard_sender_name, 0, 'block');
84        var senderEMailOK = piwecard_checkField(form.ecard_sender_email, 1, 'block');
85        var recipientNameOK = new Array();
86        var recipientEMailOK = new Array();
87        var nbAdditionalRecipients = 0;
88        var allRecipientNamesOK = false;
89        var allRecipientEmailsOK = false;
90       
91        while(document.getElementById("ecard_recipient_email_" + nbAdditionalRecipients)) {
92                var id_name = "ecard_recipient_name_"+nbAdditionalRecipients;
93                var id_email = "ecard_recipient_email_"+nbAdditionalRecipients;
94                recipientEMailOK[nbAdditionalRecipients] = piwecard_checkField(document.getElementById(id_email), 1, 'block', true);
95                if (nbAdditionalRecipients == 0) {
96                        recipientNameOK[0] = piwecard_checkField(form.ecard_recipient_name_0, 0, 'block');
97                        recipientEMailOK[0] = piwecard_checkField(form.ecard_recipient_email_0, 1, 'block');
98                } else if (recipientEMailOK[nbAdditionalRecipients] && document.getElementById(id_email).value != '') {
99                        recipientNameOK[nbAdditionalRecipients] = piwecard_checkField(document.getElementById(id_name), 0, 'block', true);
100                }
101                nbAdditionalRecipients++;
102        }
103       
104        for (var i=0; i<nbAdditionalRecipients; i++) {
105                if (recipientNameOK[i] && recipientEMailOK[i]) {
106                        allRecipientNamesOK = true;
107                        allRecipientEmailsOK = true;
108                } else {
109                        allRecipientNamesOK = false;
110                        allRecipientEmailsOK = false;
111                        break;
112                }
113        }
114       
115        if (titleOK && messageOK && senderNameOK && senderEMailOK && allRecipientNamesOK && allRecipientEmailsOK)
116                return true;
117        else
118                return false;
119}
120{/literal}{/footer_script}
121
122<div style="display:none">
123        <div id="addECardForm">
124                <form method="post" onsubmit="return piwecard_checkForm(this);">
125                        <fieldset>
126                                <legend>{'piwecard_send_stage1'|@translate}</legend>
127                                <div class="ecard_field">
128                                        <div class="ecard_error" id="ecard_title_error">{'piwecard_error'|@translate} {'piwecard_error_text'|@translate}</div>
129                                        <span class="ecard_label">{'Title'|@translate}<span class="ecard_mandatory_fields">*</span> :</span>
130                                        <span class="ecard_input_right"><input name="ecard_title" type="text" id="ecard_title" class="ecard_defaultText" title="{$ecard.title}" onblur="piwecard_checkField(this, 0, 'block');" onfocus="remove_error_style(this);"></span>
131                                </div>
132                                <div class="ecard_field">
133                                        <div class="ecard_error" id="ecard_message_error">{'piwecard_error'|@translate} {'piwecard_error_text'|@translate}</div>
134                                        <span class="ecard_label">{'piwecard_message'|@translate}<span class="ecard_mandatory_fields">*</span> :</span>
135                                        <span class="ecard_input_right"><textarea name="ecard_message" id="ecard_message" class="ecard_defaultText" title="{$ecard.message}" onblur="piwecard_checkField(this, 0, 'block');" onfocus="remove_error_style(this);"></textarea></span>
136                                </div>
137                        </fieldset>
138                        <fieldset>
139                                <legend>{'piwecard_send_stage2'|@translate}</legend>
140                                <div class="ecard_field">
141                                        <div class="ecard_error" id="ecard_sender_name_error">{'piwecard_error'|@translate} {'piwecard_error_text'|@translate}</div>
142                                        <div class="ecard_error" id="ecard_sender_email_error">{'piwecard_error'|@translate} {'piwecard_error_email'|@translate}</div>
143                                        <span class="ecard_label">{'piwecard_sender'|@translate}<span class="ecard_mandatory_fields">*</span> :</span>
144                                        <span class="ecard_name"><input name="ecard_sender_name" type="text" id="ecard_sender_name" maxlength="100" value="{$ecard.sender_name}" onblur="piwecard_checkField(this, 0, 'block');" onfocus="remove_error_style(this);"></span>
145                                        <span class="ecard_email"><input name="ecard_sender_email" type="text" id="ecard_sender_email" maxlength="100" {$ecard.changemail} value="{$ecard.sender_email}"  onblur="piwecard_checkField(this, 1, 'block');" onfocus="remove_error_style(this);"></span>
146                                </div>
147                                <div class="ecard_field" id="ecard_field_recipient_0">
148                                        <div class="ecard_error" id="ecard_recipient_name_0_error">{'piwecard_error'|@translate} {'piwecard_error_text'|@translate}</div>
149                                        <div class="ecard_error" id="ecard_recipient_email_0_error">{'piwecard_error'|@translate} {'piwecard_error_email'|@translate}</div>
150                                        <span class="ecard_label">{'piwecard_recipient'|@translate}<span class="ecard_mandatory_fields">*</span> :</span>
151                                        <span class="ecard_name ecard_name_recipient"><input name="ecard_recipient_name[0]" type="text" id="ecard_recipient_name_0" class="ecard_defaultText" maxlength="100" title="{$ecard.recipient_name}" onblur="piwecard_checkField(this, 0, 'block');" onfocus="remove_error_style(this);"></span>
152                                        <span class="ecard_email"><input name="ecard_recipient_email[0]" type="text" id="ecard_recipient_email_0" class="ecard_defaultText" maxlength="100" title="{$ecard.recipient_email}" onblur="piwecard_checkField(this, 1, 'block');" onfocus="remove_error_style(this);"></span>
153                                </div>
154                                <a href="javascript:void(0)" id="ecard_add_recipient">{'piwecard_add_recipient'|@translate}</a>
155                        </fieldset>
156                        <fieldset>
157                                <legend>{'piwecard_send_stage3'|@translate}</legend>
158                                <div class="ecard_field">
159                                        <span class="ecard_label"><label for="ecard_copy">{'piwecard_sender_copy'|@translate} :</label></span>
160                                        <span><input type="checkbox" id="ecard_copy" name="ecard_copy" {$ecard.copy}/></span>
161                                        <div class="clear"></div>
162                                </div>
163                                <div class="ecard_field">
164                                        <span class="ecard_label">{'piwecard_email_format'|@translate} : </span>
165                                                <span>
166                                                {foreach from=$ecard_email_format item=ecard_email_format}
167                                                        <input type="radio" name="ecard_email_format" id="ecard_email_format_{$ecard_email_format.id}" value="{$ecard_email_format.id}" {$ecard_email_format.selected}><label for="ecard_email_format_{$ecard_email_format.id}"> {$ecard_email_format.name} </label>
168                                                {/foreach}
169                                        </span>
170                                </div>
171                                        <div class="ecard_field">
172                                                {if isset($ecard_validity)}
173                                                        <span class="ecard_label">{'piwecard_validity_label'|@translate} :</span>
174                                                        <span>
175                                                                {foreach from=$ecard_validity item=ecard_validity}
176                                                                        <input type="radio" name="ecard_validity" id="ecard_validity_{$ecard_validity.id}" value="{$ecard_validity.id}" {$ecard_validity.selected}><label for="ecard_validity_{$ecard_validity.id}"> {$ecard_validity.name} </label>
177                                                                {/foreach}
178                                                        </span>
179                                                {else}
180                                                        <input type="hidden" name="ecard_validity" id="ecard_validity" value="{$ecard_validity_hidden}">
181                                                {/if}
182                                        </div>
183                        </fieldset>
184                        <fieldset>
185                                <legend>{'piwecard_send_stage4'|@translate}</legend>
186                                <div class="ecard_submit">
187                                        <input type="submit" name="ecard_submit" value="{'piwecard_send'|@translate}" />
188                                </div>
189                        </fieldset>
190                        <div>
191                                <span class="ecard_mandatory_fields">* {'piwecard_send_mandatory_fields'|@translate}</span>
192                        </div>
193                </form>
194        </div>
195</div>
196<div>
197        <a href="#" class="createECardOpen" id="createECardOpen" title="{'piwecard_send_link'|@translate}">{'piwecard_send_link'|@translate}</a>
198</div>
Note: See TracBrowser for help on using the repository browser.