PluginProbe
Elementor Website Builder – more than just a page builder / 3.2.3
Elementor Website Builder – more than just a page builder v3.2.3
4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 4.1.0-beta1 4.1.0-dev1 All 452 releases
← All changes | includes/editor-templates/templates.php +90 -650 4.1.53.2.3 View file →
@@ -1,43 +1,29 @@
1 1 <?php
2 2 namespace Elementor;
3 3
4 -use Elementor\Plugin;
5 -
6 4 if ( ! defined( 'ABSPATH' ) ) {
7 5 exit; // Exit if accessed directly.
8 6 }
9 7 ?>
10 8 <script type="text/template" id="tmpl-elementor-template-library-header-actions">
11 - <?php if ( User::is_current_user_can_upload_json() ) { ?>
12 - <button type="button" id="elementor-template-library-header-import" class="elementor-templates-modal__header__item" aria-label="<?php echo esc_attr__( 'Import Template', 'elementor' ); ?>">
13 - <i class="eicon-upload-circle-o" aria-hidden="true"></i>
14 - <span class="elementor-screen-only"><?php echo esc_html__( 'Import Template', 'elementor' ); ?></span>
15 - </button>
16 - <?php } ?>
17 - <button type="button" id="elementor-template-library-header-sync" class="elementor-templates-modal__header__item" aria-label="<?php echo esc_attr__( 'Sync Library', 'elementor' ); ?>">
18 - <i class="eicon-sync" aria-hidden="true"></i>
19 - <span class="elementor-screen-only"><?php echo esc_html__( 'Sync Library', 'elementor' ); ?></span>
20 - </button>
21 - <button type="button" id="elementor-template-library-header-save" class="elementor-templates-modal__header__item" aria-label="<?php echo esc_attr__( 'Save', 'elementor' ); ?>">
22 - <i class="eicon-save-o" aria-hidden="true"></i>
23 - <span class="elementor-screen-only"><?php echo esc_html__( 'Save', 'elementor' ); ?></span>
24 - </button>
9 + <div id="elementor-template-library-header-import" class="elementor-templates-modal__header__item">
10 + <i class="eicon-upload-circle-o" aria-hidden="true" title="<?php esc_attr_e( 'Import Template', 'elementor' ); ?>"></i>
11 + <span class="elementor-screen-only"><?php echo __( 'Import Template', 'elementor' ); ?></span>
12 + </div>
13 + <div id="elementor-template-library-header-sync" class="elementor-templates-modal__header__item">
14 + <i class="eicon-sync" aria-hidden="true" title="<?php esc_attr_e( 'Sync Library', 'elementor' ); ?>"></i>
15 + <span class="elementor-screen-only"><?php echo __( 'Sync Library', 'elementor' ); ?></span>
16 + </div>
17 + <div id="elementor-template-library-header-save" class="elementor-templates-modal__header__item">
18 + <i class="eicon-save-o" aria-hidden="true" title="<?php esc_attr_e( 'Save', 'elementor' ); ?>"></i>
19 + <span class="elementor-screen-only"><?php echo __( 'Save', 'elementor' ); ?></span>
20 + </div>
25 21 </script>
26 22
27 23 <script type="text/template" id="tmpl-elementor-template-library-header-menu">
28 24 <# jQuery.each( tabs, ( tab, args ) => { #>
29 - <button
30 - role="tab"
31 - id="tab-{{{ tab }}}"
32 - aria-controls="elementor-template-library-templates-container"
33 - aria-selected="false"
34 - tabindex="-1"
35 - class="elementor-component-tab elementor-template-library-menu-item"
36 - data-tab="{{{ tab }}}"
37 - >
38 - {{{ args.title }}}
39 - </button>
25 + <div class="elementor-component-tab elementor-template-library-menu-item" data-tab="{{{ tab }}}">{{{ args.title }}}</div>
40 26 <# } ); #>
41 27 </script>
42 28
43 29 <script type="text/template" id="tmpl-elementor-template-library-header-preview">
@@ -46,12 +32,10 @@
46 32 </div>
47 33 </script>
48 34
49 35 <script type="text/template" id="tmpl-elementor-template-library-header-back">
50 - <button type="button" class="elementor-template-library-header-back-button" aria-label="<?php echo esc_attr__( 'Back to Library', 'elementor' ); ?>">
51 - <i class="eicon-chevron-left" aria-hidden="true"></i>
52 - <span><?php echo esc_html__( 'Back to Library', 'elementor' ); ?></span>
53 - </button>
36 + <i class="eicon-" aria-hidden="true"></i>
37 + <span><?php echo __( 'Back to Library', 'elementor' ); ?></span>
54 38 </script>
55 39
56 40 <script type="text/template" id="tmpl-elementor-template-library-loading">
57 41 <div class="elementor-loader-wrapper">
@@ -62,9 +46,9 @@
62 46 <div class="elementor-loader-box"></div>
63 47 <div class="elementor-loader-box"></div>
64 48 </div>
65 49 </div>
66 - <div class="elementor-loading-title"><?php echo esc_html__( 'Loading', 'elementor' ); ?></div>
50 + <div class="elementor-loading-title"><?php echo __( 'Loading', 'elementor' ); ?></div>
67 51 </div>
68 52 </script>
69 53
70 54 <script type="text/template" id="tmpl-elementor-template-library-templates">
@@ -69,18 +53,11 @@
69 53
70 54 <script type="text/template" id="tmpl-elementor-template-library-templates">
71 55 <#
72 56 var activeSource = elementor.templates.getFilter('source');
73 - /**
74 - * Filter template source.
75 - *
76 - * @param bool isRemote - If `true` the source is a remote source.
77 - * @param string activeSource - The current template source.
78 - */
79 - const isRemote = elementor.hooks.applyFilters( 'templates/source/is-remote', activeSource === 'remote', activeSource );
80 57 #>
81 58 <div id="elementor-template-library-toolbar">
82 - <# if ( isRemote ) {
59 + <# if ( 'remote' === activeSource ) {
83 60 var activeType = elementor.templates.getFilter('type');
84 61 #>
85 62 <div id="elementor-template-library-filter-toolbar-remote" class="elementor-template-library-filter-toolbar">
86 63 <# if ( 'page' === activeType ) { #>
@@ -85,15 +62,15 @@
85 62 <div id="elementor-template-library-filter-toolbar-remote" class="elementor-template-library-filter-toolbar">
86 63 <# if ( 'page' === activeType ) { #>
87 64 <div id="elementor-template-library-order">
88 65 <input type="radio" id="elementor-template-library-order-new" class="elementor-template-library-order-input" name="elementor-template-library-order" value="date">
89 - <label for="elementor-template-library-order-new" class="elementor-template-library-order-label"><?php echo esc_html__( 'New', 'elementor' ); ?></label>
66 + <label for="elementor-template-library-order-new" class="elementor-template-library-order-label"><?php echo __( 'New', 'elementor' ); ?></label>
90 67 <input type="radio" id="elementor-template-library-order-trend" class="elementor-template-library-order-input" name="elementor-template-library-order" value="trendIndex">
91 - <label for="elementor-template-library-order-trend" class="elementor-template-library-order-label"><?php echo esc_html__( 'Trend', 'elementor' ); ?></label>
68 + <label for="elementor-template-library-order-trend" class="elementor-template-library-order-label"><?php echo __( 'Trend', 'elementor' ); ?></label>
92 69 <input type="radio" id="elementor-template-library-order-popular" class="elementor-template-library-order-input" name="elementor-template-library-order" value="popularityIndex">
93 - <label for="elementor-template-library-order-popular" class="elementor-template-library-order-label"><?php echo esc_html__( 'Popular', 'elementor' ); ?></label>
70 + <label for="elementor-template-library-order-popular" class="elementor-template-library-order-label"><?php echo __( 'Popular', 'elementor' ); ?></label>
94 71 </div>
95 - <# } else if ( 'lb' !== activeType ) {
72 + <# } else {
96 73 var config = elementor.templates.getConfig( activeType );
97 74 if ( config.categories ) { #>
98 75 <div id="elementor-template-library-filter">
99 76 <select id="elementor-template-library-filter-subtype" class="elementor-template-library-filter-select" data-elementor-filter="subtype">
@@ -111,164 +88,60 @@
111 88 <# var checked = elementor.templates.getFilter( 'favorite' ) ? ' checked' : ''; #>
112 89 <input id="elementor-template-library-filter-my-favorites" type="checkbox"{{{ checked }}}>
113 90 <label id="elementor-template-library-filter-my-favorites-label" for="elementor-template-library-filter-my-favorites">
114 91 <i class="eicon" aria-hidden="true"></i>
115 - <?php echo esc_html__( 'My Favorites', 'elementor' ); ?>
92 + <?php echo __( 'My Favorites', 'elementor' ); ?>
116 93 </label>
117 94 </div>
118 95 </div>
119 96 <# } else { #>
120 - <div id="elementor-template-library-filter-toolbar-local" class="elementor-template-library-filter-toolbar">
121 - <div id="elementor-template-library-filter">
122 - <div class="elementor-template-library-filter-select-source" role="radiogroup" aria-label="<?php echo esc_attr__( 'Template source', 'elementor' ); ?>">
123 - <div class="source-option<# if ( activeSource === 'local' ) { #> selected<# } #>" data-source="local" role="radio" aria-checked="<# if ( activeSource === 'local' ) { #>true<# } else { #>false<# } #>" tabindex="<# if ( activeSource === 'local' ) { #>0<# } else { #>-1<# } #>">
124 - <i class="eicon-header" aria-hidden="true"></i>
125 - <?php echo esc_html__( 'Site templates', 'elementor' ); ?>
126 - </div>
127 - <div class="source-option<# if ( activeSource === 'cloud' ) { #> selected<# } #>" data-source="cloud" role="radio" aria-checked="<# if ( activeSource === 'cloud' ) { #>true<# } else { #>false<# } #>" tabindex="<# if ( activeSource === 'cloud' ) { #>0<# } else { #>-1<# } #>">
128 - <i class="eicon-library-cloud-empty" aria-hidden="true"></i>
129 - <?php echo esc_html__( 'Cloud templates', 'elementor' ); ?>
130 - <#
131 - const tabIcon = elementor.templates.hasCloudLibraryQuota()
132 - ? '<span class="new-badge"><?php echo esc_html__( 'New', 'elementor' ); ?></span>'
133 - : '<span class="new-badge"><i class="eicon-upgrade-crown" style="margin-inline-end: 0;"></i> <?php echo esc_html__( 'Pro', 'elementor' ); ?></span>';
134 -
135 - print( tabIcon );
136 - #>
137 - </div>
138 - </div>
139 - </div>
140 - </div>
141 - <span class="source-option-badge site-badge variant-b-only" style="display: none;">
142 - <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true">
143 - <path d="M7.33301 9.5C8.17286 9.5 8.9784 9.83387 9.57227 10.4277C10.1661 11.0216 10.5 11.8271 10.5 12.667V14C10.5 14.2761 10.2761 14.5 10 14.5H2C1.72386 14.5 1.5 14.2761 1.5 14V12.667C1.5 11.8271 1.83387 11.0216 2.42773 10.4277C3.0216 9.83387 3.82714 9.5 4.66699 9.5H7.33301ZM11.833 9.5C12.6729 9.5 13.4784 9.83387 14.0723 10.4277C14.6661 11.0216 15 11.8271 15 12.667V14C15 14.2761 14.7761 14.5 14.5 14.5H11.5C11.7761 14.5 12 14.2761 12 14V12.667C12 11.8271 11.6661 11.0216 11.0723 10.4277C10.5178 9.87327 9.77915 9.54493 9 9.50391C9.05536 9.50099 9.11128 9.5 9.16699 9.5H11.833ZM6 1.5C6.83985 1.5 7.64539 1.83387 8.23926 2.42773C8.83302 3.02158 9.16699 3.82722 9.16699 4.66699C9.16691 5.50673 8.83305 6.31246 8.23926 6.90625C7.64541 7.50001 6.83978 7.83301 6 7.83301C5.16022 7.83301 4.35459 7.50001 3.76074 6.90625C3.16695 6.31246 2.83309 5.50673 2.83301 4.66699C2.83301 3.82722 3.16698 3.02158 3.76074 2.42773C4.35461 1.83387 5.16015 1.5 6 1.5ZM11 1.5C12.6569 1.5 14 2.84315 14 4.5C14 6.15685 12.6569 7.5 11 7.5C10.4529 7.5 9.94164 7.35059 9.5 7.09473C10.3958 6.57577 11 5.60972 11 4.5C11 3.3901 10.396 2.42319 9.5 1.9043C9.94155 1.64858 10.453 1.5 11 1.5Z" fill="#B15211" />
144 - </svg>
145 - <?php echo esc_html__( 'Anyone on this site', 'elementor' ); ?>
146 - </span>
147 - <span class="source-option-badge cloud-badge variant-b-only" style="display: none;">
148 - <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true">
149 - <path fill-rule="evenodd" clip-rule="evenodd" d="M7.83317 2.33331C7.25853 2.33331 6.70743 2.56159 6.30111 2.96791C5.89478 3.37424 5.6665 3.92534 5.6665 4.49998V6.66665H9.99984V4.49998C9.99984 3.92534 9.77156 3.37424 9.36524 2.96791C8.95891 2.56159 8.40781 2.33331 7.83317 2.33331ZM10.9998 6.66665V4.49998C10.9998 3.66013 10.6662 2.85467 10.0723 2.26081C9.47848 1.66694 8.67302 1.33331 7.83317 1.33331C6.99332 1.33331 6.18786 1.66694 5.594 2.26081C5.00013 2.85467 4.6665 3.66013 4.6665 4.49998V6.66665H4.49984C4.01361 6.66665 3.54729 6.8598 3.20347 7.20362C2.85966 7.54743 2.6665 8.01375 2.6665 8.49998V12.5C2.6665 12.9862 2.85966 13.4525 3.20347 13.7963C3.54729 14.1402 4.01361 14.3333 4.49984 14.3333H11.1665C11.6527 14.3333 12.119 14.1402 12.4629 13.7963C12.8067 13.4525 12.9998 12.9862 12.9998 12.5V8.49998C12.9998 8.01375 12.8067 7.54743 12.4629 7.20362C12.119 6.8598 11.6527 6.66665 11.1665 6.66665H10.9998Z" fill="#1945A4" />
150 - </svg>
151 - <?php echo esc_html__( 'My Elementor account', 'elementor' ); ?>
152 - </span>
97 + <div id="elementor-template-library-filter-toolbar-local" class="elementor-template-library-filter-toolbar"></div>
153 98 <# } #>
154 -
155 - <div class="elementor-template-library-filter-toolbar-side-actions">
156 - <# if ( 'cloud' === activeSource ) { #>
157 - <button type="button" id="elementor-template-library-add-new-folder" class="elementor-template-library-action-item" aria-label="<?php echo esc_attr__( 'Create new folder', 'elementor' ); ?>">
158 - <i class="eicon-folder-plus" aria-hidden="true"></i>
159 - <span class="elementor-screen-only"><?php echo esc_html__( 'Create a New Folder', 'elementor' ); ?></span>
160 - </button>
161 - <span class="divider"></span>
162 - <button type="button" id="elementor-template-library-view-grid" class="elementor-template-library-action-item" aria-label="<?php echo esc_attr__( 'Change view to grid', 'elementor' ); ?>">
163 - <i class="eicon-library-grid" aria-hidden="true"></i>
164 - <span class="elementor-screen-only"><?php echo esc_html__( 'Grid view', 'elementor' ); ?></span>
165 - </button>
166 - <button type="button" id="elementor-template-library-view-list" class="elementor-template-library-action-item" aria-label="<?php echo esc_attr__( 'Change view to list', 'elementor' ); ?>">
167 - <i class="eicon-library-list" aria-hidden="true"></i>
168 - <span class="elementor-screen-only"><?php echo esc_html__( 'List view', 'elementor' ); ?></span>
169 - </button>
170 - <# } #>
171 - <div id="elementor-template-library-filter-text-wrapper">
172 - <label for="elementor-template-library-filter-text" class="elementor-screen-only"><?php echo esc_html__( 'Search Templates:', 'elementor' ); ?></label>
173 - <input type="search" id="elementor-template-library-filter-text" placeholder="<?php echo esc_attr__( 'Search', 'elementor' ); ?>">
174 - <i class="eicon-search" aria-hidden="true"></i>
175 - </div>
99 + <div id="elementor-template-library-filter-text-wrapper">
100 + <label for="elementor-template-library-filter-text" class="elementor-screen-only"><?php echo __( 'Search Templates:', 'elementor' ); ?></label>
101 + <input id="elementor-template-library-filter-text" placeholder="<?php echo esc_attr__( 'Search', 'elementor' ); ?>">
102 + <i class="eicon-search"></i>
176 103 </div>
177 104 </div>
178 - <div class="elementor-screen-only" aria-live="polite" id="elementor-template-library-sort-status" aria-atomic="true"></div>
179 - <div class="elementor-screen-only" aria-live="polite" id="elementor-template-library-load-status" aria-atomic="true"></div>
180 - <# if ( 'local' === activeSource || 'cloud' === activeSource ) { #>
181 - <div class="toolbar-container">
182 - <section class="bulk-selection-action-bar" role="region" aria-label="<?php echo esc_attr__( 'Bulk actions', 'elementor' ); ?>">
183 - <button type="button" class="clear-bulk-selections" aria-label="<?php echo esc_attr__( 'Deselect all and close bulk selection', 'elementor' ); ?>">
184 - <i class="eicon-editor-close" aria-hidden="true"></i>
185 - </button>
186 - <span class="selected-count" aria-live="polite"></span>
187 - <# if ( elementor.templates.hasCloudLibraryQuota() && ! elementor.templates.cloudLibraryIsDeactivated() ) { #>
188 - <button type="button" class="bulk-copy" aria-label="<?php echo esc_attr__( 'Copy selected templates', 'elementor' ); ?>">
189 - <i class="eicon-library-copy" aria-hidden="true"></i>
190 - </button>
191 - <button type="button" class="bulk-move" aria-label="<?php echo esc_attr__( 'Move selected templates', 'elementor' ); ?>">
192 - <i class="eicon-library-move" aria-hidden="true"></i>
193 - </button>
194 - <# } #>
195 - <button type="button" class="bulk-delete" aria-label="<?php echo esc_attr__( 'Delete selected templates', 'elementor' ); ?>">
196 - <i class="eicon-library-delete" aria-hidden="true"></i>
197 - </button>
198 - </section>
199 - <div id="elementor-template-library-navigation-container"></div>
200 -
201 - <# if ( 'cloud' === activeSource ) { #>
202 - <div class="quota-progress-container" tabindex="0" role="group" aria-label="<?php echo esc_attr__( 'Cloud library usage', 'elementor' ); ?>">
203 - <span class="quota-progress-info">
204 - <?php echo esc_html__( 'Usage', 'elementor' ); ?>
205 - </span>
206 - <div class="progress-bar-container">
207 - <div class="quota-progress-bar quota-progress-bar-normal" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0" aria-label="<?php echo esc_attr__( 'Cloud library usage', 'elementor' ); ?>">
208 - <div class="quota-progress-bar-fill"></div>
209 - </div>
210 - <span class="quota-warning"></span>
211 - </div>
212 - <div class="quota-progress-bar-value"></div>
213 - <span class="elementor-screen-only" id="elementor-template-library-quota-status" role="status" aria-live="polite" aria-atomic="true"></span>
214 - </div>
215 - <# } #>
216 - </div>
105 + <# if ( 'local' === activeSource ) { #>
217 106 <div id="elementor-template-library-order-toolbar-local">
218 107 <div class="elementor-template-library-local-column-1">
219 - <input type="checkbox" id="bulk-select-all">
220 108 <input type="radio" id="elementor-template-library-order-local-title" class="elementor-template-library-order-input" name="elementor-template-library-order-local" value="title" data-default-ordering-direction="asc">
221 - <label for="elementor-template-library-order-local-title" class="elementor-template-library-order-label"><?php echo esc_html__( 'Name', 'elementor' ); ?></label>
109 + <label for="elementor-template-library-order-local-title" class="elementor-template-library-order-label"><?php echo __( 'Name', 'elementor' ); ?></label>
222 110 </div>
223 111 <div class="elementor-template-library-local-column-2">
224 112 <input type="radio" id="elementor-template-library-order-local-type" class="elementor-template-library-order-input" name="elementor-template-library-order-local" value="type" data-default-ordering-direction="asc">
225 - <label for="elementor-template-library-order-local-type" class="elementor-template-library-order-label"><?php echo esc_html__( 'Type', 'elementor' ); ?></label>
113 + <label for="elementor-template-library-order-local-type" class="elementor-template-library-order-label"><?php echo __( 'Type', 'elementor' ); ?></label>
226 114 </div>
227 115 <div class="elementor-template-library-local-column-3">
228 - <# if ( 'cloud' !== activeSource ) { #>
229 - <input type="radio" id="elementor-template-library-order-local-author" class="elementor-template-library-order-input" name="elementor-template-library-order-local" value="author" data-default-ordering-direction="asc">
230 - <# } #>
231 - <label for="elementor-template-library-order-local-author" class="elementor-template-library-order-label"><?php echo esc_html__( 'Created By', 'elementor' ); ?></label>
116 + <input type="radio" id="elementor-template-library-order-local-author" class="elementor-template-library-order-input" name="elementor-template-library-order-local" value="author" data-default-ordering-direction="asc">
117 + <label for="elementor-template-library-order-local-author" class="elementor-template-library-order-label"><?php echo __( 'Created By', 'elementor' ); ?></label>
232 118 </div>
233 119 <div class="elementor-template-library-local-column-4">
234 120 <input type="radio" id="elementor-template-library-order-local-date" class="elementor-template-library-order-input" name="elementor-template-library-order-local" value="date">
235 - <label for="elementor-template-library-order-local-date" class="elementor-template-library-order-label"><?php echo esc_html__( 'Creation Date', 'elementor' ); ?></label>
121 + <label for="elementor-template-library-order-local-date" class="elementor-template-library-order-label"><?php echo __( 'Creation Date', 'elementor' ); ?></label>
236 122 </div>
237 123 <div class="elementor-template-library-local-column-5">
238 - <div class="elementor-template-library-order-label"><?php echo esc_html__( 'Actions', 'elementor' ); ?></div>
124 + <div class="elementor-template-library-order-label"><?php echo __( 'Actions', 'elementor' ); ?></div>
239 125 </div>
240 126 </div>
241 127 <# } #>
242 - <div id="elementor-template-library-templates-container" role="tabpanel"></div>
243 - <# if ( isRemote ) { #>
128 + <div id="elementor-template-library-templates-container"></div>
129 + <# if ( 'remote' === activeSource ) { #>
244 130 <div id="elementor-template-library-footer-banner">
245 - <img class="elementor-nerd-box-icon" src="<?php
246 - Utils::print_unescaped_internal_string( ELEMENTOR_ASSETS_URL . 'images/information.svg' );
247 - ?>" loading="lazy" alt="<?php echo esc_attr__( 'Elementor', 'elementor' ); ?>" />
248 - <div class="elementor-excerpt"><?php echo esc_html__( 'Stay tuned! More awesome templates coming real soon.', 'elementor' ); ?></div>
131 + <img class="elementor-nerd-box-icon" src="<?php echo ELEMENTOR_ASSETS_URL . 'images/information.svg'; ?>" />
132 + <div class="elementor-excerpt"><?php echo __( 'Stay tuned! More awesome templates coming real soon.', 'elementor' ); ?></div>
249 133 </div>
250 134 <# } #>
251 - <# if ( 'cloud' === activeSource ) { #>
252 - <div id="elementor-template-library-load-more-anchor" class="elementor-visibility-hidden"><i class="eicon-loading eicon-animation-spin"></i></div>
253 - <# } #>
254 135 </script>
255 136
256 -<script type="text/template" id="tmpl-elementor-template-library-navigation-container">
257 - <button class="elementor-template-library-navigation-back-button elementor-button e-button">
258 - <i class="eicon-chevron-left"></i>
259 - <?php echo esc_html__( 'Back', 'elementor' ); ?>
260 - </button>
261 - <span class="elementor-template-library-current-folder-title"></span>
262 -</script>
263 -
264 137 <script type="text/template" id="tmpl-elementor-template-library-template-remote">
265 138 <div class="elementor-template-library-template-body">
266 139 <?php // 'lp' stands for Landing Pages Library type. ?>
267 140 <# if ( 'page' === type || 'lp' === type ) { #>
268 - <div class="elementor-template-library-template-screenshot" style="background-image: url({{ thumbnail }});" role="img" aria-label="<?php echo esc_attr__( 'Preview of template', 'elementor' ); ?> {{{ title }}}"></div>
141 + <div class="elementor-template-library-template-screenshot" style="background-image: url({{ thumbnail }});"></div>
269 142 <# } else { #>
270 - <img src="{{ thumbnail }}" loading="lazy" alt="<?php echo esc_attr__( 'Preview of template', 'elementor' ); ?> {{{ title }}}">
143 + <img src="{{ thumbnail }}">
271 144 <# } #>
272 145 <div class="elementor-template-library-template-preview">
273 146 <i class="eicon-zoom-in-bold" aria-hidden="true"></i>
274 147 </div>
@@ -279,9 +152,9 @@
279 152 <div class="elementor-template-library-favorite">
280 153 <input id="elementor-template-library-template-{{ template_id }}-favorite-input" class="elementor-template-library-template-favorite-input" type="checkbox"{{ favorite ? " checked" : "" }}>
281 154 <label for="elementor-template-library-template-{{ template_id }}-favorite-input" class="elementor-template-library-template-favorite-label">
282 155 <i class="eicon-heart-o" aria-hidden="true"></i>
283 - <span class="elementor-screen-only"><?php echo esc_html__( 'Favorite', 'elementor' ); ?></span>
156 + <span class="elementor-screen-only"><?php echo __( 'Favorite', 'elementor' ); ?></span>
284 157 </label>
285 158 </div>
286 159 </div>
287 160 </script>
@@ -286,226 +159,54 @@
286 159 </div>
287 160 </script>
288 161
289 162 <script type="text/template" id="tmpl-elementor-template-library-template-local">
290 - <#
291 - const activeSource = elementor.templates.getFilter('source');
292 - const view = elementor.templates.getFilter('view') ?? elementor.templates.getViewSelection() ?? 'list';
293 -
294 - if ( ( 'cloud' === activeSource && view === 'list' ) || 'local' === activeSource ) {
295 - #>
296 - <div class="elementor-template-library-template-name elementor-template-library-local-column-1">
297 - <input type="checkbox" class="bulk-selection-item-checkbox" data-template_id="{{ template_id }}" data-type="{{ type }}" data-status="{{ status }}" aria-label="<?php echo esc_attr__( 'Select template', 'elementor' ); ?> {{{ title }}}" aria-checked="false">
298 - <# if ( 'cloud' === activeSource ) {
299 - const sourceIcon = typeof subType !== 'undefined' && 'FOLDER' === subType
300 - ? '<i class="eicon-library-folder" aria-hidden="true"></i>'
301 - : 'locked' === status
302 - ? '<i class="eicon-lock-outline" aria-hidden="true" title="<?php esc_attr_e( 'Upgrade to get more storage space or delete old templates to make room.', 'elementor' ); ?>"></i>'
303 - : '<i class="eicon-global-colors" aria-hidden="true"></i>';
304 -
305 - print( sourceIcon );
306 - } #>
307 - <span>{{ title }}</span>
163 + <div class="elementor-template-library-template-name elementor-template-library-local-column-1">{{ title }}</div>
164 + <div class="elementor-template-library-template-meta elementor-template-library-template-type elementor-template-library-local-column-2">{{{ elementor.translate( type ) }}}</div>
165 + <div class="elementor-template-library-template-meta elementor-template-library-template-author elementor-template-library-local-column-3">{{{ author }}}</div>
166 + <div class="elementor-template-library-template-meta elementor-template-library-template-date elementor-template-library-local-column-4">{{{ human_date }}}</div>
167 + <div class="elementor-template-library-template-controls elementor-template-library-local-column-5">
168 + <div class="elementor-template-library-template-preview">
169 + <i class="eicon-preview-medium" aria-hidden="true"></i>
170 + <span class="elementor-template-library-template-control-title"><?php echo __( 'Preview', 'elementor' ); ?></span>
308 171 </div>
309 - <div class="elementor-template-library-template-meta elementor-template-library-template-type elementor-template-library-local-column-2">{{{ elementor.translate( type ) }}}</div>
310 - <div class="elementor-template-library-template-meta elementor-template-library-template-author elementor-template-library-local-column-3">{{{ author }}}</div>
311 - <div class="elementor-template-library-template-meta elementor-template-library-template-date elementor-template-library-local-column-4">{{{ human_date }}}</div>
312 - <div class="elementor-template-library-template-controls elementor-template-library-local-column-5">
313 - <#
314 - const previewClass = typeof subType !== 'undefined' && 'FOLDER' !== subType
315 - ? 'elementor-hidden'
316 - : '';
317 - #>
318 - <button type="button" class="elementor-template-library-template-preview elementor-button e-btn-txt {{{previewClass}}}">
319 - <#
320 - const actionText = typeof subType === 'undefined' || 'FOLDER' !== subType
321 - ? '<?php echo esc_html__( 'Preview', 'elementor' ); ?>'
322 - : '<?php echo esc_html__( 'Open', 'elementor' ); ?>';
323 - #>
324 - <i class="eicon-preview-medium" aria-hidden="true"></i>
325 - <span class="elementor-template-library-template-control-title">{{{ actionText }}}</span>
172 + <button class="elementor-template-library-template-action elementor-template-library-template-insert elementor-button elementor-button-success">
173 + <i class="eicon-file-download" aria-hidden="true"></i>
174 + <span class="elementor-button-title"><?php echo __( 'Insert', 'elementor' ); ?></span>
326 175 </button>
327 - <# if ( typeof subType === 'undefined' || 'FOLDER' !== subType ) { #>
328 - <button class="elementor-template-library-template-action elementor-template-library-template-insert elementor-button e-primary e-btn-txt">
329 - <i class="eicon-library-download" aria-hidden="true"></i>
330 - <span class="elementor-button-title"><?php echo esc_html__( 'Insert', 'elementor' ); ?></span>
331 - </button>
332 - <# } #>
333 - <button type="button" class="elementor-template-library-template-more-toggle" aria-haspopup="menu" aria-expanded="false" aria-label="<?php echo esc_attr__( 'More actions for template', 'elementor' ); ?> {{{ title }}}">
176 + <div class="elementor-template-library-template-more-toggle">
334 177 <i class="eicon-ellipsis-h" aria-hidden="true"></i>
335 - <span class="elementor-screen-only"><?php echo esc_html__( 'More actions', 'elementor' ); ?></span>
336 - </button>
337 - <ul class="elementor-template-library-template-more" role="menu" aria-label="<?php echo esc_attr__( 'More actions for template', 'elementor' ); ?> {{{ title }}}">
338 - <# if ( ( typeof subType === 'undefined' || 'FOLDER' !== subType ) && elementor.templates.hasCloudLibraryQuota() && ! elementor.templates.cloudLibraryIsDeactivated() ) { #>
339 - <li role="menuitem">
340 - <button type="button" class="elementor-template-library-template-move">
341 - <i class="eicon-library-move" aria-hidden="true"></i>
342 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Move to', 'elementor' ); ?></span>
343 - </button>
344 - </li>
345 - <li role="menuitem">
346 - <button type="button" class="elementor-template-library-template-copy">
347 - <i class="eicon-library-copy" aria-hidden="true"></i>
348 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Copy to', 'elementor' ); ?></span>
349 - </button>
350 - </li>
351 - <# } #>
352 - <li role="menuitem">
353 - <a href="{{ export_link }}" class="elementor-template-library-template-export">
354 - <i class="eicon-library-download" aria-hidden="true"></i>
355 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Export', 'elementor' ); ?></span>
356 - </a>
357 - </li>
358 - <li role="menuitem">
359 - <button type="button" class="elementor-template-library-template-rename">
360 - <i class="eicon-library-edit" aria-hidden="true"></i>
361 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Rename', 'elementor' ); ?></span>
362 - </button>
363 - </li>
364 - <li role="menuitem">
365 - <button type="button" class="elementor-template-library-template-delete">
366 - <i class="eicon-library-delete" aria-hidden="true"></i>
367 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Delete', 'elementor' ); ?></span>
368 - </button>
369 - </li>
370 - </ul>
371 - </div>
372 - <# } else {
373 - if ( typeof subType !== 'undefined' && 'FOLDER' === subType ) {
374 - #>
375 - <div class="elementor-template-library-template-type-icon">
376 - <i class="eicon-library-folder-view" aria-hidden="true"></i>
377 - <span class="elementor-screen-only"><?php echo esc_html__( 'Folder', 'elementor' ); ?></span>
178 + <span class="elementor-screen-only"><?php echo __( 'More actions', 'elementor' ); ?></span>
378 179 </div>
379 - <div class="elementor-template-library-template-name">
380 - <span>{{ title }}</span>
381 - </div>
382 - <button type="button" class="elementor-template-library-template-more-toggle" aria-haspopup="menu" aria-expanded="false" aria-label="<?php echo esc_attr__( 'More actions for template', 'elementor' ); ?> {{{ title }}}">
383 - <i class="eicon-ellipsis-v" aria-hidden="true"></i>
384 - <span class="elementor-screen-only"><?php echo esc_html__( 'More actions', 'elementor' ); ?></span>
385 - </button>
386 - <ul class="elementor-template-library-template-more" role="menu" aria-label="<?php echo esc_attr__( 'More actions for template', 'elementor' ); ?> {{{ title }}}" style="display: none;">
387 - <li role="menuitem">
388 - <a href="{{ export_link }}" class="elementor-template-library-template-export">
389 - <i class="eicon-library-download" aria-hidden="true"></i>
390 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Export', 'elementor' ); ?></span>
180 + <div class="elementor-template-library-template-more">
181 + <div class="elementor-template-library-template-delete">
182 + <i class="eicon-trash-o" aria-hidden="true"></i>
183 + <span class="elementor-template-library-template-control-title"><?php echo __( 'Delete', 'elementor' ); ?></span>
184 + </div>
185 + <div class="elementor-template-library-template-export">
186 + <a href="{{ export_link }}">
187 + <i class="eicon-sign-out" aria-hidden="true"></i>
188 + <span class="elementor-template-library-template-control-title"><?php echo __( 'Export', 'elementor' ); ?></span>
391 189 </a>
392 - </li>
393 - <li role="menuitem">
394 - <button type="button" class="elementor-template-library-template-rename">
395 - <i class="eicon-library-edit" aria-hidden="true"></i>
396 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Rename', 'elementor' ); ?></span>
397 - </button>
398 - </li>
399 - <li role="menuitem">
400 - <button type="button" class="elementor-template-library-template-delete">
401 - <i class="eicon-library-delete" aria-hidden="true"></i>
402 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Delete', 'elementor' ); ?></span>
403 - </button>
404 - </li>
405 - </ul>
406 - <# } else { #>
407 - <#
408 - const imageSource = preview_url || '<?php echo esc_html( ELEMENTOR_ASSETS_URL . 'images/placeholder-cloud-grid.png' ); ?>';
409 - const hasPreview = preview_url;
410 - const altText = hasPreview
411 - ? '<?php echo esc_attr__( 'Preview of template', 'elementor' ); ?> {{{ title }}}'
412 - : '<?php echo esc_attr__( 'No preview available for template', 'elementor' ); ?> {{{ title }}}';
413 - #>
414 - <div class="elementor-template-library-template-thumbnail">
415 - <img src="{{{ imageSource }}}" alt="{{{ altText }}}"/>
416 - <div class="elementor-template-library-template-preview"></div>
417 190 </div>
418 - <div class="elementor-template-library-card-footer">
419 - <div class="elementor-template-library-template-name">
420 - <# if ( 'locked' === status ) { #>
421 - <i class="eicon-lock-outline" aria-hidden="true" title="<?php esc_attr_e( 'Upgrade to get more storage space or delete old templates to make room.', 'elementor' ); ?>"></i>
422 - <# } #>
423 - <span>{{ title }}</span>
424 - </div>
425 - <div class="elementor-template-library-template-card-footer-overlay">
426 - <button class="elementor-template-library-template-action elementor-template-library-template-insert elementor-button e-primary">
427 - <i class="eicon-library-download" aria-hidden="true"></i>
428 - <span class="elementor-button-title"><?php echo esc_html__( 'Insert', 'elementor' ); ?></span>
429 - </button>
430 - <div class="elementor-template-library-template-card-footer-overlay-info">
431 - <div class="elementor-template-library-template-meta">{{{ author }}}</div>
432 - <div class="elementor-template-library-template-meta">{{{ human_date }}}</div>
433 - </div>
434 - </div>
435 - <button type="button" class="elementor-template-library-template-more-toggle" aria-haspopup="menu" aria-expanded="false" aria-label="<?php echo esc_attr__( 'More actions for template', 'elementor' ); ?> {{{ title }}}">
436 - <i class="eicon-ellipsis-v" aria-hidden="true"></i>
437 - <span class="elementor-screen-only"><?php echo esc_html__( 'More actions', 'elementor' ); ?></span>
438 - </button>
439 - <ul class="elementor-template-library-template-more" role="menu" aria-label="<?php echo esc_attr__( 'More actions for template', 'elementor' ); ?> {{{ title }}}" style="display: none;">
440 - <# if ( elementor.templates.hasCloudLibraryQuota() && ! elementor.templates.cloudLibraryIsDeactivated() ) { #>
441 - <li role="menuitem">
442 - <button type="button" class="elementor-template-library-template-move">
443 - <i class="eicon-library-move" aria-hidden="true"></i>
444 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Move to', 'elementor' ); ?></span>
445 - </button>
446 - </li>
447 - <li role="menuitem">
448 - <button type="button" class="elementor-template-library-template-copy">
449 - <i class="eicon-library-copy" aria-hidden="true"></i>
450 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Copy to', 'elementor' ); ?></span>
451 - </button>
452 - </li>
453 - <# } #>
454 - <li role="menuitem">
455 - <a href="{{ export_link }}" class="elementor-template-library-template-export">
456 - <i class="eicon-library-download" aria-hidden="true"></i>
457 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Export', 'elementor' ); ?></span>
458 - </a>
459 - </li>
460 - <li role="menuitem">
461 - <button type="button" class="elementor-template-library-template-rename">
462 - <i class="eicon-library-edit" aria-hidden="true"></i>
463 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Rename', 'elementor' ); ?></span>
464 - </button>
465 - </li>
466 - <li role="menuitem">
467 - <button type="button" class="elementor-template-library-template-delete">
468 - <i class="eicon-library-delete" aria-hidden="true"></i>
469 - <span class="elementor-template-library-template-control-title"><?php echo esc_html__( 'Delete', 'elementor' ); ?></span>
470 - </button>
471 - </li>
472 - </ul>
473 - </div>
474 - <# } } #>
191 + </div>
192 + </div>
475 193 </script>
476 194
477 195 <script type="text/template" id="tmpl-elementor-template-library-insert-button">
478 - <a class="elementor-template-library-template-action elementor-template-library-template-insert elementor-button e-primary" role="button" tabindex="0">
479 - <i class="eicon-library-download" aria-hidden="true"></i>
480 - <span class="elementor-button-title"><?php echo esc_html__( 'Insert', 'elementor' ); ?></span>
481 - </a>
482 -</script>
483 -
484 -<script type="text/template" id="tmpl-elementor-template-library-apply-ai-button">
485 - <a class="elementor-template-library-template-action elementor-template-library-template-apply-ai elementor-button e-primary">
196 + <a class="elementor-template-library-template-action elementor-template-library-template-insert elementor-button">
486 197 <i class="eicon-file-download" aria-hidden="true"></i>
487 - <span class="elementor-button-title"><?php echo esc_html__( 'Apply', 'elementor' ); ?></span>
198 + <span class="elementor-button-title"><?php echo __( 'Insert', 'elementor' ); ?></span>
488 199 </a>
489 200 </script>
490 201
491 -<script type="text/template" id="tmpl-elementor-template-library-insert-and-ai-variations-buttons">
492 - <a class="elementor-template-library-template-action elementor-template-library-template-insert elementor-button e-primary" role="button" tabindex="0">
493 - <i class="eicon-library-download" aria-hidden="true"></i>
494 - <span class="elementor-button-title"><?php echo esc_html__( 'Insert', 'elementor' ); ?></span>
495 - </a>
496 - <a class="elementor-template-library-template-action elementor-template-library-template-generate-variation elementor-button e-btn-txt e-btn-txt-border" role="button" tabindex="0">
497 - <i class="eicon-ai" aria-hidden="true"></i>
498 - <span class="elementor-button-title"><?php echo esc_html__( 'Generate Variations', 'elementor' ); ?></span>
499 - </a>
500 -</script>
501 -
502 202 <script type="text/template" id="tmpl-elementor-template-library-upgrade-plan-button">
503 203 <a
504 - class="elementor-template-library-template-action elementor-button go-pro"
204 + class="elementor-template-library-template-action elementor-button elementor-go-pro"
505 205 href="{{{ promotionLink }}}"
506 206 target="_blank"
507 207 >
208 + <i class="eicon-external-link-square" aria-hidden="true"></i>
508 209 <span class="elementor-button-title">{{{ promotionText }}}</span>
509 210 </a>
510 211 </script>
511 212
@@ -510,227 +211,55 @@
510 211 </script>
511 212
512 213 <script type="text/template" id="tmpl-elementor-template-library-save-template">
513 214 <div class="elementor-template-library-blank-icon">
514 - <#
515 - const templateIcon = typeof icon === 'undefined' ? '<i class="eicon-library-upload" aria-hidden="true"></i>' : icon;
516 - print( templateIcon );
517 - #>
518 - <span class="elementor-screen-only"><?php echo esc_html__( 'Save', 'elementor' ); ?></span>
215 + <i class="eicon-library-save" aria-hidden="true"></i>
216 + <span class="elementor-screen-only"><?php echo __( 'Save', 'elementor' ); ?></span>
519 217 </div>
520 218 <div class="elementor-template-library-blank-title">{{{ title }}}</div>
521 219 <div class="elementor-template-library-blank-message">{{{ description }}}</div>
522 220 <form id="elementor-template-library-save-template-form">
523 - <input type="hidden" name="post_id" value="<?php echo esc_attr( get_the_ID() ); ?>">
524 - <# if ( typeof canSaveToCloud === 'undefined' || ! canSaveToCloud ) { #>
221 + <input type="hidden" name="post_id" value="<?php echo get_the_ID(); ?>">
525 222 <input id="elementor-template-library-save-template-name" name="title" placeholder="<?php echo esc_attr__( 'Enter Template Name', 'elementor' ); ?>" required>
526 - <button id="elementor-template-library-save-template-submit" class="elementor-button e-primary">
223 + <button id="elementor-template-library-save-template-submit" class="elementor-button elementor-button-success">
527 224 <span class="elementor-state-icon">
528 225 <i class="eicon-loading eicon-animation-spin" aria-hidden="true"></i>
529 226 </span>
530 - <?php echo esc_html__( 'Save', 'elementor' ); ?>
227 + <?php echo __( 'Save', 'elementor' ); ?>
531 228 </button>
532 - <# } else { #>
533 - <div class="cloud-library-form-inputs">
534 - <input id="elementor-template-library-save-template-name" name="title" placeholder="<?php echo esc_attr__( 'Give your template a name', 'elementor' ); ?>" required>
535 - <div class="source-selections">
536 - <div class="cloud-folder-selection-dropdown">
537 - <div class="cloud-folder-selection-dropdown-list"></div>
538 - </div>
539 - <div class="source-selections-input cloud">
540 - <input type="checkbox" id="cloud" name="cloud" value="cloud">
541 - <label for="cloud"> <?php echo esc_html__( 'Cloud Templates', 'elementor' ); ?></label> <span class="divider">/</span> <button type="button" class="ellipsis-container" aria-label="<?php echo esc_attr__( 'Select folder', 'elementor' ); ?>" aria-haspopup="listbox" aria-expanded="false"><i class="eicon-ellipsis-h" aria-hidden="true"></i></button>
542 - <span class="selected-folder">
543 - <span class="selected-folder-text"></span>
544 - <i class="eicon-editor-close" aria-hidden="true"></i>
545 - </span>
546 - <# if ( elementor.config.library_connect.is_connected ) { #>
547 - <#
548 - const goLink = elementor.templates.hasCloudLibraryQuota()
549 - ? 'https://go.elementor.com/go-pro-cloud-templates-save-to-100-usage-badge'
550 - : 'https://go.elementor.com/go-pro-cloud-templates-save-to-free-badge/';
551 - #>
552 - <span class="upgrade-badge">
553 - <a href="{{{ goLink }}}" target="_blank">
554 - <i class="eicon-upgrade-crown-full"></i><?php echo esc_html__( 'Upgrade', 'elementor' ); ?>
555 - </a>
556 - </span>
557 - <i class="eicon-info upgrade-tooltip" aria-hidden="true"></i>
558 - <# } else { #>
559 - <span class="connect-badge">
560 - <span class="connect-divider">|</span>
561 - <a id="elementor-template-library-connect__badge" href="{{{ elementorAppConfig?.[ 'cloud-library' ]?.library_connect_url }}}">
562 - <?php echo esc_html__( 'Connect', 'elementor' ); ?>
563 - </a>
564 - </span>
565 - <# } #>
566 - </div>
567 - <div class="source-selections-input local">
568 - <input type="checkbox" id="local" name="local" value="local">
569 - <label for="local"> <?php echo esc_html__( 'Site Templates', 'elementor' ); ?></label><br>
570 - </div>
571 - <input type="hidden" name="parentId" id="parentId" />
572 - </div>
573 - <div class="quota-cta">
574 - <p>
575 - <?php echo esc_html__( 'You’ve saved 100% of the templates in your plan.', 'elementor' ); ?>
576 - <br>
577 - <?php printf(
578 - /* translators: %s is the "Upgrade now" link */
579 - esc_html__( 'To get more space %s', 'elementor' ),
580 - '<a href="https://go.elementor.com/go-pro-cloud-templates-save-to-100-usage-notice">' . esc_html__( 'Upgrade now', 'elementor' ) . '</a>'
581 - ); ?>
582 - </p>
583 - </div>
584 - <button id="elementor-template-library-save-template-submit" class="elementor-button e-primary">
585 - <span class="elementor-state-icon">
586 - <i class="eicon-loading eicon-animation-spin" aria-hidden="true"></i>
587 - </span>
588 - {{{ saveBtnText }}}
589 - </button>
590 - </div>
591 - <# } #>
592 229 </form>
593 230 <div class="elementor-template-library-blank-footer">
594 - <?php echo esc_html__( 'Learn more about the', 'elementor' ); ?>
595 - <a class="elementor-template-library-blank-footer-link" href="https://go.elementor.com/docs-library/" target="_blank"><?php echo esc_html__( 'Template Library', 'elementor' ); ?></a>
231 + <?php echo __( 'Want to learn more about the Elementor library?', 'elementor' ); ?>
232 + <a class="elementor-template-library-blank-footer-link" href="https://go.elementor.com/docs-library/" target="_blank"><?php echo __( 'Click here', 'elementor' ); ?></a>
596 233 </div>
597 234 </script>
598 235
599 -<script type="text/template" id="tmpl-elementor-template-library-save-template-variant-b">
600 - <div class="elementor-template-library-blank-icon">
601 - <#
602 - const templateIcon = typeof icon === 'undefined' ? '<i class="eicon-library-upload" aria-hidden="true"></i>' : icon;
603 - print( templateIcon );
604 - #>
605 - <span class="elementor-screen-only"><?php echo esc_html__( 'Save', 'elementor' ); ?></span>
606 - </div>
607 - <div class="elementor-template-library-blank-title">{{{ title }}}</div>
608 - <div class="elementor-template-library-blank-message">{{{ description }}}</div>
609 - <form id="elementor-template-library-save-template-form">
610 - <input type="hidden" name="post_id" value="<?php echo esc_attr( get_the_ID() ); ?>">
611 - <# if ( typeof canSaveToCloud === 'undefined' || ! canSaveToCloud ) { #>
612 - <input id="elementor-template-library-save-template-name" name="title" placeholder="<?php echo esc_attr__( 'Enter Template Name', 'elementor' ); ?>" required>
613 - <button id="elementor-template-library-save-template-submit" class="elementor-button e-primary">
614 - <span class="elementor-state-icon">
615 - <i class="eicon-loading eicon-animation-spin" aria-hidden="true"></i>
616 - </span>
617 - <?php echo esc_html__( 'Save', 'elementor' ); ?>
618 - </button>
619 - <# } else { #>
620 - <div class="cloud-library-form-inputs variant-b">
621 - <label class="template-name-label">{{{ nameLabel }}}</label>
622 - <input id="elementor-template-library-save-template-name" name="title" placeholder="{{ namePlaceholder }}" required>
623 - <div class="source-selections variant-b">
624 - <label class="save-location-label">{{{ saveLocationLabel }}}</label>
625 - <div class="cloud-folder-selection-dropdown">
626 - <div class="cloud-folder-selection-dropdown-list"></div>
627 - </div>
628 - <div class="source-selections-input cloud variant-b">
629 - <input type="checkbox" id="cloud-variant-b" name="cloud" value="cloud">
630 - <svg xmlns="http://www.w3.org/2000/svg" width="32" height="21" viewBox="0 0 32 21" fill="none" aria-hidden="true" focusable="false">
631 - <path d="M14.4766 0.65332C15.6012 0.448538 16.725 0.448538 17.8496 0.65332L17.8506 0.654297C18.999 0.859231 20.0519 1.25664 21.0117 1.8457L21.0186 1.84961C21.977 2.41518 22.7715 3.12436 23.4062 3.97754V3.97852C23.9513 4.72146 24.3483 5.52984 24.5977 6.40625L24.5986 6.40918C24.8464 7.25779 24.9249 8.11532 24.835 8.98438L24.7773 9.53613H25.9482C26.6783 9.53618 27.3861 9.67837 28.0752 9.96484C28.7666 10.2523 29.3641 10.6478 29.8721 11.1514C30.3801 11.655 30.7789 12.2473 31.0684 12.9316C31.3568 13.6137 31.5 14.3141 31.5 15.0361C31.5 15.7562 31.3572 16.4544 31.0703 17.1348C30.7812 17.7963 30.3807 18.3918 29.8672 18.9238C29.361 19.4246 28.767 19.8189 28.0791 20.1055C27.3899 20.3687 26.6806 20.5 25.9482 20.5H7.86426C6.88609 20.5 5.94391 20.3314 5.03516 19.9941C4.15289 19.634 3.36155 19.1289 2.65918 18.4775C1.96133 17.8303 1.42329 17.0862 1.04102 16.2432C0.680199 15.3703 0.500051 14.4663 0.5 13.5273C0.5 12.5875 0.680313 11.6958 1.04004 10.8486L1.03906 10.8477C1.4212 10.0044 1.96042 9.26071 2.6582 8.61328C3.29259 8.02931 4.00501 7.56929 4.79785 7.23242L4.80859 7.22754C5.60006 6.86884 6.43718 6.65539 7.32227 6.58789L7.66406 6.5625L7.7627 6.23438C7.99951 5.45187 8.36595 4.71876 8.86523 4.03418L9.08789 3.74414C9.72608 2.97736 10.4771 2.33393 11.3438 1.81348C12.3064 1.24543 13.3497 0.858543 14.4766 0.65332Z" stroke="var(--e-a-color-txt)"/>
632 - </svg>
633 - <label for="cloud-variant-b"><?php echo esc_html__( 'Cloud Templates', 'elementor' ); ?></label>
634 - <span class="divider">/</span>
635 - <button type="button" class="ellipsis-container" aria-label="<?php echo esc_attr__( 'Select folder', 'elementor' ); ?>" aria-haspopup="listbox" aria-expanded="false">
636 - <?php echo esc_html__( 'Select folder', 'elementor' ); ?>
637 - </button>
638 - <span class="selected-folder">
639 - <span class="selected-folder-text"></span>
640 - <i class="eicon-editor-close" aria-hidden="true"></i>
641 - </span>
642 - <# if ( elementor.config.library_connect.is_connected ) { #>
643 - <#
644 - const goLink = elementor.templates.hasCloudLibraryQuota()
645 - ? 'https://go.elementor.com/go-pro-cloud-templates-save-to-100-usage-badge'
646 - : 'https://go.elementor.com/go-pro-cloud-templates-save-to-free-badge/';
647 - #>
648 - <span class="upgrade-badge">
649 - <a href="{{{ goLink }}}" target="_blank">
650 - <i class="eicon-upgrade-crown-full"></i><?php echo esc_html__( 'Upgrade', 'elementor' ); ?>
651 - </a>
652 - </span>
653 - <# } else { #>
654 - <span class="connect-badge">
655 - <a id="elementor-template-library-connect__badge-variant-b" href="{{{ elementorAppConfig?.[ 'cloud-library' ]?.library_connect_url }}}">
656 - <?php echo esc_html__( 'Connect account', 'elementor' ); ?>
657 - </a>
658 - </span>
659 - <# } #>
660 - <span class="account-badge cloud-account-badge" type="button" id="elementor-template-library-connect__badge-variant-b-button" aria-hidden="true">
661 - <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true">
662 - <path fill-rule="evenodd" clip-rule="evenodd" d="M7.83317 2.33331C7.25853 2.33331 6.70743 2.56159 6.30111 2.96791C5.89478 3.37424 5.6665 3.92534 5.6665 4.49998V6.66665H9.99984V4.49998C9.99984 3.92534 9.77156 3.37424 9.36524 2.96791C8.95891 2.56159 8.40781 2.33331 7.83317 2.33331ZM10.9998 6.66665V4.49998C10.9998 3.66013 10.6662 2.85467 10.0723 2.26081C9.47848 1.66694 8.67302 1.33331 7.83317 1.33331C6.99332 1.33331 6.18786 1.66694 5.594 2.26081C5.00013 2.85467 4.6665 3.66013 4.6665 4.49998V6.66665H4.49984C4.01361 6.66665 3.54729 6.8598 3.20347 7.20362C2.85966 7.54743 2.6665 8.01375 2.6665 8.49998V12.5C2.6665 12.9862 2.85966 13.4525 3.20347 13.7963C3.54729 14.1402 4.01361 14.3333 4.49984 14.3333H11.1665C11.6527 14.3333 12.119 14.1402 12.4629 13.7963C12.8067 13.4525 12.9998 12.9862 12.9998 12.5V8.49998C12.9998 8.01375 12.8067 7.54743 12.4629 7.20362C12.119 6.8598 11.6527 6.66665 11.1665 6.66665H10.9998Z" fill="#1945A4"/>
663 - </svg>
664 - <?php echo esc_html__( 'My Elementor account', 'elementor' ); ?>
665 - </span>
666 - </div>
667 - <div class="source-selections-input local variant-b">
668 - <input type="checkbox" id="local-variant-b" name="local" value="local">
669 - <i class="eicon-header" aria-hidden="true"></i>
670 - <label for="local-variant-b"><?php echo esc_html__( 'Site Templates', 'elementor' ); ?></label>
671 - <span class="account-badge site-account-badge" type="button" aria-hidden="true">
672 - <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true">
673 - <path d="M7.33301 9.5C8.17286 9.5 8.9784 9.83387 9.57227 10.4277C10.1661 11.0216 10.5 11.8271 10.5 12.667V14C10.5 14.2761 10.2761 14.5 10 14.5H2C1.72386 14.5 1.5 14.2761 1.5 14V12.667C1.5 11.8271 1.83387 11.0216 2.42773 10.4277C3.0216 9.83387 3.82714 9.5 4.66699 9.5H7.33301ZM11.833 9.5C12.6729 9.5 13.4784 9.83387 14.0723 10.4277C14.6661 11.0216 15 11.8271 15 12.667V14C15 14.2761 14.7761 14.5 14.5 14.5H11.5C11.7761 14.5 12 14.2761 12 14V12.667C12 11.8271 11.6661 11.0216 11.0723 10.4277C10.5178 9.87327 9.77915 9.54493 9 9.50391C9.05536 9.50099 9.11128 9.5 9.16699 9.5H11.833ZM6 1.5C6.83985 1.5 7.64539 1.83387 8.23926 2.42773C8.83302 3.02158 9.16699 3.82722 9.16699 4.66699C9.16691 5.50673 8.83305 6.31246 8.23926 6.90625C7.64541 7.50001 6.83978 7.83301 6 7.83301C5.16022 7.83301 4.35459 7.50001 3.76074 6.90625C3.16695 6.31246 2.83309 5.50673 2.83301 4.66699C2.83301 3.82722 3.16698 3.02158 3.76074 2.42773C4.35461 1.83387 5.16015 1.5 6 1.5ZM11 1.5C12.6569 1.5 14 2.84315 14 4.5C14 6.15685 12.6569 7.5 11 7.5C10.4529 7.5 9.94164 7.35059 9.5 7.09473C10.3958 6.57577 11 5.60972 11 4.5C11 3.3901 10.396 2.42319 9.5 1.9043C9.94155 1.64858 10.453 1.5 11 1.5Z" fill="#B15211"/>
674 - </svg>
675 - <?php echo esc_html__( 'Anyone on this site', 'elementor' ); ?>
676 - </span>
677 - </div>
678 - <input type="hidden" name="parentId" id="parentId" />
679 - </div>
680 - <div class="quota-cta">
681 - <p>
682 - <?php echo esc_html__( 'You’ve saved 100% of the templates in your plan.', 'elementor' ); ?>
683 - <br>
684 - <?php printf(
685 - /* translators: %s is the "Upgrade now" link */
686 - esc_html__( 'To get more space %s', 'elementor' ),
687 - '<a href="https://go.elementor.com/go-pro-cloud-templates-save-to-100-usage-notice">' . esc_html__( 'Upgrade now', 'elementor' ) . '</a>'
688 - ); ?>
689 - </p>
690 - </div>
691 - <button id="elementor-template-library-save-template-submit" class="elementor-button e-primary" disabled>
692 - <span class="elementor-state-icon">
693 - <i class="eicon-loading eicon-animation-spin" aria-hidden="true"></i>
694 - </span>
695 - {{{ saveBtnText }}}
696 - </button>
697 - </div>
698 - <# } #>
699 - </form>
700 - <div class="elementor-template-library-blank-footer">
701 - <?php echo esc_html__( 'Learn more about the', 'elementor' ); ?>
702 - <a class="elementor-template-library-blank-footer-link" href="https://go.elementor.com/docs-library/" target="_blank"><?php echo esc_html__( 'Template Library', 'elementor' ); ?></a>
703 - </div>
704 -</script>
705 -
706 236 <script type="text/template" id="tmpl-elementor-template-library-import">
707 237 <form id="elementor-template-library-import-form">
708 238 <div class="elementor-template-library-blank-icon">
709 239 <i class="eicon-library-upload" aria-hidden="true"></i>
710 240 </div>
711 - <div class="elementor-template-library-blank-title"><?php echo esc_html__( 'Import Template to Your Library', 'elementor' ); ?></div>
712 - <div class="elementor-template-library-blank-message"><?php echo esc_html__( 'Drag & drop your .JSON or .zip template file', 'elementor' ); ?></div>
713 - <div id="elementor-template-library-import-form-or"><?php echo esc_html__( 'or', 'elementor' ); ?></div>
714 - <label for="elementor-template-library-import-form-input" id="elementor-template-library-import-form-label" class="elementor-button e-primary"><?php echo esc_html__( 'Select File', 'elementor' ); ?></label>
241 + <div class="elementor-template-library-blank-title"><?php echo __( 'Import Template to Your Library', 'elementor' ); ?></div>
242 + <div class="elementor-template-library-blank-message"><?php echo __( 'Drag & drop your .JSON or .zip template file', 'elementor' ); ?></div>
243 + <div id="elementor-template-library-import-form-or"><?php echo __( 'or', 'elementor' ); ?></div>
244 + <label for="elementor-template-library-import-form-input" id="elementor-template-library-import-form-label" class="elementor-button elementor-button-success"><?php echo __( 'Select File', 'elementor' ); ?></label>
715 245 <input id="elementor-template-library-import-form-input" type="file" name="file" accept=".json,.zip" required/>
716 246 <div class="elementor-template-library-blank-footer">
717 - <?php echo esc_html__( 'Learn more about the', 'elementor' ); ?>
718 - <a class="elementor-template-library-blank-footer-link" href="https://go.elementor.com/docs-library/" target="_blank"><?php echo esc_html__( 'Template Library', 'elementor' ); ?></a>
247 + <?php echo __( 'Want to learn more about the Elementor library?', 'elementor' ); ?>
248 + <a class="elementor-template-library-blank-footer-link" href="https://go.elementor.com/docs-library/" target="_blank"><?php echo __( 'Click here', 'elementor' ); ?></a>
719 249 </div>
720 250 </form>
721 251 </script>
722 252
723 253 <script type="text/template" id="tmpl-elementor-template-library-templates-empty">
724 - <div class="elementor-template-library-blank-icon"></div>
254 + <div class="elementor-template-library-blank-icon">
255 + <img src="<?php echo ELEMENTOR_ASSETS_URL . 'images/no-search-results.svg'; ?>" class="elementor-template-library-no-results" />
256 + </div>
725 257 <div class="elementor-template-library-blank-title"></div>
726 258 <div class="elementor-template-library-blank-message"></div>
727 -
728 - <div class="elementor-template-library-cloud-empty__button"></div>
729 -
730 259 <div class="elementor-template-library-blank-footer">
731 - <?php echo esc_html__( 'Learn more about the', 'elementor' ); ?>
732 - <a class="elementor-template-library-blank-footer-link" href="https://go.elementor.com/docs-library/" target="_blank"><?php echo esc_html__( 'Template Library', 'elementor' ); ?></a>
260 + <?php echo __( 'Want to learn more about the Elementor library?', 'elementor' ); ?>
261 + <a class="elementor-template-library-blank-footer-link" href="https://go.elementor.com/docs-library/" target="_blank"><?php echo __( 'Click here', 'elementor' ); ?></a>
733 262 </div>
734 263 </script>
735 264
736 265 <script type="text/template" id="tmpl-elementor-template-library-preview">
@@ -746,17 +275,10 @@
746 275 </div>
747 276 <div class="elementor-template-library-blank-message">
748 277 {{{ message }}}
749 278 </div>
750 - <?php
751 - $url = Plugin::$instance->common->get_component( 'connect' )->get_app( 'library' )->get_admin_url( 'authorize', [
752 - 'utm_source' => 'template-library',
753 - 'utm_medium' => 'wp-dash',
754 - 'utm_campaign' => 'library-connect',
755 - 'utm_content' => '%%template_type%%', // will be replaced in the frontend
756 - ] );
757 - ?>
758 - <a id="elementor-template-library-connect__button" class="elementor-button e-primary" href="<?php echo esc_url( $url ); ?>">
279 + <?php $url = Plugin::$instance->common->get_component( 'connect' )->get_app( 'library' )->get_admin_url( 'authorize' ); ?>
280 + <a id="elementor-template-library-connect__button" class="elementor-button elementor-button-success" href="<?php echo esc_attr( $url ); ?>">
759 281 {{{ button }}}
760 282 </a>
761 283 <?php
762 284 $base_images_url = $this->get_assets_base_url() . '/assets/images/library-connect/';
@@ -763,89 +285,7 @@
763 285
764 286 $images = [ 'left-1', 'left-2', 'right-1', 'right-2' ];
765 287
766 288 foreach ( $images as $image ) : ?>
767 - <img id="elementor-template-library-connect__background-image-<?php Utils::print_unescaped_internal_string( $image ); ?>" class="elementor-template-library-connect__background-image" src="<?php Utils::print_unescaped_internal_string( $base_images_url . $image ); ?>.png" draggable="false" loading="lazy" />
289 + <img id="elementor-template-library-connect__background-image-<?php echo $image; ?>" class="elementor-template-library-connect__background-image" src="<?php echo $base_images_url . $image; ?>.png" draggable="false"/>
768 290 <?php endforeach; ?>
769 -</script>
770 -
771 -<script type="text/template" id="tmpl-elementor-template-library-connect-states">
772 - <#
773 - const activeSource = elementor.templates.getFilter( 'source' );
774 - #>
775 - <div id="elementor-template-library-filter-toolbar-local" class="elementor-template-library-filter-toolbar" style="padding-block-end:80px;">
776 - <div id="elementor-template-library-filter">
777 - <div class="elementor-template-library-filter-select-source" role="radiogroup" aria-label="<?php echo esc_attr__( 'Template source', 'elementor' ); ?>">
778 - <div class="source-option<# if ( activeSource === 'local' ) { #> selected<# } #>" data-source="local" role="radio" aria-checked="<# if ( activeSource === 'local' ) { #>true<# } else { #>false<# } #>" tabindex="<# if ( activeSource === 'local' ) { #>0<# } else { #>-1<# } #>">
779 - <i class="eicon-header" aria-hidden="true"></i>
780 - <?php echo esc_html__( 'Site templates', 'elementor' ); ?>
781 - </div>
782 - <div class="source-option<# if ( activeSource === 'cloud' ) { #> selected<# } #>" data-source="cloud" role="radio" aria-checked="<# if ( activeSource === 'cloud' ) { #>true<# } else { #>false<# } #>" tabindex="<# if ( activeSource === 'cloud' ) { #>0<# } else { #>-1<# } #>">
783 - <i class="eicon-library-cloud-empty" aria-hidden="true"></i>
784 - <?php echo esc_html__( 'Cloud templates', 'elementor' ); ?>
785 - <#
786 - const tabIcon = elementor.templates.hasCloudLibraryQuota()
787 - ? '<span class="new-badge"><?php echo esc_html__( 'New', 'elementor' ); ?></span>'
788 - : '<span class="new-badge"><i class="eicon-upgrade-crown" style="margin-inline-end: 0;"></i> <?php echo esc_html__( 'Pro', 'elementor' ); ?></span>';
789 -
790 - print( tabIcon );
791 - #>
792 - </div>
793 - </div>
794 - </div>
795 - <div class="elementor-template-library-connect-states-badge">
796 - <span class="source-option-badge cloud-badge">
797 - <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" focusable="false" aria-hidden="true">
798 - <path fill-rule="evenodd" clip-rule="evenodd" d="M7.83317 2.33331C7.25853 2.33331 6.70743 2.56159 6.30111 2.96791C5.89478 3.37424 5.6665 3.92534 5.6665 4.49998V6.66665H9.99984V4.49998C9.99984 3.92534 9.77156 3.37424 9.36524 2.96791C8.95891 2.56159 8.40781 2.33331 7.83317 2.33331ZM10.9998 6.66665V4.49998C10.9998 3.66013 10.6662 2.85467 10.0723 2.26081C9.47848 1.66694 8.67302 1.33331 7.83317 1.33331C6.99332 1.33331 6.18786 1.66694 5.594 2.26081C5.00013 2.85467 4.6665 3.66013 4.6665 4.49998V6.66665H4.49984C4.01361 6.66665 3.54729 6.8598 3.20347 7.20362C2.85966 7.54743 2.6665 8.01375 2.6665 8.49998V12.5C2.6665 12.9862 2.85966 13.4525 3.20347 13.7963C3.54729 14.1402 4.01361 14.3333 4.49984 14.3333H11.1665C11.6527 14.3333 12.119 14.1402 12.4629 13.7963C12.8067 13.4525 12.9998 12.9862 12.9998 12.5V8.49998C12.9998 8.01375 12.8067 7.54743 12.4629 7.20362C12.119 6.8598 11.6527 6.66665 11.1665 6.66665H10.9998Z" fill="#1945A4" />
799 - </svg>
800 - <?php echo esc_html__( 'My Elementor account', 'elementor' ); ?>
801 - </span>
802 - </div>
803 - </div>
804 - <div class="elementor-template-library-blank-icon"></div>
805 - <div class="elementor-template-library-blank-title"></div>
806 - <div class="elementor-template-library-blank-message"></div>
807 -
808 - <div class="elementor-template-library-cloud-empty__button"></div>
809 -</script>
810 -
811 -<script type="text/template" id="tmpl-elementor-global-styles-dialog">
812 - <div class="elementor-global-styles-dialog">
813 - <div class="elementor-global-styles-dialog__header">
814 - <h2><?php echo esc_html__( 'Choose how to apply styles', 'elementor' ); ?></h2>
815 - <p><?php echo esc_html__( 'This affects page settings, classes, and variables.', 'elementor' ); ?></p>
816 - </div>
817 - <div class="elementor-global-styles-dialog__options">
818 - <label class="elementor-global-styles-dialog__radio-card">
819 - <input type="radio" name="elementor-global-styles-mode" id="elementor-global-styles-match" value="match_site" checked>
820 - <div class="elementor-global-styles-dialog__radio-card-content">
821 - <div class="elementor-global-styles-dialog__radio-label"><?php echo esc_html__( 'Use this site’s style', 'elementor' ); ?></div>
822 - <div class="elementor-global-styles-dialog__radio-description">
823 - <?php echo esc_html__( 'Apply your site styles to the imported template.', 'elementor' ); ?>
824 - </div>
825 - </div>
826 - </label>
827 - <label class="elementor-global-styles-dialog__radio-card elementor-global-styles-dialog__radio-card--keep">
828 - <input type="radio" name="elementor-global-styles-mode" id="elementor-global-styles-keep" value="keep">
829 - <div class="elementor-global-styles-dialog__radio-card-content">
830 - <div class="elementor-global-styles-dialog__radio-label"><?php echo esc_html__( 'Keep the template styles', 'elementor' ); ?></div>
831 - <div class="elementor-global-styles-dialog__radio-description">
832 - <?php echo esc_html__( 'The template will keep its original design.', 'elementor' ); ?>
833 - </div>
834 - </div>
835 - </label>
836 - <div class="elementor-global-styles-dialog__checkbox-container" style="display: none;">
837 - <label class="elementor-global-styles-dialog__checkbox-option">
838 - <input type="checkbox" id="elementor-global-styles-create" checked>
839 - <span class="elementor-global-styles-dialog__checkbox-label">
840 - <?php echo esc_html__( 'Add the template’s classes and variables to my site.', 'elementor' ); ?>
841 - <a href="<?php echo esc_url( 'https://elementor.com/help/variables-manager/' ); ?>" target="_blank" rel="noopener noreferrer"><?php echo esc_html__( 'Learn more', 'elementor' ); ?></a>
842 - </span>
843 - </label>
844 - </div>
845 - </div>
846 - <div class="elementor-global-styles-dialog__footer">
847 - <button type="button" class="elementor-global-styles-dialog__button-cancel" id="elementor-global-styles-cancel"><?php echo esc_html__( 'Cancel', 'elementor' ); ?></button>
848 - <button type="button" class="elementor-global-styles-dialog__button-insert" id="elementor-global-styles-insert"><?php echo esc_html__( 'Insert', 'elementor' ); ?></button>
849 - </div>
850 - </div>
851 291 </script>