Dotclear

source: inc/admin/default-templates/js_helpers.html.twig @ 2313:ef1db3d7c388

Revision 2313:ef1db3d7c388, 14.2 KB checked in by Dsls, 12 years ago (diff)

Twig merge - lots of things to adapt yet

Line 
1{# JS Helpers #}
2
3{% macro load(src,type) -%}
4     {% if not memorized('jsload',src) -%}
5          {{ memorize('jsload',src) -}}
6          {% set type = type|default('text/javascript') -%}
7          <script type="{{ type }}" src="{{ theme_url }}{{ src }}"></script>
8     {%- endif %}
9{%- endmacro %}
10
11{% macro common() %}
12<!-- jsCommon -->
13{{ _self.load('js/jquery/jquery.js') }}
14{% if current_blog is defined and jquery_migrate_mute -%}
15     <script type="text/javascript">
16     //<![CDATA[
17     jQuery.migrateMute = true
18     //]]>
19     </script>
20{%- endif %}
21{{ _self.load('js/jquery/jquery-migrate-1.2.1.js') }}
22{{ _self.load('js/jquery/jquery.biscuit.js') }}
23{{ _self.load('js/jquery/jquery.bgFade.js') }}
24{{ _self.load('js/common.js') }}
25{{ _self.load('js/prelude.js') }}
26<script type="text/javascript">
27{% autoescape 'js' %}
28//<![CDATA[
29dotclear.nonce = '{{session.nonce}}';
30dotclear.img_plus_src = 'images/expand.png';
31dotclear.img_plus_alt = '{{ __('uncover') }}';
32dotclear.img_minus_src = 'images/hide.png';
33dotclear.img_minus_alt = '{{ __('hide') }}';
34dotclear.img_menu_on = 'images/menu_on.png';
35dotclear.img_menu_off = 'images/menu_off.png';
36dotclear.img_plus_theme_src = 'images/plus-theme.png';
37dotclear.img_plus_theme_alt = '{{ __('uncover') }}';
38dotclear.img_minus_theme_src = 'images/minus-theme.png';
39dotclear.img_minus_theme_alt = '{{ __('hide') }}';
40dotclear.msg.help  = '{{ __('Need help?') }}';
41dotclear.msg.new_window  =  '{{ __('new window') }}';
42dotclear.msg.help_hide  =  '{{ __('Hide') }}';
43dotclear.msg.to_select  =  '{{ __('Select:') }}';
44dotclear.msg.no_selection  =  '{{ __('no selection') }}';
45dotclear.msg.select_all  =  '{{ __('select all') }}';
46dotclear.msg.invert_sel  =  '{{ __('Invert selection') }}';
47dotclear.msg.website  =  '{{ __('Web site:') }}';
48dotclear.msg.email  =  '{{ __('Email:') }}';
49dotclear.msg.ip_address  =  '{{ __('IP address:') }}';
50dotclear.msg.error  =  '{{ __('Error:') }}';
51dotclear.msg.entry_created  =  '{{ __('Entry has been successfully created.') }}';
52dotclear.msg.edit_entry  =  '{{ __('Edit entry') }}';
53dotclear.msg.view_entry  =  '{{ __('view entry') }}';
54dotclear.msg.confirm_delete_posts  =  '{{ __("Are you sure you want to delete selected entries (%s)?") }}';
55dotclear.msg.confirm_delete_medias  =  '{{ __("Are you sure you want to delete selected medias (%d)?") }}';
56dotclear.msg.confirm_delete_categories  =  '{{ __("Are you sure you want to delete selected categories (%s)?") }}';
57dotclear.msg.confirm_delete_post  =  '{{ __("Are you sure you want to delete this entry?") }}';
58dotclear.msg.click_to_unlock  =  '{{ __("Click here to unlock the field") }}';
59dotclear.msg.confirm_spam_delete  =  '{{ __('Are you sure you want to delete all spams?') }}';
60dotclear.msg.confirm_delete_comments  =  '{{ __('Are you sure you want to delete selected comments (%s)?') }}';
61dotclear.msg.confirm_delete_comment  =  '{{ __('Are you sure you want to delete this comment?') }}';
62dotclear.msg.cannot_delete_users  =  '{{ __('Users with posts cannot be deleted.') }}';
63dotclear.msg.confirm_delete_user  =  '{{ __('Are you sure you want to delete selected users (%s)?') }}';
64dotclear.msg.confirm_delete_category  =  '{{ __('Are you sure you want to delete category "%s"?') }}';
65dotclear.msg.confirm_reorder_categories  =  '{{ __('Are you sure you want to reorder all categories?') }}';
66dotclear.msg.confirm_delete_media  =  '{{ __('Are you sure you want to remove media "%s"?') }}';
67dotclear.msg.confirm_extract_current  =  '{{ __('Are you sure you want to extract archive in current directory?') }}';
68dotclear.msg.confirm_remove_attachment  =  '{{ __('Are you sure you want to remove attachment "%s"?') }}';
69dotclear.msg.confirm_delete_lang  =  '{{ __('Are you sure you want to delete "%s" language?') }}';
70dotclear.msg.confirm_delete_plugin  =  '{{ __('Are you sure you want to delete "%s" plugin?') }}';
71dotclear.msg.use_this_theme  =  '{{ __('Use this theme') }}';
72dotclear.msg.remove_this_theme  =  '{{ __('Remove this theme') }}';
73dotclear.msg.confirm_delete_theme  =  '{{ __('Are you sure you want to delete "%s" theme?') }}';
74dotclear.msg.confirm_delete_backup  =  '{{ __('Are you sure you want to delete this backup?') }}';
75dotclear.msg.zip_file_content  =  '{{ __('Zip file content') }}';
76dotclear.msg.xhtml_validator  =  '{{ __('XHTML markup validator') }}';
77dotclear.msg.xhtml_valid  =  '{{ __('XHTML content is valid.') }}';
78dotclear.msg.xhtml_not_valid  =  '{{ __('There are XHTML markup errors.') }}';
79dotclear.msg.warning_validate_no_save_content  =  '{{ __('Attention: an audit of a content not yet registered.') }}';
80dotclear.msg.confirm_change_post_format  =  '{{ __('You have unsaved changes. Switch post format will loose these changes. Proceed anyway?') }}';
81dotclear.msg.confirm_change_post_format_noconvert  =  '{{ __("Warning: post format change will not convert existing content. You will need to apply new format by yourself. Proceed anyway?") }}';
82dotclear.msg.load_enhanced_uploader  =  '{{ __('Loading enhanced uploader, please wait.') }}';
83dotclear.msg.module_author  =  '{{ __('Author:') }}';
84dotclear.msg.module_details  =  '{{ __('Details') }}';
85dotclear.msg.module_support  =  '{{ __('Support') }}';
86dotclear.msg.module_help  =  '{{ __('Help:') }}';
87dotclear.msg.module_section  =  '{{ __('Section:') }}';
88dotclear.msg.module_tags  =  '{{ __('Tags:') }}';
89//]]>
90</script>
91{% endautoescape %}
92{% endmacro %}
93
94{% macro load_IE7() %}
95<!--[if lt IE 9]>
96{{ _self.load('js/ie7/IE9.js') }}
97<link rel="stylesheet" type="text/css" href="style/iesucks.css" />
98<![endif]-->
99{% endmacro %}
100
101{% macro confirm_close(values) %}
102     {% if values is not iterable %}{% set values = [values] %} {% endif %}
103     <!-- jsConfirmClose -->
104     {{ _self.load('js/confirm-close.js') }}
105     <script type="text/javascript">
106     {% autoescape 'js' %}
107     //<![CDATA[
108          confirmClosePage = new confirmClose({% for value in values %}'{{value}}'{%if not loop.last %},{% endif %}{% endfor %});
109          confirmClose.prototype.prompt = '{{__('You have unsaved changes.')}}';
110     //]]>
111     </script>
112     {% endautoescape %}
113{% endmacro %}
114
115{% macro page_tabs(default_tab) %}
116     <!-- jsPageTabs -->
117     {{ _self.load('js/jquery/jquery.pageTabs.js') }}
118     <script type="text/javascript">
119     //<![CDATA[
120          $(function() {
121               $.pageTabs('{{default_tab}}');
122          });
123     //]]>
124     </script>
125{% endmacro %}
126
127{% macro modal() %}
128     <!-- jsModal -->
129     <link rel="stylesheet" href="{{theme_url}}style/modal/modal.css" type="text/css" media="screen" />
130     {{ _self.load('js/jquery/jquery.modal.js') }}
131     <script type="text/javascript">
132     //<![CDATA[
133          $.modal.prototype.params.loader_img = '{{theme_url}}style/modal/loader.gif';
134          $.modal.prototype.params.close_img = '{{theme_url}}style/modal/close.png';
135     //]]>
136     </script>
137{% endmacro %}
138
139{% macro color_picker() %}
140     <!-- jsColorPicker -->
141     <link rel="stylesheet" href="{{theme_url}}style/farbtastic/farbtastic.css" type="text/css" media="screen" />
142     {{ _self.load('js/jquery/jquery.farbtastic.js') }}
143     {{ _self.load('js/color-picker.js') }}
144{% endmacro %}
145
146{% macro date_picker() %}
147     <!-- jsDatePicker -->
148     <link rel="stylesheet" href="{{theme_url}}style/date-picker.css" type="text/css" media="screen" />
149     {{ _self.load('js/date-picker.js') }}
150     <script type="text/javascript">
151     {% autoescape 'js' %}
152     //<![CDATA[
153          datePicker.prototype.months[0] = '{{__('January')}}';
154          datePicker.prototype.months[1] = '{{__('February')}}';
155          datePicker.prototype.months[2] = '{{__('March')}}';
156          datePicker.prototype.months[3] = '{{__('April')}}';
157          datePicker.prototype.months[4] = '{{__('May')}}';
158          datePicker.prototype.months[5] = '{{__('June')}}';
159          datePicker.prototype.months[6] = '{{__('July')}}';
160          datePicker.prototype.months[7] = '{{__('August')}}';
161          datePicker.prototype.months[8] = '{{__('September')}}';
162          datePicker.prototype.months[9] = '{{__('October')}}';
163          datePicker.prototype.months[10] = '{{__('November')}}';
164          datePicker.prototype.months[11] = '{{__('December')}}';
165          datePicker.prototype.days[0] = '{{__('Monday')}}';
166          datePicker.prototype.days[1] = '{{__('Tuesday')}}';
167          datePicker.prototype.days[2] = '{{__('Wednesday')}}';
168          datePicker.prototype.days[3] = '{{__('Thursday')}}';
169          datePicker.prototype.days[4] = '{{__('Friday')}}';
170          datePicker.prototype.days[5] = '{{__('Saturday')}}';
171          datePicker.prototype.days[6] = '{{__('Sunday')}}';
172          datePicker.prototype.img_src = '{{theme_url}}images/date-picker.png';
173          datePicker.prototype.close_msg = '{{__('close')}}';
174          datePicker.prototype.now_msg = '{{__('now')}}';
175     //]]>
176     {% endautoescape %}
177     </script>
178{% endmacro %}
179
180{% macro tool_bar() %}
181     <!-- jsToolBar -->
182     <link rel="stylesheet" type="text/css" href="{{theme_url}}style/jsToolBar/jsToolBar.css" />
183     {{ _self.load('js/jsToolBar/jsToolBar.js') }}
184     
185     {% if current_user.options.enable_wysiwyg %}
186          {{ _self.load('js/jsToolBar/jsToolBar.wysiwyg.js') }}
187     {% endif %}
188     
189     {{ _self.load('js/jsToolBar/jsToolBar.dotclear.js') }}
190     <script type="text/javascript">
191     {% autoescape 'js' %}
192     //<![CDATA[
193          jsToolBar.prototype.dialog_url = 'popup.php';
194          jsToolBar.prototype.iframe_css =
195          '    body{'+
196          '         font: 12px "DejaVu Sans","Lucida Grande","Lucida Sans Unicode",Arial,sans-serif;'+
197          '         color : #000;'+
198          '         background: #f9f9f9;'+
199          '         margin: 0;'+
200          '         padding : 2px;'+
201          '         border: none;'+
202          '         {% if rtl %}direction:rtl;{% endif %}'+
203          '    }'+
204          '    pre, code, kbd, samp {'+
205          '         font-family:"Courier New",Courier,monospace;'+
206          '         font-size : 1.1em;'+
207          '    }'+
208          '    code {'+
209          '         color : #666;'+
210          '         font-weight : bold;'+
211          '    }'+
212          '    body > p:first-child {'+
213          '         margin-top: 0;'+
214          '    }'+
215          '';
216          jsToolBar.prototype.base_url = '{{blog.host}}';
217          jsToolBar.prototype.switcher_visual_title = '{{__('visual')}}';
218          jsToolBar.prototype.switcher_source_title = '{{__('source')}}';
219          jsToolBar.prototype.legend_msg = '{{__('You can use the following shortcuts to format your text.')}}';
220          jsToolBar.prototype.elements.blocks.options.none = '{{__('-- none --')}}';
221          jsToolBar.prototype.elements.blocks.options.nonebis = '{{__('-- block format --')}}';
222          jsToolBar.prototype.elements.blocks.options.p = '{{__('Paragraph')}}';
223          jsToolBar.prototype.elements.blocks.options.h1 = '{{__('Level 1 header')}}';
224          jsToolBar.prototype.elements.blocks.options.h2 = '{{__('Level 2 header')}}';
225          jsToolBar.prototype.elements.blocks.options.h3 = '{{__('Level 3 header')}}';
226          jsToolBar.prototype.elements.blocks.options.h4 = '{{__('Level 4 header')}}';
227          jsToolBar.prototype.elements.blocks.options.h5 = '{{__('Level 5 header')}}';
228          jsToolBar.prototype.elements.blocks.options.h6 = '{{__('Level 6 header')}}';
229          jsToolBar.prototype.elements.strong.title = '{{__('Strong emphasis')}}';
230          jsToolBar.prototype.elements.em.title = '{{__('Emphasis')}}';
231          jsToolBar.prototype.elements.ins.title = '{{__('Inserted')}}';
232          jsToolBar.prototype.elements.del.title = '{{__('Deleted')}}';
233          jsToolBar.prototype.elements.quote.title = '{{__('Inline quote')}}';
234          jsToolBar.prototype.elements.code.title = '{{__('Code')}}';
235          jsToolBar.prototype.elements.br.title = '{{__('Line break')}}';
236          jsToolBar.prototype.elements.blockquote.title = '{{__('Blockquote')}}';
237          jsToolBar.prototype.elements.pre.title = '{{__('Preformated text')}}';
238          jsToolBar.prototype.elements.ul.title = '{{__('Unordered list')}}';
239          jsToolBar.prototype.elements.ol.title = '{{__('Ordered list')}}';
240         
241          jsToolBar.prototype.elements.link.title = '{{__('Link')}}';
242          jsToolBar.prototype.elements.link.href_prompt = '{{__('URL?')}}';
243          jsToolBar.prototype.elements.link.hreflang_prompt = '{{__('Language?')}}';
244         
245          jsToolBar.prototype.elements.img.title = '{{__('External image')}}';
246          jsToolBar.prototype.elements.img.src_prompt = '{{__('URL?')}}';
247         
248          jsToolBar.prototype.elements.img_select.title = '{{__('Media chooser')}}';
249          jsToolBar.prototype.elements.post_link.title = '{{__('Link to an entry')}}';
250         
251          {% if current_user.rights.media %}
252               jsToolBar.prototype.elements.img_select.disabled = true;
253          {% endif %}
254     //]]>
255     </script>
256     {% endautoescape %}
257{% endmacro %}
258
259{% macro candy_upload(params) %}
260     {% if params is empty %}{% set params = {} %} {% endif %}
261     {% set params = params|merge(['sess_id={{session.id}}','sess_uid={{session.uid}}','xd_check={{session.nonce}}']) %}
262     <!-- jsCandyUpload -->
263     <link rel="stylesheet" href="{{theme_url}}style/candyUpload/style.css" type="text/css" media="screen" />
264     {{ _self.load('js/jquery/jquery.candyUpload.js') }}
265     <script type="text/javascript">
266     {% autoescape 'js' %}
267     //<![CDATA[
268          dotclear.candyUpload = {};
269          dotclear.msg.activate_enhanced_uploader = '{{__('Temporarily activate enhanced uploader')}}';
270          dotclear.msg.disable_enhanced_uploader = '{{__('Temporarily disable enhanced uploader')}}';
271          $._candyUpload.prototype.locales.file_uploaded = '{{__('File successfully uploaded.')}}';
272          $._candyUpload.prototype.locales.max_file_size = '{{__('Maximum file size allowed:')}}';
273          $._candyUpload.prototype.locales.limit_exceeded = '{{__('Limit exceeded.')}}';
274          $._candyUpload.prototype.locales.size_limit_exceeded = '{{__('File size exceeds allowed limit.')}}';
275          $._candyUpload.prototype.locales.canceled = '{{__('Canceled.')}}';
276          $._candyUpload.prototype.locales.http_error = '{{__('HTTP Error:')}}';
277          $._candyUpload.prototype.locales.error = '{{__('Error:')}}';
278          $._candyUpload.prototype.locales.choose_file = '{{__('Choose file')}}';
279          $._candyUpload.prototype.locales.choose_files = '{{__('Choose files')}}';
280          $._candyUpload.prototype.locales.cancel = '{{__('Cancel')}}';
281          $._candyUpload.prototype.locales.clean = '{{__('Clean')}}';
282          $._candyUpload.prototype.locales.upload = '{{__('Upload')}}';
283          $._candyUpload.prototype.locales.no_file_in_queue = '{{__('No file in queue.')}}';
284          $._candyUpload.prototype.locales.file_in_queue = '{{__('1 file in queue.')}}';
285          $._candyUpload.prototype.locales.files_in_queue = '{{__('%d files in queue.')}}';
286          $._candyUpload.prototype.locales.queue_error = '{{__('Queue error:')}}';
287          dotclear.candyUpload.base_url = '{{admin_url}}';
288          dotclear.candyUpload.movie_url = '{{theme_url}}swfupload.swf';
289          dotclear.candyUpload.params = '{{params|join('&')}}';
290     //]]>
291     {% endautoescape %}
292     </script>
293{% endmacro %}
294
295{% macro tool_man() %}
296     <!-- jsToolMan -->
297     {{ _self.load('js/tool-man/core.js') }}
298     {{ _self.load('js/tool-man/events.js') }}
299     {{ _self.load('js/tool-man/css.js') }}
300     {{ _self.load('js/tool-man/coordinates.js') }}
301     {{ _self.load('js/tool-man/drag.js') }}
302     {{ _self.load('js/tool-man/dragsort.js') }}
303     {{ _self.load('js/dragsort-tablerows.js') }}
304{% endmacro %}
305
306{% macro meta_editor() %}
307     <!-- jsMetaEditor -->
308     {{ _self.load('js/meta-editor.js') }}
309{% endmacro %}
Note: See TracBrowser for help on using the repository browser.

Sites map