Wordpress++

This commit is contained in:
nikolark committed 2015-07-23 16:01:02 +02:00
1 parent cef1433711
commit c57294ffe6
90 files changed
+23737 -21190

No files matched your search

+1 -1
View File
@@ -9,7 +9,7 @@
<body> <body>
<h1 id="logo"> <h1 id="logo">
<a href="https://wordpress.org/"><img alt="WordPress" src="wp-admin/images/wordpress-logo.png" /></a> <a href="https://wordpress.org/"><img alt="WordPress" src="wp-admin/images/wordpress-logo.png" /></a>
<br /> Version 4.2.2 <br /> Version 4.2.3
</h1> </h1>
<p style="text-align: center">Semantic Personal Publishing Platform</p> <p style="text-align: center">Semantic Personal Publishing Platform</p>
+5 -1
View File
@@ -41,7 +41,11 @@ include( ABSPATH . 'wp-admin/admin-header.php' );
</h2> </h2>
<div class="changelog point-releases"> <div class="changelog point-releases">
<h3><?php echo _n( 'Maintenance and Security Release', 'Maintenance and Security Releases', 2 ); ?></h3> <h3><?php echo _n( 'Maintenance and Security Release', 'Maintenance and Security Releases', 3 ); ?></h3>
<p><?php printf( _n( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.', 20 ), '4.2.3', number_format_i18n( 20 ) ); ?>
<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'http://codex.wordpress.org/Version_4.2.3' ); ?>
</p>
<p><?php printf( _n( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.', <p><?php printf( _n( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.', 13 ), '4.2.2', number_format_i18n( 13 ) ); ?> '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.', 13 ), '4.2.2', number_format_i18n( 13 ) ); ?>
<?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'http://codex.wordpress.org/Version_4.2.2' ); ?> <?php printf( __( 'For more information, see <a href="%s">the release notes</a>.' ), 'http://codex.wordpress.org/Version_4.2.2' ); ?>
+2
View File
@@ -545,6 +545,7 @@ span.wp-media-buttons-icon:before {
.notification-dialog { .notification-dialog {
position: fixed; position: fixed;
top: 30%; top: 30%;
max-height: 70%;
right: 50%; right: 50%;
width: 450px; width: 450px;
margin-right: -225px; margin-right: -225px;
@@ -553,6 +554,7 @@ span.wp-media-buttons-icon:before {
box-shadow: 0 3px 6px rgba( 0, 0, 0, 0.3 ); box-shadow: 0 3px 6px rgba( 0, 0, 0, 0.3 );
line-height: 1.5; line-height: 1.5;
z-index: 1000005; z-index: 1000005;
overflow-y: auto;
} }
.notification-dialog-background { .notification-dialog-background {
+2
View File
@@ -545,6 +545,7 @@ span.wp-media-buttons-icon:before {
.notification-dialog { .notification-dialog {
position: fixed; position: fixed;
top: 30%; top: 30%;
max-height: 70%;
left: 50%; left: 50%;
width: 450px; width: 450px;
margin-left: -225px; margin-left: -225px;
@@ -553,6 +554,7 @@ span.wp-media-buttons-icon:before {
box-shadow: 0 3px 6px rgba( 0, 0, 0, 0.3 ); box-shadow: 0 3px 6px rgba( 0, 0, 0, 0.3 );
line-height: 1.5; line-height: 1.5;
z-index: 1000005; z-index: 1000005;
overflow-y: auto;
} }
.notification-dialog-background { .notification-dialog-background {
+2 -1
View File
@@ -862,6 +862,7 @@ table.form-table td .updated p {
.request-filesystem-credentials-dialog .notification-dialog { .request-filesystem-credentials-dialog .notification-dialog {
top: 15%; top: 15%;
max-height: 85%;
} }
.request-filesystem-credentials-dialog-content { .request-filesystem-credentials-dialog-content {
@@ -1157,11 +1158,11 @@ table.form-table td .updated p {
.request-filesystem-credentials-dialog .notification-dialog{ .request-filesystem-credentials-dialog .notification-dialog{
width: 100%; width: 100%;
height: 100%; height: 100%;
max-height: 100%;
position: fixed; position: fixed;
top: 0; top: 0;
margin: 0; margin: 0;
right: 0; right: 0;
overflow-y: auto;
} }
} }
+2 -1
View File
@@ -862,6 +862,7 @@ table.form-table td .updated p {
.request-filesystem-credentials-dialog .notification-dialog { .request-filesystem-credentials-dialog .notification-dialog {
top: 15%; top: 15%;
max-height: 85%;
} }
.request-filesystem-credentials-dialog-content { .request-filesystem-credentials-dialog-content {
@@ -1157,11 +1158,11 @@ table.form-table td .updated p {
.request-filesystem-credentials-dialog .notification-dialog{ .request-filesystem-credentials-dialog .notification-dialog{
width: 100%; width: 100%;
height: 100%; height: 100%;
max-height: 100%;
position: fixed; position: fixed;
top: 0; top: 0;
margin: 0; margin: 0;
left: 0; left: 0;
overflow-y: auto;
} }
} }
+1 -1
View File
@@ -1 +1 @@
input,textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=radio],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{border:1px solid #ddd;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.07);box-shadow:inset 0 1px 2px rgba(0,0,0,.07);background-color:#fff;color:#32373c;outline:0;-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=checkbox]:focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=radio]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,select:focus,textarea:focus{border-color:#5b9dd9;-webkit-box-shadow:0 0 2px rgba(30,140,190,.8);box-shadow:0 0 2px rgba(30,140,190,.8)}input[type=email],input[type=url]{direction:ltr}input[type=checkbox],input[type=radio]{border:1px solid #b4b9be;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 0 0 4px;outline:0;padding:0!important;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-appearance:none;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=radio]:checked+label:before{color:#82878c}.wp-core-ui input[type=reset]:active,.wp-core-ui input[type=reset]:hover{color:#00a0d2}.wp-admin p input[type=checkbox],.wp-admin p input[type=radio],td>input[type=checkbox]{margin-top:0}.wp-admin p label input[type=checkbox]{margin-top:-4px}.wp-admin p label input[type=radio]{margin-top:-2px}input[type=radio]{-webkit-border-radius:50%;border-radius:50%;margin-left:4px;line-height:10px}input[type=checkbox]:checked:before,input[type=radio]:checked:before{float:right;display:inline-block;vertical-align:middle;width:16px;font:400 21px/1 dashicons;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input[type=checkbox]:checked:before{content:'\f147';margin:-3px -4px 0 0;color:#1e8cbe}input[type=radio]:checked:before{content:'\2022';text-indent:-9999px;-webkit-border-radius:50px;border-radius:50px;font-size:24px;width:6px;height:6px;margin:4px;line-height:16px;background-color:#1e8cbe}@-moz-document url-prefix(){.form-table input.tog,input[type=checkbox],input[type=radio]{margin-bottom:-1px}}input[type=search]{-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration{display:none}.ie8 input[type=password]{font-family:sans-serif}button,input,select,textarea{font-family:inherit;font-size:inherit;font-weight:inherit}input,select,textarea{font-size:14px;-webkit-border-radius:0;border-radius:0}textarea{overflow:auto;padding:2px 6px;line-height:1.4}.wp-admin input[type=file]{padding:3px 0}label{cursor:pointer}input,select{margin:1px;padding:3px 5px}input.code{padding-top:6px}textarea.code{line-height:1.4;padding:4px 6px 1px}input.readonly,input[readonly],textarea.readonly,textarea[readonly]{background-color:#eee}.wp-core-ui :-moz-placeholder,:-moz-placeholder{color:#a9a9a9}.form-invalid{background-color:#ffebe8!important}.form-invalid input,.form-invalid select{border-color:#c00!important}.form-input-tip{color:#666}input.disabled,input:disabled,select.disabled,select:disabled,textarea.disabled,textarea:disabled{background:rgba(255,255,255,.5);border-color:rgba(222,222,222,.75);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.04);box-shadow:inset 0 1px 2px rgba(0,0,0,.04);color:rgba(51,51,51,.5)}input[type=file].disabled,input[type=file]:disabled,input[type=range].disabled,input[type=range]:disabled{background:0 0;-webkit-box-shadow:none;box-shadow:none}input[type=checkbox].disabled,input[type=checkbox].disabled:checked:before,input[type=checkbox]:disabled,input[type=checkbox]:disabled:checked:before,input[type=radio].disabled,input[type=radio].disabled:checked:before,input[type=radio]:disabled,input[type=radio]:disabled:checked:before{opacity:.7}.wp-admin select{padding:2px;line-height:28px;height:28px;vertical-align:middle}.wp-admin .button-cancel{padding:0 5px;line-height:2}.meta-box-sortables select{max-width:100%}.wp-admin select[multiple]{height:auto}.submit{padding:1.5em 0;margin:5px 0;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;border:none}form p.submit a.cancel:hover{text-decoration:none}p.submit{text-align:right;max-width:100%;margin-top:20px;padding-top:10px}.textright p.submit{border:none;text-align:left}table.form-table+inputLine truncated input,textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=radio],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{border:1px solid #ddd;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.07);box-shadow:inset 0 1px 2px rgba(0,0,0,.07);background-color:#fff;color:#32373c;outline:0;-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=checkbox]:focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=radio]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,select:focus,textarea:focus{border-color:#5b9dd9;-webkit-box-shadow:0 0 2px rgba(30,140,190,.8);box-shadow:0 0 2px rgba(30,140,190,.8)}input[type=email],input[type=url]{direction:ltr}input[type=checkbox],input[type=radio]{border:1px solid #b4b9be;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 0 0 4px;outline:0;padding:0!important;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-appearance:none;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=radio]:checked+label:before{color:#82878c}.wp-core-ui input[type=reset]:active,.wp-core-ui input[type=reset]:hover{color:#00a0d2}.wp-admin p input[type=checkbox],.wp-admin p input[type=radio],td>input[type=checkbox]{margin-top:0}.wp-admin p label input[type=checkbox]{margin-top:-4px}.wp-admin p label input[type=radio]{margin-top:-2px}input[type=radio]{-webkit-border-radius:50%;border-radius:50%;margin-left:4px;line-height:10px}input[type=checkbox]:checked:before,input[type=radio]:checked:before{float:right;display:inline-block;vertical-align:middle;width:16px;font:400 21px/1 dashicons;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input[type=checkbox]:checked:before{content:'\f147';margin:-3px -4px 0 0;color:#1e8cbe}input[type=radio]:checked:before{content:'\2022';text-indent:-9999px;-webkit-border-radius:50px;border-radius:50px;font-size:24px;width:6px;height:6px;margin:4px;line-height:16px;background-color:#1e8cbe}@-moz-document url-prefix(){.form-table input.tog,input[type=checkbox],input[type=radio]{margin-bottom:-1px}}input[type=search]{-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration{display:none}.ie8 input[type=password]{font-family:sans-serif}button,input,select,textarea{font-family:inherit;font-size:inherit;font-weight:inherit}input,select,textarea{font-size:14px;-webkit-border-radius:0;border-radius:0}textarea{overflow:auto;padding:2px 6px;line-height:1.4}.wp-admin input[type=file]{padding:3px 0}label{cursor:pointer}input,select{margin:1px;padding:3px 5px}input.code{padding-top:6px}textarea.code{line-height:1.4;padding:4px 6px 1px}input.readonly,input[readonly],textarea.readonly,textarea[readonly]{background-color:#eee}.wp-core-ui :-moz-placeholder,:-moz-placeholder{color:#a9a9a9}.form-invalid{background-color:#ffebe8!important}.form-invalid input,.form-invalid select{border-color:#c00!important}.form-input-tip{color:#666}input.disabled,input:disabled,select.disabled,select:disabled,textarea.disabled,textarea:disabled{background:rgba(255,255,255,.5);border-color:rgba(222,222,222,.75);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.04);box-shadow:inset 0 1px 2px rgba(0,0,0,.04);color:rgba(51,51,51,.5)}input[type=file].disabled,input[type=file]:disabled,input[type=range].disabled,input[type=range]:disabled{background:0 0;-webkit-box-shadow:none;box-shadow:none}input[type=checkbox].disabled,input[type=checkbox].disabled:checked:before,input[type=checkbox]:disabled,input[type=checkbox]:disabled:checked:before,input[type=radio].disabled,input[type=radio].disabled:checked:before,input[type=radio]:disabled,input[type=radio]:disabled:checked:before{opacity:.7}.wp-admin select{padding:2px;line-height:28px;height:28px;vertical-align:middle}.wp-admin .button-cancel{padding:0 5px;line-height:2}.meta-box-sortables select{max-width:100%}.wp-admin select[multiple]{height:auto}.submit{padding:1.5em 0;margin:5px 0;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;border:none}form p.submit a.cancel:hover{text-decoration:none}p.submit{text-align:right;max-width:100%;margin-top:20px;padding-top:10px}.textright p.submit{border:none;text-align:left}table.form-table+inputLine truncated
+1 -1
View File
@@ -1 +1 @@
input,textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=radio],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{border:1px solid #ddd;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.07);box-shadow:inset 0 1px 2px rgba(0,0,0,.07);background-color:#fff;color:#32373c;outline:0;-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=checkbox]:focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=radio]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,select:focus,textarea:focus{border-color:#5b9dd9;-webkit-box-shadow:0 0 2px rgba(30,140,190,.8);box-shadow:0 0 2px rgba(30,140,190,.8)}input[type=email],input[type=url]{direction:ltr}input[type=checkbox],input[type=radio]{border:1px solid #b4b9be;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 4px 0 0;outline:0;padding:0!important;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-appearance:none;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=radio]:checked+label:before{color:#82878c}.wp-core-ui input[type=reset]:active,.wp-core-ui input[type=reset]:hover{color:#00a0d2}.wp-admin p input[type=checkbox],.wp-admin p input[type=radio],td>input[type=checkbox]{margin-top:0}.wp-admin p label input[type=checkbox]{margin-top:-4px}.wp-admin p label input[type=radio]{margin-top:-2px}input[type=radio]{-webkit-border-radius:50%;border-radius:50%;margin-right:4px;line-height:10px}input[type=checkbox]:checked:before,input[type=radio]:checked:before{float:left;display:inline-block;vertical-align:middle;width:16px;font:400 21px/1 dashicons;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input[type=checkbox]:checked:before{content:'\f147';margin:-3px 0 0 -4px;color:#1e8cbe}input[type=radio]:checked:before{content:'\2022';text-indent:-9999px;-webkit-border-radius:50px;border-radius:50px;font-size:24px;width:6px;height:6px;margin:4px;line-height:16px;background-color:#1e8cbe}@-moz-document url-prefix(){.form-table input.tog,input[type=checkbox],input[type=radio]{margin-bottom:-1px}}input[type=search]{-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration{display:none}.ie8 input[type=password]{font-family:sans-serif}button,input,select,textarea{font-family:inherit;font-size:inherit;font-weight:inherit}input,select,textarea{font-size:14px;-webkit-border-radius:0;border-radius:0}textarea{overflow:auto;padding:2px 6px;line-height:1.4}.wp-admin input[type=file]{padding:3px 0}label{cursor:pointer}input,select{margin:1px;padding:3px 5px}input.code{padding-top:6px}textarea.code{line-height:1.4;padding:4px 6px 1px}input.readonly,input[readonly],textarea.readonly,textarea[readonly]{background-color:#eee}.wp-core-ui :-moz-placeholder,:-moz-placeholder{color:#a9a9a9}.form-invalid{background-color:#ffebe8!important}.form-invalid input,.form-invalid select{border-color:#c00!important}.form-input-tip{color:#666}input.disabled,input:disabled,select.disabled,select:disabled,textarea.disabled,textarea:disabled{background:rgba(255,255,255,.5);border-color:rgba(222,222,222,.75);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.04);box-shadow:inset 0 1px 2px rgba(0,0,0,.04);color:rgba(51,51,51,.5)}input[type=file].disabled,input[type=file]:disabled,input[type=range].disabled,input[type=range]:disabled{background:0 0;-webkit-box-shadow:none;box-shadow:none}input[type=checkbox].disabled,input[type=checkbox].disabled:checked:before,input[type=checkbox]:disabled,input[type=checkbox]:disabled:checked:before,input[type=radio].disabled,input[type=radio].disabled:checked:before,input[type=radio]:disabled,input[type=radio]:disabled:checked:before{opacity:.7}.wp-admin select{padding:2px;line-height:28px;height:28px;vertical-align:middle}.wp-admin .button-cancel{padding:0 5px;line-height:2}.meta-box-sortables select{max-width:100%}.wp-admin select[multiple]{height:auto}.submit{padding:1.5em 0;margin:5px 0;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;border:none}form p.submit a.cancel:hover{text-decoration:none}p.submit{text-align:left;max-width:100%;margin-top:20px;padding-top:10px}.textright p.submit{border:none;text-align:right}table.form-table+inputLine truncated input,textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=radio],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{border:1px solid #ddd;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.07);box-shadow:inset 0 1px 2px rgba(0,0,0,.07);background-color:#fff;color:#32373c;outline:0;-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=checkbox]:focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=radio]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,select:focus,textarea:focus{border-color:#5b9dd9;-webkit-box-shadow:0 0 2px rgba(30,140,190,.8);box-shadow:0 0 2px rgba(30,140,190,.8)}input[type=email],input[type=url]{direction:ltr}input[type=checkbox],input[type=radio]{border:1px solid #b4b9be;background:#fff;color:#555;clear:none;cursor:pointer;display:inline-block;line-height:0;height:16px;margin:-4px 4px 0 0;outline:0;padding:0!important;text-align:center;vertical-align:middle;width:16px;min-width:16px;-webkit-appearance:none;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=radio]:checked+label:before{color:#82878c}.wp-core-ui input[type=reset]:active,.wp-core-ui input[type=reset]:hover{color:#00a0d2}.wp-admin p input[type=checkbox],.wp-admin p input[type=radio],td>input[type=checkbox]{margin-top:0}.wp-admin p label input[type=checkbox]{margin-top:-4px}.wp-admin p label input[type=radio]{margin-top:-2px}input[type=radio]{-webkit-border-radius:50%;border-radius:50%;margin-right:4px;line-height:10px}input[type=checkbox]:checked:before,input[type=radio]:checked:before{float:left;display:inline-block;vertical-align:middle;width:16px;font:400 21px/1 dashicons;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input[type=checkbox]:checked:before{content:'\f147';margin:-3px 0 0 -4px;color:#1e8cbe}input[type=radio]:checked:before{content:'\2022';text-indent:-9999px;-webkit-border-radius:50px;border-radius:50px;font-size:24px;width:6px;height:6px;margin:4px;line-height:16px;background-color:#1e8cbe}@-moz-document url-prefix(){.form-table input.tog,input[type=checkbox],input[type=radio]{margin-bottom:-1px}}input[type=search]{-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration{display:none}.ie8 input[type=password]{font-family:sans-serif}button,input,select,textarea{font-family:inherit;font-size:inherit;font-weight:inherit}input,select,textarea{font-size:14px;-webkit-border-radius:0;border-radius:0}textarea{overflow:auto;padding:2px 6px;line-height:1.4}.wp-admin input[type=file]{padding:3px 0}label{cursor:pointer}input,select{margin:1px;padding:3px 5px}input.code{padding-top:6px}textarea.code{line-height:1.4;padding:4px 6px 1px}input.readonly,input[readonly],textarea.readonly,textarea[readonly]{background-color:#eee}.wp-core-ui :-moz-placeholder,:-moz-placeholder{color:#a9a9a9}.form-invalid{background-color:#ffebe8!important}.form-invalid input,.form-invalid select{border-color:#c00!important}.form-input-tip{color:#666}input.disabled,input:disabled,select.disabled,select:disabled,textarea.disabled,textarea:disabled{background:rgba(255,255,255,.5);border-color:rgba(222,222,222,.75);-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.04);box-shadow:inset 0 1px 2px rgba(0,0,0,.04);color:rgba(51,51,51,.5)}input[type=file].disabled,input[type=file]:disabled,input[type=range].disabled,input[type=range]:disabled{background:0 0;-webkit-box-shadow:none;box-shadow:none}input[type=checkbox].disabled,input[type=checkbox].disabled:checked:before,input[type=checkbox]:disabled,input[type=checkbox]:disabled:checked:before,input[type=radio].disabled,input[type=radio].disabled:checked:before,input[type=radio]:disabled,input[type=radio]:disabled:checked:before{opacity:.7}.wp-admin select{padding:2px;line-height:28px;height:28px;vertical-align:middle}.wp-admin .button-cancel{padding:0 5px;line-height:2}.meta-box-sortables select{max-width:100%}.wp-admin select[multiple]{height:auto}.submit{padding:1.5em 0;margin:5px 0;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;border:none}form p.submit a.cancel:hover{text-decoration:none}p.submit{text-align:left;max-width:100%;margin-top:20px;padding-top:10px}.textright p.submit{border:none;text-align:right}table.form-table+inputLine truncated
+1
View File
@@ -846,6 +846,7 @@ input[type="search"].categories-search,
border-bottom: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5;
font-size: 14px; font-size: 14px;
-webkit-appearance: none; -webkit-appearance: none;
-moz-appearance: none;
appearance: none; appearance: none;
} }
+1 -1
View File
@@ -1 +1 @@
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-resolution:144dpi){*,:after,:before{-webkit-font-smoothing:antialiased}}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:0;margin:0;padding:0}legend{border:0;padding:0}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.clearfix:after,.clearfix:before{content:"";display:table}.clearfix:after{clear:both}.hide-if-js{display:none}.screen-reader-text{position:absolute;margin:-1px;padding:0;height:1px;width:1px;overflow:hidden;clip:rect(0 0 0 0);border:0}body,button,input,select,textarea{color:#404040;font-family:"Open Sans",Helvetica,Arial,sans-serif;font-size:20px;font-weight:400;line-height:1.6}h1,h2,h3,h4,h5,h6{clear:both}p{margin-bottom:1.5em}b,strong{font-weight:700}.button-subtle,.scan-submit{display:inline-block;margin:0;padding:0 10px 1px;border-width:1px;border-style:solid;-webkit-border-radius:3px;border-radius:3px;font-size:13px;line-height:2;text-decoration:none;white-space:nowrap;cursor:pointer;-webkit-appearance:none}.button-subtle{background:0 0;border:0;color:#0073aa}.button-subtle:visited{color:#0073aa}.button-subtle:active,.button-subtle:focus,.button-subtle:hover,.edit-post-link:active,.edit-post-link:focus,.edit-post-link:hover{color:#00a0d2}.button-subtle:active,.button-subtle:focus,.edit-post-link:active,.edit-post-link:focus{outline:0;text-decoration:underline}.preview-button{margin-left:5px}.button-reset{margin:0;padding:0;border:0;background:0 0;cursor:pointer;-webkit-appearance:none}.button-reset:focus{outline:0}.button-link{margin:0;padding:0;border:0;background:0 0;color:#0073aa;cursor:pointer;-webkit-appearance:none}.button-link:active,.button-link:focus,.button-link:hover{color:#00a0d2;text-decoration:underline}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline}[type=checkbox],[type=radio]{padding:0}[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}[type=email],[type=password],[type=search],[type=text],[type=url],textarea{padding:.4em .75em;color:#32373c;border:1px solid #ccc}[type=email]:focus,[type=password]:focus,[type=search]:focus,[type=text]:focus,[type=url]:focus,textarea:focus{color:#32373c;outline:0}textarea{overflow:auto;padding-right:3px;vertical-align:top}a,a:visited{color:#0073aa}a:active,a:focus,a:hover{color:#00a0d2}ol,ul{margin:0 3em 1.5em 0}ul{list-style:disc}ol{list-style:decimal}li>ol,li>ul{margin-bottom:0;margin-right:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}#post-formats-select br{display:none}.post-format{width:1px;height:1px;position:absolute;top:-9999px}.lt-ie9 .post-format{margin:17px 13px 0 12px;position:static;top:auto;float:right;width:16px;height:16px}.post-format-icon{position:relative;display:block;padding:13px 13px 14px 2px;cursor:pointer}.post-format-icon:after,.post-format-icon:before{content:"";display:inline-block;width:20px;height:20px;margin-left:10px;font-size:20px;line-height:1;font-family:dashicons;text-decoration:inherit;color:#9ea7af;font-weight:400;font-style:normal;vertical-align:top;text-aliLine truncated html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-resolution:144dpi){*,:after,:before{-webkit-font-smoothing:antialiased}}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:0;margin:0;padding:0}legend{border:0;padding:0}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.clearfix:after,.clearfix:before{content:"";display:table}.clearfix:after{clear:both}.hide-if-js{display:none}.screen-reader-text{position:absolute;margin:-1px;padding:0;height:1px;width:1px;overflow:hidden;clip:rect(0 0 0 0);border:0}body,button,input,select,textarea{color:#404040;font-family:"Open Sans",Helvetica,Arial,sans-serif;font-size:20px;font-weight:400;line-height:1.6}h1,h2,h3,h4,h5,h6{clear:both}p{margin-bottom:1.5em}b,strong{font-weight:700}.button-subtle,.scan-submit{display:inline-block;margin:0;padding:0 10px 1px;border-width:1px;border-style:solid;-webkit-border-radius:3px;border-radius:3px;font-size:13px;line-height:2;text-decoration:none;white-space:nowrap;cursor:pointer;-webkit-appearance:none}.button-subtle{background:0 0;border:0;color:#0073aa}.button-subtle:visited{color:#0073aa}.button-subtle:active,.button-subtle:focus,.button-subtle:hover,.edit-post-link:active,.edit-post-link:focus,.edit-post-link:hover{color:#00a0d2}.button-subtle:active,.button-subtle:focus,.edit-post-link:active,.edit-post-link:focus{outline:0;text-decoration:underline}.preview-button{margin-left:5px}.button-reset{margin:0;padding:0;border:0;background:0 0;cursor:pointer;-webkit-appearance:none}.button-reset:focus{outline:0}.button-link{margin:0;padding:0;border:0;background:0 0;color:#0073aa;cursor:pointer;-webkit-appearance:none}.button-link:active,.button-link:focus,.button-link:hover{color:#00a0d2;text-decoration:underline}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline}[type=checkbox],[type=radio]{padding:0}[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}[type=email],[type=password],[type=search],[type=text],[type=url],textarea{padding:.4em .75em;color:#32373c;border:1px solid #ccc}[type=email]:focus,[type=password]:focus,[type=search]:focus,[type=text]:focus,[type=url]:focus,textarea:focus{color:#32373c;outline:0}textarea{overflow:auto;padding-right:3px;vertical-align:top}a,a:visited{color:#0073aa}a:active,a:focus,a:hover{color:#00a0d2}ol,ul{margin:0 3em 1.5em 0}ul{list-style:disc}ol{list-style:decimal}li>ol,li>ul{margin-bottom:0;margin-right:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}#post-formats-select br{display:none}.post-format{width:1px;height:1px;position:absolute;top:-9999px}.lt-ie9 .post-format{margin:17px 13px 0 12px;position:static;top:auto;float:right;width:16px;height:16px}.post-format-icon{position:relative;display:block;padding:13px 13px 14px 2px;cursor:pointer}.post-format-icon:after,.post-format-icon:before{content:"";display:inline-block;width:20px;height:20px;margin-left:10px;font-size:20px;line-height:1;font-family:dashicons;text-decoration:inherit;color:#9ea7af;font-weight:400;font-style:normal;vertical-align:top;text-aliLine truncated
+1
View File
@@ -846,6 +846,7 @@ input[type="search"].categories-search,
border-bottom: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5;
font-size: 14px; font-size: 14px;
-webkit-appearance: none; -webkit-appearance: none;
-moz-appearance: none;
appearance: none; appearance: none;
} }
+1 -1
View File
@@ -1 +1 @@
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-resolution:144dpi){*,:after,:before{-webkit-font-smoothing:antialiased}}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:0;margin:0;padding:0}legend{border:0;padding:0}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.clearfix:after,.clearfix:before{content:"";display:table}.clearfix:after{clear:both}.hide-if-js{display:none}.screen-reader-text{position:absolute;margin:-1px;padding:0;height:1px;width:1px;overflow:hidden;clip:rect(0 0 0 0);border:0}body,button,input,select,textarea{color:#404040;font-family:"Open Sans",Helvetica,Arial,sans-serif;font-size:20px;font-weight:400;line-height:1.6}h1,h2,h3,h4,h5,h6{clear:both}p{margin-bottom:1.5em}b,strong{font-weight:700}.button-subtle,.scan-submit{display:inline-block;margin:0;padding:0 10px 1px;border-width:1px;border-style:solid;-webkit-border-radius:3px;border-radius:3px;font-size:13px;line-height:2;text-decoration:none;white-space:nowrap;cursor:pointer;-webkit-appearance:none}.button-subtle{background:0 0;border:0;color:#0073aa}.button-subtle:visited{color:#0073aa}.button-subtle:active,.button-subtle:focus,.button-subtle:hover,.edit-post-link:active,.edit-post-link:focus,.edit-post-link:hover{color:#00a0d2}.button-subtle:active,.button-subtle:focus,.edit-post-link:active,.edit-post-link:focus{outline:0;text-decoration:underline}.preview-button{margin-right:5px}.button-reset{margin:0;padding:0;border:0;background:0 0;cursor:pointer;-webkit-appearance:none}.button-reset:focus{outline:0}.button-link{margin:0;padding:0;border:0;background:0 0;color:#0073aa;cursor:pointer;-webkit-appearance:none}.button-link:active,.button-link:focus,.button-link:hover{color:#00a0d2;text-decoration:underline}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline}[type=checkbox],[type=radio]{padding:0}[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}[type=email],[type=password],[type=search],[type=text],[type=url],textarea{padding:.4em .75em;color:#32373c;border:1px solid #ccc}[type=email]:focus,[type=password]:focus,[type=search]:focus,[type=text]:focus,[type=url]:focus,textarea:focus{color:#32373c;outline:0}textarea{overflow:auto;padding-left:3px;vertical-align:top}a,a:visited{color:#0073aa}a:active,a:focus,a:hover{color:#00a0d2}ol,ul{margin:0 0 1.5em 3em}ul{list-style:disc}ol{list-style:decimal}li>ol,li>ul{margin-bottom:0;margin-left:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}#post-formats-select br{display:none}.post-format{width:1px;height:1px;position:absolute;top:-9999px}.lt-ie9 .post-format{margin:17px 12px 0 13px;position:static;top:auto;float:left;width:16px;height:16px}.post-format-icon{position:relative;display:block;padding:13px 2px 14px 13px;cursor:pointer}.post-format-icon:after,.post-format-icon:before{content:"";display:inline-block;width:20px;height:20px;margin-right:10px;font-size:20px;line-height:1;font-family:dashicons;text-decoration:inherit;color:#9ea7af;font-weight:400;font-style:normal;vertical-align:top;text-aligLine truncated html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-resolution:144dpi){*,:after,:before{-webkit-font-smoothing:antialiased}}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:0;margin:0;padding:0}legend{border:0;padding:0}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.clearfix:after,.clearfix:before{content:"";display:table}.clearfix:after{clear:both}.hide-if-js{display:none}.screen-reader-text{position:absolute;margin:-1px;padding:0;height:1px;width:1px;overflow:hidden;clip:rect(0 0 0 0);border:0}body,button,input,select,textarea{color:#404040;font-family:"Open Sans",Helvetica,Arial,sans-serif;font-size:20px;font-weight:400;line-height:1.6}h1,h2,h3,h4,h5,h6{clear:both}p{margin-bottom:1.5em}b,strong{font-weight:700}.button-subtle,.scan-submit{display:inline-block;margin:0;padding:0 10px 1px;border-width:1px;border-style:solid;-webkit-border-radius:3px;border-radius:3px;font-size:13px;line-height:2;text-decoration:none;white-space:nowrap;cursor:pointer;-webkit-appearance:none}.button-subtle{background:0 0;border:0;color:#0073aa}.button-subtle:visited{color:#0073aa}.button-subtle:active,.button-subtle:focus,.button-subtle:hover,.edit-post-link:active,.edit-post-link:focus,.edit-post-link:hover{color:#00a0d2}.button-subtle:active,.button-subtle:focus,.edit-post-link:active,.edit-post-link:focus{outline:0;text-decoration:underline}.preview-button{margin-right:5px}.button-reset{margin:0;padding:0;border:0;background:0 0;cursor:pointer;-webkit-appearance:none}.button-reset:focus{outline:0}.button-link{margin:0;padding:0;border:0;background:0 0;color:#0073aa;cursor:pointer;-webkit-appearance:none}.button-link:active,.button-link:focus,.button-link:hover{color:#00a0d2;text-decoration:underline}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline}[type=checkbox],[type=radio]{padding:0}[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}[type=email],[type=password],[type=search],[type=text],[type=url],textarea{padding:.4em .75em;color:#32373c;border:1px solid #ccc}[type=email]:focus,[type=password]:focus,[type=search]:focus,[type=text]:focus,[type=url]:focus,textarea:focus{color:#32373c;outline:0}textarea{overflow:auto;padding-left:3px;vertical-align:top}a,a:visited{color:#0073aa}a:active,a:focus,a:hover{color:#00a0d2}ol,ul{margin:0 0 1.5em 3em}ul{list-style:disc}ol{list-style:decimal}li>ol,li>ul{margin-bottom:0;margin-left:1.5em}dt{font-weight:700}dd{margin:0 1.5em 1.5em}#post-formats-select br{display:none}.post-format{width:1px;height:1px;position:absolute;top:-9999px}.lt-ie9 .post-format{margin:17px 12px 0 13px;position:static;top:auto;float:left;width:16px;height:16px}.post-format-icon{position:relative;display:block;padding:13px 2px 14px 13px;cursor:pointer}.post-format-icon:after,.post-format-icon:before{content:"";display:inline-block;width:20px;height:20px;margin-right:10px;font-size:20px;line-height:1;font-family:dashicons;text-decoration:inherit;color:#9ea7af;font-weight:400;font-style:normal;vertical-align:top;text-aligLine truncated
+8
View File
@@ -350,6 +350,10 @@ div#widgets-right .closed .widgets-sortables {
display: none; display: none;
} }
.js .widgets-holder-wrap.closed .widget.ui-sortable-helper {
display: block;
}
/* Hide Widget Settings by Default */ /* Hide Widget Settings by Default */
.widget-inside, .widget-inside,
.widget-description { .widget-description {
@@ -506,6 +510,10 @@ div#widgets-right .widget-top:hover,
cursor: pointer; cursor: pointer;
} }
#available-widgets .widget.ui-draggable-dragging .widget-top {
cursor: move;
}
/* =Media Queries /* =Media Queries
-------------------------------------------------------------- */ -------------------------------------------------------------- */
+8
View File
@@ -350,6 +350,10 @@ div#widgets-right .closed .widgets-sortables {
display: none; display: none;
} }
.js .widgets-holder-wrap.closed .widget.ui-sortable-helper {
display: block;
}
/* Hide Widget Settings by Default */ /* Hide Widget Settings by Default */
.widget-inside, .widget-inside,
.widget-description { .widget-description {
@@ -506,6 +510,10 @@ div#widgets-right .widget-top:hover,
cursor: pointer; cursor: pointer;
} }
#available-widgets .widget.ui-draggable-dragging .widget-top {
cursor: move;
}
/* =Media Queries /* =Media Queries
-------------------------------------------------------------- */ -------------------------------------------------------------- */
+1 -1
View File
@@ -5,4 +5,4 @@
* Copyright jQuery Foundation and other contributors * Copyright jQuery Foundation and other contributors
* Released under the MIT license. * Released under the MIT license.
* http://jquery.org/license * http://jquery.org/license
*/.ui-draggable-handle,.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.accordion-section{border-bottom:1px solid #dfdfdf;margin:0}.accordion-section.open .accordion-section-content,.no-js .accordion-section .accordion-section-content{display:block}.accordion-section.open:hover{border-bottom-color:#dfdfdf}.accordion-section-content{display:none;padding:10px 20px 15px;overflow:hidden;background:#fff}.accordion-section-title{margin:0;padding:12px 15px 15px;position:relative;border-right:1px solid #dfdfdf;border-left:1px solid #dfdfdf;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.js .accordion-section-title{cursor:pointer}.js .accordion-section-title:after{position:absolute;top:12px;left:10px;z-index:1}.accordion-section-title:focus{outline:0}.accordion-section-title:focus:after,.accordion-section-title:hover:after{border-color:#a0a5aa transparent}.cannot-expand .accordion-section-title{cursor:auto}.cannot-expand .accordion-section-title:after{display:none}.control-section .accordion-section-title{border-right:none;border-left:none;padding:10px 14px 11px 10px;line-height:21px;background:#fff}.control-section .accordion-section-title:after{top:11px}.js .control-section .accordion-section-title:focus,.js .control-section .accordion-section-title:hover,.js .control-section.open .accordion-section-title,.js .control-section:hover .accordion-section-title{color:#23282d;background:#f5f5f5}.control-section.open .accordion-section-title{border-bottom:1px solid #dfdfdf}@media only screen and (min-width:769px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (max-width:860px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (min-width:980px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (max-width:768px){#col-left,#col-right{width:100%}}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){div.star-holder,div.star-holder .star-rating{background:url(../images/stars-2x.png?ver=20121108) bottom left/21px 37px repeat-x;-webkit-background-size:21px 37px}.spinner{background-image:url(../images/spinner-2x.gif)}#bulk-titles div a,#bulk-titles div a:hover,#screen-meta-links a.show-settings,.curtime #timestamp,.meta-box-sortables .postbox:hover .handlediv,.sidebar-name-arrow,.sidebar-name:hover .sidebar-name-arrow,.tagchecklist span a,.tagchecklist span a:hover,.widget-top a.widget-action,.widget-top a.widget-action:hover{background:none!important}}@-ms-viewport{width:device-width}@media screen and (max-width:782px){html.wp-toolbar{padding-top:46px}body{min-width:240px;overflow-x:hidden}body *{-webkit-tap-highlight-color:transparent!important}#wpcontent{position:relative;margin-right:0;padding-right:10px}#wpbody-content{padding-bottom:100px}.wrap{margin-left:12px;margin-right:0}.col-wrap{padding:0}#collapse-menu,#screen-meta,#screen-meta-links,.post-format-select{display:none!important}.wrap .add-new-h2,.wrap .add-new-h2:active{padding:10px 15px;font-size:14px}.wp-color-result{height:auto;padding-right:45px}.wp-color-result:after{font-size:14px;height:auto;padding:6px 14px}.media-upload-form div.error,.notice,.wrap div.error,.wrap div.updated{margin:20px 0 10px;padding:5px 10px;font-size:14px;line-height:175%}.wp-core-ui .notice.is-dismissible{padding-left:46px}.notice-dismiss{padding:13px}.wrap .icon32+h2{margin-top:-2px}.wp-responsive-open #wpbody{left:-190px}code{word-wrap:break-word}.postbox{font-size:14px}.metabox-holder h3{padding:12px}.postbox .handlediv{margin-top:3px}.subsubsub{font-size:16px;text-align:center;margin-bottom:15px}#templateside{float:none;width:auto}#templateside li{margin:0}#templateside li a{display:block;padding:5px}#templateside .highlight{padding:5px;margin-right:-5px;margin-top:-5px}#template div{float:none;margin:0;width:auto}#template textarea{width:100%}.fileedit-sub .alignright{margin-top:15px}#comments-form .checkforspam,#wpfooter{display:none}}@media screen and (max-width:600px){#wpwrap.wp-responsive-open{overflow-x:hidden}html.wp-toolbar{padding-top:0}#wpbody{padding-top:46px}div#post-body.metabox-holder.columns-1{overflow-x:hidden}}input,textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=radio],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{border:1px solid #ddd;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.07);box-shadow:inset 0 1px 2px rgba(0,0,0,.07);background-color:#fff;color:#32373c;outline:0;-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=checkbox]:focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[typLine truncated */.ui-draggable-handle,.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.accordion-section{border-bottom:1px solid #dfdfdf;margin:0}.accordion-section.open .accordion-section-content,.no-js .accordion-section .accordion-section-content{display:block}.accordion-section.open:hover{border-bottom-color:#dfdfdf}.accordion-section-content{display:none;padding:10px 20px 15px;overflow:hidden;background:#fff}.accordion-section-title{margin:0;padding:12px 15px 15px;position:relative;border-right:1px solid #dfdfdf;border-left:1px solid #dfdfdf;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.js .accordion-section-title{cursor:pointer}.js .accordion-section-title:after{position:absolute;top:12px;left:10px;z-index:1}.accordion-section-title:focus{outline:0}.accordion-section-title:focus:after,.accordion-section-title:hover:after{border-color:#a0a5aa transparent}.cannot-expand .accordion-section-title{cursor:auto}.cannot-expand .accordion-section-title:after{display:none}.control-section .accordion-section-title{border-right:none;border-left:none;padding:10px 14px 11px 10px;line-height:21px;background:#fff}.control-section .accordion-section-title:after{top:11px}.js .control-section .accordion-section-title:focus,.js .control-section .accordion-section-title:hover,.js .control-section.open .accordion-section-title,.js .control-section:hover .accordion-section-title{color:#23282d;background:#f5f5f5}.control-section.open .accordion-section-title{border-bottom:1px solid #dfdfdf}@media only screen and (min-width:769px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (max-width:860px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (min-width:980px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (max-width:768px){#col-left,#col-right{width:100%}}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){div.star-holder,div.star-holder .star-rating{background:url(../images/stars-2x.png?ver=20121108) bottom left/21px 37px repeat-x;-webkit-background-size:21px 37px}.spinner{background-image:url(../images/spinner-2x.gif)}#bulk-titles div a,#bulk-titles div a:hover,#screen-meta-links a.show-settings,.curtime #timestamp,.meta-box-sortables .postbox:hover .handlediv,.sidebar-name-arrow,.sidebar-name:hover .sidebar-name-arrow,.tagchecklist span a,.tagchecklist span a:hover,.widget-top a.widget-action,.widget-top a.widget-action:hover{background:none!important}}@-ms-viewport{width:device-width}@media screen and (max-width:782px){html.wp-toolbar{padding-top:46px}body{min-width:240px;overflow-x:hidden}body *{-webkit-tap-highlight-color:transparent!important}#wpcontent{position:relative;margin-right:0;padding-right:10px}#wpbody-content{padding-bottom:100px}.wrap{margin-left:12px;margin-right:0}.col-wrap{padding:0}#collapse-menu,#screen-meta,#screen-meta-links,.post-format-select{display:none!important}.wrap .add-new-h2,.wrap .add-new-h2:active{padding:10px 15px;font-size:14px}.wp-color-result{height:auto;padding-right:45px}.wp-color-result:after{font-size:14px;height:auto;padding:6px 14px}.media-upload-form div.error,.notice,.wrap div.error,.wrap div.updated{margin:20px 0 10px;padding:5px 10px;font-size:14px;line-height:175%}.wp-core-ui .notice.is-dismissible{padding-left:46px}.notice-dismiss{padding:13px}.wrap .icon32+h2{margin-top:-2px}.wp-responsive-open #wpbody{left:-190px}code{word-wrap:break-word}.postbox{font-size:14px}.metabox-holder h3{padding:12px}.postbox .handlediv{margin-top:3px}.subsubsub{font-size:16px;text-align:center;margin-bottom:15px}#templateside{float:none;width:auto}#templateside li{margin:0}#templateside li a{display:block;padding:5px}#templateside .highlight{padding:5px;margin-right:-5px;margin-top:-5px}#template div{float:none;margin:0;width:auto}#template textarea{width:100%}.fileedit-sub .alignright{margin-top:15px}#comments-form .checkforspam,#wpfooter{display:none}}@media screen and (max-width:600px){#wpwrap.wp-responsive-open{overflow-x:hidden}html.wp-toolbar{padding-top:0}#wpbody{padding-top:46px}div#post-body.metabox-holder.columns-1{overflow-x:hidden}}input,textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=radio],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{border:1px solid #ddd;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.07);box-shadow:inset 0 1px 2px rgba(0,0,0,.07);background-color:#fff;color:#32373c;outline:0;-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=checkbox]:focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[typLine truncated
+1 -1
View File
@@ -5,4 +5,4 @@
* Copyright jQuery Foundation and other contributors * Copyright jQuery Foundation and other contributors
* Released under the MIT license. * Released under the MIT license.
* http://jquery.org/license * http://jquery.org/license
*/.ui-draggable-handle,.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.accordion-section{border-bottom:1px solid #dfdfdf;margin:0}.accordion-section.open .accordion-section-content,.no-js .accordion-section .accordion-section-content{display:block}.accordion-section.open:hover{border-bottom-color:#dfdfdf}.accordion-section-content{display:none;padding:10px 20px 15px;overflow:hidden;background:#fff}.accordion-section-title{margin:0;padding:12px 15px 15px;position:relative;border-left:1px solid #dfdfdf;border-right:1px solid #dfdfdf;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.js .accordion-section-title{cursor:pointer}.js .accordion-section-title:after{position:absolute;top:12px;right:10px;z-index:1}.accordion-section-title:focus{outline:0}.accordion-section-title:focus:after,.accordion-section-title:hover:after{border-color:#a0a5aa transparent}.cannot-expand .accordion-section-title{cursor:auto}.cannot-expand .accordion-section-title:after{display:none}.control-section .accordion-section-title{border-left:none;border-right:none;padding:10px 10px 11px 14px;line-height:21px;background:#fff}.control-section .accordion-section-title:after{top:11px}.js .control-section .accordion-section-title:focus,.js .control-section .accordion-section-title:hover,.js .control-section.open .accordion-section-title,.js .control-section:hover .accordion-section-title{color:#23282d;background:#f5f5f5}.control-section.open .accordion-section-title{border-bottom:1px solid #dfdfdf}@media only screen and (min-width:769px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (max-width:860px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (min-width:980px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (max-width:768px){#col-left,#col-right{width:100%}}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){div.star-holder,div.star-holder .star-rating{background:url(../images/stars-2x.png?ver=20121108) bottom left/21px 37px repeat-x;-webkit-background-size:21px 37px}.spinner{background-image:url(../images/spinner-2x.gif)}#bulk-titles div a,#bulk-titles div a:hover,#screen-meta-links a.show-settings,.curtime #timestamp,.meta-box-sortables .postbox:hover .handlediv,.sidebar-name-arrow,.sidebar-name:hover .sidebar-name-arrow,.tagchecklist span a,.tagchecklist span a:hover,.widget-top a.widget-action,.widget-top a.widget-action:hover{background:none!important}}@-ms-viewport{width:device-width}@media screen and (max-width:782px){html.wp-toolbar{padding-top:46px}body{min-width:240px;overflow-x:hidden}body *{-webkit-tap-highlight-color:transparent!important}#wpcontent{position:relative;margin-left:0;padding-left:10px}#wpbody-content{padding-bottom:100px}.wrap{margin-right:12px;margin-left:0}.col-wrap{padding:0}#collapse-menu,#screen-meta,#screen-meta-links,.post-format-select{display:none!important}.wrap .add-new-h2,.wrap .add-new-h2:active{padding:10px 15px;font-size:14px}.wp-color-result{height:auto;padding-left:45px}.wp-color-result:after{font-size:14px;height:auto;padding:6px 14px}.media-upload-form div.error,.notice,.wrap div.error,.wrap div.updated{margin:20px 0 10px;padding:5px 10px;font-size:14px;line-height:175%}.wp-core-ui .notice.is-dismissible{padding-right:46px}.notice-dismiss{padding:13px}.wrap .icon32+h2{margin-top:-2px}.wp-responsive-open #wpbody{right:-190px}code{word-wrap:break-word}.postbox{font-size:14px}.metabox-holder h3{padding:12px}.postbox .handlediv{margin-top:3px}.subsubsub{font-size:16px;text-align:center;margin-bottom:15px}#templateside{float:none;width:auto}#templateside li{margin:0}#templateside li a{display:block;padding:5px}#templateside .highlight{padding:5px;margin-left:-5px;margin-top:-5px}#template div{float:none;margin:0;width:auto}#template textarea{width:100%}.fileedit-sub .alignright{margin-top:15px}#comments-form .checkforspam,#wpfooter{display:none}}@media screen and (max-width:600px){#wpwrap.wp-responsive-open{overflow-x:hidden}html.wp-toolbar{padding-top:0}#wpbody{padding-top:46px}div#post-body.metabox-holder.columns-1{overflow-x:hidden}}input,textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=radio],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{border:1px solid #ddd;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.07);box-shadow:inset 0 1px 2px rgba(0,0,0,.07);background-color:#fff;color:#32373c;outline:0;-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=checkbox]:focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[typeLine truncated */.ui-draggable-handle,.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.accordion-section{border-bottom:1px solid #dfdfdf;margin:0}.accordion-section.open .accordion-section-content,.no-js .accordion-section .accordion-section-content{display:block}.accordion-section.open:hover{border-bottom-color:#dfdfdf}.accordion-section-content{display:none;padding:10px 20px 15px;overflow:hidden;background:#fff}.accordion-section-title{margin:0;padding:12px 15px 15px;position:relative;border-left:1px solid #dfdfdf;border-right:1px solid #dfdfdf;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.js .accordion-section-title{cursor:pointer}.js .accordion-section-title:after{position:absolute;top:12px;right:10px;z-index:1}.accordion-section-title:focus{outline:0}.accordion-section-title:focus:after,.accordion-section-title:hover:after{border-color:#a0a5aa transparent}.cannot-expand .accordion-section-title{cursor:auto}.cannot-expand .accordion-section-title:after{display:none}.control-section .accordion-section-title{border-left:none;border-right:none;padding:10px 10px 11px 14px;line-height:21px;background:#fff}.control-section .accordion-section-title:after{top:11px}.js .control-section .accordion-section-title:focus,.js .control-section .accordion-section-title:hover,.js .control-section.open .accordion-section-title,.js .control-section:hover .accordion-section-title{color:#23282d;background:#f5f5f5}.control-section.open .accordion-section-title{border-bottom:1px solid #dfdfdf}@media only screen and (min-width:769px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (max-width:860px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (min-width:980px){#col-left{width:35%}#col-right{width:65%}}@media only screen and (max-width:768px){#col-left,#col-right{width:100%}}@media print,(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){div.star-holder,div.star-holder .star-rating{background:url(../images/stars-2x.png?ver=20121108) bottom left/21px 37px repeat-x;-webkit-background-size:21px 37px}.spinner{background-image:url(../images/spinner-2x.gif)}#bulk-titles div a,#bulk-titles div a:hover,#screen-meta-links a.show-settings,.curtime #timestamp,.meta-box-sortables .postbox:hover .handlediv,.sidebar-name-arrow,.sidebar-name:hover .sidebar-name-arrow,.tagchecklist span a,.tagchecklist span a:hover,.widget-top a.widget-action,.widget-top a.widget-action:hover{background:none!important}}@-ms-viewport{width:device-width}@media screen and (max-width:782px){html.wp-toolbar{padding-top:46px}body{min-width:240px;overflow-x:hidden}body *{-webkit-tap-highlight-color:transparent!important}#wpcontent{position:relative;margin-left:0;padding-left:10px}#wpbody-content{padding-bottom:100px}.wrap{margin-right:12px;margin-left:0}.col-wrap{padding:0}#collapse-menu,#screen-meta,#screen-meta-links,.post-format-select{display:none!important}.wrap .add-new-h2,.wrap .add-new-h2:active{padding:10px 15px;font-size:14px}.wp-color-result{height:auto;padding-left:45px}.wp-color-result:after{font-size:14px;height:auto;padding:6px 14px}.media-upload-form div.error,.notice,.wrap div.error,.wrap div.updated{margin:20px 0 10px;padding:5px 10px;font-size:14px;line-height:175%}.wp-core-ui .notice.is-dismissible{padding-right:46px}.notice-dismiss{padding:13px}.wrap .icon32+h2{margin-top:-2px}.wp-responsive-open #wpbody{right:-190px}code{word-wrap:break-word}.postbox{font-size:14px}.metabox-holder h3{padding:12px}.postbox .handlediv{margin-top:3px}.subsubsub{font-size:16px;text-align:center;margin-bottom:15px}#templateside{float:none;width:auto}#templateside li{margin:0}#templateside li a{display:block;padding:5px}#templateside .highlight{padding:5px;margin-left:-5px;margin-top:-5px}#template div{float:none;margin:0;width:auto}#template textarea{width:100%}.fileedit-sub .alignright{margin-top:15px}#comments-form .checkforspam,#wpfooter{display:none}}@media screen and (max-width:600px){#wpwrap.wp-responsive-open{overflow-x:hidden}html.wp-toolbar{padding-top:0}#wpbody{padding-top:46px}div#post-body.metabox-holder.columns-1{overflow-x:hidden}}input,textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=radio],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{border:1px solid #ddd;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.07);box-shadow:inset 0 1px 2px rgba(0,0,0,.07);background-color:#fff;color:#32373c;outline:0;-webkit-transition:.05s border-color ease-in-out;transition:.05s border-color ease-in-out}input[type=checkbox]:focus,input[type=color]:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=datetime]:focus,input[type=email]:focus,input[type=month]:focus,input[typeLine truncated
+22 -8
View File
@@ -2883,6 +2883,8 @@ function wp_ajax_destroy_sessions() {
* @see Plugin_Upgrader * @see Plugin_Upgrader
*/ */
function wp_ajax_update_plugin() { function wp_ajax_update_plugin() {
global $wp_filesystem;
$plugin = urldecode( $_POST['plugin'] ); $plugin = urldecode( $_POST['plugin'] );
$status = array( $status = array(
@@ -2892,6 +2894,7 @@ function wp_ajax_update_plugin() {
'oldVersion' => '', 'oldVersion' => '',
'newVersion' => '', 'newVersion' => '',
); );
$plugin_data = get_plugin_data( WP_PLUGIN_DIR . '/' . $plugin ); $plugin_data = get_plugin_data( WP_PLUGIN_DIR . '/' . $plugin );
if ( $plugin_data['Version'] ) { if ( $plugin_data['Version'] ) {
$status['oldVersion'] = sprintf( __( 'Version %s' ), $plugin_data['Version'] ); $status['oldVersion'] = sprintf( __( 'Version %s' ), $plugin_data['Version'] );
@@ -2906,15 +2909,17 @@ function wp_ajax_update_plugin() {
include_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' ); include_once( ABSPATH . 'wp-admin/includes/class-wp-upgrader.php' );
$current = get_site_transient( 'update_plugins' ); wp_update_plugins();
if ( empty( $current ) ) {
wp_update_plugins();
}
$upgrader = new Plugin_Upgrader( new Automatic_Upgrader_Skin() ); $skin = new Automatic_Upgrader_Skin();
$upgrader = new Plugin_Upgrader( $skin );
$result = $upgrader->bulk_upgrade( array( $plugin ) ); $result = $upgrader->bulk_upgrade( array( $plugin ) );
if ( is_array( $result ) ) { if ( is_array( $result ) && empty( $result[$plugin] ) && is_wp_error( $skin->result ) ) {
$result = $skin->result;
}
if ( is_array( $result ) && !empty( $result[ $plugin ] ) ) {
$plugin_update_data = current( $result ); $plugin_update_data = current( $result );
/* /*
@@ -2929,7 +2934,8 @@ function wp_ajax_update_plugin() {
wp_send_json_error( $status ); wp_send_json_error( $status );
} }
$plugin_data = get_plugin_data( WP_PLUGIN_DIR . '/' . $plugin ); $plugin_data = get_plugins( '/' . $result[ $plugin ]['destination_name'] );
$plugin_data = reset( $plugin_data );
if ( $plugin_data['Version'] ) { if ( $plugin_data['Version'] ) {
$status['newVersion'] = sprintf( __( 'Version %s' ), $plugin_data['Version'] ); $status['newVersion'] = sprintf( __( 'Version %s' ), $plugin_data['Version'] );
@@ -2939,10 +2945,18 @@ function wp_ajax_update_plugin() {
} else if ( is_wp_error( $result ) ) { } else if ( is_wp_error( $result ) ) {
$status['error'] = $result->get_error_message(); $status['error'] = $result->get_error_message();
wp_send_json_error( $status ); wp_send_json_error( $status );
} else if ( is_bool( $result ) && ! $result ) {
} else if ( is_bool( $result ) && ! $result ) {
$status['errorCode'] = 'unable_to_connect_to_filesystem'; $status['errorCode'] = 'unable_to_connect_to_filesystem';
$status['error'] = __( 'Unable to connect to the filesystem. Please confirm your credentials.' ); $status['error'] = __( 'Unable to connect to the filesystem. Please confirm your credentials.' );
// Pass through the error from WP_Filesystem if one was raised
if ( is_wp_error( $wp_filesystem->errors ) && $wp_filesystem->errors->get_error_code() ) {
$status['error'] = $wp_filesystem->errors->get_error_message();
}
wp_send_json_error( $status ); wp_send_json_error( $status );
} }
} }
+4
View File
@@ -418,6 +418,10 @@ function wp_network_dashboard_right_now() {
function wp_dashboard_quick_press( $error_msg = false ) { function wp_dashboard_quick_press( $error_msg = false ) {
global $post_ID; global $post_ID;
if ( ! current_user_can( 'edit_posts' ) ) {
return;
}
/* Check if a new auto-draft (= no new post_ID) is needed or if the old can be used */ /* Check if a new auto-draft (= no new post_ID) is needed or if the old can be used */
$last_post_id = (int) get_user_option( 'dashboard_quick_press_last_post_id' ); // Get the last post_ID $last_post_id = (int) get_user_option( 'dashboard_quick_press_last_post_id' ); // Get the last post_ID
if ( $last_post_id ) { if ( $last_post_id ) {
+52 -26
View File
@@ -524,14 +524,11 @@ function upgrade_all() {
if ( $wp_current_db_version < 29630 ) if ( $wp_current_db_version < 29630 )
upgrade_400(); upgrade_400();
// Don't harsh my mellow. upgrade_422() must be called before
// upgrade_420() to catch bad comments prior to any auto-expansion of
// MySQL column widths.
if ( $wp_current_db_version < 31534 ) if ( $wp_current_db_version < 31534 )
upgrade_422(); upgrade_422();
if ( $wp_current_db_version < 31351 ) if ( $wp_current_db_version < 31536 )
upgrade_420(); upgrade_423();
maybe_disable_link_manager(); maybe_disable_link_manager();
@@ -1426,19 +1423,6 @@ function upgrade_400() {
* @since 4.2.0 * @since 4.2.0
*/ */
function upgrade_420() { function upgrade_420() {
global $wp_current_db_version, $wpdb;
if ( $wp_current_db_version < 31351 && $wpdb->charset === 'utf8mb4' ) {
if ( is_multisite() ) {
$tables = $wpdb->tables( 'blog' );
} else {
$tables = $wpdb->tables( 'all' );
}
foreach ( $tables as $table ) {
maybe_convert_table_to_utf8mb4( $table );
}
}
} }
/** /**
@@ -1497,6 +1481,31 @@ function upgrade_422() {
} }
} }
/**
* Execute changes made in WordPress 4.2.0.
*
* @since 4.2.3
*/
function upgrade_423() {
global $wp_current_db_version, $wpdb;
if ( $wp_current_db_version < 31536 && $wpdb->charset === 'utf8mb4' ) {
if ( is_multisite() ) {
$tables = $wpdb->tables( 'blog' );
} else {
$tables = $wpdb->tables( 'all' );
if ( defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) {
$global_tables = $wpdb->tables( 'global' );
$tables = array_diff_assoc( $tables, $global_tables );
}
}
foreach ( $tables as $table ) {
maybe_convert_table_to_utf8mb4( $table );
}
}
}
/** /**
* Executes network-level upgrade routines. * Executes network-level upgrade routines.
* *
@@ -1596,7 +1605,7 @@ function upgrade_network() {
// 4.2 // 4.2
if ( $wp_current_db_version < 31351 && $wpdb->charset === 'utf8mb4' ) { if ( $wp_current_db_version < 31351 && $wpdb->charset === 'utf8mb4' ) {
if ( ! ( defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) && DO_NOT_UPGRADE_GLOBAL_TABLES ) ) { if ( ! defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) {
$wpdb->query( "ALTER TABLE $wpdb->usermeta DROP INDEX meta_key, ADD INDEX meta_key(meta_key(191))" ); $wpdb->query( "ALTER TABLE $wpdb->usermeta DROP INDEX meta_key, ADD INDEX meta_key(meta_key(191))" );
$wpdb->query( "ALTER TABLE $wpdb->site DROP INDEX domain, ADD INDEX domain(domain(140),path(51))" ); $wpdb->query( "ALTER TABLE $wpdb->site DROP INDEX domain, ADD INDEX domain(domain(140),path(51))" );
$wpdb->query( "ALTER TABLE $wpdb->sitemeta DROP INDEX meta_key, ADD INDEX meta_key(meta_key(191))" ); $wpdb->query( "ALTER TABLE $wpdb->sitemeta DROP INDEX meta_key, ADD INDEX meta_key(meta_key(191))" );
@@ -1612,7 +1621,7 @@ function upgrade_network() {
// 4.2.2 // 4.2.2
if ( $wp_current_db_version < 31535 && 'utf8mb4' === $wpdb->charset ) { if ( $wp_current_db_version < 31535 && 'utf8mb4' === $wpdb->charset ) {
if ( ! ( defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) && DO_NOT_UPGRADE_GLOBAL_TABLES ) ) { if ( ! defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) {
$upgrade = false; $upgrade = false;
$indexes = $wpdb->get_results( "SHOW INDEXES FROM $wpdb->signups" ); $indexes = $wpdb->get_results( "SHOW INDEXES FROM $wpdb->signups" );
foreach( $indexes as $index ) { foreach( $indexes as $index ) {
@@ -1627,6 +1636,17 @@ function upgrade_network() {
} }
} }
} }
// 4.2.3
if ( $wp_current_db_version < 31536 && $wpdb->charset === 'utf8mb4' ) {
if ( ! defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) {
$tables = $wpdb->tables( 'global' );
foreach ( $tables as $table ) {
maybe_convert_table_to_utf8mb4( $table );
}
}
}
} }
// //
@@ -1759,6 +1779,17 @@ function maybe_convert_table_to_utf8mb4( $table ) {
} }
} }
$table_details = $wpdb->get_row( "SHOW TABLE STATUS LIKE '$table'" );
if ( ! $table_details ) {
return false;
}
list( $table_charset ) = explode( '_', $table_details->Collation );
$table_charset = strtolower( $table_charset );
if ( 'utf8mb4' === $table_charset ) {
return true;
}
return $wpdb->query( "ALTER TABLE $table CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci" ); return $wpdb->query( "ALTER TABLE $table CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci" );
} }
@@ -2446,14 +2477,9 @@ function pre_schema_upgrade() {
} }
} }
if ( $wp_current_db_version < 30133 ) {
// dbDelta() can recreate but can't drop the index.
$wpdb->query( "ALTER TABLE $wpdb->terms DROP INDEX slug" );
}
// Upgrade versions prior to 4.2. // Upgrade versions prior to 4.2.
if ( $wp_current_db_version < 31351 ) { if ( $wp_current_db_version < 31351 ) {
if ( ! is_multisite() ) { if ( ! is_multisite() && ! defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) {
$wpdb->query( "ALTER TABLE $wpdb->usermeta DROP INDEX meta_key, ADD INDEX meta_key(meta_key(191))" ); $wpdb->query( "ALTER TABLE $wpdb->usermeta DROP INDEX meta_key, ADD INDEX meta_key(meta_key(191))" );
} }
$wpdb->query( "ALTER TABLE $wpdb->terms DROP INDEX slug, ADD INDEX slug(slug(191))" ); $wpdb->query( "ALTER TABLE $wpdb->terms DROP INDEX slug, ADD INDEX slug(slug(191))" );
+1 -1
View File
@@ -860,7 +860,7 @@ $(document).ready( function() {
window.wpResponsive.init(); window.wpResponsive.init();
setPinMenu(); setPinMenu();
$document.on( 'wp-window-resized.pin-menu postboxes-columnchange.pin-menu postbox-toggled.pin-menu wp-collapse-menu.pin-menu wp-scroll-start.pin-menu', setPinMenu ); $document.on( 'wp-pin-menu wp-window-resized.pin-menu postboxes-columnchange.pin-menu postbox-toggled.pin-menu wp-collapse-menu.pin-menu wp-scroll-start.pin-menu', setPinMenu );
}); });
// Fire a custom jQuery event at the end of window resize // Fire a custom jQuery event at the end of window resize
+1 -1
View File
@@ -1 +1 @@
var showNotice,adminMenu,columns,validateForm,screenMeta;!function(a,b){adminMenu={init:function(){},fold:function(){},restoreMenuState:function(){},toggle:function(){},favorites:function(){}},columns={init:function(){var b=this;a(".hide-column-tog","#adv-settings").click(function(){var c=a(this),d=c.val();c.prop("checked")?b.checked(d):b.unchecked(d),columns.saveManageColumnsState()})},saveManageColumnsState:function(){var b=this.hidden();a.post(ajaxurl,{action:"hidden-columns",hidden:b,screenoptionnonce:a("#screenoptionnonce").val(),page:pagenow})},checked:function(b){a(".column-"+b).show(),this.colSpanChange(1)},unchecked:function(b){a(".column-"+b).hide(),this.colSpanChange(-1)},hidden:function(){return a(".manage-column").filter(":hidden").map(function(){return this.id}).get().join(",")},useCheckboxesForHidden:function(){this.hidden=function(){return a(".hide-column-tog").not(":checked").map(function(){var a=this.id;return a.substring(a,a.length-5)}).get().join(",")}},colSpanChange:function(b){var c,d=a("table").find(".colspanchange");d.length&&(c=parseInt(d.attr("colspan"),10)+b,d.attr("colspan",c.toString()))}},a(document).ready(function(){columns.init()}),validateForm=function(b){return!a(b).find(".form-required").filter(function(){return""===a("input:visible",this).val()}).addClass("form-invalid").find("input:visible").change(function(){a(this).closest(".form-invalid").removeClass("form-invalid")}).size()},showNotice={warn:function(){var a=commonL10n.warnDelete||"";return confirm(a)?!0:!1},note:function(a){alert(a)}},screenMeta={element:null,toggles:null,page:null,init:function(){this.element=a("#screen-meta"),this.toggles=a(".screen-meta-toggle a"),this.page=a("#wpcontent"),this.toggles.click(this.toggleEvent)},toggleEvent:function(b){var c=a(this.href.replace(/.+#/,"#"));b.preventDefault(),c.length&&(c.is(":visible")?screenMeta.close(c,a(this)):screenMeta.open(c,a(this)))},open:function(b,c){a(".screen-meta-toggle").not(c.parent()).css("visibility","hidden"),b.parent().show(),b.slideDown("fast",function(){b.focus(),c.addClass("screen-meta-active").attr("aria-expanded",!0)}),a(document).trigger("screen:options:open")},close:function(b,c){b.slideUp("fast",function(){c.removeClass("screen-meta-active").attr("aria-expanded",!1),a(".screen-meta-toggle").css("visibility",""),b.parent().hide()}),a(document).trigger("screen:options:close")}},a(".contextual-help-tabs").delegate("a","click",function(b){var c,d=a(this);return b.preventDefault(),d.is(".active a")?!1:(a(".contextual-help-tabs .active").removeClass("active"),d.parent("li").addClass("active"),c=a(d.attr("href")),a(".help-tab-content").not(c).removeClass("active").hide(),void c.addClass("active").show())}),a(document).ready(function(){function c(a){var b,c,d,e,f,g,h,i=a.find(".wp-submenu");f=a.offset().top,g=x.scrollTop(),h=f-g-30,b=f+i.height()+1,c=A.height(),d=60+b-c,e=x.height()+g-50,b-d>e&&(d=b-e),d>h&&(d=h),d>1?i.css("margin-top","-"+d+"px"):i.css("margin-top","")}function d(a){var b=x.scrollTop(),c=!a||"scroll"!==a.type;if(!(t||v||B.data("wp-responsive"))){if(N.menu+N.adminbar<N.window||N.menu+N.adminbar+20>N.wpwrap)return void f();if(M=!0,N.menu+N.adminbar>N.window){if(0>b)return void(J||(J=!0,K=!1,z.css({position:"fixed",top:"",bottom:""})));if(b+N.window>w.height()-1)return void(K||(K=!0,J=!1,z.css({position:"fixed",top:"",bottom:0})));b>I?J?(J=!1,L=z.offset().top-N.adminbar-(b-I),L+N.menu+N.adminbar<b+N.window&&(L=b+N.window-N.menu-N.adminbar),z.css({position:"absolute",top:L,bottom:""})):!K&&z.offset().top+N.menu<b+N.window&&(K=!0,z.css({position:"fixed",top:"",bottom:0})):I>b?K?(K=!1,L=z.offset().top-N.adminbar+(I-b),L+N.menu>b+N.window&&(L=b),z.css({position:"absolute",top:L,bottom:""})):!J&&z.offset().top>=b+N.adminbar&&(J=!0,z.css({position:"fixed",top:"",bottom:""})):c&&(J=K=!1,L=b+N.window-N.menu-N.adminbar-1,L>0?z.css({position:"absolute",top:L,bottom:""}):f())}I=b}}function e(){N={window:x.height(),wpwrap:A.height(),adminbar:H.height(),menu:z.height()}}function f(){!t&&M&&(J=K=M=!1,z.css({position:"",top:"",bottom:""}))}function g(){e(),B.data("wp-responsive")?(y.removeClass("sticky-menu"),f()):N.menu+N.adminbar>N.window?(d(),y.removeClass("sticky-menu")):(y.addClass("sticky-menu"),f())}var h,i,j,k,l,m,n,o,p,q=!1,r=a("input.current-page"),s=r.val(),t=/iPhone|iPad|iPod/.test(navigator.userAgent),u=-1!==navigator.userAgent.indexOf("Android"),v=a(document.documentElement).hasClass("ie8"),w=a(document),x=a(b),y=a(document.body),z=a("#adminmenuwrap"),A=a("#wpwrap"),B=a("#adminmenu"),C=a("#wp-responsive-overlay"),D=a("#wp-toolbar"),E=D.find('a[aria-haspopup="true"]'),F=a(".meta-box-sortables"),G=!1,H=a("#wpadminbar"),I=0,J=!1,K=!1,L=0,M=!1,N={window:x.height(),wpwrap:A.height(),adminbar:H.height(),menu:z.height()};B.on("click.wp-submenu-head",".wp-submenu-head",function(b){a(b.target).parent().siblings("a").get(0).click()}),a("#collapse-menu").on("click.collapse-menu",function(){var c,d,e=a(document.body);a("#adminmenu div.wp-submeLine truncated var showNotice,adminMenu,columns,validateForm,screenMeta;!function(a,b){adminMenu={init:function(){},fold:function(){},restoreMenuState:function(){},toggle:function(){},favorites:function(){}},columns={init:function(){var b=this;a(".hide-column-tog","#adv-settings").click(function(){var c=a(this),d=c.val();c.prop("checked")?b.checked(d):b.unchecked(d),columns.saveManageColumnsState()})},saveManageColumnsState:function(){var b=this.hidden();a.post(ajaxurl,{action:"hidden-columns",hidden:b,screenoptionnonce:a("#screenoptionnonce").val(),page:pagenow})},checked:function(b){a(".column-"+b).show(),this.colSpanChange(1)},unchecked:function(b){a(".column-"+b).hide(),this.colSpanChange(-1)},hidden:function(){return a(".manage-column").filter(":hidden").map(function(){return this.id}).get().join(",")},useCheckboxesForHidden:function(){this.hidden=function(){return a(".hide-column-tog").not(":checked").map(function(){var a=this.id;return a.substring(a,a.length-5)}).get().join(",")}},colSpanChange:function(b){var c,d=a("table").find(".colspanchange");d.length&&(c=parseInt(d.attr("colspan"),10)+b,d.attr("colspan",c.toString()))}},a(document).ready(function(){columns.init()}),validateForm=function(b){return!a(b).find(".form-required").filter(function(){return""===a("input:visible",this).val()}).addClass("form-invalid").find("input:visible").change(function(){a(this).closest(".form-invalid").removeClass("form-invalid")}).size()},showNotice={warn:function(){var a=commonL10n.warnDelete||"";return confirm(a)?!0:!1},note:function(a){alert(a)}},screenMeta={element:null,toggles:null,page:null,init:function(){this.element=a("#screen-meta"),this.toggles=a(".screen-meta-toggle a"),this.page=a("#wpcontent"),this.toggles.click(this.toggleEvent)},toggleEvent:function(b){var c=a(this.href.replace(/.+#/,"#"));b.preventDefault(),c.length&&(c.is(":visible")?screenMeta.close(c,a(this)):screenMeta.open(c,a(this)))},open:function(b,c){a(".screen-meta-toggle").not(c.parent()).css("visibility","hidden"),b.parent().show(),b.slideDown("fast",function(){b.focus(),c.addClass("screen-meta-active").attr("aria-expanded",!0)}),a(document).trigger("screen:options:open")},close:function(b,c){b.slideUp("fast",function(){c.removeClass("screen-meta-active").attr("aria-expanded",!1),a(".screen-meta-toggle").css("visibility",""),b.parent().hide()}),a(document).trigger("screen:options:close")}},a(".contextual-help-tabs").delegate("a","click",function(b){var c,d=a(this);return b.preventDefault(),d.is(".active a")?!1:(a(".contextual-help-tabs .active").removeClass("active"),d.parent("li").addClass("active"),c=a(d.attr("href")),a(".help-tab-content").not(c).removeClass("active").hide(),void c.addClass("active").show())}),a(document).ready(function(){function c(a){var b,c,d,e,f,g,h,i=a.find(".wp-submenu");f=a.offset().top,g=x.scrollTop(),h=f-g-30,b=f+i.height()+1,c=A.height(),d=60+b-c,e=x.height()+g-50,b-d>e&&(d=b-e),d>h&&(d=h),d>1?i.css("margin-top","-"+d+"px"):i.css("margin-top","")}function d(a){var b=x.scrollTop(),c=!a||"scroll"!==a.type;if(!(t||v||B.data("wp-responsive"))){if(N.menu+N.adminbar<N.window||N.menu+N.adminbar+20>N.wpwrap)return void f();if(M=!0,N.menu+N.adminbar>N.window){if(0>b)return void(J||(J=!0,K=!1,z.css({position:"fixed",top:"",bottom:""})));if(b+N.window>w.height()-1)return void(K||(K=!0,J=!1,z.css({position:"fixed",top:"",bottom:0})));b>I?J?(J=!1,L=z.offset().top-N.adminbar-(b-I),L+N.menu+N.adminbar<b+N.window&&(L=b+N.window-N.menu-N.adminbar),z.css({position:"absolute",top:L,bottom:""})):!K&&z.offset().top+N.menu<b+N.window&&(K=!0,z.css({position:"fixed",top:"",bottom:0})):I>b?K?(K=!1,L=z.offset().top-N.adminbar+(I-b),L+N.menu>b+N.window&&(L=b),z.css({position:"absolute",top:L,bottom:""})):!J&&z.offset().top>=b+N.adminbar&&(J=!0,z.css({position:"fixed",top:"",bottom:""})):c&&(J=K=!1,L=b+N.window-N.menu-N.adminbar-1,L>0?z.css({position:"absolute",top:L,bottom:""}):f())}I=b}}function e(){N={window:x.height(),wpwrap:A.height(),adminbar:H.height(),menu:z.height()}}function f(){!t&&M&&(J=K=M=!1,z.css({position:"",top:"",bottom:""}))}function g(){e(),B.data("wp-responsive")?(y.removeClass("sticky-menu"),f()):N.menu+N.adminbar>N.window?(d(),y.removeClass("sticky-menu")):(y.addClass("sticky-menu"),f())}var h,i,j,k,l,m,n,o,p,q=!1,r=a("input.current-page"),s=r.val(),t=/iPhone|iPad|iPod/.test(navigator.userAgent),u=-1!==navigator.userAgent.indexOf("Android"),v=a(document.documentElement).hasClass("ie8"),w=a(document),x=a(b),y=a(document.body),z=a("#adminmenuwrap"),A=a("#wpwrap"),B=a("#adminmenu"),C=a("#wp-responsive-overlay"),D=a("#wp-toolbar"),E=D.find('a[aria-haspopup="true"]'),F=a(".meta-box-sortables"),G=!1,H=a("#wpadminbar"),I=0,J=!1,K=!1,L=0,M=!1,N={window:x.height(),wpwrap:A.height(),adminbar:H.height(),menu:z.height()};B.on("click.wp-submenu-head",".wp-submenu-head",function(b){a(b.target).parent().siblings("a").get(0).click()}),a("#collapse-menu").on("click.collapse-menu",function(){var c,d,e=a(document.body);a("#adminmenu div.wp-submeLine truncated
+1 -1
View File
@@ -124,7 +124,7 @@ jQuery(document).ready( function($) {
}; };
quickPressLoad(); quickPressLoad();
$( '.meta-box-sortables' ).sortable( 'option', 'containment', 'document' ); $( '.meta-box-sortables' ).sortable( 'option', 'containment', '#wpwrap' );
function autoResizeTextarea() { function autoResizeTextarea() {
if ( document.documentMode && document.documentMode < 9 ) { if ( document.documentMode && document.documentMode < 9 ) {
+1 -1
View File
@@ -1 +1 @@
var ajaxWidgets,ajaxPopulateWidgets,quickPressLoad;jQuery(document).ready(function(a){function b(){if(!(document.documentMode&&document.documentMode<9)){a("body").append('<div class="quick-draft-textarea-clone" style="display: none;"></div>');var b=a(".quick-draft-textarea-clone"),c=a("#content"),d=c.height(),e=a(window).height()-100;b.css({"font-family":c.css("font-family"),"font-size":c.css("font-size"),"line-height":c.css("line-height"),"padding-bottom":c.css("paddingBottom"),"padding-left":c.css("paddingLeft"),"padding-right":c.css("paddingRight"),"padding-top":c.css("paddingTop"),"white-space":"pre-wrap","word-wrap":"break-word",display:"none"}),c.on("focus input propertychange",function(){var f=a(this),g=f.val()+"&nbsp;",h=b.css("width",f.css("width")).text(g).outerHeight()+2;c.css("overflow-y","auto"),h===d||h>=e&&d>=e||(d=h>e?e:h,c.css("overflow","hidden"),f.css("height",d+"px"))})}}var c,d=a("#welcome-panel"),e=a("#wp_welcome_panel-hide");c=function(b){a.post(ajaxurl,{action:"update-welcome-panel",visible:b,welcomepanelnonce:a("#welcomepanelnonce").val()})},d.hasClass("hidden")&&e.prop("checked")&&d.removeClass("hidden"),a(".welcome-panel-close, .welcome-panel-dismiss a",d).click(function(b){b.preventDefault(),d.addClass("hidden"),c(0),a("#wp_welcome_panel-hide").prop("checked",!1)}),e.click(function(){d.toggleClass("hidden",!this.checked),c(this.checked?1:0)}),ajaxWidgets=["dashboard_primary"],ajaxPopulateWidgets=function(b){function c(b,c){var d,e=a("#"+c+" div.inside:visible").find(".widget-loading");e.length&&(d=e.parent(),setTimeout(function(){d.load(ajaxurl+"?action=dashboard-widgets&widget="+c+"&pagenow="+pagenow,"",function(){d.hide().slideDown("normal",function(){a(this).css("display","")})})},500*b))}b?(b=b.toString(),-1!==a.inArray(b,ajaxWidgets)&&c(0,b)):a.each(ajaxWidgets,c)},ajaxPopulateWidgets(),postboxes.add_postbox_toggles(pagenow,{pbshow:ajaxPopulateWidgets}),quickPressLoad=function(){var c,d=a("#quickpost-action");a('#quick-press .submit input[type="submit"], #quick-press .submit input[type="reset"]').prop("disabled",!1),c=a("#quick-press").submit(function(){function b(){var b=a(".drafts ul li").first();b.css("background","#fffbe5"),setTimeout(function(){b.css("background","none")},1e3)}return a("#dashboard_quick_press #publishing-action .spinner").show(),a('#quick-press .submit input[type="submit"], #quick-press .submit input[type="reset"]').prop("disabled",!0),a.post(c.attr("action"),c.serializeArray(),function(c){a("#dashboard_quick_press .inside").html(c),a("#quick-press").removeClass("initial-form"),quickPressLoad(),b(),a("#title").focus()}),!1}),a("#publish").click(function(){d.val("post-quickpress-publish")}),a("#title, #tags-input, #content").each(function(){var b=a(this),c=a("#"+this.id+"-prompt-text");""===this.value&&c.removeClass("screen-reader-text"),c.click(function(){a(this).addClass("screen-reader-text"),b.focus()}),b.blur(function(){""===this.value&&c.removeClass("screen-reader-text")}),b.focus(function(){c.addClass("screen-reader-text")})}),a("#quick-press").on("click focusin",function(){wpActiveEditor="content"}),b()},quickPressLoad(),a(".meta-box-sortables").sortable("option","containment","document")}); var ajaxWidgets,ajaxPopulateWidgets,quickPressLoad;jQuery(document).ready(function(a){function b(){if(!(document.documentMode&&document.documentMode<9)){a("body").append('<div class="quick-draft-textarea-clone" style="display: none;"></div>');var b=a(".quick-draft-textarea-clone"),c=a("#content"),d=c.height(),e=a(window).height()-100;b.css({"font-family":c.css("font-family"),"font-size":c.css("font-size"),"line-height":c.css("line-height"),"padding-bottom":c.css("paddingBottom"),"padding-left":c.css("paddingLeft"),"padding-right":c.css("paddingRight"),"padding-top":c.css("paddingTop"),"white-space":"pre-wrap","word-wrap":"break-word",display:"none"}),c.on("focus input propertychange",function(){var f=a(this),g=f.val()+"&nbsp;",h=b.css("width",f.css("width")).text(g).outerHeight()+2;c.css("overflow-y","auto"),h===d||h>=e&&d>=e||(d=h>e?e:h,c.css("overflow","hidden"),f.css("height",d+"px"))})}}var c,d=a("#welcome-panel"),e=a("#wp_welcome_panel-hide");c=function(b){a.post(ajaxurl,{action:"update-welcome-panel",visible:b,welcomepanelnonce:a("#welcomepanelnonce").val()})},d.hasClass("hidden")&&e.prop("checked")&&d.removeClass("hidden"),a(".welcome-panel-close, .welcome-panel-dismiss a",d).click(function(b){b.preventDefault(),d.addClass("hidden"),c(0),a("#wp_welcome_panel-hide").prop("checked",!1)}),e.click(function(){d.toggleClass("hidden",!this.checked),c(this.checked?1:0)}),ajaxWidgets=["dashboard_primary"],ajaxPopulateWidgets=function(b){function c(b,c){var d,e=a("#"+c+" div.inside:visible").find(".widget-loading");e.length&&(d=e.parent(),setTimeout(function(){d.load(ajaxurl+"?action=dashboard-widgets&widget="+c+"&pagenow="+pagenow,"",function(){d.hide().slideDown("normal",function(){a(this).css("display","")})})},500*b))}b?(b=b.toString(),-1!==a.inArray(b,ajaxWidgets)&&c(0,b)):a.each(ajaxWidgets,c)},ajaxPopulateWidgets(),postboxes.add_postbox_toggles(pagenow,{pbshow:ajaxPopulateWidgets}),quickPressLoad=function(){var c,d=a("#quickpost-action");a('#quick-press .submit input[type="submit"], #quick-press .submit input[type="reset"]').prop("disabled",!1),c=a("#quick-press").submit(function(){function b(){var b=a(".drafts ul li").first();b.css("background","#fffbe5"),setTimeout(function(){b.css("background","none")},1e3)}return a("#dashboard_quick_press #publishing-action .spinner").show(),a('#quick-press .submit input[type="submit"], #quick-press .submit input[type="reset"]').prop("disabled",!0),a.post(c.attr("action"),c.serializeArray(),function(c){a("#dashboard_quick_press .inside").html(c),a("#quick-press").removeClass("initial-form"),quickPressLoad(),b(),a("#title").focus()}),!1}),a("#publish").click(function(){d.val("post-quickpress-publish")}),a("#title, #tags-input, #content").each(function(){var b=a(this),c=a("#"+this.id+"-prompt-text");""===this.value&&c.removeClass("screen-reader-text"),c.click(function(){a(this).addClass("screen-reader-text"),b.focus()}),b.blur(function(){""===this.value&&c.removeClass("screen-reader-text")}),b.focus(function(){c.addClass("screen-reader-text")})}),a("#quick-press").on("click focusin",function(){wpActiveEditor="content"}),b()},quickPressLoad(),a(".meta-box-sortables").sortable("option","containment","#wpwrap")});
+15 -3
View File
@@ -250,7 +250,7 @@ window.wp = window.wp || {};
wp.updates.updateError = function( response ) { wp.updates.updateError = function( response ) {
var $message, name; var $message, name;
wp.updates.updateDoneSuccessfully = false; wp.updates.updateDoneSuccessfully = false;
if ( response.errorCode && response.errorCode == 'unable_to_connect_to_filesystem' ) { if ( response.errorCode && response.errorCode == 'unable_to_connect_to_filesystem' && wp.updates.shouldRequestFilesystemCredentials ) {
wp.updates.credentialError( response, 'update-plugin' ); wp.updates.credentialError( response, 'update-plugin' );
return; return;
} }
@@ -263,10 +263,18 @@ window.wp = window.wp || {};
$message.attr( 'aria-label', wp.updates.l10n.updateFailedLabel.replace( '%s', name ) ); $message.attr( 'aria-label', wp.updates.l10n.updateFailedLabel.replace( '%s', name ) );
} }
$message.removeClass( 'updating-message' ); $message.removeClass( 'updating-message' );
$message.text( wp.updates.l10n.updateFailed ); $message.html( wp.updates.l10n.updateFailed + ': ' + response.error );
wp.a11y.speak( wp.updates.l10n.updateFailed ); wp.a11y.speak( wp.updates.l10n.updateFailed );
/*
* The lock can be released since this failure was
* after the credentials form.
*/
wp.updates.updateLock = false;
$(document).trigger( 'wp-plugin-update-error', response ); $(document).trigger( 'wp-plugin-update-error', response );
wp.updates.queueChecker();
}; };
/** /**
@@ -467,6 +475,11 @@ window.wp = window.wp || {};
wp.updates.requestForCredentialsModalCancel(); wp.updates.requestForCredentialsModalCancel();
}); });
// Hide SSH fields when not selected
$( '#request-filesystem-credentials-dialog input[name="connection_type"]' ).on( 'change', function() {
$( this ).parents( 'form' ).find( '#private_key, #public_key' ).parents( 'label' ).toggle( ( 'ssh' == $( this ).val() ) );
}).change();
// Click handler for plugin updates in List Table view. // Click handler for plugin updates in List Table view.
$( '.plugin-update-tr' ).on( 'click', '.update-link', function( e ) { $( '.plugin-update-tr' ).on( 'click', '.update-link', function( e ) {
e.preventDefault(); e.preventDefault();
@@ -490,7 +503,6 @@ window.wp = window.wp || {};
wp.updates.updatePlugin( $button.data( 'plugin' ), $button.data( 'slug' ) ); wp.updates.updatePlugin( $button.data( 'plugin' ), $button.data( 'slug' ) );
} ); } );
//
$( '#plugin_update_from_iframe' ).on( 'click' , function( e ) { $( '#plugin_update_from_iframe' ).on( 'click' , function( e ) {
var target, data; var target, data;
+1 -1
View File
@@ -1 +1 @@
window.wp=window.wp||{},function(a,b,c){b.updates={},b.updates.ajaxNonce=window._wpUpdatesSettings.ajax_nonce,b.updates.l10n=window._wpUpdatesSettings.l10n,b.updates.shouldRequestFilesystemCredentials=null,b.updates.filesystemCredentials={ftp:{host:null,username:null,password:null,connectionType:null},ssh:{publicKey:null,privateKey:null}},b.updates.updateLock=!1,b.updates.updateDoneSuccessfully=!1,b.updates.updateQueue=[],b.updates.$elToReturnFocusToFromCredentialsModal=null,b.updates.decrementCount=function(b){var c,d,e=a("#wp-admin-bar-updates .ab-label"),f=a('a[href="update-core.php"] .update-plugins'),g=a("#menu-plugins");if(c=e.text(),c=parseInt(c,10)-1,!(0>c||isNaN(c))&&(a("#wp-admin-bar-updates .ab-item").removeAttr("title"),e.text(c),f.each(function(a,b){b.className=b.className.replace(/count-\d+/,"count-"+c)}),f.removeAttr("title"),f.find(".update-count").text(c),"plugin"===b)){if(d=g.find(".plugin-count").eq(0).text(),d=parseInt(d,10)-1,0>d||isNaN(d))return;g.find(".plugin-count").text(d),g.find(".update-plugins").each(function(a,b){b.className=b.className.replace(/count-\d+/,"count-"+d)}),d>0?a(".subsubsub .upgrade .count").text("("+d+")"):a(".subsubsub .upgrade").remove()}},b.updates.updatePlugin=function(d,e){var f,g;if("plugins"===c||"plugins-network"===c?f=a('[data-slug="'+e+'"]').next().find(".update-message"):"plugin-install"===c&&(f=a(".plugin-card-"+e).find(".update-now"),g=f.data("name"),f.attr("aria-label",b.updates.l10n.updatingLabel.replace("%s",g))),f.addClass("updating-message"),f.html()!==b.updates.l10n.updating&&f.data("originaltext",f.html()),f.text(b.updates.l10n.updating),b.a11y.speak(b.updates.l10n.updatingMsg),b.updates.updateLock)return void b.updates.updateQueue.push({type:"update-plugin",data:{plugin:d,slug:e}});b.updates.updateLock=!0;var h={_ajax_nonce:b.updates.ajaxNonce,plugin:d,slug:e,username:b.updates.filesystemCredentials.ftp.username,password:b.updates.filesystemCredentials.ftp.password,hostname:b.updates.filesystemCredentials.ftp.hostname,connection_type:b.updates.filesystemCredentials.ftp.connectionType,public_key:b.updates.filesystemCredentials.ssh.publicKey,private_key:b.updates.filesystemCredentials.ssh.privateKey};b.ajax.post("update-plugin",h).done(b.updates.updateSuccess).fail(b.updates.updateError)},b.updates.updateSuccess=function(d){var e,f,g,h;"plugins"===c||"plugins-network"===c?(g=a('[data-slug="'+d.slug+'"]').first(),e=g.next().find(".update-message"),g.addClass("updated").removeClass("update"),h=g.find(".plugin-version-author-uri").html().replace(d.oldVersion,d.newVersion),g.find(".plugin-version-author-uri").html(h),g.next().addClass("updated")):"plugin-install"===c&&(e=a(".plugin-card-"+d.slug).find(".update-now"),e.addClass("button-disabled"),f=e.data("name"),e.attr("aria-label",b.updates.l10n.updatedLabel.replace("%s",f))),e.removeClass("updating-message").addClass("updated-message"),e.text(b.updates.l10n.updated),b.a11y.speak(b.updates.l10n.updatedMsg),b.updates.decrementCount("plugin"),b.updates.updateDoneSuccessfully=!0,b.updates.updateLock=!1,a(document).trigger("wp-plugin-update-success",d),b.updates.queueChecker()},b.updates.updateError=function(d){var e,f;return b.updates.updateDoneSuccessfully=!1,d.errorCode&&"unable_to_connect_to_filesystem"==d.errorCode?void b.updates.credentialError(d,"update-plugin"):("plugins"===c||"plugins-network"===c?e=a('[data-slug="'+d.slug+'"]').next().find(".update-message"):"plugin-install"===c&&(e=a(".plugin-card-"+d.slug).find(".update-now"),f=e.data("name"),e.attr("aria-label",b.updates.l10n.updateFailedLabel.replace("%s",f))),e.removeClass("updating-message"),e.text(b.updates.l10n.updateFailed),b.a11y.speak(b.updates.l10n.updateFailed),void a(document).trigger("wp-plugin-update-error",d))},b.updates.showErrorInCredentialsForm=function(b){var c=a(".notification-dialog");c.find(".error").remove(),c.find("h3").after('<div class="error">'+b+"</div>")},b.updates.credentialError=function(a,c){b.updates.updateQueue.push({type:c,data:{plugin:a.plugin,slug:a.slug}}),b.updates.showErrorInCredentialsForm(a.error),b.updates.requestFilesystemCredentials()},b.updates.queueChecker=function(){if(!(b.updates.updateLock||b.updates.updateQueue.length<=0)){var a=b.updates.updateQueue.shift();b.updates.updatePlugin(a.data.plugin,a.data.slug)}},b.updates.requestFilesystemCredentials=function(d){b.updates.updateDoneSuccessfully===!1&&("plugin-install"===c&&d&&(b.updates.$elToReturnFocusToFromCredentialsModal=a(d.target)),b.updates.updateLock=!0,b.updates.requestForCredentialsModalOpen())},b.updates.keydown=function(c){27===c.keyCode?b.updates.requestForCredentialsModalCancel():9===c.keyCode&&("upgrade"!==c.target.id||c.shiftKey?"hostname"===c.target.id&&c.shiftKey&&(a("#upgrade").focus(),c.preventDefault()):(a("#hostname").focus(),c.preventDefault()))},b.updates.requestForCredentialsModalOpen=function(){var c=a("#request-filesystem-credentials-dialog");a("body").addClass("modal-open"),c.show(),c.find("input:enabled:first").fLine truncated window.wp=window.wp||{},function(a,b,c){b.updates={},b.updates.ajaxNonce=window._wpUpdatesSettings.ajax_nonce,b.updates.l10n=window._wpUpdatesSettings.l10n,b.updates.shouldRequestFilesystemCredentials=null,b.updates.filesystemCredentials={ftp:{host:null,username:null,password:null,connectionType:null},ssh:{publicKey:null,privateKey:null}},b.updates.updateLock=!1,b.updates.updateDoneSuccessfully=!1,b.updates.updateQueue=[],b.updates.$elToReturnFocusToFromCredentialsModal=null,b.updates.decrementCount=function(b){var c,d,e=a("#wp-admin-bar-updates .ab-label"),f=a('a[href="update-core.php"] .update-plugins'),g=a("#menu-plugins");if(c=e.text(),c=parseInt(c,10)-1,!(0>c||isNaN(c))&&(a("#wp-admin-bar-updates .ab-item").removeAttr("title"),e.text(c),f.each(function(a,b){b.className=b.className.replace(/count-\d+/,"count-"+c)}),f.removeAttr("title"),f.find(".update-count").text(c),"plugin"===b)){if(d=g.find(".plugin-count").eq(0).text(),d=parseInt(d,10)-1,0>d||isNaN(d))return;g.find(".plugin-count").text(d),g.find(".update-plugins").each(function(a,b){b.className=b.className.replace(/count-\d+/,"count-"+d)}),d>0?a(".subsubsub .upgrade .count").text("("+d+")"):a(".subsubsub .upgrade").remove()}},b.updates.updatePlugin=function(d,e){var f,g;if("plugins"===c||"plugins-network"===c?f=a('[data-slug="'+e+'"]').next().find(".update-message"):"plugin-install"===c&&(f=a(".plugin-card-"+e).find(".update-now"),g=f.data("name"),f.attr("aria-label",b.updates.l10n.updatingLabel.replace("%s",g))),f.addClass("updating-message"),f.html()!==b.updates.l10n.updating&&f.data("originaltext",f.html()),f.text(b.updates.l10n.updating),b.a11y.speak(b.updates.l10n.updatingMsg),b.updates.updateLock)return void b.updates.updateQueue.push({type:"update-plugin",data:{plugin:d,slug:e}});b.updates.updateLock=!0;var h={_ajax_nonce:b.updates.ajaxNonce,plugin:d,slug:e,username:b.updates.filesystemCredentials.ftp.username,password:b.updates.filesystemCredentials.ftp.password,hostname:b.updates.filesystemCredentials.ftp.hostname,connection_type:b.updates.filesystemCredentials.ftp.connectionType,public_key:b.updates.filesystemCredentials.ssh.publicKey,private_key:b.updates.filesystemCredentials.ssh.privateKey};b.ajax.post("update-plugin",h).done(b.updates.updateSuccess).fail(b.updates.updateError)},b.updates.updateSuccess=function(d){var e,f,g,h;"plugins"===c||"plugins-network"===c?(g=a('[data-slug="'+d.slug+'"]').first(),e=g.next().find(".update-message"),g.addClass("updated").removeClass("update"),h=g.find(".plugin-version-author-uri").html().replace(d.oldVersion,d.newVersion),g.find(".plugin-version-author-uri").html(h),g.next().addClass("updated")):"plugin-install"===c&&(e=a(".plugin-card-"+d.slug).find(".update-now"),e.addClass("button-disabled"),f=e.data("name"),e.attr("aria-label",b.updates.l10n.updatedLabel.replace("%s",f))),e.removeClass("updating-message").addClass("updated-message"),e.text(b.updates.l10n.updated),b.a11y.speak(b.updates.l10n.updatedMsg),b.updates.decrementCount("plugin"),b.updates.updateDoneSuccessfully=!0,b.updates.updateLock=!1,a(document).trigger("wp-plugin-update-success",d),b.updates.queueChecker()},b.updates.updateError=function(d){var e,f;return b.updates.updateDoneSuccessfully=!1,d.errorCode&&"unable_to_connect_to_filesystem"==d.errorCode&&b.updates.shouldRequestFilesystemCredentials?void b.updates.credentialError(d,"update-plugin"):("plugins"===c||"plugins-network"===c?e=a('[data-slug="'+d.slug+'"]').next().find(".update-message"):"plugin-install"===c&&(e=a(".plugin-card-"+d.slug).find(".update-now"),f=e.data("name"),e.attr("aria-label",b.updates.l10n.updateFailedLabel.replace("%s",f))),e.removeClass("updating-message"),e.html(b.updates.l10n.updateFailed+": "+d.error),b.a11y.speak(b.updates.l10n.updateFailed),b.updates.updateLock=!1,a(document).trigger("wp-plugin-update-error",d),void b.updates.queueChecker())},b.updates.showErrorInCredentialsForm=function(b){var c=a(".notification-dialog");c.find(".error").remove(),c.find("h3").after('<div class="error">'+b+"</div>")},b.updates.credentialError=function(a,c){b.updates.updateQueue.push({type:c,data:{plugin:a.plugin,slug:a.slug}}),b.updates.showErrorInCredentialsForm(a.error),b.updates.requestFilesystemCredentials()},b.updates.queueChecker=function(){if(!(b.updates.updateLock||b.updates.updateQueue.length<=0)){var a=b.updates.updateQueue.shift();b.updates.updatePlugin(a.data.plugin,a.data.slug)}},b.updates.requestFilesystemCredentials=function(d){b.updates.updateDoneSuccessfully===!1&&("plugin-install"===c&&d&&(b.updates.$elToReturnFocusToFromCredentialsModal=a(d.target)),b.updates.updateLock=!0,b.updates.requestForCredentialsModalOpen())},b.updates.keydown=function(c){27===c.keyCode?b.updates.requestForCredentialsModalCancel():9===c.keyCode&&("upgrade"!==c.target.id||c.shiftKey?"hostname"===c.target.id&&c.shiftKey&&(a("#upgrade").focus(),c.preventDefault()):(a("#hostname").focus(),c.preventDefault()))},b.updates.requestForCredentialsModalOpen=function(){var c=a("#requeLine truncated
+10 -6
View File
@@ -1,6 +1,7 @@
/*global ajaxurl, isRtl */ /*global ajaxurl, isRtl */
var wpWidgets; var wpWidgets;
(function($) { (function($) {
var $document = $( document );
wpWidgets = { wpWidgets = {
@@ -22,10 +23,13 @@ wpWidgets = {
} else { } else {
$wrap.addClass('closed'); $wrap.addClass('closed');
} }
$document.triggerHandler( 'wp-pin-menu' );
}); });
$('#widgets-left .sidebar-name').click( function() { $('#widgets-left .sidebar-name').click( function() {
$(this).closest('.widgets-holder-wrap').toggleClass('closed'); $(this).closest('.widgets-holder-wrap').toggleClass('closed');
$document.triggerHandler( 'wp-pin-menu' );
}); });
$(document.body).bind('click.widgets-toggle', function(e) { $(document.body).bind('click.widgets-toggle', function(e) {
@@ -89,7 +93,7 @@ wpWidgets = {
distance: 2, distance: 2,
helper: 'clone', helper: 'clone',
zIndex: 100, zIndex: 100,
containment: 'document', containment: '#wpwrap',
start: function( event, ui ) { start: function( event, ui ) {
var chooser = $(this).find('.widgets-chooser'); var chooser = $(this).find('.widgets-chooser');
@@ -119,7 +123,7 @@ wpWidgets = {
handle: '> .widget-top > .widget-title', handle: '> .widget-top > .widget-title',
cursor: 'move', cursor: 'move',
distance: 2, distance: 2,
containment: 'document', containment: '#wpwrap',
start: function( event, ui ) { start: function( event, ui ) {
var height, $this = $(this), var height, $this = $(this),
$wrap = $this.parent(), $wrap = $this.parent(),
@@ -174,7 +178,7 @@ wpWidgets = {
wpWidgets.save( $widget, 0, 0, 1 ); wpWidgets.save( $widget, 0, 0, 1 );
$widget.find('input.add_new').val(''); $widget.find('input.add_new').val('');
$( document ).trigger( 'widget-added', [ $widget ] ); $document.trigger( 'widget-added', [ $widget ] );
} }
$sidebar = $widget.parent(); $sidebar = $widget.parent();
@@ -381,7 +385,7 @@ wpWidgets = {
if ( r && r.length > 2 ) { if ( r && r.length > 2 ) {
$( 'div.widget-content', widget ).html( r ); $( 'div.widget-content', widget ).html( r );
wpWidgets.appendTitle( widget ); wpWidgets.appendTitle( widget );
$( document ).trigger( 'widget-updated', [ widget ] ); $document.trigger( 'widget-updated', [ widget ] );
} }
} }
if ( order ) { if ( order ) {
@@ -446,7 +450,7 @@ wpWidgets = {
// No longer "new" widget // No longer "new" widget
widget.find( 'input.add_new' ).val(''); widget.find( 'input.add_new' ).val('');
$( document ).trigger( 'widget-added', [ widget ] ); $document.trigger( 'widget-added', [ widget ] );
/* /*
* Check if any part of the sidebar is visible in the viewport. If it is, don't scroll. * Check if any part of the sidebar is visible in the viewport. If it is, don't scroll.
@@ -489,6 +493,6 @@ wpWidgets = {
} }
}; };
$(document).ready( function(){ wpWidgets.init(); } ); $document.ready( function(){ wpWidgets.init(); } );
})(jQuery); })(jQuery);
+1 -1
View File
@@ -1 +1 @@
var wpWidgets;!function(a){wpWidgets={init:function(){var b,c,d=this,e=a(".widgets-chooser"),f=e.find(".widgets-chooser-sidebars"),g=a("div.widgets-sortables"),h=!("undefined"==typeof isRtl||!isRtl);a("#widgets-right .sidebar-name").click(function(){var b=a(this),c=b.closest(".widgets-holder-wrap");c.hasClass("closed")?(c.removeClass("closed"),b.parent().sortable("refresh")):c.addClass("closed")}),a("#widgets-left .sidebar-name").click(function(){a(this).closest(".widgets-holder-wrap").toggleClass("closed")}),a(document.body).bind("click.widgets-toggle",function(b){var c,d,e,f,g,i=a(b.target),j={"z-index":100};i.parents(".widget-top").length&&!i.parents("#available-widgets").length?(c=i.closest("div.widget"),d=c.children(".widget-inside"),e=parseInt(c.find("input.widget-width").val(),10),f=c.parent().width(),d.is(":hidden")?(e>250&&e+30>f&&c.closest("div.widgets-sortables").length&&(g=c.closest("div.widget-liquid-right").length?h?"margin-right":"margin-left":h?"margin-left":"margin-right",j[g]=f-(e+30)+"px",c.css(j)),c.addClass("open"),d.slideDown("fast")):d.slideUp("fast",function(){c.attr("style",""),c.removeClass("open")}),b.preventDefault()):i.hasClass("widget-control-save")?(wpWidgets.save(i.closest("div.widget"),0,1,0),b.preventDefault()):i.hasClass("widget-control-remove")?(wpWidgets.save(i.closest("div.widget"),1,1,0),b.preventDefault()):i.hasClass("widget-control-close")&&(c=i.closest("div.widget"),c.removeClass("open"),wpWidgets.close(c),b.preventDefault())}),g.children(".widget").each(function(){var b=a(this);wpWidgets.appendTitle(this),b.find("p.widget-error").length&&b.find("a.widget-action").trigger("click")}),a("#widget-list").children(".widget").draggable({connectToSortable:"div.widgets-sortables",handle:"> .widget-top > .widget-title",distance:2,helper:"clone",zIndex:100,containment:"document",start:function(b,e){var f=a(this).find(".widgets-chooser");e.helper.find("div.widget-description").hide(),c=this.id,f.length&&(a("#wpbody-content").append(f.hide()),e.helper.find(".widgets-chooser").remove(),d.clearWidgetSelection())},stop:function(){b&&a(b).hide(),b=""}}),g.sortable({placeholder:"widget-placeholder",items:"> .widget",handle:"> .widget-top > .widget-title",cursor:"move",distance:2,containment:"document",start:function(b,c){var d,e=a(this),f=e.parent(),g=c.item.children(".widget-inside");"block"===g.css("display")&&(g.hide(),a(this).sortable("refreshPositions")),f.hasClass("closed")||(d=c.item.hasClass("ui-draggable")?e.height():1+e.height(),e.css("min-height",d+"px"))},stop:function(d,e){var f,g,h,i,j,k,l=e.item,m=c;return l.hasClass("deleting")?(wpWidgets.save(l,1,0,1),void l.remove()):(f=l.find("input.add_new").val(),g=l.find("input.multi_number").val(),l.attr("style","").removeClass("ui-draggable"),c="",f&&("multi"===f?(l.html(l.html().replace(/<[^<>]+>/g,function(a){return a.replace(/__i__|%i%/g,g)})),l.attr("id",m.replace("__i__",g)),g++,a("div#"+m).find("input.multi_number").val(g)):"single"===f&&(l.attr("id","new-"+m),b="div#"+m),wpWidgets.save(l,0,0,1),l.find("input.add_new").val(""),a(document).trigger("widget-added",[l])),h=l.parent(),h.parent().hasClass("closed")&&(h.parent().removeClass("closed"),i=h.children(".widget"),i.length>1&&(j=i.get(0),k=l.get(0),j.id&&k.id&&j.id!==k.id&&a(j).before(l))),void(f?l.find("a.widget-action").trigger("click"):wpWidgets.saveOrder(h.attr("id"))))},activate:function(){a(this).parent().addClass("widget-hover")},deactivate:function(){a(this).css("min-height","").parent().removeClass("widget-hover")},receive:function(b,c){var d=a(c.sender);return this.id.indexOf("orphaned_widgets")>-1?void d.sortable("cancel"):void(d.attr("id").indexOf("orphaned_widgets")>-1&&!d.children(".widget").length&&d.parents(".orphan-sidebar").slideUp(400,function(){a(this).remove()}))}}).sortable("option","connectWith","div.widgets-sortables"),a("#available-widgets").droppable({tolerance:"pointer",accept:function(b){return"widget-list"!==a(b).parent().attr("id")},drop:function(b,c){c.draggable.addClass("deleting"),a("#removing-widget").hide().children("span").empty()},over:function(b,c){c.draggable.addClass("deleting"),a("div.widget-placeholder").hide(),c.draggable.hasClass("ui-sortable-helper")&&a("#removing-widget").show().children("span").html(c.draggable.find("div.widget-title").children("h4").html())},out:function(b,c){c.draggable.removeClass("deleting"),a("div.widget-placeholder").show(),a("#removing-widget").hide().children("span").empty()}}),a("#widgets-right .widgets-holder-wrap").each(function(b,c){var d=a(c),e=d.find(".sidebar-name h3").text(),g=d.find(".widgets-sortables").attr("id"),h=a('<li tabindex="0">').text(a.trim(e));0===b&&h.addClass("widgets-chooser-selected"),f.append(h),h.data("sidebarId",g)}),a("#available-widgets .widget .widget-title").on("click.widgets-chooser",function(){var b=a(this).closest(".widget");b.hasClass("widget-in-question")||a("#widgets-left").hasClass("chooser")?d.closeChooser():(d.clearWidgetSelection(),a("#widgets-left").addLine truncated var wpWidgets;!function(a){var b=a(document);wpWidgets={init:function(){var c,d,e=this,f=a(".widgets-chooser"),g=f.find(".widgets-chooser-sidebars"),h=a("div.widgets-sortables"),i=!("undefined"==typeof isRtl||!isRtl);a("#widgets-right .sidebar-name").click(function(){var c=a(this),d=c.closest(".widgets-holder-wrap");d.hasClass("closed")?(d.removeClass("closed"),c.parent().sortable("refresh")):d.addClass("closed"),b.triggerHandler("wp-pin-menu")}),a("#widgets-left .sidebar-name").click(function(){a(this).closest(".widgets-holder-wrap").toggleClass("closed"),b.triggerHandler("wp-pin-menu")}),a(document.body).bind("click.widgets-toggle",function(b){var c,d,e,f,g,h=a(b.target),j={"z-index":100};h.parents(".widget-top").length&&!h.parents("#available-widgets").length?(c=h.closest("div.widget"),d=c.children(".widget-inside"),e=parseInt(c.find("input.widget-width").val(),10),f=c.parent().width(),d.is(":hidden")?(e>250&&e+30>f&&c.closest("div.widgets-sortables").length&&(g=c.closest("div.widget-liquid-right").length?i?"margin-right":"margin-left":i?"margin-left":"margin-right",j[g]=f-(e+30)+"px",c.css(j)),c.addClass("open"),d.slideDown("fast")):d.slideUp("fast",function(){c.attr("style",""),c.removeClass("open")}),b.preventDefault()):h.hasClass("widget-control-save")?(wpWidgets.save(h.closest("div.widget"),0,1,0),b.preventDefault()):h.hasClass("widget-control-remove")?(wpWidgets.save(h.closest("div.widget"),1,1,0),b.preventDefault()):h.hasClass("widget-control-close")&&(c=h.closest("div.widget"),c.removeClass("open"),wpWidgets.close(c),b.preventDefault())}),h.children(".widget").each(function(){var b=a(this);wpWidgets.appendTitle(this),b.find("p.widget-error").length&&b.find("a.widget-action").trigger("click")}),a("#widget-list").children(".widget").draggable({connectToSortable:"div.widgets-sortables",handle:"> .widget-top > .widget-title",distance:2,helper:"clone",zIndex:100,containment:"#wpwrap",start:function(b,c){var f=a(this).find(".widgets-chooser");c.helper.find("div.widget-description").hide(),d=this.id,f.length&&(a("#wpbody-content").append(f.hide()),c.helper.find(".widgets-chooser").remove(),e.clearWidgetSelection())},stop:function(){c&&a(c).hide(),c=""}}),h.sortable({placeholder:"widget-placeholder",items:"> .widget",handle:"> .widget-top > .widget-title",cursor:"move",distance:2,containment:"#wpwrap",start:function(b,c){var d,e=a(this),f=e.parent(),g=c.item.children(".widget-inside");"block"===g.css("display")&&(g.hide(),a(this).sortable("refreshPositions")),f.hasClass("closed")||(d=c.item.hasClass("ui-draggable")?e.height():1+e.height(),e.css("min-height",d+"px"))},stop:function(e,f){var g,h,i,j,k,l,m=f.item,n=d;return m.hasClass("deleting")?(wpWidgets.save(m,1,0,1),void m.remove()):(g=m.find("input.add_new").val(),h=m.find("input.multi_number").val(),m.attr("style","").removeClass("ui-draggable"),d="",g&&("multi"===g?(m.html(m.html().replace(/<[^<>]+>/g,function(a){return a.replace(/__i__|%i%/g,h)})),m.attr("id",n.replace("__i__",h)),h++,a("div#"+n).find("input.multi_number").val(h)):"single"===g&&(m.attr("id","new-"+n),c="div#"+n),wpWidgets.save(m,0,0,1),m.find("input.add_new").val(""),b.trigger("widget-added",[m])),i=m.parent(),i.parent().hasClass("closed")&&(i.parent().removeClass("closed"),j=i.children(".widget"),j.length>1&&(k=j.get(0),l=m.get(0),k.id&&l.id&&k.id!==l.id&&a(k).before(m))),void(g?m.find("a.widget-action").trigger("click"):wpWidgets.saveOrder(i.attr("id"))))},activate:function(){a(this).parent().addClass("widget-hover")},deactivate:function(){a(this).css("min-height","").parent().removeClass("widget-hover")},receive:function(b,c){var d=a(c.sender);return this.id.indexOf("orphaned_widgets")>-1?void d.sortable("cancel"):void(d.attr("id").indexOf("orphaned_widgets")>-1&&!d.children(".widget").length&&d.parents(".orphan-sidebar").slideUp(400,function(){a(this).remove()}))}}).sortable("option","connectWith","div.widgets-sortables"),a("#available-widgets").droppable({tolerance:"pointer",accept:function(b){return"widget-list"!==a(b).parent().attr("id")},drop:function(b,c){c.draggable.addClass("deleting"),a("#removing-widget").hide().children("span").empty()},over:function(b,c){c.draggable.addClass("deleting"),a("div.widget-placeholder").hide(),c.draggable.hasClass("ui-sortable-helper")&&a("#removing-widget").show().children("span").html(c.draggable.find("div.widget-title").children("h4").html())},out:function(b,c){c.draggable.removeClass("deleting"),a("div.widget-placeholder").show(),a("#removing-widget").hide().children("span").empty()}}),a("#widgets-right .widgets-holder-wrap").each(function(b,c){var d=a(c),e=d.find(".sidebar-name h3").text(),f=d.find(".widgets-sortables").attr("id"),h=a('<li tabindex="0">').text(a.trim(e));0===b&&h.addClass("widgets-chooser-selected"),g.append(h),h.data("sidebarId",f)}),a("#available-widgets .widget .widget-title").on("click.widgets-chooser",function(){var b=a(this).closest(".widget");b.hasClass("widget-in-question")||a("#widgets-left").hasClass("choosLine truncated
+3 -2
View File
@@ -115,8 +115,9 @@ case 'post-quickdraft-save':
if ( ! wp_verify_nonce( $nonce, 'add-post' ) ) if ( ! wp_verify_nonce( $nonce, 'add-post' ) )
$error_msg = __( 'Unable to submit this form, please refresh and try again.' ); $error_msg = __( 'Unable to submit this form, please refresh and try again.' );
if ( ! current_user_can( 'edit_posts' ) ) if ( ! current_user_can( 'edit_posts' ) ) {
$error_msg = __( 'Oops, you don&#8217;t have access to add new drafts.' ); exit;
}
if ( $error_msg ) if ( $error_msg )
return wp_dashboard_quick_press( $error_msg ); return wp_dashboard_quick_press( $error_msg );
Binary file not shown.
File diff suppressed because it is too large. Load diff
Binary file not shown.
File diff suppressed because it is too large. Load diff
Binary file not shown.
File diff suppressed because it is too large. Load diff
Binary file not shown.
+6914 -6914
View File
File diff suppressed because it is too large. Load diff
+16 -16
View File
@@ -10,15 +10,15 @@ msgstr ""
"X-Generator: GlotPress/1.0-alpha-1000\n" "X-Generator: GlotPress/1.0-alpha-1000\n"
"Project-Id-Version: Development\n" "Project-Id-Version: Development\n"
#: views/notice.php:81 views/notice.php:104 views/notice.php:111 #: views/notice.php:81 views/notice.php:108 views/notice.php:115
msgid "Please <a href=\"%s\" target=\"_blank\">contact our support team</a> with any questions." msgid "Please <a href=\"%s\" target=\"_blank\">contact our support team</a> with any questions."
msgstr "Vennligst <a href=\"%s\" target=\"_blank\">kontakt vårt support-team</a> hvis du har noen spørsmål." msgstr "Vennligst <a href=\"%s\" target=\"_blank\">kontakt vårt support-team</a> hvis du har noen spørsmål."
#: views/notice.php:102 #: views/notice.php:106
msgid "Your Pro subscription allows the use of Akismet on only one site. Please <a href=\"%s\" target=\"_blank\">purchase additional Pro subscriptions</a> or upgrade to an Enterprise subscription that allows the use of Akismet on unlimited sites." msgid "Your Pro subscription allows the use of Akismet on only one site. Please <a href=\"%s\" target=\"_blank\">purchase additional Pro subscriptions</a> or upgrade to an Enterprise subscription that allows the use of Akismet on unlimited sites."
msgstr "Ditt Pro-abonnement lar deg kun bruke Akismet på ett nettsted. Vennligst <a href=\"%s\" target=\"_blank\">kjøp flere Pro-abonnementer</a> eller oppgrader til et Enterprise-abonnement som lar deg bruke Akismet på et ubegrenset antall nettsteder." msgstr "Ditt Pro-abonnement lar deg kun bruke Akismet på ett nettsted. Vennligst <a href=\"%s\" target=\"_blank\">kjøp flere Pro-abonnementer</a> eller oppgrader til et Enterprise-abonnement som lar deg bruke Akismet på et ubegrenset antall nettsteder."
#: views/notice.php:109 #: views/notice.php:113
msgid "To continue your service, <a href=\"%s\" target=\"_blank\">upgrade to an Enterprise subscription</a>, which covers an unlimited number of sites." msgid "To continue your service, <a href=\"%s\" target=\"_blank\">upgrade to an Enterprise subscription</a>, which covers an unlimited number of sites."
msgstr "For å fortsette med tjenesten, <a href=\"%s\" target=\"_blank\">oppgrader til et enterprise-abonnement</a>, som er gyldig for et ubegrenset antall nettsteder." msgstr "For å fortsette med tjenesten, <a href=\"%s\" target=\"_blank\">oppgrader til et enterprise-abonnement</a>, som er gyldig for et ubegrenset antall nettsteder."
@@ -74,11 +74,11 @@ msgstr "%1$s endret status på kommentaren til %2$s."
msgid "Akismet was unable to recheck this comment (response: %s)." msgid "Akismet was unable to recheck this comment (response: %s)."
msgstr "Akismet kunne ikke sjekke denne kommentaren på nytt (respons: %s)." msgstr "Akismet kunne ikke sjekke denne kommentaren på nytt (respons: %s)."
#: views/notice.php:94 #: views/notice.php:98
msgid "The key you entered could not be verified." msgid "The key you entered could not be verified."
msgstr "Nøkkelen du skrev inn kunne ikke verifiseres." msgstr "Nøkkelen du skrev inn kunne ikke verifiseres."
#: views/notice.php:95 #: views/notice.php:99
msgid "The connection to akismet.com cannot be established. Please refer to <a href=\"%s\" target=\"_blank\">our guide about firewalls</a> and check your server configuration." msgid "The connection to akismet.com cannot be established. Please refer to <a href=\"%s\" target=\"_blank\">our guide about firewalls</a> and check your server configuration."
msgstr "Koblingen til akismet.com kunne ikke etableres. Vennligst se <a href=\"%s\" target=\"_blank\">vår guide til brannmurer</a> og sjekk din serverkonfigurasjon." msgstr "Koblingen til akismet.com kunne ikke etableres. Vennligst se <a href=\"%s\" target=\"_blank\">vår guide til brannmurer</a> og sjekk din serverkonfigurasjon."
@@ -124,7 +124,7 @@ msgstr "Benyttet av millioner, er Akismet muligens den beste måten i verden å
msgid "http://akismet.com/" msgid "http://akismet.com/"
msgstr "http://akismet.com/" msgstr "http://akismet.com/"
#: class.akismet-admin.php:781 #: class.akismet-admin.php:785
msgid "Please check your <a href=\"%s\">Akismet configuration</a> and contact your web host if problems persist." msgid "Please check your <a href=\"%s\">Akismet configuration</a> and contact your web host if problems persist."
msgstr "Vennligst sjekk din <a href=\"%s\">Akismet-konfigurasjon</a> og kontakt din web-admin hvis problemet vedvarer." msgstr "Vennligst sjekk din <a href=\"%s\">Akismet-konfigurasjon</a> og kontakt din web-admin hvis problemet vedvarer."
@@ -208,11 +208,11 @@ msgstr "Kommentarer"
msgid "Your subscription is missing." msgid "Your subscription is missing."
msgstr "Ditt abonnement mangler." msgstr "Ditt abonnement mangler."
#: views/notice.php:107 #: views/notice.php:111
msgid "You&#8217;re using Akismet on far too many sites for your Pro subscription." msgid "You&#8217;re using Akismet on far too many sites for your Pro subscription."
msgstr "Du bruker Akismet på altfor mange nettsteder for ditt Pro-abonnement." msgstr "Du bruker Akismet på altfor mange nettsteder for ditt Pro-abonnement."
#: views/notice.php:100 #: views/notice.php:104
msgid "You&#8217;re using your Akismet key on more sites than your Pro subscription allows." msgid "You&#8217;re using your Akismet key on more sites than your Pro subscription allows."
msgstr "Du bruker din Akismet-nøkkel på flere nettsteder enn ditt Pro-abonnement tillater." msgstr "Du bruker din Akismet-nøkkel på flere nettsteder enn ditt Pro-abonnement tillater."
@@ -446,10 +446,10 @@ msgstr "Akismet godkjente denne kommentaren ved en ny automatisk kontroll."
msgid "View comment history" msgid "View comment history"
msgstr "Se kommentarhistorikk" msgstr "Se kommentarhistorikk"
#. #-#-#-#-# akismet.pot (Akismet 3.1.2a1) #-#-#-#-# #. #-#-#-#-# akismet.pot (Akismet 3.1.4a1) #-#-#-#-#
#. Plugin Name of the plugin/theme #. Plugin Name of the plugin/theme
#: class.akismet-admin.php:76 class.akismet-admin.php:78 #: class.akismet-admin.php:76 class.akismet-admin.php:78
#: class.akismet-admin.php:838 views/config.php:3 #: class.akismet-admin.php:842 views/config.php:3
msgid "Akismet" msgid "Akismet"
msgstr "Akismet" msgstr "Akismet"
@@ -549,11 +549,11 @@ msgstr "Oversikt"
msgid "All time" msgid "All time"
msgstr "Til alle tider" msgstr "Til alle tider"
#: class.akismet.php:1011 #: class.akismet.php:1029
msgid "Akismet %s requires WordPress %s or higher." msgid "Akismet %s requires WordPress %s or higher."
msgstr "Akismet %s krever WordPress %s eller nyere." msgstr "Akismet %s krever WordPress %s eller nyere."
#: class.akismet-admin.php:875 #: class.akismet-admin.php:887
msgid "Since you joined us, Akismet has saved you %d minutes!" msgid "Since you joined us, Akismet has saved you %d minutes!"
msgstr "Siden du ble med har Aksimet spart deg for %d minutter!" msgstr "Siden du ble med har Aksimet spart deg for %d minutter!"
@@ -577,7 +577,7 @@ msgstr "Akismet brukerstøtte"
msgid "On this page, you are able to enter/remove an API key, view account information and view spam stats." msgid "On this page, you are able to enter/remove an API key, view account information and view spam stats."
msgstr "På denne siden kan du legge inn eller fjerne en API-nøkkel, vise kontoinformasjon og vise statistikk over useriøst innhold." msgstr "På denne siden kan du legge inn eller fjerne en API-nøkkel, vise kontoinformasjon og vise statistikk over useriøst innhold."
#: class.akismet-admin.php:871 #: class.akismet-admin.php:883
msgid "Since you joined us, Akismet has saved you %s days!" msgid "Since you joined us, Akismet has saved you %s days!"
msgstr "Siden du ble med har Akismet spart deg for %s dager!" msgstr "Siden du ble med har Akismet spart deg for %s dager!"
@@ -622,7 +622,7 @@ msgstr "På denne siden kan du se statistikk for useriøst innhold filtrert på
msgid "Akismet Setup" msgid "Akismet Setup"
msgstr "Konfigurering av Akismet" msgstr "Konfigurering av Akismet"
#: class.akismet-admin.php:873 #: class.akismet-admin.php:885
msgid "Since you joined us, Akismet has saved you %d hours!" msgid "Since you joined us, Akismet has saved you %d hours!"
msgstr "Siden du ble med har Akismet spart deg for %d timer!" msgstr "Siden du ble med har Akismet spart deg for %d timer!"
@@ -666,7 +666,7 @@ msgstr[1] "%s udetekterte useriøse, %s falske positive"
msgid "Akismet FAQ" msgid "Akismet FAQ"
msgstr "Akismet FAQ" msgstr "Akismet FAQ"
#: class.akismet-admin.php:868 #: class.akismet-admin.php:880
msgid "Cleaning up spam takes time." msgid "Cleaning up spam takes time."
msgstr "Opprenskning av useriøst innhold tar tid." msgstr "Opprenskning av useriøst innhold tar tid."
@@ -695,7 +695,7 @@ msgstr "API-nøkkel"
msgid "The Akismet subscription plan" msgid "The Akismet subscription plan"
msgstr "Akismet abonnementer" msgstr "Akismet abonnementer"
#: class.akismet.php:1011 views/notice.php:27 #: class.akismet.php:1029 views/notice.php:27
msgid "Please <a href=\"%1$s\">upgrade WordPress</a> to a current version, or <a href=\"%2$s\">downgrade to version 2.4 of the Akismet plugin</a>." msgid "Please <a href=\"%1$s\">upgrade WordPress</a> to a current version, or <a href=\"%2$s\">downgrade to version 2.4 of the Akismet plugin</a>."
msgstr "Vennligst <a href=\"%1$s\">oppgrader WordPress</a> til en nyere versjon eller <a href=\"%2$s\">nedgrader til versjon 2.4 av utvidelsen Akismet</a>.." msgstr "Vennligst <a href=\"%1$s\">oppgrader WordPress</a> til en nyere versjon eller <a href=\"%2$s\">nedgrader til versjon 2.4 av utvidelsen Akismet</a>.."
Binary file not shown.
@@ -2,7 +2,7 @@
# This file is distributed under the same license as the Twenty Fifteen package. # This file is distributed under the same license as the Twenty Fifteen package.
msgid "" msgid ""
msgstr "" msgstr ""
"PO-Revision-Date: 2015-03-27 07:43:33+0000\n" "PO-Revision-Date: 2015-07-07 10:34:42+0000\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
@@ -10,6 +10,11 @@ msgstr ""
"X-Generator: GlotPress/1.0-alpha-1000\n" "X-Generator: GlotPress/1.0-alpha-1000\n"
"Project-Id-Version: Twenty Fifteen\n" "Project-Id-Version: Twenty Fifteen\n"
#. translators: %s: post title
#: inc/template-tags.php:123
msgid "Leave a comment<span class=\"screen-reader-text\"> on %s</span>"
msgstr "Legg igjen en kommentar<span class=\"screen-reader-text\"> til %s</span>"
#. Theme URI of the plugin/theme #. Theme URI of the plugin/theme
msgid "https://wordpress.org/themes/twentyfifteen/" msgid "https://wordpress.org/themes/twentyfifteen/"
msgstr "https://wordpress.org/themes/twentyfifteen/" msgstr "https://wordpress.org/themes/twentyfifteen/"
@@ -56,18 +61,6 @@ msgstr "Neste bilde"
msgid "Comment navigation" msgid "Comment navigation"
msgstr "Kommentarnavigasjon" msgstr "Kommentarnavigasjon"
#: inc/template-tags.php:122
msgid "Leave a comment"
msgstr "Legg igjen en kommentar"
#: inc/template-tags.php:122
msgid "1 Comment"
msgstr "1 kommentar"
#: inc/template-tags.php:122
msgid "% Comments"
msgstr "% kommentarer"
#: search.php:18 #: search.php:18
msgid "Search Results for: %s" msgid "Search Results for: %s"
msgstr "Søkeresultater for: %s" msgstr "Søkeresultater for: %s"
@@ -222,7 +215,7 @@ msgid "https://wordpress.org/"
msgstr "https://wordpress.org/" msgstr "https://wordpress.org/"
#. translators: %s: Name of current post #. translators: %s: Name of current post
#: content-link.php:31 content.php:33 inc/template-tags.php:237 #: content-link.php:31 content.php:33 inc/template-tags.php:238
msgid "Continue reading %s" msgid "Continue reading %s"
msgstr "Fortsett å lese %s" msgstr "Fortsett å lese %s"
Binary file not shown.
@@ -2,7 +2,7 @@
# This file is distributed under the same license as the Twenty Fourteen package. # This file is distributed under the same license as the Twenty Fourteen package.
msgid "" msgid ""
msgstr "" msgstr ""
"PO-Revision-Date: 2015-03-27 07:43:50+0000\n" "PO-Revision-Date: 2015-06-28 13:54:56+0000\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
@@ -10,62 +10,195 @@ msgstr ""
"X-Generator: GlotPress/1.0-alpha-1000\n" "X-Generator: GlotPress/1.0-alpha-1000\n"
"Project-Id-Version: Twenty Fourteen\n" "Project-Id-Version: Twenty Fourteen\n"
#. Author URI of the plugin/theme #. Template Name of the plugin/theme
msgid "https://wordpress.org/" msgid "Full Width Page"
msgstr "https://wordpress.org/" msgstr "Side i full bredde"
#. Template Name of the plugin/theme
msgid "Contributor Page"
msgstr "Bidragsyters side"
#. Author of the plugin/theme
msgid "the WordPress team"
msgstr "WordPress-gjengen"
#. Description of the plugin/theme
msgid "In 2014, our default theme lets you create a responsive magazine website with a sleek, modern design. Feature your favorite homepage content in either a grid or a slider. Use the three widget areas to customize your website, and change your content's layout with a full-width page template and a contributor page to show off your authors. Creating a magazine website with WordPress has never been easier."
msgstr "I 2014 gjør vårt standardtema deg i stand til å lage et responsivt magasinnettsted med et moderne design. Fremhev ditt favorittinnhold i et rutenett eller en slider. Bruk de tre widgetområdene for å tilpasse nettstedet og endre layouten med fullbreddeformat og bidragsytersider for å fremheve dine ulike forfattere. Å lage et magasinnettsted med WordPress har aldri vært enklere."
#. Theme URI of the plugin/theme #. Theme URI of the plugin/theme
msgid "https://wordpress.org/themes/twentyfourteen/" msgid "http://wordpress.org/themes/twentyfourteen"
msgstr "https://wordpress.org/themes/twentyfourteen/" msgstr "http://wordpress.org/themes/twentyfourteen"
#. translators: %s: Name of current post #: tag.php:22
#: content-aside.php:48 content-audio.php:48 content-gallery.php:48 msgid "Tag Archives: %s"
#: content-image.php:48 content-link.php:48 content-quote.php:48 msgstr "Stikkordarkiv: %s"
#: content-video.php:48 content.php:56 inc/template-tags.php:222
msgid "Continue reading %s <span class=\"meta-nav\">&rarr;</span>"
msgstr "Fortsett å lese %s <span class=\"meta-nav\">&rarr;</span>"
#: inc/customizer.php:31 inc/customizer.php:32 #: search.php:18
msgid "May only be visible on wide screens." msgid "Search Results for: %s"
msgstr "Er kanskje kun synlig på brede skjermer." msgstr "Søkeresultater for: %s"
#: inc/widgets.php:59 #: inc/widgets.php:261
msgid "More videos" msgid "Post format to show:"
msgstr "Flere videoer" msgstr "Innleggsformat som skal vises:"
#: inc/widgets.php:63 #: inc/widgets.php:258
msgid "More audio" msgid "Number of posts to show:"
msgstr "Mer lyd" msgstr "Antall innlegg som skal vises:"
#: inc/widgets.php:67 #: inc/widgets.php:255
msgid "More quotes" msgid "Title:"
msgstr "Flere sitater" msgstr "Tittel:"
#: inc/widgets.php:71
msgid "More links"
msgstr "Flere lenker"
#: inc/widgets.php:75
msgid "More galleries"
msgstr "Flere gallerier"
#: inc/widgets.php:80
msgid "More asides"
msgstr "Flere notiser"
#: inc/customizer.php:108
msgid "The home page features your choice of up to 6 posts prominently displayed in a grid or slider, controlled by a <a href=\"%1$s\">tag</a>; you can change the tag and layout in <a href=\"%2$s\">Appearance &rarr; Customize</a>. If no posts match the tag, <a href=\"%3$s\">sticky posts</a> will be displayed instead."
msgstr "Forsiden viser fremhevet innhold – opp til seks innlegg som vises i et rutenett eller i en slider, kontrollert av et <a href=\"%1$s\">stikkord</a>. Du kan endre stikkordet og layouten i <a href=\"%2$s\">Utseende &rarr; Tilpass</a>. Hvis ingen innlegg har dette stikkordet, vises <a href=\"%3$s\">klebrige innlegg</a> isteden."
#. translators: used with More archives link #. translators: used with More archives link
#: inc/widgets.php:206 #: inc/widgets.php:206
msgid "%s <span class=\"meta-nav\">&rarr;</span>" msgid "%s <span class=\"meta-nav\">&rarr;</span>"
msgstr "%s <span class=\"meta-nav\">&rarr;</span>" msgstr "%s <span class=\"meta-nav\">&rarr;</span>"
#: inc/widgets.php:162
msgid "This gallery contains <a href=\"%1$s\" rel=\"bookmark\">%2$s photo</a>."
msgid_plural "This gallery contains <a href=\"%1$s\" rel=\"bookmark\">%2$s photos</a>."
msgstr[0] "Dette galleriet inneholder <a href=\"%1$s\" rel=\"bookmark\">%2$s bilde</a>."
msgstr[1] "Dette galleriet inneholder <a href=\"%1$s\" rel=\"bookmark\">%2$s bilder</a>."
#: inc/widgets.php:127 inc/widgets.php:172
msgid "Continue reading <span class=\"meta-nav\">&rarr;</span>"
msgstr "Les videre <span class=\"meta-nav\">&rarr;</span>"
#: inc/widgets.php:80
msgid "More asides"
msgstr "Flere notiser"
#: inc/widgets.php:79 taxonomy-post_format.php:30
msgid "Asides"
msgstr "Notiser"
#: inc/widgets.php:75
msgid "More galleries"
msgstr "Flere gallerier"
#: inc/widgets.php:74 taxonomy-post_format.php:48
msgid "Galleries"
msgstr "Gallerier"
#: inc/widgets.php:71
msgid "More links"
msgstr "Flere lenker"
#: inc/widgets.php:70 taxonomy-post_format.php:45
msgid "Links"
msgstr "Lenker"
#: inc/widgets.php:67
msgid "More quotes"
msgstr "Flere sitater"
#: inc/widgets.php:66 taxonomy-post_format.php:42
msgid "Quotes"
msgstr "Sitater"
#: inc/widgets.php:63
msgid "More audio"
msgstr "Mer lyd"
#: inc/widgets.php:62 taxonomy-post_format.php:39
msgid "Audio"
msgstr "Lyd"
#: inc/widgets.php:59
msgid "More videos"
msgstr "Flere videoer"
#: inc/widgets.php:58 taxonomy-post_format.php:36
msgid "Videos"
msgstr "Videoer"
#: inc/widgets.php:55
msgid "More images"
msgstr "Flere bilder"
#: inc/widgets.php:54 taxonomy-post_format.php:33
msgid "Images"
msgstr "Bilder"
#: inc/widgets.php:36 #: inc/widgets.php:36
msgid "Use this widget to list your recent Aside, Quote, Video, Audio, Image, Gallery, and Link posts." msgid "Use this widget to list your recent Aside, Quote, Video, Audio, Image, Gallery, and Link posts."
msgstr "Bruk denne widgeten for å vise dine siste notis-, sitat-, video-, lyd-, bilde-, galleri- og lenke-innlegg." msgstr "Bruk denne widgeten for å vise dine siste notis-, sitat-, video-, lyd-, bilde-, galleri- og lenke-innlegg."
#: inc/widgets.php:34
msgid "Twenty Fourteen Ephemera"
msgstr "Twenty Fourteen Ephemera"
#: inc/template-tags.php:109
msgid "Sticky"
msgstr "Klebrig"
#: inc/template-tags.php:92
msgid "<span class=\"meta-nav\">Next Post</span>%title"
msgstr "<span class=\"meta-nav\">Neste innlegg</span>%title"
#: inc/template-tags.php:91
msgid "<span class=\"meta-nav\">Previous Post</span>%title"
msgstr "<span class=\"meta-nav\">Forrige innlegg</span>%title"
#: inc/template-tags.php:89
msgid "<span class=\"meta-nav\">Published In</span>%title"
msgstr "<span class=\"meta-nav\">Publisert i</span>%title"
#: inc/template-tags.php:85
msgid "Post navigation"
msgstr "Innleggsnavigasjon"
#: inc/template-tags.php:58
msgid "Posts navigation"
msgstr "Innleggsnavigasjon"
#: inc/template-tags.php:51
msgid "Next &rarr;"
msgstr "Neste &rarr;"
#: inc/template-tags.php:50
msgid "&larr; Previous"
msgstr "&larr; Forrige"
#: inc/featured-content.php:431
msgid "Don&rsquo;t display tag on front end."
msgstr "Ikke vis dette stikkordet på fremsidene."
#: inc/featured-content.php:426
msgid "Tag Name"
msgstr "Stikkord"
#: inc/customizer.php:110
msgid "For an in-depth tutorial, and more tips and tricks, visit the <a href=\"%s\">Twenty Fourteen documentation</a>."
msgstr "For en inngående starthjelp, tips og triks, besøk <a href=\"%s\">Dokumentasjon for Twenty Fourteen</a>."
#: inc/customizer.php:109
msgid "Enhance your site design by using <a href=\"%s\">Featured Images</a> for posts you&rsquo;d like to stand out (also known as post thumbnails). This allows you to associate an image with your post without inserting it. Twenty Fourteen uses featured images for posts and pages&mdash;above the title&mdash;and in the Featured Content area on the home page."
msgstr "Forbedre utseendet ved å bruke <a href=\"%s\">fremhevede bilder</a> for innlegg som du vil at man skal legge merke til. Dette lar deg knytte et bilde til et innlegg uten å sette det inn i teksten. Twenty Fourteen bruker fremhevede bilder for innlegg og sider – over tittelen – og i fremhevet innhold-delen av forsiden."
#: inc/customizer.php:108
msgid "The home page features your choice of up to 6 posts prominently displayed in a grid or slider, controlled by a <a href=\"%1$s\">tag</a>; you can change the tag and layout in <a href=\"%2$s\">Appearance &rarr; Customize</a>. If no posts match the tag, <a href=\"%3$s\">sticky posts</a> will be displayed instead."
msgstr "Forsiden viser fremhevet innhold – opp til seks innlegg som vises i et rutenett eller i en slider, kontrollert av et <a href=\"%1$s\">stikkord</a>. Du kan endre stikkordet og layouten i <a href=\"%2$s\">Utseende &rarr; Tilpass</a>. Hvis ingen innlegg har dette stikkordet, vises <a href=\"%3$s\">klebrige innlegg</a> isteden."
#. #-#-#-#-# twentyfourteen.pot (Twenty Fourteen 1.3) #-#-#-#-#
#. Theme Name of the plugin/theme
#: inc/customizer.php:105
msgid "Twenty Fourteen"
msgstr "Twenty Fourteen"
#: inc/customizer.php:61
msgid "Slider"
msgstr "Slider"
#: inc/customizer.php:60
msgid "Grid"
msgstr "Rutenett"
#: inc/customizer.php:56
msgid "Layout"
msgstr "Utseende"
#: inc/customizer.php:42 inc/customizer.php:108 inc/featured-content.php:405 #: inc/customizer.php:42 inc/customizer.php:108 inc/featured-content.php:405
#: inc/featured-content.php:414 inc/featured-content.php:474 #: inc/featured-content.php:414 inc/featured-content.php:474
msgctxt "featured content default tag slug" msgctxt "featured content default tag slug"
@@ -76,133 +209,53 @@ msgstr "fremhevet"
msgid "Use a <a href=\"%1$s\">tag</a> to feature your posts. If no posts match the tag, <a href=\"%2$s\">sticky posts</a> will be displayed instead." msgid "Use a <a href=\"%1$s\">tag</a> to feature your posts. If no posts match the tag, <a href=\"%2$s\">sticky posts</a> will be displayed instead."
msgstr "Bruk et <a href=\"%1$s\">stikkord</a> for å fremheve dine innlegg. Hvis ingen innlegg har dette stikkordet, vil <a href=\"%2$s\">klebrige innlegg</a> vises isteden." msgstr "Bruk et <a href=\"%1$s\">stikkord</a> for å fremheve dine innlegg. Hvis ingen innlegg har dette stikkordet, vil <a href=\"%2$s\">klebrige innlegg</a> vises isteden."
#: 404.php:17 #: inc/customizer.php:40 inc/featured-content.php:403
msgid "Not Found" msgid "Featured Content"
msgstr "Ikke funnet" msgstr "Fremhevet innhold"
#: inc/customizer.php:27
msgid "Display Site Title &amp; Tagline"
msgstr "Vis nettstedets tittel og slagord"
#: inc/customizer.php:110
msgid "For an in-depth tutorial, and more tips and tricks, visit the <a href=\"%s\">Twenty Fourteen documentation</a>."
msgstr "For en inngående starthjelp, tips og triks, besøk <a href=\"%s\">Dokumentasjon for Twenty Fourteen</a>."
#: archive.php:34
msgctxt "monthly archives date format"
msgid "F Y"
msgstr "F Y"
#: archive.php:37
msgctxt "yearly archives date format"
msgid "Y"
msgstr "Y"
#: inc/customizer.php:24
msgid "Site Title Color"
msgstr "Nettstedets farge"
#. Description of the plugin/theme
msgid "In 2014, our default theme lets you create a responsive magazine website with a sleek, modern design. Feature your favorite homepage content in either a grid or a slider. Use the three widget areas to customize your website, and change your content's layout with a full-width page template and a contributor page to show off your authors. Creating a magazine website with WordPress has never been easier."
msgstr "I 2014 gjør vårt standardtema deg i stand til å lage et responsivt magasinnettsted med et moderne design. Fremhev ditt favorittinnhold i et rutenett eller en slider. Bruk de tre widgetområdene for å tilpasse nettstedet og endre layouten med fullbreddeformat og bidragsytersider for å fremheve dine ulike forfattere. Å lage et magasinnettsted med WordPress har aldri vært enklere."
#: inc/featured-content.php:426
msgid "Tag Name"
msgstr "Stikkord"
#: inc/featured-content.php:431
msgid "Don&rsquo;t display tag on front end."
msgstr "Ikke vis dette stikkordet på fremsidene."
#: functions.php:258
msgid "Previous"
msgstr "Forrige"
#: functions.php:259
msgid "Next"
msgstr "Neste"
#: functions.php:182
msgid "Additional sidebar that appears on the right."
msgstr "Ekstra sidekolonne som vises på høyre side."
#: functions.php:191
msgid "Appears in the footer section of the site."
msgstr "Vises i bunnen på nettstedet."
#: image.php:65
msgid "Previous Image"
msgstr "Forrige bilde"
#: image.php:66
msgid "Next Image"
msgstr "Neste bilde"
#: inc/back-compat.php:37 inc/back-compat.php:47 inc/back-compat.php:60
msgid "Twenty Fourteen requires at least WordPress version 3.6. You are running version %s. Please upgrade and try again."
msgstr "Twenty Foruteen krever minimum WordPress versjon 3.6. Du bruker nå versjon %s. Vennligst oppgrader og prøv igjen."
#: inc/customizer.php:34 inc/customizer.php:35 #: inc/customizer.php:34 inc/customizer.php:35
msgid "Background may only be visible on wide screens." msgid "Background may only be visible on wide screens."
msgstr "Bakgrunnen er kanskje bare synlig på store skjermer." msgstr "Bakgrunnen er kanskje bare synlig på store skjermer."
#: inc/customizer.php:40 inc/featured-content.php:403 #: inc/customizer.php:31 inc/customizer.php:32
msgid "Featured Content" msgid "May only be visible on wide screens."
msgstr "Fremhevet innhold" msgstr "Er kanskje kun synlig på brede skjermer."
#: inc/customizer.php:56 #: inc/customizer.php:27
msgid "Layout" msgid "Display Site Title &amp; Tagline"
msgstr "Utseende" msgstr "Vis nettstedets tittel og slagord"
#: inc/customizer.php:60 #: inc/customizer.php:24
msgid "Grid" msgid "Site Title Color"
msgstr "Rutenett" msgstr "Nettstedets farge"
#: inc/template-tags.php:89 #: inc/back-compat.php:37 inc/back-compat.php:47 inc/back-compat.php:60
msgid "<span class=\"meta-nav\">Published In</span>%title" msgid "Twenty Fourteen requires at least WordPress version 3.6. You are running version %s. Please upgrade and try again."
msgstr "<span class=\"meta-nav\">Publisert i</span>%title" msgstr "Twenty Foruteen krever minimum WordPress versjon 3.6. Du bruker nå versjon %s. Vennligst oppgrader og prøv igjen."
#: inc/template-tags.php:91 #: image.php:66
msgid "<span class=\"meta-nav\">Previous Post</span>%title" msgid "Next Image"
msgstr "<span class=\"meta-nav\">Forrige innlegg</span>%title" msgstr "Neste bilde"
#: inc/template-tags.php:92 #: image.php:65
msgid "<span class=\"meta-nav\">Next Post</span>%title" msgid "Previous Image"
msgstr "<span class=\"meta-nav\">Neste innlegg</span>%title" msgstr "Forrige bilde"
#: inc/widgets.php:34 #: header.php:53
msgid "Twenty Fourteen Ephemera" msgid "Skip to content"
msgstr "Twenty Fourteen Ephemera" msgstr "Gå til innhold"
#: inc/widgets.php:62 taxonomy-post_format.php:39 #: header.php:52
msgid "Audio" msgid "Primary Menu"
msgstr "Lyd" msgstr "Primærmeny"
#: inc/widgets.php:162 #: header.php:48
msgid "This gallery contains <a href=\"%1$s\" rel=\"bookmark\">%2$s photo</a>." msgid "Search"
msgid_plural "This gallery contains <a href=\"%1$s\" rel=\"bookmark\">%2$s photos</a>." msgstr "Søk"
msgstr[0] "Dette galleriet inneholder <a href=\"%1$s\" rel=\"bookmark\">%2$s bilde</a>."
msgstr[1] "Dette galleriet inneholder <a href=\"%1$s\" rel=\"bookmark\">%2$s bilder</a>."
#: inc/widgets.php:255 #: functions.php:495
msgid "Title:" msgid "Page %s"
msgstr "Tittel:" msgstr "Side %s"
#. Template Name of the plugin/theme
msgid "Contributor Page"
msgstr "Bidragsyters side"
#: 404.php:21
msgid "It looks like nothing was found at this location. Maybe try a search?"
msgstr "Det ser ikke ut til at noe ble funnet på denne adressen. Kanskje du kan prøve et søk?"
#: author.php:31
msgid "All posts by %s"
msgstr "Alle innlegg av %s"
#: functions.php:189
msgid "Footer Widget Area"
msgstr "Widget-område i sidebunnen"
#: functions.php:376 #: functions.php:376
msgid "%d Article" msgid "%d Article"
@@ -210,25 +263,116 @@ msgid_plural "%d Articles"
msgstr[0] "%d artikkel" msgstr[0] "%d artikkel"
msgstr[1] "%d artikler" msgstr[1] "%d artikler"
#: inc/widgets.php:258 #: functions.php:259
msgid "Number of posts to show:" msgid "Next"
msgstr "Antall innlegg som skal vises:" msgstr "Neste"
#: inc/customizer.php:61 #: functions.php:258
msgid "Slider" msgid "Previous"
msgstr "Slider" msgstr "Forrige"
#: inc/customizer.php:109 #. Translators: If there are characters in your language that are not supported
msgid "Enhance your site design by using <a href=\"%s\">Featured Images</a> for posts you&rsquo;d like to stand out (also known as post thumbnails). This allows you to associate an image with your post without inserting it. Twenty Fourteen uses featured images for posts and pages&mdash;above the title&mdash;and in the Featured Content area on the home page." #. by Lato, translate this to 'off'. Do not translate into your own language.
msgstr "Forbedre utseendet ved å bruke <a href=\"%s\">fremhevede bilder</a> for innlegg som du vil at man skal legge merke til. Dette lar deg knytte et bilde til et innlegg uten å sette det inn i teksten. Twenty Fourteen bruker fremhevede bilder for innlegg og sider – over tittelen – og i fremhevet innhold-delen av forsiden." #: functions.php:213
msgctxt "Lato font: on or off"
msgid "on"
msgstr "on"
#: inc/template-tags.php:58 #: functions.php:191
msgid "Posts navigation" msgid "Appears in the footer section of the site."
msgstr "Innleggsnavigasjon" msgstr "Vises i bunnen på nettstedet."
#: inc/widgets.php:261 #: functions.php:189
msgid "Post format to show:" msgid "Footer Widget Area"
msgstr "Innleggsformat som skal vises:" msgstr "Widget-område i sidebunnen"
#: functions.php:182
msgid "Additional sidebar that appears on the right."
msgstr "Ekstra sidekolonne som vises på høyre side."
#: functions.php:180
msgid "Content Sidebar"
msgstr "Innhold sidekolonne"
#: functions.php:173
msgid "Main sidebar that appears on the left."
msgstr "Hovedsidekolonne til venstre."
#: functions.php:171
msgid "Primary Sidebar"
msgstr "Første sidekolonne"
#: functions.php:84
msgid "Secondary menu in left sidebar"
msgstr "Sekundærmeny i venstre sidekolonne"
#: functions.php:83
msgid "Top primary menu"
msgstr "Øverste primærmeny"
#: footer.php:21
msgid "Proudly powered by %s"
msgstr "Stolt drevet av %s"
#. #-#-#-#-# twentyfourteen.pot (Twenty Fourteen 1.3) #-#-#-#-#
#. Author URI of the plugin/theme
#: footer.php:21
msgid "http://wordpress.org/"
msgstr "http://nb.wordpress.org/"
#: content-none.php:27
msgid "It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps searching can help."
msgstr "Vi klarer ikke å finne det du leter etter. Prøv å søke."
#: content-none.php:22
msgid "Sorry, but nothing matched your search terms. Please try again with some different keywords."
msgstr "Beklager, men det ble ikke funnet noe som passet det du søkte etter. Vennligst prøv med noen andre søkeord."
#: content-none.php:18
msgid "Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr "Klar for å publisere ditt første innlegg? <a href=\"%1$s\">Kom i gang her</a>."
#: content-none.php:12
msgid "Nothing Found"
msgstr "Ingenting funnet"
#: content-aside.php:53 content-audio.php:53 content-gallery.php:53
#: content-image.php:53 content-link.php:53 content-page.php:22
#: content-quote.php:53 content-video.php:53 content.php:61 image.php:54
msgid "Pages:"
msgstr "Sider:"
#. translators: %s: Name of current post
#: content-aside.php:48 content-audio.php:48 content-gallery.php:48
#: content-image.php:48 content-link.php:48 content-quote.php:48
#: content-video.php:48 content.php:56 inc/template-tags.php:219
msgid "Continue reading %s <span class=\"meta-nav\">&rarr;</span>"
msgstr "Fortsett å lese %s <span class=\"meta-nav\">&rarr;</span>"
#: content-aside.php:40 content-audio.php:40 content-gallery.php:40
#: content-image.php:40 content-link.php:40 content-page.php:28
#: content-quote.php:40 content-video.php:40 content.php:42 image.php:34
#: page-templates/contributors.php:35
msgid "Edit"
msgstr "Rediger"
#: content-aside.php:37 content-audio.php:37 content-gallery.php:37
#: content-image.php:37 content-link.php:37 content-quote.php:37
#: content-video.php:37 content.php:38 inc/widgets.php:194
msgid "% Comments"
msgstr "% kommentarer"
#: content-aside.php:37 content-audio.php:37 content-gallery.php:37
#: content-image.php:37 content-link.php:37 content-quote.php:37
#: content-video.php:37 content.php:38 inc/widgets.php:194
msgid "1 Comment"
msgstr "1 kommentar"
#: content-aside.php:37 content-audio.php:37 content-gallery.php:37
#: content-image.php:37 content-link.php:37 content-quote.php:37
#: content-video.php:37 content.php:38 inc/widgets.php:194
msgid "Leave a comment"
msgstr "Legg igjen en kommentar"
#: content-aside.php:17 content-audio.php:17 content-featured-post.php:28 #: content-aside.php:17 content-audio.php:17 content-featured-post.php:28
#: content-gallery.php:17 content-image.php:17 content-link.php:17 #: content-gallery.php:17 content-image.php:17 content-link.php:17
@@ -237,25 +381,9 @@ msgctxt "Used between list items, there is a space after the comma."
msgid ", " msgid ", "
msgstr ", " msgstr ", "
#: footer.php:21 #: comments.php:59
msgid "Proudly powered by %s" msgid "Comments are closed."
msgstr "Stolt drevet av %s" msgstr "Det er stengt for kommentarer."
#: archive.php:31
msgid "Daily Archives: %s"
msgstr "Daglige arkiver: %s"
#: archive.php:34
msgid "Monthly Archives: %s"
msgstr "Månedlige arkiver: %s"
#: archive.php:37
msgid "Yearly Archives: %s"
msgstr "Årlige arkiver: %s"
#. Author of the plugin/theme
msgid "the WordPress team"
msgstr "WordPress-gjengen"
#: comments.php:36 comments.php:54 #: comments.php:36 comments.php:54
msgid "Newer Comments &rarr;" msgid "Newer Comments &rarr;"
@@ -265,14 +393,6 @@ msgstr "Nyere kommentarer &rarr;"
msgid "&larr; Older Comments" msgid "&larr; Older Comments"
msgstr "&larr; Eldre kommentarer" msgstr "&larr; Eldre kommentarer"
#: comments.php:59
msgid "Comments are closed."
msgstr "Det er stengt for kommentarer."
#: category.php:20
msgid "Category Archives: %s"
msgstr "Kategoriarkiv: %s"
#: comments.php:34 comments.php:52 #: comments.php:34 comments.php:52
msgid "Comment navigation" msgid "Comment navigation"
msgstr "Kommentarnavigasjon" msgstr "Kommentarnavigasjon"
@@ -283,166 +403,44 @@ msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "En tanke om &ldquo;%2$s&rdquo;" msgstr[0] "En tanke om &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s tanker om &ldquo;%2$s&rdquo;" msgstr[1] "%1$s tanker om &ldquo;%2$s&rdquo;"
#: tag.php:22 #: category.php:20
msgid "Tag Archives: %s" msgid "Category Archives: %s"
msgstr "Stikkordarkiv: %s" msgstr "Kategoriarkiv: %s"
#: search.php:18 #: author.php:31
msgid "Search Results for: %s" msgid "All posts by %s"
msgstr "Søkeresultater for: %s" msgstr "Alle innlegg av %s"
#: content-none.php:12
msgid "Nothing Found"
msgstr "Ingenting funnet"
#: header.php:48
msgid "Search"
msgstr "Søk"
#: archive.php:40 taxonomy-post_format.php:51 #: archive.php:40 taxonomy-post_format.php:51
msgid "Archives" msgid "Archives"
msgstr "Arkiv" msgstr "Arkiv"
#: inc/widgets.php:127 inc/widgets.php:172 #: archive.php:37
msgid "Continue reading <span class=\"meta-nav\">&rarr;</span>" msgctxt "yearly archives date format"
msgstr "Les videre <span class=\"meta-nav\">&rarr;</span>" msgid "Y"
msgstr "Y"
#: content-aside.php:53 content-audio.php:53 content-gallery.php:53 #: archive.php:37
#: content-image.php:53 content-link.php:53 content-page.php:22 msgid "Yearly Archives: %s"
#: content-quote.php:53 content-video.php:53 content.php:61 image.php:54 msgstr "Årlige arkiver: %s"
msgid "Pages:"
msgstr "Sider:"
#: content-aside.php:40 content-audio.php:40 content-gallery.php:40 #: archive.php:34
#: content-image.php:40 content-link.php:40 content-page.php:28 msgctxt "monthly archives date format"
#: content-quote.php:40 content-video.php:40 content.php:42 image.php:34 msgid "F Y"
#: page-templates/contributors.php:35 msgstr "F Y"
msgid "Edit"
msgstr "Rediger"
#: inc/template-tags.php:51 #: archive.php:34
msgid "Next &rarr;" msgid "Monthly Archives: %s"
msgstr "Neste &rarr;" msgstr "Månedlige arkiver: %s"
#: inc/template-tags.php:50 #: archive.php:31
msgid "&larr; Previous" msgid "Daily Archives: %s"
msgstr "&larr; Forrige" msgstr "Daglige arkiver: %s"
#: functions.php:495 #: 404.php:21
msgid "Page %s" msgid "It looks like nothing was found at this location. Maybe try a search?"
msgstr "Side %s" msgstr "Det ser ikke ut til at noe ble funnet på denne adressen. Kanskje du kan prøve et søk?"
#: inc/template-tags.php:85 #: 404.php:17
msgid "Post navigation" msgid "Not Found"
msgstr "Innleggsnavigasjon" msgstr "Ikke funnet"
#: header.php:52
msgid "Primary Menu"
msgstr "Primærmeny"
#: content-none.php:27
msgid "It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps searching can help."
msgstr "Vi klarer ikke å finne det du leter etter. Prøv å søke."
#: header.php:53
msgid "Skip to content"
msgstr "Gå til innhold"
#: content-aside.php:37 content-audio.php:37 content-gallery.php:37
#: content-image.php:37 content-link.php:37 content-quote.php:37
#: content-video.php:37 content.php:38 inc/widgets.php:194
msgid "Leave a comment"
msgstr "Legg igjen en kommentar"
#: content-none.php:18
msgid "Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr "Klar for å publisere ditt første innlegg? <a href=\"%1$s\">Kom i gang her</a>."
#: functions.php:171
msgid "Primary Sidebar"
msgstr "Første sidekolonne"
#: functions.php:173
msgid "Main sidebar that appears on the left."
msgstr "Hovedsidekolonne til venstre."
#: functions.php:180
msgid "Content Sidebar"
msgstr "Innhold sidekolonne"
#: inc/widgets.php:58 taxonomy-post_format.php:36
msgid "Videos"
msgstr "Videoer"
#: inc/widgets.php:54 taxonomy-post_format.php:33
msgid "Images"
msgstr "Bilder"
#: inc/widgets.php:74 taxonomy-post_format.php:48
msgid "Galleries"
msgstr "Gallerier"
#: inc/widgets.php:70 taxonomy-post_format.php:45
msgid "Links"
msgstr "Lenker"
#: inc/widgets.php:66 taxonomy-post_format.php:42
msgid "Quotes"
msgstr "Sitater"
#. #-#-#-#-# twentyfourteen.pot (Twenty Fourteen 1.4) #-#-#-#-#
#. Theme Name of the plugin/theme
#: inc/customizer.php:105
msgid "Twenty Fourteen"
msgstr "Twenty Fourteen"
#. Template Name of the plugin/theme
msgid "Full Width Page"
msgstr "Side i full bredde"
#: content-aside.php:37 content-audio.php:37 content-gallery.php:37
#: content-image.php:37 content-link.php:37 content-quote.php:37
#: content-video.php:37 content.php:38 inc/widgets.php:194
msgid "1 Comment"
msgstr "1 kommentar"
#: content-aside.php:37 content-audio.php:37 content-gallery.php:37
#: content-image.php:37 content-link.php:37 content-quote.php:37
#: content-video.php:37 content.php:38 inc/widgets.php:194
msgid "% Comments"
msgstr "% kommentarer"
#: functions.php:83
msgid "Top primary menu"
msgstr "Øverste primærmeny"
#: inc/widgets.php:79 taxonomy-post_format.php:30
msgid "Asides"
msgstr "Notiser"
#. Translators: If there are characters in your language that are not supported
#. by Lato, translate this to 'off'. Do not translate into your own language.
#: functions.php:213
msgctxt "Lato font: on or off"
msgid "on"
msgstr "on"
#: content-none.php:22
msgid "Sorry, but nothing matched your search terms. Please try again with some different keywords."
msgstr "Beklager, men det ble ikke funnet noe som passet det du søkte etter. Vennligst prøv med noen andre søkeord."
#: functions.php:84
msgid "Secondary menu in left sidebar"
msgstr "Sekundærmeny i venstre sidekolonne"
#: inc/template-tags.php:109
msgid "Sticky"
msgstr "Klebrig"
#: footer.php:21
msgid "http://wordpress.org/"
msgstr "http://nb.wordpress.org/"
#: inc/widgets.php:55
msgid "More images"
msgstr "Flere bilder"
Binary file not shown.
@@ -2,7 +2,7 @@
# This file is distributed under the same license as the Twenty Thirteen package. # This file is distributed under the same license as the Twenty Thirteen package.
msgid "" msgid ""
msgstr "" msgstr ""
"PO-Revision-Date: 2015-03-27 07:44:03+0000\n" "PO-Revision-Date: 2015-06-28 13:54:54+0000\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
@@ -10,240 +10,155 @@ msgstr ""
"X-Generator: GlotPress/1.0-alpha-1000\n" "X-Generator: GlotPress/1.0-alpha-1000\n"
"Project-Id-Version: Twenty Thirteen\n" "Project-Id-Version: Twenty Thirteen\n"
#. Theme URI of the plugin/theme #. Author of the plugin/theme
msgid "https://wordpress.org/themes/twentythirteen/" msgid "the WordPress team"
msgstr "https://wordpress.org/themes/twentythirteen/" msgstr "WordPress-gjengen"
#. Author URI of the plugin/theme
msgid "https://wordpress.org/"
msgstr "https://wordpress.org/"
#. translators: %s: Name of current post
#: content-aside.php:16 content-audio.php:27 content-chat.php:26
#: content-gallery.php:27 content-image.php:26 content-link.php:27
#: content-quote.php:16 content-status.php:16 content-video.php:26
#: content.php:44 functions.php:478
msgid "Continue reading %s <span class=\"meta-nav\">&rarr;</span>"
msgstr "Fortsett å lese %s <span class=\"meta-nav\">&rarr;</span>"
#: 404.php:16
msgid "Not Found"
msgstr "Ikke funnet"
#. Description of the plugin/theme #. Description of the plugin/theme
msgid "The 2013 theme for WordPress takes us back to the blog, featuring a full range of post formats, each displayed beautifully in their own unique way. Design details abound, starting with a vibrant color scheme and matching header images, beautiful typography and icons, and a flexible layout that looks great on any device, big or small." msgid "The 2013 theme for WordPress takes us back to the blog, featuring a full range of post formats, each displayed beautifully in their own unique way. Design details abound, starting with a vibrant color scheme and matching header images, beautiful typography and icons, and a flexible layout that looks great on any device, big or small."
msgstr "2013-temaet for WordPress tar oss tilbake til bloggen, med alle mulige innleggsformater, og hvert eneste format vises på sin unike måte. Twenty Thirteen har drøssevis av designdetaljer, som fargeskjema og matchende toppbilder, flott typografi, ikoner og et fleksibelt oppsett som ser fantastisk ut på både data, nettbrett og mobil." msgstr "2013-temaet for WordPress tar oss tilbake til bloggen, med alle mulige innleggsformater, og hvert eneste format vises på sin unike måte. Twenty Thirteen har drøssevis av designdetaljer, som fargeskjema og matchende toppbilder, flott typografi, ikoner og et fleksibelt oppsett som ser fantastisk ut på både data, nettbrett og mobil."
#: functions.php:233 #. Theme URI of the plugin/theme
msgid "Appears in the footer section of the site." msgid "http://wordpress.org/themes/twentythirteen"
msgstr "Vises i bunnområdet på netttedet." msgstr "http://wordpress.org/themes/twentythirteen"
#: image.php:38 #. Theme Name of the plugin/theme
msgid "Link to full-size image" msgid "Twenty Thirteen"
msgstr "Lenke til bildet i full størrelse" msgstr "Twenty Thirteen"
#: functions.php:231 #: taxonomy-post_format.php:23
msgid "Main Widget Area" msgid "%s Archives"
msgstr "Hovedområde for widgeter" msgstr "Arkiv for %s"
#: functions.php:241
msgid "Secondary Widget Area"
msgstr "Sekundærområde for widgeter"
#: functions.php:243
msgid "Appears on posts and pages in the sidebar."
msgstr "Vises på innleggssider og andre sider i sidekolonnen."
#: image.php:39
msgid "Full resolution"
msgstr "Full oppløsning"
#: inc/back-compat.php:37 inc/back-compat.php:47 inc/back-compat.php:60
msgid "Twenty Thirteen requires at least WordPress version 3.6. You are running version %s. Please upgrade and try again."
msgstr "Twenty Thirteen krever WordPress versjon 3.6. Du kjører versjon %s. Vennligst oppgrader og prøv igjen."
#: functions.php:218
msgid "Page %s"
msgstr "Side %s"
#: content-none.php:27
msgid "It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps searching can help."
msgstr "Vi klarer ikke å finne det du leter etter. Prøv å søke."
#: header.php:43
msgid "Menu"
msgstr "Meny"
#: header.php:44
msgid "Skip to content"
msgstr "Gå til innhold"
#: functions.php:343
msgid "View all posts by %s"
msgstr "Vis alle innlegg av %s"
#: search.php:18
msgid "Search Results for: %s"
msgstr "Søkeresultater for: %s"
#: archive.php:35
msgid "Archives"
msgstr "Arkiv"
#. Author of the plugin/theme
msgid "the WordPress team"
msgstr "WordPress-gjengen"
#: functions.php:369
msgid "Permalink to %s"
msgstr "Permalenke til %s"
#: functions.php:300
msgid "Post navigation"
msgstr "Innleggsnavigasjon"
#: functions.php:270
msgid "<span class=\"meta-nav\">&larr;</span> Older posts"
msgstr "<span class=\"meta-nav\">&larr;</span> Eldre innlegg"
#: functions.php:274
msgid "Newer posts <span class=\"meta-nav\">&rarr;</span>"
msgstr "Nyere innlegg <span class=\"meta-nav\">&rarr;</span>"
#: footer.php:19
msgid "Proudly powered by %s"
msgstr "Stolt drevet av %s"
#: content-aside.php:27 content-aside.php:35 content-audio.php:38
#: content-chat.php:36 content-gallery.php:46 content-image.php:42
#: content-link.php:19 content-quote.php:32 content-status.php:26
#: content-video.php:42 content.php:31 image.php:44 page.php:39
msgid "Edit"
msgstr "Rediger"
#: comments.php:47
msgid "Newer Comments &rarr;"
msgstr "Nyere kommentarer &rarr;"
#: comments.php:52
msgid "Comments are closed."
msgstr "Det er stengt for kommentarer."
#: author-bio.php:26
msgid "About %s"
msgstr "Om %s"
#: archive.php:31
msgctxt "monthly archives date format"
msgid "F Y"
msgstr "F Y"
#: archive.php:33
msgid "Yearly Archives: %s"
msgstr "Årlige arkiver: %s"
#: archive.php:33
msgctxt "yearly archives date format"
msgid "Y"
msgstr "Y"
#: tag.php:21 #: tag.php:21
msgid "Tag Archives: %s" msgid "Tag Archives: %s"
msgstr "Stikkordarkiv: %s" msgstr "Stikkordarkiv: %s"
#: category.php:19 #: search.php:18
msgid "Category Archives: %s" msgid "Search Results for: %s"
msgstr "Kategoriarkiv: %s" msgstr "Søkeresultater for: %s"
#: archive.php:29 #: inc/custom-header.php:59
msgid "Daily Archives: %s" msgctxt "header image description"
msgstr "Daglige arkiver: %s" msgid "Star"
msgstr "Stjerne"
#: archive.php:31 #: inc/custom-header.php:54
msgid "Monthly Archives: %s" msgctxt "header image description"
msgstr "Månedlige arkiver: %s" msgid "Diamond"
msgstr "Diamant"
#: footer.php:19 #: inc/custom-header.php:49
msgid "http://wordpress.org/" msgctxt "header image description"
msgstr "http://wordpress.org/" msgid "Circle"
msgstr "Sirkel"
#: footer.php:19 #: inc/back-compat.php:37 inc/back-compat.php:47 inc/back-compat.php:60
msgid "Semantic Personal Publishing Platform" msgid "Twenty Thirteen requires at least WordPress version 3.6. You are running version %s. Please upgrade and try again."
msgstr "Semantisk, personlig publiseringsplattform" msgstr "Twenty Thirteen krever WordPress versjon 3.6. Du kjører versjon %s. Vennligst oppgrader og prøv igjen."
#: content-none.php:12 #: image.php:52
msgid "Nothing Found" msgid "Next <span class=\"meta-nav\">&rarr;</span>"
msgstr "Ingenting funnet" msgstr "Neste <span class=\"meta-nav\">&rarr;</span>"
#: comments.php:45 #: image.php:51
msgid "Comment navigation" msgid "<span class=\"meta-nav\">&larr;</span> Previous"
msgstr "Kommentarnavigasjon" msgstr "<span class=\"meta-nav\">&larr;</span> Forrige"
#: comments.php:46 #: image.php:39
msgid "&larr; Older Comments" msgid "Full resolution"
msgstr "&larr; Eldre kommentarer" msgstr "Full oppløsning"
#: image.php:38
msgid "Link to full-size image"
msgstr "Lenke til bildet i full størrelse"
#: image.php:22
msgid "<span class=\"attachment-meta\">Published on <time class=\"entry-date\" datetime=\"%1$s\">%2$s</time> in <a href=\"%3$s\" title=\"Return to %4$s\" rel=\"gallery\">%5$s</a></span>"
msgstr "<span class=\"attachment-meta\">Publisert <time class=\"entry-date\" datetime=\"%1$s\">%2$s</time> i <a href=\"%3$s\" title=\"Tilbake til %4$s\" rel=\"gallery\">%5$s</a></span>"
#: header.php:44
msgid "Skip to content"
msgstr "Gå til innhold"
#: header.php:43
msgid "Menu"
msgstr "Meny"
#: functions.php:369
msgid "Permalink to %s"
msgstr "Permalenke til %s"
#: functions.php:363
msgctxt "1: post format name. 2: date"
msgid "%1$s on %2$s"
msgstr "%1$s, %2$s"
#: functions.php:343
msgid "View all posts by %s"
msgstr "Vis alle innlegg av %s"
#. Translators: used between list items, there is a space after the comma. #. Translators: used between list items, there is a space after the comma.
#: functions.php:328 functions.php:334 #: functions.php:328 functions.php:334
msgid ", " msgid ", "
msgstr ", " msgstr ", "
#: content-aside.php:20 content-audio.php:31 content-chat.php:30 #: functions.php:322
#: content-gallery.php:31 content-image.php:30 content-link.php:31 msgid "Sticky"
#: content-quote.php:20 content-status.php:20 content-video.php:30 msgstr "Fremhevet"
#: content.php:48 image.php:70 page.php:35
msgid "Pages:"
msgstr "Sider:"
#: author-bio.php:30 #: functions.php:304
msgid "View all posts by %s <span class=\"meta-nav\">&rarr;</span>" msgctxt "Next post link"
msgstr "Les alle innlegg av %s <span class=\"meta-nav\">&rarr;</span>" msgid "%title <span class=\"meta-nav\">&rarr;</span>"
msgstr "%title <span class=\"meta-nav\">&rarr;</span>"
#: 404.php:21 #: functions.php:303
msgid "This is somewhat embarrassing, isn&rsquo;t it?" msgctxt "Previous post link"
msgstr "Dette er litt flaut, ikke sant?" msgid "<span class=\"meta-nav\">&larr;</span> %title"
msgstr "<span class=\"meta-nav\">&larr;</span> %title"
#: 404.php:22 #: functions.php:300
msgid "It looks like nothing was found at this location. Maybe try a search?" msgid "Post navigation"
msgstr "Det ble ikke funnet noe her. Kanskje du kan prøve å søke?" msgstr "Innleggsnavigasjon"
#: author.php:31 #: functions.php:274
msgid "All posts by %s" msgid "Newer posts <span class=\"meta-nav\">&rarr;</span>"
msgstr "Alle innlegg av %s" msgstr "Nyere innlegg <span class=\"meta-nav\">&rarr;</span>"
#: comments.php:25 #: functions.php:270
msgctxt "comments title" msgid "<span class=\"meta-nav\">&larr;</span> Older posts"
msgid "One thought on &ldquo;%2$s&rdquo;" msgstr "<span class=\"meta-nav\">&larr;</span> Eldre innlegg"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "En kommentar om &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s kommentarer om &ldquo;%2$s&rdquo;"
#: content-gallery.php:43 content-image.php:39 content-quote.php:29 #: functions.php:266
#: content-video.php:39 content.php:56 msgid "Posts navigation"
msgid "Leave a comment" msgstr "Innleggsnavigasjon"
msgstr "Legg igjen en kommentar"
#: content-gallery.php:43 content-image.php:39 content-quote.php:29 #: functions.php:243
#: content-video.php:39 content.php:56 msgid "Appears on posts and pages in the sidebar."
msgid "One comment so far" msgstr "Vises på innleggssider og andre sider i sidekolonnen."
msgstr "En kommentar så langt"
#: content-gallery.php:43 content-image.php:39 content-quote.php:29 #: functions.php:241
#: content-video.php:39 content.php:56 msgid "Secondary Widget Area"
msgid "View all % comments" msgstr "Sekundærområde for widgeter"
msgstr "Se alle % kommentarer"
#: content-none.php:18 #: functions.php:233
msgid "Ready to publish your first post? <a href=\"%1$s\">Get started here</a>." msgid "Appears in the footer section of the site."
msgstr "Klar for å publisere ditt første innlegg? <a href=\"%1$s\">Kom i gang her</a>." msgstr "Vises i bunnområdet på netttedet."
#: content-none.php:22 #: functions.php:231
msgid "Sorry, but nothing matched your search terms. Please try again with different keywords." msgid "Main Widget Area"
msgstr "Beklager, ingenting passet til dine søkekriterier. Vennligst prøv igjen med andre søkeord." msgstr "Hovedområde for widgeter"
#: functions.php:97 #: functions.php:218
msgid "Navigation Menu" msgid "Page %s"
msgstr "Navigasjonsmeny" msgstr "Side %s"
#. Translators: If there are characters in your language that are not supported
#. by Bitter, translate this to 'off'. Do not translate into your own language.
#: functions.php:134
msgctxt "Bitter font: on or off"
msgid "on"
msgstr "på"
#. Translators: If there are characters in your language that are not supported #. Translators: If there are characters in your language that are not supported
#. by Source Sans Pro, translate this to 'off'. Do not translate into your own #. by Source Sans Pro, translate this to 'off'. Do not translate into your own
@@ -253,67 +168,150 @@ msgctxt "Source Sans Pro font: on or off"
msgid "on" msgid "on"
msgstr "på" msgstr "på"
#. Translators: If there are characters in your language that are not supported #: functions.php:97
#. by Bitter, translate this to 'off'. Do not translate into your own language. msgid "Navigation Menu"
#: functions.php:134 msgstr "Navigasjonsmeny"
msgctxt "Bitter font: on or off"
msgid "on"
msgstr "på"
#: taxonomy-post_format.php:23 #: footer.php:19
msgid "%s Archives" msgid "Proudly powered by %s"
msgstr "Arkiv for %s" msgstr "Stolt drevet av %s"
#. Theme Name of the plugin/theme #: footer.php:19
msgid "Twenty Thirteen" msgid "Semantic Personal Publishing Platform"
msgstr "Twenty Thirteen" msgstr "Semantisk, personlig publiseringsplattform"
#: functions.php:266 #. #-#-#-#-# twentythirteen.pot (Twenty Thirteen 1.4) #-#-#-#-#
msgid "Posts navigation" #. Author URI of the plugin/theme
msgstr "Innleggsnavigasjon" #: footer.php:19
msgid "http://wordpress.org/"
msgstr "http://wordpress.org/"
#: functions.php:303 #: content-none.php:27
msgctxt "Previous post link" msgid "It seems we can&rsquo;t find what you&rsquo;re looking for. Perhaps searching can help."
msgid "<span class=\"meta-nav\">&larr;</span> %title" msgstr "Vi klarer ikke å finne det du leter etter. Prøv å søke."
msgstr "<span class=\"meta-nav\">&larr;</span> %title"
#: functions.php:304 #: content-none.php:22
msgctxt "Next post link" msgid "Sorry, but nothing matched your search terms. Please try again with different keywords."
msgid "%title <span class=\"meta-nav\">&rarr;</span>" msgstr "Beklager, ingenting passet til dine søkekriterier. Vennligst prøv igjen med andre søkeord."
msgstr "%title <span class=\"meta-nav\">&rarr;</span>"
#: functions.php:322 #: content-none.php:18
msgid "Sticky" msgid "Ready to publish your first post? <a href=\"%1$s\">Get started here</a>."
msgstr "Fremhevet" msgstr "Klar for å publisere ditt første innlegg? <a href=\"%1$s\">Kom i gang her</a>."
#: functions.php:363 #: content-none.php:12
msgctxt "1: post format name. 2: date" msgid "Nothing Found"
msgid "%1$s on %2$s" msgstr "Ingenting funnet"
msgstr "%1$s, %2$s"
#: image.php:22 #: content-gallery.php:43 content-image.php:39 content-quote.php:29
msgid "<span class=\"attachment-meta\">Published on <time class=\"entry-date\" datetime=\"%1$s\">%2$s</time> in <a href=\"%3$s\" title=\"Return to %4$s\" rel=\"gallery\">%5$s</a></span>" #: content-video.php:39 content.php:56
msgstr "<span class=\"attachment-meta\">Publisert <time class=\"entry-date\" datetime=\"%1$s\">%2$s</time> i <a href=\"%3$s\" title=\"Tilbake til %4$s\" rel=\"gallery\">%5$s</a></span>" msgid "View all % comments"
msgstr "Se alle % kommentarer"
#: image.php:51 #: content-gallery.php:43 content-image.php:39 content-quote.php:29
msgid "<span class=\"meta-nav\">&larr;</span> Previous" #: content-video.php:39 content.php:56
msgstr "<span class=\"meta-nav\">&larr;</span> Forrige" msgid "One comment so far"
msgstr "En kommentar så langt"
#: image.php:52 #: content-gallery.php:43 content-image.php:39 content-quote.php:29
msgid "Next <span class=\"meta-nav\">&rarr;</span>" #: content-video.php:39 content.php:56
msgstr "Neste <span class=\"meta-nav\">&rarr;</span>" msgid "Leave a comment"
msgstr "Legg igjen en kommentar"
#: inc/custom-header.php:49 #: content-aside.php:27 content-aside.php:35 content-audio.php:38
msgctxt "header image description" #: content-chat.php:36 content-gallery.php:46 content-image.php:42
msgid "Circle" #: content-link.php:19 content-quote.php:32 content-status.php:26
msgstr "Sirkel" #: content-video.php:42 content.php:31 image.php:44 page.php:39
msgid "Edit"
msgstr "Rediger"
#: inc/custom-header.php:54 #: content-aside.php:20 content-audio.php:31 content-chat.php:30
msgctxt "header image description" #: content-gallery.php:31 content-image.php:30 content-link.php:31
msgid "Diamond" #: content-quote.php:20 content-status.php:20 content-video.php:30
msgstr "Diamant" #: content.php:48 image.php:70 page.php:35
msgid "Pages:"
msgstr "Sider:"
#: inc/custom-header.php:59 #. translators: %s: Name of current post
msgctxt "header image description" #: content-aside.php:16 content-audio.php:27 content-chat.php:26
msgid "Star" #: content-gallery.php:27 content-image.php:26 content-link.php:27
msgstr "Stjerne" #: content-quote.php:16 content-status.php:16 content-video.php:26
#: content.php:44 functions.php:478
msgid "Continue reading %s <span class=\"meta-nav\">&rarr;</span>"
msgstr "Fortsett å lese %s <span class=\"meta-nav\">&rarr;</span>"
#: comments.php:52
msgid "Comments are closed."
msgstr "Det er stengt for kommentarer."
#: comments.php:47
msgid "Newer Comments &rarr;"
msgstr "Nyere kommentarer &rarr;"
#: comments.php:46
msgid "&larr; Older Comments"
msgstr "&larr; Eldre kommentarer"
#: comments.php:45
msgid "Comment navigation"
msgstr "Kommentarnavigasjon"
#: comments.php:25
msgctxt "comments title"
msgid "One thought on &ldquo;%2$s&rdquo;"
msgid_plural "%1$s thoughts on &ldquo;%2$s&rdquo;"
msgstr[0] "En kommentar om &ldquo;%2$s&rdquo;"
msgstr[1] "%1$s kommentarer om &ldquo;%2$s&rdquo;"
#: category.php:19
msgid "Category Archives: %s"
msgstr "Kategoriarkiv: %s"
#: author.php:31
msgid "All posts by %s"
msgstr "Alle innlegg av %s"
#: author-bio.php:30
msgid "View all posts by %s <span class=\"meta-nav\">&rarr;</span>"
msgstr "Les alle innlegg av %s <span class=\"meta-nav\">&rarr;</span>"
#: author-bio.php:26
msgid "About %s"
msgstr "Om %s"
#: archive.php:35
msgid "Archives"
msgstr "Arkiv"
#: archive.php:33
msgctxt "yearly archives date format"
msgid "Y"
msgstr "Y"
#: archive.php:33
msgid "Yearly Archives: %s"
msgstr "Årlige arkiver: %s"
#: archive.php:31
msgctxt "monthly archives date format"
msgid "F Y"
msgstr "F Y"
#: archive.php:31
msgid "Monthly Archives: %s"
msgstr "Månedlige arkiver: %s"
#: archive.php:29
msgid "Daily Archives: %s"
msgstr "Daglige arkiver: %s"
#: 404.php:22
msgid "It looks like nothing was found at this location. Maybe try a search?"
msgstr "Det ble ikke funnet noe her. Kanskje du kan prøve å søke?"
#: 404.php:21
msgid "This is somewhat embarrassing, isn&rsquo;t it?"
msgstr "Dette er litt flaut, ikke sant?"
#: 404.php:16
msgid "Not Found"
msgstr "Ikke funnet"
+2 -2
View File
@@ -6,7 +6,7 @@
Plugin Name: Akismet Plugin Name: Akismet
Plugin URI: http://akismet.com/ Plugin URI: http://akismet.com/
Description: Used by millions, Akismet is quite possibly the best way in the world to <strong>protect your blog from comment and trackback spam</strong>. It keeps your site protected from spam even while you sleep. To get started: 1) Click the "Activate" link to the left of this description, 2) <a href="http://akismet.com/get/">Sign up for an Akismet API key</a>, and 3) Go to your Akismet configuration page, and save your API key. Description: Used by millions, Akismet is quite possibly the best way in the world to <strong>protect your blog from comment and trackback spam</strong>. It keeps your site protected from spam even while you sleep. To get started: 1) Click the "Activate" link to the left of this description, 2) <a href="http://akismet.com/get/">Sign up for an Akismet API key</a>, and 3) Go to your Akismet configuration page, and save your API key.
Version: 3.1.2 Version: 3.1.3
Author: Automattic Author: Automattic
Author URI: http://automattic.com/wordpress-plugins/ Author URI: http://automattic.com/wordpress-plugins/
License: GPLv2 or later License: GPLv2 or later
@@ -35,7 +35,7 @@ if ( !function_exists( 'add_action' ) ) {
exit; exit;
} }
define( 'AKISMET_VERSION', '3.1.2' ); define( 'AKISMET_VERSION', '3.1.3' );
define( 'AKISMET__MINIMUM_WP_VERSION', '3.2' ); define( 'AKISMET__MINIMUM_WP_VERSION', '3.2' );
define( 'AKISMET__PLUGIN_URL', plugin_dir_url( __FILE__ ) ); define( 'AKISMET__PLUGIN_URL', plugin_dir_url( __FILE__ ) );
define( 'AKISMET__PLUGIN_DIR', plugin_dir_path( __FILE__ ) ); define( 'AKISMET__PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
@@ -712,13 +712,16 @@ class Akismet_Admin {
} }
public static function get_akismet_user( $api_key ) { public static function get_akismet_user( $api_key ) {
$akismet_user = Akismet::http_post( Akismet::build_query( array( 'key' => $api_key, 'blog' => get_bloginfo( 'url' ) ) ), 'get-subscription' ); $akismet_user = false;
$subscription_verification = Akismet::http_post( Akismet::build_query( array( 'key' => $api_key, 'blog' => get_bloginfo( 'url' ) ) ), 'get-subscription' );
if ( ! empty( $subscription_verification[1] ) ) {
if ( 'invalid' !== $subscription_verification[1] ) {
$akismet_user = json_decode( $subscription_verification[1] );
}
}
if ( ! empty( $akismet_user[1] ) )
$akismet_user = json_decode( $akismet_user[1] );
else
$akismet_user = false;
return $akismet_user; return $akismet_user;
} }
@@ -809,7 +812,7 @@ class Akismet_Admin {
} }
} }
if ( $api_key = Akismet::get_api_key() ) { if ( $api_key = Akismet::get_api_key() && ( empty( self::$notices['status'] ) || 'existing-key-invalid' != self::$notices['status'] ) ) {
self::display_configuration_page(); self::display_configuration_page();
return; return;
} }
@@ -850,8 +853,16 @@ class Akismet_Admin {
public static function display_configuration_page() { public static function display_configuration_page() {
$api_key = Akismet::get_api_key(); $api_key = Akismet::get_api_key();
$akismet_user = self::get_akismet_user( $api_key ); $akismet_user = self::get_akismet_user( $api_key );
$stat_totals = self::get_stats( $api_key );
if ( ! $akismet_user ) {
// This could happen if the user's key became invalid after it was previously valid and successfully set up.
self::$notices['status'] = 'existing-key-invalid';
self::display_start_page();
return;
}
$stat_totals = self::get_stats( $api_key );
// If unset, create the new strictness option using the old discard option to determine its default // If unset, create the new strictness option using the old discard option to determine its default
if ( get_option( 'akismet_strictness' ) === false ) if ( get_option( 'akismet_strictness' ) === false )
add_option( 'akismet_strictness', (get_option('akismet_discard_month') === 'true' ? '1' : '0') ); add_option( 'akismet_strictness', (get_option('akismet_discard_month') === 'true' ? '1' : '0') );
+7 -2
View File
@@ -1,9 +1,9 @@
=== Akismet === === Akismet ===
Contributors: matt, ryan, andy, mdawaffe, tellyworth, josephscott, lessbloat, eoigal, cfinke, automattic, jgs Contributors: matt, ryan, andy, mdawaffe, tellyworth, josephscott, lessbloat, eoigal, cfinke, automattic, jgs
Tags: akismet, comments, spam Tags: akismet, comments, spam, antispam, anti-spam, anti spam, comment moderation, comment spam, contact form spam, spam comments
Requires at least: 3.2 Requires at least: 3.2
Tested up to: 4.2.2 Tested up to: 4.2.2
Stable tag: 3.1.2 Stable tag: 3.1.3
License: GPLv2 or later License: GPLv2 or later
Akismet checks your comments against the Akismet Web service to see if they look like spam or not. Akismet checks your comments against the Akismet Web service to see if they look like spam or not.
@@ -30,6 +30,11 @@ Upload the Akismet plugin to your blog, Activate it, then enter your [Akismet.co
== Changelog == == Changelog ==
= 3.1.3 =
*Release Date - 6 July 2015*
* Notify users when their account status changes after previously being successfully set up. This should help any users who are seeing blank Akismet settings screens.
= 3.1.2 = = 3.1.2 =
*Release Date - 7 June 2015* *Release Date - 7 June 2015*
@@ -89,6 +89,10 @@
<div class="wrap alert critical"> <div class="wrap alert critical">
<h3 class="key-status"><?php esc_html_e( 'The key you entered is invalid. Please double-check it.' , 'akismet'); ?></h3> <h3 class="key-status"><?php esc_html_e( 'The key you entered is invalid. Please double-check it.' , 'akismet'); ?></h3>
</div> </div>
<?php elseif ( $type == 'existing-key-invalid' ) :?>
<div class="wrap alert critical">
<h3 class="key-status"><?php esc_html_e( 'Your API key is no longer valid. Please enter a new key or contact support@akismet.com.' , 'akismet'); ?></h3>
</div>
<?php elseif ( $type == 'new-key-failed' ) :?> <?php elseif ( $type == 'new-key-failed' ) :?>
<div class="wrap alert critical"> <div class="wrap alert critical">
<h3 class="key-status"><?php esc_html_e( 'The key you entered could not be verified.' , 'akismet'); ?></h3> <h3 class="key-status"><?php esc_html_e( 'The key you entered could not be verified.' , 'akismet'); ?></h3>
+1 -1
View File
@@ -85,7 +85,7 @@
<p><?php esc_html_e('If you already know your API key.', 'akismet'); ?></p> <p><?php esc_html_e('If you already know your API key.', 'akismet'); ?></p>
</div> </div>
<form action="<?php echo esc_url( Akismet_Admin::get_page_url() ); ?>" method="post" id="akismet-enter-api-key" class="right"> <form action="<?php echo esc_url( Akismet_Admin::get_page_url() ); ?>" method="post" id="akismet-enter-api-key" class="right">
<input id="key" name="key" type="text" size="15" value="" class="regular-text code"> <input id="key" name="key" type="text" size="15" value="<?php echo esc_attr( Akismet::get_api_key() ); ?>" class="regular-text code">
<input type="hidden" name="action" value="enter-key"> <input type="hidden" name="action" value="enter-key">
<?php wp_nonce_field( Akismet_Admin::NONCE ); ?> <?php wp_nonce_field( Akismet_Admin::NONCE ); ?>
<input type="submit" name="submit" id="submit" class="button button-secondary" value="<?php esc_attr_e('Use this key', 'akismet');?>"> <input type="submit" name="submit" id="submit" class="button button-secondary" value="<?php esc_attr_e('Use this key', 'akismet');?>">
File renamed without changes.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

File renamed without changes.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

File renamed without changes.

Before

Width:  |  Height:  |  Size: 54 KiB

After

Width:  |  Height:  |  Size: 54 KiB

File renamed without changes.

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 55 KiB

File renamed without changes.

Before

Width:  |  Height:  |  Size: 109 KiB

After

Width:  |  Height:  |  Size: 109 KiB

File renamed without changes.

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 45 KiB

File renamed without changes.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

@@ -18,7 +18,7 @@ class Google_Calendar_Events {
* *
* @var string * @var string
*/ */
protected $version = '2.2.5'; protected $version = '2.2.6';
/** /**
* Unique identifier for the plugin. * Unique identifier for the plugin.
@@ -61,11 +61,10 @@ class Google_Calendar_Events {
} }
$this->setup_constants(); $this->setup_constants();
add_action( 'init', array( $this, 'enqueue_public_scripts' ) ); add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_public_scripts' ) );
add_action( 'init', array( $this, 'enqueue_public_styles' ) ); add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_public_styles' ) );
// Load scripts when posts load so we know if we need to include them or not // Load scripts when posts load so we know if we need to include them or not
add_filter( 'the_posts', array( $this, 'load_scripts' ) ); add_filter( 'the_posts', array( $this, 'load_scripts' ) );
@@ -191,9 +190,17 @@ class Google_Calendar_Events {
* @since 2.0.0 * @since 2.0.0
*/ */
public function enqueue_public_scripts() { public function enqueue_public_scripts() {
// ImagesLoaded JS library recommended by qTip2.
wp_register_script( $this->plugin_slug . '-images-loaded', plugins_url( 'js/imagesloaded.pkg.min.js', __FILE__ ), null, $this->version, true ); // DON'T include ImagesLoaded JS library recommended by qTip2 yet since we don't use "complex content that contains images" (yet).
wp_register_script( $this->plugin_slug . '-qtip', plugins_url( 'js/jquery.qtip.min.js', __FILE__ ), array( 'jquery', $this->plugin_slug . '-images-loaded' ), $this->version, true ); // http://qtip2.com/guides#gettingstarted.imagesloaded
// We WERE doing this between 2.1.6 & 2.2.5 (taken out as of 2.2.6).
// AND this was probably causing issues with themes including the Isotope jQuery library.
// http://qtip2.com/guides#integration.isotope
// Use unminified JS if SCRIPT_DEBUG exists and set to true.
$min = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
wp_register_script( $this->plugin_slug . '-qtip', plugins_url( 'js/jquery.qtip' . $min . '.js', __FILE__ ), array( 'jquery' ), $this->version, true );
wp_register_script( $this->plugin_slug . '-public', plugins_url( 'js/gce-script.js', __FILE__ ), array( 'jquery', $this->plugin_slug . '-qtip' ), $this->version, true ); wp_register_script( $this->plugin_slug . '-public', plugins_url( 'js/gce-script.js', __FILE__ ), array( 'jquery', $this->plugin_slug . '-qtip' ), $this->version, true );
} }
@@ -0,0 +1,135 @@
<?php
/**
* WP Requirements
*
* Utility to check current PHP version, WordPress version and PHP extensions.
*
* @package WP_Requirements
* @version 1.0.0
* @author Fulvio Notarstefano <fulvio.notarstefano@gmail.com>
* @link https://github.com/nekojira/wp-requirements
* @license GPL2+
*/
if ( ! class_exists( 'GCE_Requirements' ) ) {
class GCE_Requirements {
/**
* WordPress.
*
* @access private
* @var bool
*/
private $wp = true;
/**
* PHP.
*
* @access private
* @var bool
*/
private $php = true;
/**
* PHP Extensions.
*
* @access private
* @var bool
*/
private $extensions = true;
/**
* Results failures.
*
* Associative array with requirements results.
*
* @access private
* @var array
*/
private $failures = array();
/**
* Constructor.
*
* @param array $requirements Associative array with requirements.
*/
public function __construct( $requirements ) {
if ( $requirements && is_array( $requirements ) ) {
$errors = array();
$requirements = array_merge( array( 'wp' => '', 'php' => '', 'extensions' => '' ), (array) $requirements );
// Check for WordPress version.
if ( $requirements['wp'] && is_string( $requirements['wp'] ) ) {
global $wp_version;
// If $wp_version isn't found or valid probably you are not running WordPress (properly)?
$wp_ver = $wp_version && is_string( $wp_version ) ? $wp_version : $requirements['wp'];
$wp_ver = version_compare( $wp_ver, $requirements['wp'] );
if ( $wp_ver === -1 ) {
$errors['wp'] = $wp_version;
$this->wp = false;
}
}
// Check fo PHP version.
if ( $requirements['php'] && is_string( $requirements['php'] ) ) {
$php_ver = version_compare( PHP_VERSION, $requirements['php'] );
if ( $php_ver === -1 ) {
$errors['php'] = PHP_VERSION;
$this->php = false;
}
}
// Check fo PHP Extensions.
if ( $requirements['extensions'] && is_array( $requirements['extensions'] ) ) {
$extensions = array();
foreach ( $requirements['extensions'] as $extension ) {
if ( $extension && is_string( $extension ) ) {
$extensions[ $extension ] = extension_loaded( $extension );
}
}
if ( in_array( false, $extensions ) ) {
foreach ( $extensions as $extension_name => $found ) {
if ( $found === false ) {
$errors['extensions'][ $extension_name ] = $extension_name;
}
}
$this->extensions = false;
}
}
$this->failures = $errors;
} else {
trigger_error( 'WP Requirements: the requirements are invalid.', E_USER_ERROR );
}
}
/**
* Get requirements results.
*
* @return array
*/
public function failures() {
return $this->failures;
}
/**
* Check if versions check pass.
*
* @return bool
*/
public function pass() {
if ( in_array( false, array( $this->wp, $this->php, $this->extensions ) ) ) {
return false;
}
return true;
}
}
}
@@ -10,9 +10,9 @@
* *
* @wordpress-plugin * @wordpress-plugin
* Plugin Name: Google Calendar Events * Plugin Name: Google Calendar Events
* Plugin URI: https://github.com/pderksen/WP-Google-Calendar-Events * Plugin URI: https://wordpress.org/plugins/google-calendar-events/
* Description: Show off your Google calendar in grid (month) or list view, in a post, page or widget, and in a style that matches your site. * Description: Show off your Google calendar in grid (month) or list view, in a post, page or widget, and in a style that matches your site.
* Version: 2.2.5 * Version: 2.2.6
* Author: Phil Derksen * Author: Phil Derksen
* Author URI: http://philderksen.com * Author URI: http://philderksen.com
* License: GPL-2.0+ * License: GPL-2.0+
@@ -26,6 +26,33 @@ if ( ! defined( 'WPINC' ) ) {
die(); die();
} }
// Set the plugin PHP and WP requirements.
$gce_requires = array( 'wp' => '3.9.0', 'php' => '5.2.4' );
// Constants before PHP 5.6 can't store arrays.
define( 'GCE_REQUIREMENTS', serialize( $gce_requires ) );
// Checks if the requirements are met.
require_once dirname( __FILE__ ) . '/gce-requirements.php';
$gce_requirements = new GCE_Requirements( $gce_requires );
if ( $gce_requirements->pass() === false ) {
// Display an admin notice explaining why the plugin can't work.
function gce_plugin_requirements() {
$required = unserialize( GCE_REQUIREMENTS );
if ( isset( $required['wp'] ) && isset( $required['php'] ) ) {
global $wp_version;
echo '<div class="error"><p>' . sprintf( __( 'Google Events Calendar requires PHP %1$s and WordPress %2$s to function properly. PHP version found: %3$s. WordPress installed version: %4$s. Please upgrade to meet the minimum requirements.', 'gce' ), $required['php'], $required['wp'], PHP_VERSION, $wp_version ) . '</p></div>';
}
}
add_action( 'admin_notices', 'gce_plugin_requirements' );
$gce_fails = $gce_requirements->failures();
if ( isset( $gce_fails['php'] ) ) {
// Halt the rest of the plugin execution if PHP check fails.
return;
}
}
/* /*
* Include the main plugin file * Include the main plugin file
* *
@@ -11,7 +11,15 @@
class GCE_Display { class GCE_Display {
public $feeds, $merged_feeds; public $id = '';
public $title = '';
public $sort = '';
public $feeds = array();
public $merged_feeds = array();
public function __construct( $ids, $title_text = null, $sort_order = 'asc' ) { public function __construct( $ids, $title_text = null, $sort_order = 'asc' ) {
@@ -23,8 +31,6 @@ class GCE_Display {
$this->feeds[$id] = new GCE_Feed( $id ); $this->feeds[$id] = new GCE_Feed( $id );
} }
$this->merged_feeds = array();
//Merge the feeds together into one array of events //Merge the feeds together into one array of events
foreach ( $this->feeds as $feed_id => $feed ) { foreach ( $this->feeds as $feed_id => $feed ) {
$this->merged_feeds = array_merge( $this->merged_feeds, $feed->events ); $this->merged_feeds = array_merge( $this->merged_feeds, $feed->events );
@@ -57,9 +63,11 @@ class GCE_Display {
private function get_event_days() { private function get_event_days() {
$event_days = array(); $event_days = array();
foreach ( $this->merged_feeds as $event ) { if ( $this->merged_feeds ) {
foreach ( $event->get_days() as $day ) { foreach ( $this->merged_feeds as $event ) {
$event_days[$day][] = $event; foreach ( $event->get_days() as $day ) {
$event_days[ $day ][] = $event;
}
} }
} }
@@ -112,11 +120,12 @@ class GCE_Display {
$start = mktime( 0, 0, 0, date( 'm', $time_now ), date( 'd', $time_now ), date( 'Y', $time_now ) ); $start = mktime( 0, 0, 0, date( 'm', $time_now ), date( 'd', $time_now ), date( 'Y', $time_now ) );
$i = 1; $i = 1;
foreach ( $event_days as $key => $event_day ) { foreach ( $event_days as $key => $event_day ) {
//If event day is in the month and year specified (by $month and $year) //If event day is in the month and year specified (by $month and $year)
if ( $key >= $display_month_start && $key < $display_month_end ) { if ( $key >= $display_month_start && $key < $display_month_end ) {
//Create array of CSS classes. Add gce-has-events
// Add gce-has-events
$css_classes = array( 'gce-has-events' ); $css_classes = array( 'gce-has-events' );
//Create markup for display //Create markup for display
@@ -130,6 +139,7 @@ class GCE_Display {
$markup .= '<ul>'; $markup .= '<ul>';
foreach ( $event_day as $num_in_day => $event ) { foreach ( $event_day as $num_in_day => $event ) {
$feed_id = absint( $event->feed->id ); $feed_id = absint( $event->feed->id );
$markup .= '<li class="gce-tooltip-feed-' . esc_attr( $feed_id ) . '">' . $event->get_event_markup( 'tooltip', $num_in_day, $i ) . '</li>'; $markup .= '<li class="gce-tooltip-feed-' . esc_attr( $feed_id ) . '">' . $event->get_event_markup( 'tooltip', $num_in_day, $i ) . '</li>';
@@ -145,6 +155,10 @@ class GCE_Display {
if ( count( $css_classes ) > 2 ) if ( count( $css_classes ) > 2 )
$css_classes[] = 'gce-multiple'; $css_classes[] = 'gce-multiple';
$count_events = count( $event_day );
// Marks the count for the number of events happening this day.
$css_classes[] = 'gce-has-' . strval( $count_events ) . '-events';
//If event day is today, add gce-today CSS class, otherwise add past or future class //If event day is today, add gce-today CSS class, otherwise add past or future class
if ( $key == $start ) { if ( $key == $start ) {
$css_classes[] = 'gce-today gce-today-has-events'; $css_classes[] = 'gce-today gce-today-has-events';
@@ -214,8 +214,10 @@ function gce_save_meta( $post_id ) {
} }
update_post_meta( $post_id, $pmf, $id ); update_post_meta( $post_id, $pmf, $id );
} elseif( $pmf == 'gce_time_format' || $pmf == 'gce_date_format' ) {
update_post_meta( $post_id, $pmf, sanitize_text_field( $_POST[ $pmf ] ) );
} else { } else {
update_post_meta( $post_id, $pmf, stripslashes( $_POST[$pmf] ) ); update_post_meta( $post_id, $pmf, stripslashes( $_POST[ $pmf ] ) );
} }
} else { } else {
delete_post_meta( $post_id, $pmf ); delete_post_meta( $post_id, $pmf );
@@ -76,6 +76,15 @@ function gce_print_calendar( $feed_ids, $display = 'grid', $args = array(), $wid
} else { } else {
$show_tooltips = 'false'; $show_tooltips = 'false';
} }
if ( 'date-range-grid' === $display ) {
$start = get_post_meta( $id, 'gce_feed_range_start', true );
$start = gce_date_unix( $start );
$year = date( 'Y', $start );
$month = date( 'n', $start );
}
} }
if( 'grid' == $display ) { if( 'grid' == $display ) {
@@ -133,9 +142,9 @@ function gce_print_calendar( $feed_ids, $display = 'grid', $args = array(), $wid
); );
if( $widget ) { if( $widget ) {
$markup = '<div class="gce-widget-grid gce-widget-grid-' . esc_attr( $feed_ids ) . '" id="gce-' . $uid . '">' . $markup .= $d->get_grid( $year, $month, $widget, $paging ) . '</div>'; $markup = '<div class="gce-widget-grid gce-widget-grid-' . esc_attr( $feed_ids ) . '" id="gce-' . $uid . '">' . $d->get_grid( $year, $month, $widget, $paging ) . '</div>';
} else { } else {
$markup = '<div class="gce-page-grid gce-page-grid-' . esc_attr( $feed_ids ) . '" id="gce-' . $uid . '">' . $markup .= $d->get_grid( $year, $month, $widget, $paging ) . '</div>'; $markup = '<div class="gce-page-grid gce-page-grid-' . esc_attr( $feed_ids ) . '" id="gce-' . $uid . '">' . $d->get_grid( $year, $month, $widget, $paging ) . '</div>';
} }
} }
@@ -286,13 +295,22 @@ function gce_ga_campaign_url( $base_url, $source, $medium, $campaign ) {
* Function to convert date format mm/dd/YYYY to unix timestamp * Function to convert date format mm/dd/YYYY to unix timestamp
*/ */
function gce_date_unix( $date ) { function gce_date_unix( $date ) {
$date = explode( '/', $date );
if ( empty( $date ) ) {
$month = $date[0];
$day = $date[1]; $current_time = current_time( 'timestamp' );
$year = $date[2];
$timestamp = mktime( 0, 0, 0, date( 'm', $current_time ), date( 'd', $current_time ), date( 'Y', $current_time ) );
} else {
$date = explode( '/', $date );
$timestamp = mktime( 0, 0, 0, $month, $day, $year ); $month = $date[0];
$day = $date[1];
$year = $date[2];
$timestamp = mktime( 0, 0, 0, $month, $day, $year );
}
return $timestamp; return $timestamp;
} }
@@ -106,5 +106,4 @@ function gce_generate_calendar( $year, $month, $days = array(), $day_name_length
if ( 7 != $weekday ) $calendar .= '<td colspan="' . esc_attr( ( 7 - $weekday ) ) . '">&nbsp;</td>'; #remaining "empty" days if ( 7 != $weekday ) $calendar .= '<td colspan="' . esc_attr( ( 7 - $weekday ) ) . '">&nbsp;</td>'; #remaining "empty" days
return $calendar . "</tr>\n</table>\n"; return $calendar . "</tr>\n</table>\n";
} }
?>
@@ -1,20 +0,0 @@
/* qTip2 v2.2.1 | Plugins: tips viewport | Styles: core basic css3 | qtip2.com | Licensed MIT | Sat Sep 06 2014 21:55:18 */
/*!
* EventEmitter v4.2.6 - git.io/ee
* Oliver Caldwell
* MIT license
* @preserve
*/
(function(){"use strict";function a(){}function b(a,b){for(var c=a.length;c--;)if(a[c].listener===b)return c;return-1}function c(a){return function(){return this[a].apply(this,arguments)}}var d=a.prototype,e=this,f=e.EventEmitter;d.getListeners=function(a){var b,c,d=this._getEvents();if("object"==typeof a){b={};for(c in d)d.hasOwnProperty(c)&&a.test(c)&&(b[c]=d[c])}else b=d[a]||(d[a]=[]);return b},d.flattenListeners=function(a){var b,c=[];for(b=0;b<a.length;b+=1)c.push(a[b].listener);return c},d.getListenersAsObject=function(a){var b,c=this.getListeners(a);return c instanceof Array&&(b={},b[a]=c),b||c},d.addListener=function(a,c){var d,e=this.getListenersAsObject(a),f="object"==typeof c;for(d in e)e.hasOwnProperty(d)&&-1===b(e[d],c)&&e[d].push(f?c:{listener:c,once:!1});return this},d.on=c("addListener"),d.addOnceListener=function(a,b){return this.addListener(a,{listener:b,once:!0})},d.once=c("addOnceListener"),d.defineEvent=function(a){return this.getListeners(a),this},d.defineEvents=function(a){for(var b=0;b<a.length;b+=1)this.defineEvent(a[b]);return this},d.removeListener=function(a,c){var d,e,f=this.getListenersAsObject(a);for(e in f)f.hasOwnProperty(e)&&(d=b(f[e],c),-1!==d&&f[e].splice(d,1));return this},d.off=c("removeListener"),d.addListeners=function(a,b){return this.manipulateListeners(!1,a,b)},d.removeListeners=function(a,b){return this.manipulateListeners(!0,a,b)},d.manipulateListeners=function(a,b,c){var d,e,f=a?this.removeListener:this.addListener,g=a?this.removeListeners:this.addListeners;if("object"!=typeof b||b instanceof RegExp)for(d=c.length;d--;)f.call(this,b,c[d]);else for(d in b)b.hasOwnProperty(d)&&(e=b[d])&&("function"==typeof e?f.call(this,d,e):g.call(this,d,e));return this},d.removeEvent=function(a){var b,c=typeof a,d=this._getEvents();if("string"===c)delete d[a];else if("object"===c)for(b in d)d.hasOwnProperty(b)&&a.test(b)&&delete d[b];else delete this._events;return this},d.removeAllListeners=c("removeEvent"),d.emitEvent=function(a,b){var c,d,e,f,g=this.getListenersAsObject(a);for(e in g)if(g.hasOwnProperty(e))for(d=g[e].length;d--;)c=g[e][d],c.once===!0&&this.removeListener(a,c.listener),f=c.listener.apply(this,b||[]),f===this._getOnceReturnValue()&&this.removeListener(a,c.listener);return this},d.trigger=c("emitEvent"),d.emit=function(a){var b=Array.prototype.slice.call(arguments,1);return this.emitEvent(a,b)},d.setOnceReturnValue=function(a){return this._onceReturnValue=a,this},d._getOnceReturnValue=function(){return this.hasOwnProperty("_onceReturnValue")?this._onceReturnValue:!0},d._getEvents=function(){return this._events||(this._events={})},a.noConflict=function(){return e.EventEmitter=f,a},"function"==typeof define&&define.amd?define(function(){return a}):"object"==typeof module&&module.exports?module.exports=a:this.EventEmitter=a}).call(this),/*!
* eventie v1.0.3
* event binding helper
* eventie.bind( elem, 'click', myFn )
* eventie.unbind( elem, 'click', myFn )
*/
function(a){"use strict";var b=document.documentElement,c=function(){};b.addEventListener?c=function(a,b,c){a.addEventListener(b,c,!1)}:b.attachEvent&&(c=function(b,c,d){b[c+d]=d.handleEvent?function(){var b=a.event;b.target=b.target||b.srcElement,d.handleEvent.call(d,b)}:function(){var c=a.event;c.target=c.target||c.srcElement,d.call(b,c)},b.attachEvent("on"+c,b[c+d])});var d=function(){};b.removeEventListener?d=function(a,b,c){a.removeEventListener(b,c,!1)}:b.detachEvent&&(d=function(a,b,c){a.detachEvent("on"+b,a[b+c]);try{delete a[b+c]}catch(d){a[b+c]=void 0}});var e={bind:c,unbind:d};"function"==typeof define&&define.amd?define(e):a.eventie=e}(this),/*!
* imagesLoaded v3.0.2
* JavaScript is all like "You images are done yet or what?"
*/
function(a){"use strict";function b(a,b){for(var c in b)a[c]=b[c];return a}function c(a){return"[object Array]"===i.call(a)}function d(a){var b=[];if(c(a))b=a;else if("number"==typeof a.length)for(var d=0,e=a.length;e>d;d++)b.push(a[d]);else b.push(a);return b}function e(a,c){function e(a,c,g){if(!(this instanceof e))return new e(a,c);"string"==typeof a&&(a=document.querySelectorAll(a)),this.elements=d(a),this.options=b({},this.options),"function"==typeof c?g=c:b(this.options,c),g&&this.on("always",g),this.getImages(),f&&(this.jqDeferred=new f.Deferred);var h=this;setTimeout(function(){h.check()})}function i(a){this.img=a}e.prototype=new a,e.prototype.options={},e.prototype.getImages=function(){this.images=[];for(var a=0,b=this.elements.length;b>a;a++){var c=this.elements[a];"IMG"===c.nodeName&&this.addImage(c);for(var d=c.querySelectorAll("img"),e=0,f=d.length;f>e;e++){var g=d[e];this.addImage(g)}}},e.prototype.addImage=function(a){var b=new i(a);this.images.push(b)},e.prototype.check=function(){function a(a,e){return b.options.debug&&h&&g.log("confirm",a,e),b.progress(a),c++,c===d&&b.complete(),!0}var b=this,c=0,d=this.images.length;if(this.hasAnyBroken=!1,!d)return void this.complete();for(var e=0;d>e;e++){var f=this.images[e];f.on("confirm",a),f.check()}},e.prototype.progress=function(a){this.hasAnyBroken=this.hasAnyBroken||!a.isLoaded,this.emit("progress",this,a),this.jqDeferred&&this.jqDeferred.notify(this,a)},e.prototype.complete=function(){var a=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emit(a,this),this.emit("always",this),this.jqDeferred){var b=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[b](this)}},f&&(f.fn.imagesLoaded=function(a,b){var c=new e(this,a,b);return c.jqDeferred.promise(f(this))});var j={};return i.prototype=new a,i.prototype.check=function(){var a=j[this.img.src];if(a)return void this.useCached(a);if(j[this.img.src]=this,this.img.complete&&void 0!==this.img.naturalWidth)return void this.confirm(0!==this.img.naturalWidth,"naturalWidth");var b=this.proxyImage=new Image;c.bind(b,"load",this),c.bind(b,"error",this),b.src=this.img.src},i.prototype.useCached=function(a){if(a.isConfirmed)this.confirm(a.isLoaded,"cached was confirmed");else{var b=this;a.on("confirm",function(a){return b.confirm(a.isLoaded,"cache emitted confirmed"),!0})}},i.prototype.confirm=function(a,b){this.isConfirmed=!0,this.isLoaded=a,this.emit("confirm",this,b)},i.prototype.handleEvent=function(a){var b="on"+a.type;this[b]&&this[b](a)},i.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindProxyEvents()},i.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindProxyEvents()},i.prototype.unbindProxyEvents=function(){c.unbind(this.proxyImage,"load",this),c.unbind(this.proxyImage,"error",this)},e}var f=a.jQuery,g=a.console,h="undefined"!=typeof g,i=Object.prototype.toString;"function"==typeof define&&define.amd?define(["eventEmitter","eventie"],e):a.imagesLoaded=e(a.EventEmitter,a.eventie)}(window);
//# sourceMappingURL=imagesloaded.pkg.min.js.map
@@ -1 +0,0 @@
{"version":3,"file":"imagesloaded.pkg.min.js","sources":["../../stable/libs/imagesloaded/imagesloaded.pkg.js"],"names":["EventEmitter","indexOfListener","listeners","listener","i","length","alias","name","this","apply","arguments","proto","prototype","exports","originalGlobalValue","getListeners","evt","response","key","events","_getEvents","hasOwnProperty","test","flattenListeners","flatListeners","push","getListenersAsObject","Array","addListener","listenerIsWrapped","once","on","addOnceListener","defineEvent","defineEvents","evts","removeListener","index","splice","off","addListeners","manipulateListeners","removeListeners","remove","value","single","multiple","RegExp","call","removeEvent","type","_events","removeAllListeners","emitEvent","args","_getOnceReturnValue","trigger","emit","slice","setOnceReturnValue","_onceReturnValue","noConflict","define","amd","module","window","docElem","document","documentElement","bind","addEventListener","obj","fn","attachEvent","handleEvent","event","target","srcElement","unbind","removeEventListener","detachEvent","err","undefined","eventie","extend","a","b","prop","isArray","objToString","makeArray","ary","len","defineImagesLoaded","ImagesLoaded","elem","options","onAlways","querySelectorAll","elements","getImages","$","jqDeferred","Deferred","_this","setTimeout","check","LoadingImage","img","images","nodeName","addImage","childElems","j","jLen","loadingImage","onConfirm","image","message","debug","hasConsole","console","log","progress","checkedCount","complete","hasAnyBroken","isLoaded","notify","eventName","isComplete","jqMethod","imagesLoaded","callback","instance","promise","cache","cached","src","useCached","naturalWidth","confirm","proxyImage","Image","isConfirmed","method","onload","unbindProxyEvents","onerror","jQuery","Object","toString"],"mappings":";;;;;;;;CAOC,WACA,YAQA,SAASA,MAeT,QAASC,GAAgBC,EAAWC,GAEnC,IADA,GAAIC,GAAIF,EAAUG,OACXD,KACN,GAAIF,EAAUE,GAAGD,WAAaA,EAC7B,MAAOC,EAIT,OAAO,GAUR,QAASE,GAAMC,GACd,MAAO,YACN,MAAOC,MAAKD,GAAME,MAAMD,KAAME,YAhChC,GAAIC,GAAQX,EAAaY,UACrBC,EAAUL,KACVM,EAAsBD,EAAQb,YA2ClCW,GAAMI,aAAe,SAAsBC,GAC1C,GACIC,GACAC,EAFAC,EAASX,KAAKY,YAMlB,IAAmB,gBAARJ,GAAkB,CAC5BC,IACA,KAAKC,IAAOC,GACPA,EAAOE,eAAeH,IAAQF,EAAIM,KAAKJ,KAC1CD,EAASC,GAAOC,EAAOD,QAKzBD,GAAWE,EAAOH,KAASG,EAAOH,MAGnC,OAAOC,IASRN,EAAMY,iBAAmB,SAA0BrB,GAClD,GACIE,GADAoB,IAGJ,KAAKpB,EAAI,EAAGA,EAAIF,EAAUG,OAAQD,GAAK,EACtCoB,EAAcC,KAAKvB,EAAUE,GAAGD,SAGjC,OAAOqB,IASRb,EAAMe,qBAAuB,SAA8BV,GAC1D,GACIC,GADAf,EAAYM,KAAKO,aAAaC,EAQlC,OALId,aAAqByB,SACxBV,KACAA,EAASD,GAAOd,GAGVe,GAAYf,GAapBS,EAAMiB,YAAc,SAAqBZ,EAAKb,GAC7C,GAEIe,GAFAhB,EAAYM,KAAKkB,qBAAqBV,GACtCa,EAAwC,gBAAb1B,EAG/B,KAAKe,IAAOhB,GACPA,EAAUmB,eAAeH,IAAsD,KAA9CjB,EAAgBC,EAAUgB,GAAMf,IACpED,EAAUgB,GAAKO,KAAKI,EAAoB1B,GACvCA,SAAUA,EACV2B,MAAM,GAKT,OAAOtB,OAMRG,EAAMoB,GAAKzB,EAAM,eAUjBK,EAAMqB,gBAAkB,SAAyBhB,EAAKb,GACrD,MAAOK,MAAKoB,YAAYZ,GACvBb,SAAUA,EACV2B,MAAM,KAORnB,EAAMmB,KAAOxB,EAAM,mBASnBK,EAAMsB,YAAc,SAAqBjB,GAExC,MADAR,MAAKO,aAAaC,GACXR,MASRG,EAAMuB,aAAe,SAAsBC,GAC1C,IAAK,GAAI/B,GAAI,EAAGA,EAAI+B,EAAK9B,OAAQD,GAAK,EACrCI,KAAKyB,YAAYE,EAAK/B,GAEvB,OAAOI,OAWRG,EAAMyB,eAAiB,SAAwBpB,EAAKb,GACnD,GACIkC,GACAnB,EAFAhB,EAAYM,KAAKkB,qBAAqBV,EAI1C,KAAKE,IAAOhB,GACPA,EAAUmB,eAAeH,KAC5BmB,EAAQpC,EAAgBC,EAAUgB,GAAMf,GAE1B,KAAVkC,GACHnC,EAAUgB,GAAKoB,OAAOD,EAAO,GAKhC,OAAO7B,OAMRG,EAAM4B,IAAMjC,EAAM,kBAYlBK,EAAM6B,aAAe,SAAsBxB,EAAKd,GAE/C,MAAOM,MAAKiC,qBAAoB,EAAOzB,EAAKd,IAa7CS,EAAM+B,gBAAkB,SAAyB1B,EAAKd,GAErD,MAAOM,MAAKiC,qBAAoB,EAAMzB,EAAKd,IAe5CS,EAAM8B,oBAAsB,SAA6BE,EAAQ3B,EAAKd,GACrE,GAAIE,GACAwC,EACAC,EAASF,EAASnC,KAAK4B,eAAiB5B,KAAKoB,YAC7CkB,EAAWH,EAASnC,KAAKkC,gBAAkBlC,KAAKgC,YAGpD,IAAmB,gBAARxB,IAAsBA,YAAe+B,QAmB/C,IADA3C,EAAIF,EAAUG,OACPD,KACNyC,EAAOG,KAAKxC,KAAMQ,EAAKd,EAAUE,QAnBlC,KAAKA,IAAKY,GACLA,EAAIK,eAAejB,KAAOwC,EAAQ5B,EAAIZ,MAEpB,kBAAVwC,GACVC,EAAOG,KAAKxC,KAAMJ,EAAGwC,GAIrBE,EAASE,KAAKxC,KAAMJ,EAAGwC,GAe3B,OAAOpC,OAYRG,EAAMsC,YAAc,SAAqBjC,GACxC,GAEIE,GAFAgC,QAAclC,GACdG,EAASX,KAAKY,YAIlB,IAAa,WAAT8B,QAEI/B,GAAOH,OAEV,IAAa,WAATkC,EAER,IAAKhC,IAAOC,GACPA,EAAOE,eAAeH,IAAQF,EAAIM,KAAKJ,UACnCC,GAAOD,cAMTV,MAAK2C,OAGb,OAAO3C,OAQRG,EAAMyC,mBAAqB9C,EAAM,eAcjCK,EAAM0C,UAAY,SAAmBrC,EAAKsC,GACzC,GACInD,GACAC,EACAc,EACAD,EAJAf,EAAYM,KAAKkB,qBAAqBV,EAM1C,KAAKE,IAAOhB,GACX,GAAIA,EAAUmB,eAAeH,GAG5B,IAFAd,EAAIF,EAAUgB,GAAKb,OAEZD,KAGND,EAAWD,EAAUgB,GAAKd,GAEtBD,EAAS2B,QAAS,GACrBtB,KAAK4B,eAAepB,EAAKb,EAASA,UAGnCc,EAAWd,EAASA,SAASM,MAAMD,KAAM8C,OAErCrC,IAAaT,KAAK+C,uBACrB/C,KAAK4B,eAAepB,EAAKb,EAASA,SAMtC,OAAOK,OAMRG,EAAM6C,QAAUlD,EAAM,aAUtBK,EAAM8C,KAAO,SAAczC,GAC1B,GAAIsC,GAAO3B,MAAMf,UAAU8C,MAAMV,KAAKtC,UAAW,EACjD,OAAOF,MAAK6C,UAAUrC,EAAKsC,IAW5B3C,EAAMgD,mBAAqB,SAA4Bf,GAEtD,MADApC,MAAKoD,iBAAmBhB,EACjBpC,MAWRG,EAAM4C,oBAAsB,WAC3B,MAAI/C,MAAKa,eAAe,oBAChBb,KAAKoD,kBAGL,GAUTjD,EAAMS,WAAa,WAClB,MAAOZ,MAAK2C,UAAY3C,KAAK2C,aAQ9BnD,EAAa6D,WAAa,WAEzB,MADAhD,GAAQb,aAAec,EAChBd,GAIc,kBAAX8D,SAAyBA,OAAOC,IAC1CD,OAAO,WACN,MAAO9D,KAGkB,gBAAXgE,SAAuBA,OAAOnD,QAC7CmD,OAAOnD,QAAUb,EAGjBQ,KAAKR,aAAeA,IAEpBgD,KAAKxC;;;;;;AAaP,SLine truncated
@@ -94,211 +94,211 @@ BROWSER = {
.replace('undefined', '3_2').replace('_', '.').replace('_', '') .replace('undefined', '3_2').replace('_', '.').replace('_', '')
) || FALSE ) || FALSE
}; };
;function QTip(target, options, id, attr) { ;function QTip(target, options, id, attr) {
// Elements and ID // Elements and ID
this.id = id; this.id = id;
this.target = target; this.target = target;
this.tooltip = NULL; this.tooltip = NULL;
this.elements = { target: target }; this.elements = { target: target };
// Internal constructs // Internal constructs
this._id = NAMESPACE + '-' + id; this._id = NAMESPACE + '-' + id;
this.timers = { img: {} }; this.timers = { img: {} };
this.options = options; this.options = options;
this.plugins = {}; this.plugins = {};
// Cache object // Cache object
this.cache = { this.cache = {
event: {}, event: {},
target: $(), target: $(),
disabled: FALSE, disabled: FALSE,
attr: attr, attr: attr,
onTooltip: FALSE, onTooltip: FALSE,
lastClass: '' lastClass: ''
}; };
// Set the initial flags // Set the initial flags
this.rendered = this.destroyed = this.disabled = this.waiting = this.rendered = this.destroyed = this.disabled = this.waiting =
this.hiddenDuringWait = this.positioning = this.triggering = FALSE; this.hiddenDuringWait = this.positioning = this.triggering = FALSE;
} }
PROTOTYPE = QTip.prototype; PROTOTYPE = QTip.prototype;
PROTOTYPE._when = function(deferreds) { PROTOTYPE._when = function(deferreds) {
return $.when.apply($, deferreds); return $.when.apply($, deferreds);
}; };
PROTOTYPE.render = function(show) { PROTOTYPE.render = function(show) {
if(this.rendered || this.destroyed) { return this; } // If tooltip has already been rendered, exit if(this.rendered || this.destroyed) { return this; } // If tooltip has already been rendered, exit
var self = this, var self = this,
options = this.options, options = this.options,
cache = this.cache, cache = this.cache,
elements = this.elements, elements = this.elements,
text = options.content.text, text = options.content.text,
title = options.content.title, title = options.content.title,
button = options.content.button, button = options.content.button,
posOptions = options.position, posOptions = options.position,
namespace = '.'+this._id+' ', namespace = '.'+this._id+' ',
deferreds = [], deferreds = [],
tooltip; tooltip;
// Add ARIA attributes to target // Add ARIA attributes to target
$.attr(this.target[0], 'aria-describedby', this._id); $.attr(this.target[0], 'aria-describedby', this._id);
// Create public position object that tracks current position corners // Create public position object that tracks current position corners
cache.posClass = this._createPosClass( cache.posClass = this._createPosClass(
(this.position = { my: posOptions.my, at: posOptions.at }).my (this.position = { my: posOptions.my, at: posOptions.at }).my
); );
// Create tooltip element // Create tooltip element
this.tooltip = elements.tooltip = tooltip = $('<div/>', { this.tooltip = elements.tooltip = tooltip = $('<div/>', {
'id': this._id, 'id': this._id,
'class': [ NAMESPACE, CLASS_DEFAULT, options.style.classes, cache.posClass ].join(' '), 'class': [ NAMESPACE, CLASS_DEFAULT, options.style.classes, cache.posClass ].join(' '),
'width': options.style.width || '', 'width': options.style.width || '',
'height': options.style.height || '', 'height': options.style.height || '',
'tracking': posOptions.target === 'mouse' && posOptions.adjust.mouse, 'tracking': posOptions.target === 'mouse' && posOptions.adjust.mouse,
/* ARIA specific attributes */ /* ARIA specific attributes */
'role': 'alert', 'role': 'alert',
'aria-live': 'polite', 'aria-live': 'polite',
'aria-atomic': FALSE, 'aria-atomic': FALSE,
'aria-describedby': this._id + '-content', 'aria-describedby': this._id + '-content',
'aria-hidden': TRUE 'aria-hidden': TRUE
}) })
.toggleClass(CLASS_DISABLED, this.disabled) .toggleClass(CLASS_DISABLED, this.disabled)
.attr(ATTR_ID, this.id) .attr(ATTR_ID, this.id)
.data(NAMESPACE, this) .data(NAMESPACE, this)
.appendTo(posOptions.container) .appendTo(posOptions.container)
.append( .append(
// Create content element // Create content element
elements.content = $('<div />', { elements.content = $('<div />', {
'class': NAMESPACE + '-content', 'class': NAMESPACE + '-content',
'id': this._id + '-content', 'id': this._id + '-content',
'aria-atomic': TRUE 'aria-atomic': TRUE
}) })
); );
// Set rendered flag and prevent redundant reposition calls for now // Set rendered flag and prevent redundant reposition calls for now
this.rendered = -1; this.rendered = -1;
this.positioning = TRUE; this.positioning = TRUE;
// Create title... // Create title...
if(title) { if(title) {
this._createTitle(); this._createTitle();
// Update title only if its not a callback (called in toggle if so) // Update title only if its not a callback (called in toggle if so)
if(!$.isFunction(title)) { if(!$.isFunction(title)) {
deferreds.push( this._updateTitle(title, FALSE) ); deferreds.push( this._updateTitle(title, FALSE) );
} }
} }
// Create button // Create button
if(button) { this._createButton(); } if(button) { this._createButton(); }
// Set proper rendered flag and update content if not a callback function (called in toggle) // Set proper rendered flag and update content if not a callback function (called in toggle)
if(!$.isFunction(text)) { if(!$.isFunction(text)) {
deferreds.push( this._updateContent(text, FALSE) ); deferreds.push( this._updateContent(text, FALSE) );
} }
this.rendered = TRUE; this.rendered = TRUE;
// Setup widget classes // Setup widget classes
this._setWidget(); this._setWidget();
// Initialize 'render' plugins // Initialize 'render' plugins
$.each(PLUGINS, function(name) { $.each(PLUGINS, function(name) {
var instance; var instance;
if(this.initialize === 'render' && (instance = this(self))) { if(this.initialize === 'render' && (instance = this(self))) {
self.plugins[name] = instance; self.plugins[name] = instance;
} }
}); });
// Unassign initial events and assign proper events // Unassign initial events and assign proper events
this._unassignEvents(); this._unassignEvents();
this._assignEvents(); this._assignEvents();
// When deferreds have completed // When deferreds have completed
this._when(deferreds).then(function() { this._when(deferreds).then(function() {
// tooltiprender event // tooltiprender event
self._trigger('render'); self._trigger('render');
// Reset flags // Reset flags
self.positioning = FALSE; self.positioning = FALSE;
// Show tooltip if not hidden during wait period // Show tooltip if not hidden during wait period
if(!self.hiddenDuringWait && (options.show.ready || show)) { if(!self.hiddenDuringWait && (options.show.ready || show)) {
self.toggle(TRUE, cache.event, FALSE); self.toggle(TRUE, cache.event, FALSE);
} }
self.hiddenDuringWait = FALSE; self.hiddenDuringWait = FALSE;
}); });
// Expose API // Expose API
QTIP.api[this.id] = this; QTIP.api[this.id] = this;
return this; return this;
}; };
PROTOTYPE.destroy = function(immediate) { PROTOTYPE.destroy = function(immediate) {
// Set flag the signify destroy is taking place to plugins // Set flag the signify destroy is taking place to plugins
// and ensure it only gets destroyed once! // and ensure it only gets destroyed once!
if(this.destroyed) { return this.target; } if(this.destroyed) { return this.target; }
function process() { function process() {
if(this.destroyed) { return; } if(this.destroyed) { return; }
this.destroyed = TRUE; this.destroyed = TRUE;
var target = this.target, var target = this.target,
title = target.attr(oldtitle), title = target.attr(oldtitle),
timer; timer;
// Destroy tooltip if rendered // Destroy tooltip if rendered
if(this.rendered) { if(this.rendered) {
this.tooltip.stop(1,0).find('*').remove().end().remove(); this.tooltip.stop(1,0).find('*').remove().end().remove();
} }
// Destroy all plugins // Destroy all plugins
$.each(this.plugins, function(name) { $.each(this.plugins, function(name) {
this.destroy && this.destroy(); this.destroy && this.destroy();
}); });
// Clear timers // Clear timers
for(timer in this.timers) { for(timer in this.timers) {
clearTimeout(this.timers[timer]); clearTimeout(this.timers[timer]);
} }
// Remove api object and ARIA attributes // Remove api object and ARIA attributes
target.removeData(NAMESPACE) target.removeData(NAMESPACE)
.removeAttr(ATTR_ID) .removeAttr(ATTR_ID)
.removeAttr(ATTR_HAS) .removeAttr(ATTR_HAS)
.removeAttr('aria-describedby'); .removeAttr('aria-describedby');
// Reset old title attribute if removed // Reset old title attribute if removed
if(this.options.suppress && title) { if(this.options.suppress && title) {
target.attr('title', title).removeAttr(oldtitle); target.attr('title', title).removeAttr(oldtitle);
} }
// Remove qTip events associated with this API // Remove qTip events associated with this API
this._unassignEvents(); this._unassignEvents();
// Remove ID from used id objects, and delete object references // Remove ID from used id objects, and delete object references
// for better garbage collection and leak protection // for better garbage collection and leak protection
this.options = this.elements = this.cache = this.timers = this.options = this.elements = this.cache = this.timers =
this.plugins = this.mouse = NULL; this.plugins = this.mouse = NULL;
// Delete epoxsed API object // Delete epoxsed API object
delete QTIP.api[this.id]; delete QTIP.api[this.id];
} }
// If an immediate destory is needed // If an immediate destory is needed
if((immediate !== TRUE || this.triggering === 'hide') && this.rendered) { if((immediate !== TRUE || this.triggering === 'hide') && this.rendered) {
this.tooltip.one('tooltiphidden', $.proxy(process, this)); this.tooltip.one('tooltiphidden', $.proxy(process, this));
!this.triggering && this.hide(); !this.triggering && this.hide();
} }
// If we're not in the process of hiding... process // If we're not in the process of hiding... process
else { process.call(this); } else { process.call(this); }
return this.target; return this.target;
}; };
;function invalidOpt(a) { ;function invalidOpt(a) {
return a === NULL || $.type(a) !== 'object'; return a === NULL || $.type(a) !== 'object';
} }
@@ -1961,7 +1961,7 @@ QTIP.defaults = {
}, },
show: { show: {
target: FALSE, target: FALSE,
event: 'mouseenter', event: BROWSER.iOS ? 'click' : 'mouseenter', // was just : 'mouseenter'
effect: TRUE, effect: TRUE,
delay: 90, delay: 90,
solo: FALSE, solo: FALSE,
@@ -1970,7 +1970,7 @@ QTIP.defaults = {
}, },
hide: { hide: {
target: FALSE, target: FALSE,
event: 'mouseleave', event: BROWSER.iOS ? 'click' : 'mouseleave', // was just : 'mouseleave'
effect: TRUE, effect: TRUE,
delay: 0, delay: 0,
fixed: FALSE, fixed: FALSE,
@@ -0,0 +1,888 @@
# Copyright (C) 2015 WebPress - CodeLayer
# This file is distributed under the same license as the WordPress package.
msgid ""
msgstr ""
"Project-Id-Version: Google Calendar Events\n"
"Report-Msgid-Bugs-To: http://support.codelayer.org\n"
"POT-Creation-Date: 2015-03-24 01:49-0300\n"
"PO-Revision-Date: \n"
"Last-Translator: Vadim Rc <0xrcva@gmail.com>\n"
"Language-Team: rcva <0xrcva@gmail.com>\n"
"Language: ru_RU\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Poedit-SourceCharset: UTF-8\n"
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
"esc_html_e\n"
"X-Poedit-Basepath: ../\n"
"X-Textdomain-Support: yes\n"
"X-Generator: Poedit 1.7.6\n"
"X-Poedit-SearchPath-0: .\n"
#: class-google-calendar-events-admin.php:126
#: class-google-calendar-events-admin.php:127
#: class-google-calendar-events-admin.php:218
#: includes/register-settings.php:66
msgid "General Settings"
msgstr "Основные настройки"
#: class-google-calendar-events-admin.php:206 views/widgets.php:27
msgid "Google Calendar Events"
msgstr "Google Calendar Events"
#: class-google-calendar-events-admin.php:219
msgid "Feeds"
msgstr "Каналы"
#: class-google-calendar-events.php:90
msgid "Loading..."
msgstr "Загрузка..."
#: includes/admin/admin-functions.php:20
msgid "Cache has been cleared for this feed."
msgstr "Кэш этого потока очищен."
#: includes/admin/admin-functions.php:35 includes/admin/admin-functions.php:55
msgid "Starts:"
msgstr "Начало:"
#: includes/admin/admin-functions.php:36 includes/admin/admin-functions.php:57
msgid "Ends:"
msgstr "Конец:"
#: includes/admin/admin-functions.php:37 includes/admin/admin-functions.php:59
msgid "Location:"
msgstr "Место:"
#: includes/admin/admin-functions.php:38 includes/admin/admin-functions.php:60
msgid "Description:"
msgstr "Описание:"
#: includes/admin/admin-functions.php:39
msgid "More details..."
msgstr "Подробнее..."
#: includes/admin/admin-functions.php:62
msgid "More Details"
msgstr "Подробнее"
#: includes/admin/admin-functions.php:76 includes/gce-feed-cpt.php:291
msgid "Clear Cache"
msgstr "Очистить кеш"
#: includes/admin/admin-notice.php:26
msgid "GCal API Key Notice"
msgstr "GCal API Key Notice"
#: includes/admin/admin-notice.php:28
msgid ""
"GCal Events uses the Google Calendar API version 3. By default this plugin "
"uses a public shared key across all plugin users."
msgstr ""
"GCal Events использует Google Calendar API версии 3. По умолчанию этот "
"плагин использует общедоступный публичный ключ."
#: includes/admin/admin-notice.php:30
msgid ""
"This key is limited to 500,000 requests per day and 5 requests per second. "
"To avoid running into any potential limits you can use your own Google API "
"key."
msgstr ""
"Этот ключ лимитирован 500.000 запросами в день и 5 запросами в секунду. "
"Чтобы избежать потенциальный ограничений вы можете использовать свой "
"собственный ключ Google API."
#: includes/admin/admin-notice.php:33
msgid "Enter your GCal API key"
msgstr "Введите ваш ключ GCal API"
#: includes/admin/admin-notice.php:34
msgid "Configure GCal feeds"
msgstr "Настроить каналы GCal"
#: includes/admin/admin-notice.php:35
msgid "Hide this"
msgstr "Скрыть"
#: includes/class-gce-display.php:179 includes/class-gce-display.php:289
msgid "Back"
msgstr "Назад"
#: includes/class-gce-display.php:183 includes/class-gce-display.php:290
msgid "Next"
msgstr "Вперед"
#: includes/class-gce-display.php:392
msgid "No events to display."
msgstr "События отсутствуют"
#: includes/class-gce-event.php:522
#, php-format
msgid "%s year"
msgstr "%s год"
#: includes/class-gce-event.php:522
#, php-format
msgid "%s years"
msgstr "%s лет"
#: includes/class-gce-event.php:523
#, php-format
msgid "%s month"
msgstr "%s месяц"
#: includes/class-gce-event.php:523
#, php-format
msgid "%s months"
msgstr "%s месяцев"
#: includes/class-gce-event.php:524
#, php-format
msgid "%s week"
msgstr "%s неделя"
#: includes/class-gce-event.php:524
#, php-format
msgid "%s weeks"
msgstr "%s недель"
#: includes/class-gce-event.php:525
#, php-format
msgid "%s day"
msgstr "%s день"
#: includes/class-gce-event.php:525
#, php-format
msgid "%s days"
msgstr "%s дней"
#: includes/class-gce-event.php:526
#, php-format
msgid "%s hour"
msgstr "%s час"
#: includes/class-gce-event.php:526
#, php-format
msgid "%s hours"
msgstr "%s часов"
#: includes/class-gce-event.php:527
#, php-format
msgid "%s min"
msgstr "%s минута"
#: includes/class-gce-event.php:527
#, php-format
msgid "%s mins"
msgstr "%s минут"
#: includes/class-gce-event.php:555
msgctxt "human_time_diff"
msgid ", "
msgstr ", "
#: includes/class-gce-feed.php:93
msgid ""
"The Google Calendar ID has not been set. Please make sure to set it "
"correctly in the Feed settings."
msgstr ""
"Не указан идентификатор (ID) от Google Calendar. Пожалуйста, убедитесь, что "
"вы указали его в пункте \"Каналы\"."
#: includes/class-gce-feed.php:197
msgid ""
"Some data was retrieved, but could not be parsed successfully. Please ensure "
"your feed settings are correct."
msgstr ""
"Часть данных была загружен, но не была успешно распознана. Пожалуйста, "
"убедитесь что настройки верны."
#: includes/class-gce-feed.php:200
msgid "An error has occured."
msgstr "Произошла ошибка."
#: includes/class-gce-feed.php:205
msgid " Please ensure your calendar ID is correct."
msgstr "Пожалуйста, убедитесь что идентификатор (ID) календаря корректен"
#: includes/gce-feed-cpt.php:21
msgid "Google Calendar Feeds"
msgstr "Каналы Google Calendar"
#: includes/gce-feed-cpt.php:22 includes/gce-feed-cpt.php:24
#: includes/gce-feed-cpt.php:72
msgid "Feed"
msgstr "Канал"
#: includes/gce-feed-cpt.php:23
msgid "GCal Events"
msgstr "События GCal"
#: includes/gce-feed-cpt.php:25
msgid "Add New"
msgstr "Добавить новый"
#: includes/gce-feed-cpt.php:26
msgid "Add New Feed"
msgstr "Добавить новый канал"
#: includes/gce-feed-cpt.php:27
msgid "New Feed"
msgstr "Новый канал"
#: includes/gce-feed-cpt.php:28
msgid "Edit Feed"
msgstr "Изменить канал"
#: includes/gce-feed-cpt.php:29
msgid "View Feed"
msgstr "Просмотреть канал"
#: includes/gce-feed-cpt.php:30
msgid "All GCal Feeds"
msgstr "Все каналы GCal"
#: includes/gce-feed-cpt.php:31
msgid "Search GCal Feeds"
msgstr "Поиск GCal каналов"
#: includes/gce-feed-cpt.php:32
msgid "No feeds found."
msgstr "Каналы не найдены."
#: includes/gce-feed-cpt.php:33
msgid "No feeds found in Trash."
msgstr "Каналы в Корзине не найдены."
#: includes/gce-feed-cpt.php:70
msgid "feed"
msgstr "канал"
#: includes/gce-feed-cpt.php:75 includes/gce-feed-cpt.php:76
#, php-format
msgid "%4$s updated. %1$sView %2$s%3$s"
msgstr "%4$s обновлено. %1$sПросмотреть %2$s%3$s"
#: includes/gce-feed-cpt.php:77
#, php-format
msgid "%4$s published. %1$sView %2$s%3$s"
msgstr "%4$s опубликовано. %1$sПросмотреть %2$s%3$s"
#: includes/gce-feed-cpt.php:78
#, php-format
msgid "%4$s saved. %1$sView %2$s%3$s"
msgstr "%4$s сохранено. %1$sПросмотреть %2$s%3$s"
#: includes/gce-feed-cpt.php:79
#, php-format
msgid "%4$s submitted. %1$sView %2$s%3$s"
msgstr "%4$s отправлено. %1$sПросмотреть %2$s%3$s"
#: includes/gce-feed-cpt.php:80
#, php-format
msgid "%4$s draft updated. %1$sView %2$s%3$s"
msgstr "%4$s черновиков обновлено. %1$sView %2$s%3$s"
#: includes/gce-feed-cpt.php:94
msgid "Feed Settings"
msgstr "Настройки канала"
#: includes/gce-feed-cpt.php:97
msgid "Helpful Links"
msgstr "Полезные ссылки"
#: includes/gce-feed-cpt.php:99
msgid "Display Options"
msgstr "Настройки отображения"
#: includes/gce-feed-cpt.php:241
msgid "Feed ID"
msgstr "Идентификатор (ID) канала"
#: includes/gce-feed-cpt.php:242 views/admin/gce-feed-meta-display.php:87
msgid "Feed Shortcode"
msgstr "Шорткод канала"
#: includes/gce-feed-cpt.php:243
msgid "Display Type"
msgstr "Тип отображения"
#: includes/gce-feed-cpt.php:270
msgid "Grid"
msgstr "Сетка"
#: includes/gce-feed-cpt.php:272 views/admin/gce-feed-meta-display.php:137
#: views/widgets.php:295
msgid "List"
msgstr "Список"
#: includes/gce-feed-cpt.php:274 views/admin/gce-feed-meta-display.php:138
#: views/widgets.php:296
msgid "Grouped List"
msgstr "Группированный список"
#: includes/gce-feed-cpt.php:276
msgid "Custom Date Range"
msgstr "Установленный промежуток времени"
#: includes/register-settings.php:29
msgid "Google API Key"
msgstr "Ключ Google API"
#: includes/register-settings.php:30
msgid ""
"If left blank all displayed Google calendars will use a public Google API "
"key shared across all plugin users."
msgstr ""
"Если оставить пустым, все выводимые календари Google будут использовать "
"публичный ключ Google API, общий для всех пользователей плагина."
#: includes/register-settings.php:31
msgid ""
"Currently the shared key is limited to 500,000 requests per day and 5 "
"requests per second."
msgstr ""
"Сейчас общий ключ ограничен 500,000 запросов в сутки и 5 запросами в секунду."
#: includes/register-settings.php:32
#, php-format
msgid ""
"To avoid these limits <a href=\"%s\" target=\"_blank\">click here for "
"instructions on how to generate and use your own Google API key.</a>"
msgstr ""
"Чтобы избежать этих ограничений <a href=\"%s\" target=\"_blank\">кликните "
"здесь чтобы узнать как получить свой собственный ключ Google API.</a>"
#: includes/register-settings.php:39
msgid "Always Enqueue Scripts & Styles"
msgstr "Всегда подключать стили и скрипты"
#: includes/register-settings.php:45
msgid "Disable Plugin CSS"
msgstr "Отключить CSS плагина"
#: includes/register-settings.php:46
msgid ""
"If this option is checked, this plugin's CSS file will not be referenced."
msgstr "Если эта опция активна, CSS-файлы плагина будут проигнорированы."
#: includes/register-settings.php:51
msgid "Save Settings"
msgstr "Сохранить настройки"
#: includes/register-settings.php:52
msgid ""
"Save your settings when uninstalling this plugin. Useful when upgrading or "
"re-installing."
msgstr ""
"Сохранить настройки при удалении плагина. Полезно при обновлении и при "
"переустановке."
#: includes/register-settings.php:181
#, fuzzy, php-format
msgid ""
"The callback function used for the <strong>%s</strong> setting is missing."
msgstr ""
"The callback function used for the <strong>%s</strong> setting is missing."
#: includes/shortcodes.php:95
msgid ""
"There was a problem with one or more of your feed IDs. Please check your "
"shortcode settings and make sure they are correct."
msgstr ""
"С одним из идентификаторов вашего канала что-то пошло не так. Пожалуйста, "
"перепроверьте ваш шорткод."
#: views/admin/display-options-meta.php:39
msgid ""
"Check this box to use the simple display options below instead of the Event "
"Builder code on the left."
msgstr ""
"Установите галочку чтобы просто вывести настройки внизу, вместо "
"использования \"Мастера событий\" слева."
#: views/admin/display-options-meta.php:44
msgid "Start date / time display"
msgstr "Отображение времени / даты начала"
#: views/admin/display-options-meta.php:45
msgid "Select how to display the start date / time."
msgstr "Выберите как отображать время / дату начала"
#: views/admin/display-options-meta.php:47
#: views/admin/display-options-meta.php:61
msgid "None"
msgstr "Нет"
#: views/admin/display-options-meta.php:48
msgid "Start time"
msgstr "Время начала"
#: views/admin/display-options-meta.php:49
msgid "Start date"
msgstr "Дата начала"
#: views/admin/display-options-meta.php:50
msgid "Start time and date"
msgstr "Время и дата начала"
#: views/admin/display-options-meta.php:51
msgid "Start date and time"
msgstr "Дата и время начала"
#: views/admin/display-options-meta.php:53
msgid "Text to display before the start time."
msgstr "Текст, выводимый перед временем начала."
#: views/admin/display-options-meta.php:58
msgid "End time/date display"
msgstr "Отображение времени / даты завершения"
#: views/admin/display-options-meta.php:59
msgid "Select how to display the end date / time."
msgstr "Выберите как отображать время / дату завершения"
#: views/admin/display-options-meta.php:62
msgid "End time"
msgstr "Время завершения"
#: views/admin/display-options-meta.php:63
msgid "End date"
msgstr "Дата завешения"
#: views/admin/display-options-meta.php:64
msgid "End time and date"
msgstr "Время и дата завершения"
#: views/admin/display-options-meta.php:65
msgid "End date and time"
msgstr "Дата и время завершения"
#: views/admin/display-options-meta.php:67
msgid "Text to display before the end time."
msgstr "Текст, выводимый перед временем завершения"
#: views/admin/display-options-meta.php:72
msgid "Separator"
msgstr "Разделитель"
#: views/admin/display-options-meta.php:74
msgid ""
"If you have chosen to display both the time and date above, enter the text / "
"characters to display between the time and date here (including any spaces)."
msgstr ""
"Если вы выше выбрали отображение как времени так и даты, введите текст / "
"набор символов (в том числе и пробелы), который будет отделять одно от "
"другого ."
#: views/admin/display-options-meta.php:80
msgid "Location"
msgstr "Место"
#: views/admin/display-options-meta.php:82
msgid "Show the location of events?"
msgstr "Показывать местоположение событий?"
#: views/admin/display-options-meta.php:83
msgid "Text to display before the location."
msgstr "Текст, выводимый перед местом."
#: views/admin/display-options-meta.php:88
msgid "Description"
msgstr "Описание"
#: views/admin/display-options-meta.php:91
msgid ""
"Show the description of events? (URLs in the description will be made into "
"links)."
msgstr ""
"Оказывать описание событий? (URL'ы в описаниях будут отображены как ссылки)."
#: views/admin/display-options-meta.php:93
msgid "Text to display before the description."
msgstr "Текст, выводимый перед описанием."
#: views/admin/display-options-meta.php:95
msgid ""
"Maximum number of words to show from description. Leave blank for no limit."
msgstr ""
"Максимально количество выводимых слов описания. Оставьте поле пустым, если "
"не хотите вводить это ограничение."
#: views/admin/display-options-meta.php:100
msgid "Event Link"
msgstr "Ссылка на событие"
#: views/admin/display-options-meta.php:103
msgid "Show a link to the Google Calendar page for an event?"
msgstr "Показывать ссылку на событие, ведущую на Google Calendar?"
#: views/admin/display-options-meta.php:107
msgid "Links open in a new window / tab?"
msgstr "Открывать ссылку в новом окне / вкладке?"
#: views/admin/display-options-meta.php:109
msgid "The link text to be displayed."
msgstr "Ссылка, которая будут показана."
#: views/admin/gce-feed-meta-display.php:77
msgid "Want to be in the know?"
msgstr "Хотите быть в курсе?"
#: views/admin/gce-feed-meta-display.php:80
msgid "Get notified when new features are released"
msgstr "Получать уведомление о новых функциях"
#: views/admin/gce-feed-meta-display.php:91
msgid ""
"Copy and paste this shortcode to display this Google Calendar feed on any "
"post or page."
msgstr ""
"Скопируйте этот шорткод чтобы добавлять этот Google Calendar на любую "
"страницу или в запись."
#: views/admin/gce-feed-meta-display.php:92
msgid ""
"To avoid display issues, make sure to paste the shortcode in the Text tab of "
"the post editor."
msgstr ""
"Чтобы избежать проблем с отображением, убедитесь что вы вставили шорткод в "
"текстовое представление редактора"
#: views/admin/gce-feed-meta-display.php:97
msgid "Google Calendar ID"
msgstr "Идентификатор (ID) Google Calendar"
#: views/admin/gce-feed-meta-display.php:101
msgid "The Google Calendar ID."
msgstr "Идентификатор (ID) Google Calendar"
#: views/admin/gce-feed-meta-display.php:101
msgid "Example"
msgstr "Пример"
#: views/admin/gce-feed-meta-display.php:103
msgid "How to find your Google Calendar ID"
msgstr "Как найти идентификатор вашего Google Calendar"
#: views/admin/gce-feed-meta-display.php:109
msgid "Search Query"
msgstr "Строка поиска"
#: views/admin/gce-feed-meta-display.php:112
msgid "Find and show events based on a search query."
msgstr "Найти и показать события, опираясь на поисковую строку."
#: views/admin/gce-feed-meta-display.php:117
msgid "Expand Recurring Events?"
msgstr "Отображать цикличные события?"
#: views/admin/gce-feed-meta-display.php:119
msgid "Yes"
msgstr "Да"
#: views/admin/gce-feed-meta-display.php:120
msgid ""
"Display recurring events each time they occur. If disabled, events will be "
"displayed only the first time they occur."
msgstr ""
"Отображать каждое повторение цикличного события. Если выключено, будет "
"показано только первое повторение."
#: views/admin/gce-feed-meta-display.php:125
msgid "Multiple Day Events"
msgstr "Многодневные события"
#: views/admin/gce-feed-meta-display.php:127
msgid "Show on each day"
msgstr "Показывать все дни"
#: views/admin/gce-feed-meta-display.php:128
msgid ""
"Display multiple day events on each day that they span. If disabled, "
"multiple day events will be displayed only on the first day they occur."
msgstr ""
"Показывать многодневные события в каждом дне, в рамках которых они "
"происходят. Если отключено, многодневные события будут показаны только в "
"день своего начала."
#: views/admin/gce-feed-meta-display.php:133
msgid "Display Mode"
msgstr "Режим отображения"
#: views/admin/gce-feed-meta-display.php:136 views/widgets.php:294
msgid "Grid (Month view)"
msgstr "Сетка (по месяцам)"
#: views/admin/gce-feed-meta-display.php:139 views/widgets.php:297
msgid "Custom Date Range (List)"
msgstr "В рамках определенного промежутка (список)"
#: views/admin/gce-feed-meta-display.php:140 views/widgets.php:298
msgid "Custom Date Range (Grid)"
msgstr "В рамках определенного промежутка (сетка)"
#: views/admin/gce-feed-meta-display.php:142
msgid "Select how to display this feed."
msgstr "Выберите, в каком режиме показывать этот канал."
#: views/admin/gce-feed-meta-display.php:147
msgid "Events per Page"
msgstr "Событий в день"
#: views/admin/gce-feed-meta-display.php:150 views/widgets.php:313
msgid "Number of Days"
msgstr "Количество дней"
#: views/admin/gce-feed-meta-display.php:151 views/widgets.php:314
msgid "Number of Events"
msgstr "Количество событий"
#: views/admin/gce-feed-meta-display.php:152 views/widgets.php:315
msgid "One Week"
msgstr "Одна неделя"
#: views/admin/gce-feed-meta-display.php:153 views/widgets.php:316
msgid "One Month"
msgstr "Один месяц"
#: views/admin/gce-feed-meta-display.php:158
msgid "How many events to display per page (List View only)."
msgstr "Как много событий отображать на каждой странице (только для списка)."
#: views/admin/gce-feed-meta-display.php:163
msgid "Display Start Date Offset"
msgstr "Показывать смещение даты начала"
#: views/admin/gce-feed-meta-display.php:166
#: views/admin/gce-feed-meta-display.php:178 views/widgets.php:330
msgid "Number of Days Back"
msgstr "Количество дней до"
#: views/admin/gce-feed-meta-display.php:167
#: views/admin/gce-feed-meta-display.php:193 views/widgets.php:331
msgid "Number of Days Forward"
msgstr "Количество дней после"
#: views/admin/gce-feed-meta-display.php:170 views/widgets.php:335
msgid ""
"Change to initially display events on a date other than today (List View "
"only)."
msgstr ""
"Измените чтобы изнчально показывать события на дни, отличные от текущего "
"(только для списка)."
#: views/admin/gce-feed-meta-display.php:175
msgid "Earliest Feed Event Date"
msgstr "Дата самого раннего события"
#: views/admin/gce-feed-meta-display.php:179
#, fuzzy
msgid "Number of Months Back"
msgstr "Количество прошедших месяцев"
#: views/admin/gce-feed-meta-display.php:180
#, fuzzy
msgid "Number of Years Back"
msgstr "Количество прошедших лет"
#: views/admin/gce-feed-meta-display.php:185
#, fuzzy
msgid "Set how far back to retrieve events regardless of initial display."
msgstr "Укажите, насколько давние события загружать."
#: views/admin/gce-feed-meta-display.php:190
msgid "Latest Feed Event Date"
msgstr "Дата самого позднего события"
#: views/admin/gce-feed-meta-display.php:194
#, fuzzy
msgid "Number of Months Forward"
msgstr "Количество грядущих месяцев"
#: views/admin/gce-feed-meta-display.php:195
#, fuzzy
msgid "Number of Years Forward"
msgstr "Количество грядущих лет"
#: views/admin/gce-feed-meta-display.php:200
#, fuzzy
msgid ""
"Set how far in the future to retrieve events regardless of initial display."
msgstr "Укажите, насколько будущие события загружать."
#: views/admin/gce-feed-meta-display.php:205
msgid "Use Custom Date Range"
msgstr "Использовать определенный промежуток"
#: views/admin/gce-feed-meta-display.php:209
msgctxt "separator between custom date range fields"
msgid "to"
msgstr "по"
#: views/admin/gce-feed-meta-display.php:211
msgid "Set a specific range of events to retrieve."
msgstr "Укажите промежуток для отбора событий."
#: views/admin/gce-feed-meta-display.php:217 views/widgets.php:345
msgid "Show Paging Links"
msgstr "Показать ссылки перехода со страницы на страницу"
#: views/admin/gce-feed-meta-display.php:220
msgid "Display Next and Back navigation links."
msgstr "Показывать навигационные ссылки \"Назад\" и \"Вперед\"."
#: views/admin/gce-feed-meta-display.php:225 views/widgets.php:348
msgid "Show Tooltips"
msgstr "Показывать подсказки"
#: views/admin/gce-feed-meta-display.php:228
msgid "Display tooltips when hovering over events (Grid View only)."
msgstr "Показывать всплывающие подсказки над событиями (только для сетки)."
#: views/admin/gce-feed-meta-display.php:233
msgid "Date Format"
msgstr "Формат даты"
#: views/admin/gce-feed-meta-display.php:237
#: views/admin/gce-feed-meta-display.php:248
#, php-format
msgid "Use %sPHP date formatting%s."
msgstr "Используете правила %sформатирования даты в PHP%s."
#: views/admin/gce-feed-meta-display.php:238
#: views/admin/gce-feed-meta-display.php:249
msgid "Leave blank to use the default."
msgstr "Оставьте незаполненным чтобы использовать значение по умолчанию."
#: views/admin/gce-feed-meta-display.php:244
msgid "Time Format"
msgstr "Формат времени"
#: views/admin/gce-feed-meta-display.php:255
msgid "Cache Duration"
msgstr "Время жизни кеша"
#: views/admin/gce-feed-meta-display.php:258
msgid ""
"The length of time, in seconds, to cache the feed (43200 = 12 hours). If "
"this feed changes regularly, you may want to reduce the cache duration."
msgstr ""
"Время жизни кеша (в секундах) для канала (43200 = 12 часов). Если этот канал "
"изменяется регулярно, возможно вы захотите уменьшить время жизни кеша."
#: views/admin/gce-feed-sidebar-help.php:6
msgid "Documentation & getting started"
msgstr "Документация и краткая инструкция"
#: views/admin/gce-feed-sidebar-help.php:11
msgid "Community support forums"
msgstr "Форумы поддержки сообщества"
#: views/admin/gce-feed-sidebar-help.php:16
msgid "Rate this plugin"
msgstr "Оцените этот плагин"
#: views/admin/gce-feed-sidebar-help.php:21
msgid "View our roadmap & vote"
msgstr "Посмотрите наши планы развития и проголосуйте"
#: views/admin/gce-feed-sidebar-help.php:26
msgid "Get notified of new features"
msgstr "Получать уведомления о новых функциях"
#: views/widgets.php:28
msgid ""
"Display a list or calendar grid of events from one or more Google Calendar "
"feeds you have added"
msgstr ""
"Показывает список или календарную сетку событий из одного или нескольких "
"ваших календарей Google"
#: views/widgets.php:167
msgid ""
"No valid Feed IDs have been entered for this widget. Please check that you "
"have entered the IDs correctly in the widget settings (Appearance > "
"Widgets), and that the Feeds have not been deleted."
msgstr ""
"Для этого виджета не добавлено ни одного валидного идентификатора (ID) "
"канала. Пожалуйста, убедитесь, что вы правильно указали идентификатор (ID) в "
"настройках виджета (Вид > Виджеты), и что канал не был удален."
#: views/widgets.php:207
msgid ""
"There was a problem with one or more of your feed IDs. Please check your "
"widget settings and make sure they are correct."
msgstr ""
"С одним из идентификаторов вашего канала что-то пошло не так. Пожалуйста, "
"проверьте настройки виджета и убедитесь, что они верны."
#: views/widgets.php:213
msgid "You have not added any feeds yet."
msgstr "Вы еще не добавили ни одного канала."
#: views/widgets.php:256
msgid "There are no feeds created yet."
msgstr "Не создано ни одного канала."
#: views/widgets.php:257
msgid "Add your first feed!"
msgstr "Добавьте ваш первый канал!"
#: views/widgets.php:267
msgid "Events on"
msgstr "События за"
#: views/widgets.php:281
msgid "Title:"
msgstr "Название:"
#: views/widgets.php:286
msgid "Feeds to Display (comma separated list - i.e. 101,102,103):"
msgstr ""
"Отображаемые каналы (список, разделенный запятой - например, "
"\"101,102,103\"):"
#: views/widgets.php:292
msgid "Display Events as:"
msgstr "Показывать события как:"
#: views/widgets.php:303
msgid "Sort Order (List View only):"
msgstr "Порядок сортировки (только для списка):"
#: views/widgets.php:305
msgid "Ascending"
msgstr "Возрастающий"
#: views/widgets.php:306
msgid "Descending"
msgstr "Убывающий"
#: views/widgets.php:311
msgid "Events per Page (List View only):"
msgstr "Событий на страницу (только для списка):"
#: views/widgets.php:324
msgid ""
"This setting will pull from the custom date range set in the main feed "
"settings and cannot be changed here."
msgstr ""
"Этот параметр будет взят из установленного временного промежутка в основных "
"настройках канала и не может быть здесь изменен."
#: views/widgets.php:328
msgid "Display Start Date Offset (List View only):"
msgstr "Показывать смещение даты начала (только для списка):"
#: views/widgets.php:339
msgid ""
"Display Title on Tooltip/List Item (e.g. 'Events on 7th March'). Grouped "
"lists always have a title displayed."
msgstr ""
"Показывать название на всплывающей подсказке / элементе списка (например, "
"'События на 7ое марта'). В группированном списке названия выводятся всегда."
@@ -0,0 +1,866 @@
msgid ""
msgstr ""
"Project-Id-Version: Google Calendar Events ver 2.2.5\n"
"POT-Creation-Date: 2015-02-25 15:34-0700\n"
"PO-Revision-Date: 2015-05-17 23:25+0100\n"
"Last-Translator: Tommy Wikström <tommy.wikstrom@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.7.4\n"
"X-Poedit-Basepath: .\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-KeywordsList: __;_e\n"
"Language: sv_SE\n"
"X-Poedit-SearchPath-0: google-calendar-events\n"
#: google-calendar-events/class-google-calendar-events-admin.php:126
#: google-calendar-events/class-google-calendar-events-admin.php:127
#: google-calendar-events/class-google-calendar-events-admin.php:218
#: google-calendar-events/includes/register-settings.php:54
msgid "General Settings"
msgstr "Allmänna inställningar"
#: google-calendar-events/class-google-calendar-events-admin.php:206
#: google-calendar-events/views/widgets.php:27
msgid "Google Calendar Events"
msgstr "Google Calendar Events"
#: google-calendar-events/class-google-calendar-events-admin.php:219
msgid "Feeds"
msgstr "Överföringar"
#: google-calendar-events/class-google-calendar-events.php:90
msgid "Loading..."
msgstr "Laddar …"
#: google-calendar-events/includes/admin/admin-functions.php:20
msgid "Cache has been cleared for this feed."
msgstr "Cache har rensats för denna överföring."
#: google-calendar-events/includes/admin/admin-functions.php:35
#: google-calendar-events/includes/admin/admin-functions.php:55
msgid "Starts:"
msgstr "Börjar:"
#: google-calendar-events/includes/admin/admin-functions.php:36
#: google-calendar-events/includes/admin/admin-functions.php:57
msgid "Ends:"
msgstr "Slutar:"
#: google-calendar-events/includes/admin/admin-functions.php:37
#: google-calendar-events/includes/admin/admin-functions.php:59
msgid "Location:"
msgstr "Plats:"
#: google-calendar-events/includes/admin/admin-functions.php:38
#: google-calendar-events/includes/admin/admin-functions.php:60
msgid "Description:"
msgstr "Beskrivning:"
#: google-calendar-events/includes/admin/admin-functions.php:39
msgid "More details..."
msgstr "Fler detaljer..."
#: google-calendar-events/includes/admin/admin-functions.php:62
msgid "More Details"
msgstr "Fler Detaljer"
#: google-calendar-events/includes/admin/admin-functions.php:76
#: google-calendar-events/includes/gce-feed-cpt.php:279
msgid "Clear Cache"
msgstr "Rensa Cache"
#: google-calendar-events/includes/admin/admin-notice.php:26
msgid "GCal API Key Notice"
msgstr "GCal API-nyckel meddelande"
#: google-calendar-events/includes/admin/admin-notice.php:28
msgid ""
"GCal Events uses the Google Calendar API version 3. By default this plugin "
"uses a public shared key across all plugin users."
msgstr ""
"GCal Events använder Google Kalender API version 3. Som standard använder "
"denna plugin en offentlig delad nyckel för alla plugin-användare."
#: google-calendar-events/includes/admin/admin-notice.php:30
msgid ""
"This key is limited to 500,000 requests per day and 5 requests per second. "
"To avoid running into any potential limits you can use your own Google API "
"key."
msgstr ""
"Denna nyckel är begränsad till 500 000 begäran per dag och 5 begäran per "
"sekund. För att undvika att överskrida eventuella begränsningar kan du "
"använda din egen Google API-nyckel."
#: google-calendar-events/includes/admin/admin-notice.php:33
msgid "Enter your GCal API key"
msgstr "Ange din GCal API-nyckel"
#: google-calendar-events/includes/admin/admin-notice.php:34
msgid "Configure GCal feeds"
msgstr "Konfigurera GCal överföringar"
#: google-calendar-events/includes/admin/admin-notice.php:35
msgid "Hide this"
msgstr "Dölj detta"
#: google-calendar-events/includes/class-gce-display.php:179
#: google-calendar-events/includes/class-gce-display.php:289
msgid "Back"
msgstr "Föregående"
#: google-calendar-events/includes/class-gce-display.php:183
#: google-calendar-events/includes/class-gce-display.php:290
msgid "Next"
msgstr "Nästa"
#: google-calendar-events/includes/class-gce-display.php:392
msgid "No events to display."
msgstr "Inga händelser att visa."
#: google-calendar-events/includes/class-gce-event.php:518
#, php-format
msgid "%s year"
msgstr "%s år"
#: google-calendar-events/includes/class-gce-event.php:518
#, php-format
msgid "%s years"
msgstr "%s år"
#: google-calendar-events/includes/class-gce-event.php:519
#, php-format
msgid "%s month"
msgstr "%s månad"
#: google-calendar-events/includes/class-gce-event.php:519
#, php-format
msgid "%s months"
msgstr "%s månader"
#: google-calendar-events/includes/class-gce-event.php:520
#, php-format
msgid "%s week"
msgstr "%s vecka"
#: google-calendar-events/includes/class-gce-event.php:520
#, php-format
msgid "%s weeks"
msgstr "%s veckor"
#: google-calendar-events/includes/class-gce-event.php:521
#, php-format
msgid "%s day"
msgstr "%s dag"
#: google-calendar-events/includes/class-gce-event.php:521
#, php-format
msgid "%s days"
msgstr "%s dagar"
#: google-calendar-events/includes/class-gce-event.php:522
#, php-format
msgid "%s hour"
msgstr "%s timme"
#: google-calendar-events/includes/class-gce-event.php:522
#, php-format
msgid "%s hours"
msgstr "%s timmar"
#: google-calendar-events/includes/class-gce-event.php:523
#, php-format
msgid "%s min"
msgstr "%s minut"
#: google-calendar-events/includes/class-gce-event.php:523
#, php-format
msgid "%s mins"
msgstr "%s minuter"
#: google-calendar-events/includes/class-gce-feed.php:93
msgid ""
"The Google Calendar ID has not been set. Please make sure to set it "
"correctly in the Feed settings."
msgstr ""
"Google Kalender-ID har inte angetts. Se till att ställa in det korrekt i "
"överförings-inställningarna."
#: google-calendar-events/includes/class-gce-feed.php:197
msgid ""
"Some data was retrieved, but could not be parsed successfully. Please ensure "
"your feed settings are correct."
msgstr ""
"Vissa data hämtades, men gick inte att tolka framgångsrikt. Kontrollera att "
"dina överförings-inställningar är korrekta."
#: google-calendar-events/includes/class-gce-feed.php:200
msgid "An error has occured."
msgstr "Ett fel har uppstått."
#: google-calendar-events/includes/class-gce-feed.php:205
msgid " Please ensure your calendar ID is correct."
msgstr "Kontrollera att din kalender-ID är korrekt."
#: google-calendar-events/includes/gce-feed-cpt.php:21
msgid "Google Calendar Feeds"
msgstr "Google Calendar Överföringar"
#: google-calendar-events/includes/gce-feed-cpt.php:22
#: google-calendar-events/includes/gce-feed-cpt.php:24
#: google-calendar-events/includes/gce-feed-cpt.php:72
msgid "Feed"
msgstr "Överföring"
#: google-calendar-events/includes/gce-feed-cpt.php:23
msgid "GCal Events"
msgstr "GCal Events"
#: google-calendar-events/includes/gce-feed-cpt.php:25
msgid "Add New"
msgstr "Lägg till ny"
#: google-calendar-events/includes/gce-feed-cpt.php:26
msgid "Add New Feed"
msgstr "Lägga till ny överföring"
#: google-calendar-events/includes/gce-feed-cpt.php:27
msgid "New Feed"
msgstr "Ny överföring"
#: google-calendar-events/includes/gce-feed-cpt.php:28
msgid "Edit Feed"
msgstr "Redigera överföring"
#: google-calendar-events/includes/gce-feed-cpt.php:29
msgid "View Feed"
msgstr "Visa Överföring"
#: google-calendar-events/includes/gce-feed-cpt.php:30
msgid "All GCal Feeds"
msgstr "Alla GCal Överföringar"
#: google-calendar-events/includes/gce-feed-cpt.php:31
msgid "Search GCal Feeds"
msgstr "Sök GCal Överföringar"
#: google-calendar-events/includes/gce-feed-cpt.php:32
msgid "No feeds found."
msgstr "Inga överföringar hittades."
#: google-calendar-events/includes/gce-feed-cpt.php:33
msgid "No feeds found in Trash."
msgstr "Inga överföringar hittades i papperskorgen."
#: google-calendar-events/includes/gce-feed-cpt.php:70
msgid "feed"
msgstr "överföring"
#: google-calendar-events/includes/gce-feed-cpt.php:75
#: google-calendar-events/includes/gce-feed-cpt.php:76
#, php-format
msgid "%4$s updated. %1$sView %2$s%3$s"
msgstr "%4$s uppdaterad. %1$sView %2$s %3$s"
#: google-calendar-events/includes/gce-feed-cpt.php:77
#, php-format
msgid "%4$s published. %1$sView %2$s%3$s"
msgstr "%4$s publicerad. %1$sView %2$s %3$s"
#: google-calendar-events/includes/gce-feed-cpt.php:78
#, php-format
msgid "%4$s saved. %1$sView %2$s%3$s"
msgstr "%4$s sparad. %1$sView %2$s %3$s"
#: google-calendar-events/includes/gce-feed-cpt.php:79
#, php-format
msgid "%4$s submitted. %1$sView %2$s%3$s"
msgstr "%4$s skickad. %1$sView %2$s %3$s"
#: google-calendar-events/includes/gce-feed-cpt.php:80
#, php-format
msgid "%4$s draft updated. %1$sView %2$s%3$s"
msgstr "%4$s utkastet uppdaterat. %1$sView %2$s %3$s"
#: google-calendar-events/includes/gce-feed-cpt.php:94
msgid "Feed Settings"
msgstr "Överföringsinsällningar"
#: google-calendar-events/includes/gce-feed-cpt.php:97
msgid "Helpful Links"
msgstr "Användbara länkar"
#: google-calendar-events/includes/gce-feed-cpt.php:99
msgid "Display Options"
msgstr "Visningsalternativ"
#: google-calendar-events/includes/gce-feed-cpt.php:232
msgid "Feed ID"
msgstr "Överförings ID"
#: google-calendar-events/includes/gce-feed-cpt.php:233
#: google-calendar-events/views/admin/gce-feed-meta-display.php:87
msgid "Feed Shortcode"
msgstr "Överföringens Shortcode"
#: google-calendar-events/includes/gce-feed-cpt.php:234
msgid "Display Type"
msgstr "Displaytyp"
#: google-calendar-events/includes/gce-feed-cpt.php:261
msgid "Grid"
msgstr "Tabell"
#: google-calendar-events/includes/gce-feed-cpt.php:263
#: google-calendar-events/views/admin/gce-feed-meta-display.php:137
#: google-calendar-events/views/widgets.php:287
msgid "List"
msgstr "Lista"
#: google-calendar-events/includes/gce-feed-cpt.php:265
#: google-calendar-events/views/admin/gce-feed-meta-display.php:138
#: google-calendar-events/views/widgets.php:288
msgid "Grouped List"
msgstr "Grupperad Lista"
#: google-calendar-events/includes/register-settings.php:29
msgid "Google API Key"
msgstr "Google API Nyckel"
#: google-calendar-events/includes/register-settings.php:30
msgid ""
"If left blank all displayed Google calendars will use a public Google API "
"key shared across all plugin users."
msgstr ""
"Om detta lämnas tomt, kommer alla visade Google-kalendrar att använda en "
"offentlig Google API nyckel som delas av alla plugin-användare."
#: google-calendar-events/includes/register-settings.php:31
msgid ""
"Currently the shared key is limited to 500,000 requests per day and 5 "
"requests per second."
msgstr ""
"För närvarande är den delade nyckeln begränsad till 500.000 anrop per dag "
"och 5 anrop per sekund."
#: google-calendar-events/includes/register-settings.php:32
#, php-format
msgid ""
"To avoid these limits <a href=\"%s\" target=\"_blank\">click here for "
"instructions on how to generate and use your own Google API key.</a>"
msgstr ""
"För att undvika dessa begränsningar <a href=\"%s\" target=\"_blank\">klicka "
"här för instruktioner om hur du skapar och använda din egen Google API-"
"nyckel.</a>"
#: google-calendar-events/includes/register-settings.php:39
msgid "Save Settings"
msgstr "Spara Inställningar"
#: google-calendar-events/includes/register-settings.php:40
msgid ""
"Save your settings when uninstalling this plugin. Useful when upgrading or "
"re-installing."
msgstr ""
"Spara dina inställningar när du avinstallerar denna plugin. Användbart vid "
"uppgradering eller ominstallation."
#: google-calendar-events/includes/register-settings.php:169
#, php-format
msgid ""
"The callback function used for the <strong>%s</strong> setting is missing."
msgstr ""
"Callback-funktionen som används för <strong>%s</strong> inställningen saknas."
#: google-calendar-events/includes/shortcodes.php:95
msgid ""
"There was a problem with one or more of your feed IDs. Please check your "
"shortcode settings and make sure they are correct."
msgstr ""
"Det fanns ett problem med ett eller flera av dina överförings-ID. "
"Kontrollera dina shortcode-inställningar och se till att de är korrekta."
#: google-calendar-events/views/admin/display-options-meta.php:39
msgid ""
"Check this box to use the simple display options below instead of the Event "
"Builder code on the left."
msgstr ""
"Markera rutan för att använda enkla visningsalternativ nedan i stället för "
"Event Builder - koden till vänster."
#: google-calendar-events/views/admin/display-options-meta.php:44
msgid "Start date / time display"
msgstr "Startdatum / tid visning"
#: google-calendar-events/views/admin/display-options-meta.php:45
msgid "Select how to display the start date / time."
msgstr "Välj hur du vill visa startdatum / tid."
#: google-calendar-events/views/admin/display-options-meta.php:47
#: google-calendar-events/views/admin/display-options-meta.php:61
msgid "None"
msgstr "Inget"
#: google-calendar-events/views/admin/display-options-meta.php:48
msgid "Start time"
msgstr "Starttid"
#: google-calendar-events/views/admin/display-options-meta.php:49
msgid "Start date"
msgstr "Startdatum"
#: google-calendar-events/views/admin/display-options-meta.php:50
msgid "Start time and date"
msgstr "Starttid och -datum"
#: google-calendar-events/views/admin/display-options-meta.php:51
msgid "Start date and time"
msgstr "Startdatum och -tid"
#: google-calendar-events/views/admin/display-options-meta.php:53
msgid "Text to display before the start time."
msgstr "Text som ska visas framför starttiden."
#: google-calendar-events/views/admin/display-options-meta.php:58
msgid "End time/date display"
msgstr "Sluttid / -datum visning"
#: google-calendar-events/views/admin/display-options-meta.php:59
msgid "Select how to display the end date / time."
msgstr "Välj hur du vill visa slutdatum / -tid."
#: google-calendar-events/views/admin/display-options-meta.php:62
msgid "End time"
msgstr "Sluttid"
#: google-calendar-events/views/admin/display-options-meta.php:63
msgid "End date"
msgstr "Slutdatum"
#: google-calendar-events/views/admin/display-options-meta.php:64
msgid "End time and date"
msgstr "Sluttid och -datum"
#: google-calendar-events/views/admin/display-options-meta.php:65
msgid "End date and time"
msgstr "Slutdatum och -tid"
#: google-calendar-events/views/admin/display-options-meta.php:67
msgid "Text to display before the end time."
msgstr "Text att visa framför sluttiden."
#: google-calendar-events/views/admin/display-options-meta.php:72
msgid "Separator"
msgstr "Avskiljare"
#: google-calendar-events/views/admin/display-options-meta.php:74
msgid ""
"If you have chosen to display both the time and date above, enter the text / "
"characters to display between the time and date here (including any spaces)."
msgstr ""
"Om du har valt att visa både tiden och datumet ovan, ange text / tecken att "
"visa mellan tid och datum här (inklusive eventuella mellanslag)."
#: google-calendar-events/views/admin/display-options-meta.php:80
msgid "Location"
msgstr "Plats"
#: google-calendar-events/views/admin/display-options-meta.php:82
msgid "Show the location of events?"
msgstr "Visa platsen för händelserna?"
#: google-calendar-events/views/admin/display-options-meta.php:83
msgid "Text to display before the location."
msgstr "Text att visa framför platsen."
#: google-calendar-events/views/admin/display-options-meta.php:88
msgid "Description"
msgstr "Beskrivning"
#: google-calendar-events/views/admin/display-options-meta.php:91
msgid ""
"Show the description of events? (URLs in the description will be made into "
"links)."
msgstr ""
"Visa beskrivningen av händelserna? (URL: er i beskrivningen kommer att göras "
"till länkar)."
#: google-calendar-events/views/admin/display-options-meta.php:93
msgid "Text to display before the description."
msgstr "Text att visa framför beskrivningen."
#: google-calendar-events/views/admin/display-options-meta.php:95
msgid ""
"Maximum number of words to show from description. Leave blank for no limit."
msgstr ""
"Maximalt antal ord för att visa av beskrivningen. Lämna tomt för gränslöst."
#: google-calendar-events/views/admin/display-options-meta.php:100
msgid "Event Link"
msgstr "Händelselänk"
#: google-calendar-events/views/admin/display-options-meta.php:103
msgid "Show a link to the Google Calendar page for an event?"
msgstr "Visa en länk till sidan Google Kalender för en händelse?"
#: google-calendar-events/views/admin/display-options-meta.php:107
msgid "Links open in a new window / tab?"
msgstr "Länkar öppnas i ett nytt fönster / flik?"
#: google-calendar-events/views/admin/display-options-meta.php:109
msgid "The link text to be displayed."
msgstr "Länktexten som ska visas."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:77
msgid "Want to be in the know?"
msgstr "Vill du känna till?"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:80
msgid "Get notified when new features are released"
msgstr "Få ett meddelande när nya funktioner släpps"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:91
msgid ""
"Copy and paste this shortcode to display this Google Calendar feed on any "
"post or page."
msgstr ""
"Kopiera och klistra in denna shortcode för att visa denna Google Kalender-"
"överföring på valfritt inlägg eller sida."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:92
msgid ""
"To avoid display issues, make sure to paste the shortcode in the Text tab of "
"the post editor."
msgstr ""
"För att undvika problem med visningen, se till att klistra in shortcoden på "
"Textfliken i inläggsredigeraren."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:97
msgid "Google Calendar ID"
msgstr "Google Kalender-ID"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:101
msgid "The Google Calendar ID."
msgstr "Google Kalender ID:t."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:101
msgid "Example"
msgstr "Exempel"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:103
msgid "How to find your Google Calendar ID"
msgstr "Hur du hittar din Google Kalender-ID"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:109
msgid "Search Query"
msgstr "Sökfråga"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:112
msgid "Find and show events based on a search query."
msgstr "Hitta och visa händelser baserat på en sökfråga."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:117
msgid "Expand Recurring Events?"
msgstr "Expandera Återkommande Händelser?"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:119
msgid "Yes"
msgstr "Ja"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:120
msgid ""
"Display recurring events each time they occur. If disabled, events will be "
"displayed only the first time they occur."
msgstr ""
"Visa återkommande händelser varje gång de förekommer. Om avstängd, visas "
"händelser endast första gången de förekommer."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:125
msgid "Multiple Day Events"
msgstr "Flerdagars Händelser"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:127
msgid "Show on each day"
msgstr "Visa för varje dag"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:128
msgid ""
"Display multiple day events on each day that they span. If disabled, "
"multiple day events will be displayed only on the first day they occur."
msgstr ""
"Visa flerdagars händelser varje dag som de omfattar. Om avstängd, visas "
"flera dagars händelser endast på den första dagen som de inträffar."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:133
msgid "Display Mode"
msgstr "Visningsläge"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:136
#: google-calendar-events/views/widgets.php:286
msgid "Grid (Month view)"
msgstr "Tabell (Månadsvy)"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:139
#: google-calendar-events/views/widgets.php:289
msgid "Custom Date Range (List)"
msgstr "Anpassat Datumintervall (Lista)"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:141
msgid "Select how to display this feed."
msgstr "Välj hur du vill visa denna överföring."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:146
msgid "Events per Page"
msgstr "Händelser per Sida"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:149
#: google-calendar-events/views/widgets.php:304
msgid "Number of Days"
msgstr "Antal Dagar"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:150
#: google-calendar-events/views/widgets.php:305
msgid "Number of Events"
msgstr "Antal Händelser"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:151
#: google-calendar-events/views/widgets.php:306
msgid "One Week"
msgstr "En Vecka"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:152
#: google-calendar-events/views/widgets.php:307
msgid "One Month"
msgstr "En Månad"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:157
msgid "How many events to display per page (List View only)."
msgstr "Hur många händelser som ska visas per sida (endast Listvy)."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:162
msgid "Display Start Date Offset"
msgstr "Visa Start Datum Offset"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:165
#: google-calendar-events/views/admin/gce-feed-meta-display.php:177
#: google-calendar-events/views/widgets.php:321
msgid "Number of Days Back"
msgstr "Antal Dagar bakåt"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:166
#: google-calendar-events/views/admin/gce-feed-meta-display.php:192
#: google-calendar-events/views/widgets.php:322
msgid "Number of Days Forward"
msgstr "Antal Dagar Framåt"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:169
#: google-calendar-events/views/widgets.php:326
msgid ""
"Change to initially display events on a date other than today (List View "
"only)."
msgstr ""
"Ändra till att från början visa händelser på ett annat datum än idag (endast "
"Listvy)."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:174
msgid "Earliest Feed Event Date"
msgstr "Tidigaste Händelseöverföringsdatum"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:178
msgid "Number of Months Back"
msgstr "Antal Månader Bakåt"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:179
msgid "Number of Years Back"
msgstr "Antal År Bakåt"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:184
msgid "Set how far back to retrieve events regardless of initial display."
msgstr "Ange hur långt tillbaka händelser ska hämtas oavsett första visning."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:189
msgid "Latest Feed Event Date"
msgstr "Senaste Händelseöverföringsdatum"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:193
msgid "Number of Months Forward"
msgstr "Antal Månader Framåt"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:194
msgid "Number of Years Forward"
msgstr "Antal År Framåt"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:199
msgid ""
"Set how far in the future to retrieve events regardless of initial display."
msgstr "Ange hur långt i framtiden händelser sk hämtas oavsett första visning."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:204
msgid "Use Custom Date Range"
msgstr "Använd Anpassat Datumintervall"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:210
msgid "Set a specific range of events to retrieve."
msgstr "Ange ett specifikt händelseinervall som ska hämtas."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:216
#: google-calendar-events/views/widgets.php:336
msgid "Show Paging Links"
msgstr "Visa Paging-länkar"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:219
msgid "Display Next and Back navigation links."
msgstr "Visa Navigeringslänkarna Nästa och Föregående."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:224
#: google-calendar-events/views/widgets.php:339
msgid "Show Tooltips"
msgstr "Visa Inforutor"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:227
msgid "Display tooltips when hovering over events (Grid View only)."
msgstr "Visa inforutor när man hovrar över händelser (endast Tabellvy)."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:232
msgid "Date Format"
msgstr "Datumformat"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:236
#: google-calendar-events/views/admin/gce-feed-meta-display.php:247
#, php-format
msgid "Use %sPHP date formatting%s."
msgstr "Använd % sPHP datumformatering %s."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:237
#: google-calendar-events/views/admin/gce-feed-meta-display.php:248
msgid "Leave blank to use the default."
msgstr "Lämna tomt för att använda förinställt."
#: google-calendar-events/views/admin/gce-feed-meta-display.php:243
msgid "Time Format"
msgstr "Tidsformat"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:254
msgid "Cache Duration"
msgstr "Varaktighet för Cache"
#: google-calendar-events/views/admin/gce-feed-meta-display.php:257
msgid ""
"The length of time, in seconds, to cache the feed (43200 = 12 hours). If "
"this feed changes regularly, you may want to reduce the cache duration."
msgstr ""
"Tidsrymd i sekunder, att cachelagra överföringen (43200 = 12 timmar). Om "
"denna överföring ändras regelbundet, kanske du vill minska tidsgränsen för "
"cache."
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:6
msgid "Documentation & getting started"
msgstr "Dokumentation & komma igång"
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:11
msgid "Community support forums"
msgstr "Användarnas supportforum"
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:16
msgid "Rate this plugin"
msgstr "Betygsätt denna plugin"
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:21
msgid "View our roadmap & vote"
msgstr "Läs vår färdplan & rösta"
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:26
msgid "Get notified of new features"
msgstr "Få meddelande om nya funktioner"
#: google-calendar-events/views/widgets.php:28
msgid ""
"Display a list or calendar grid of events from one or more Google Calendar "
"feeds you have added"
msgstr ""
"Visa en lista eller kalender tabell med händelser från en eller flera Google "
"Kalender överföringar som du har lagt till"
#: google-calendar-events/views/widgets.php:159
msgid ""
"No valid Feed IDs have been entered for this widget. Please check that you "
"have entered the IDs correctly in the widget settings (Appearance > "
"Widgets), and that the Feeds have not been deleted."
msgstr ""
"Inget giltigt Överförings-ID har registrerats för denna widget. Kontrollera "
"att du har angett ID:na korrekt i widgetinställningarna (Utseende > "
"Widgets), och att Överföringarna inte har raderats."
#: google-calendar-events/views/widgets.php:199
msgid ""
"There was a problem with one or more of your feed IDs. Please check your "
"widget settings and make sure they are correct."
msgstr ""
"Det fanns ett problem med ett eller flera av dina överförings-ID. "
"Kontrollera dina widget-inställningar och se till att de är korrekta."
#: google-calendar-events/views/widgets.php:205
msgid "You have not added any feeds yet."
msgstr "Du har inte lagt några överföringar ännu."
#: google-calendar-events/views/widgets.php:248
msgid "There are no feeds created yet."
msgstr "Det har inte skapats några överföringar ännu."
#: google-calendar-events/views/widgets.php:249
msgid "Add your first feed!"
msgstr "Lägg till din första överföring!"
#: google-calendar-events/views/widgets.php:259
msgid "Events on"
msgstr "Händelser den"
#: google-calendar-events/views/widgets.php:273
msgid "Title:"
msgstr "Rubrik:"
#: google-calendar-events/views/widgets.php:278
msgid "Feeds to Display (comma separated list - i.e. 101,102,103):"
msgstr "Överföringar att Visa (kommaseparerad lista - dvs 101,102,103):"
#: google-calendar-events/views/widgets.php:284
msgid "Display Events as:"
msgstr "Visa Händelser som:"
#: google-calendar-events/views/widgets.php:294
msgid "Sort Order (List View only):"
msgstr "Sorteringsordning (endast Listvy):"
#: google-calendar-events/views/widgets.php:296
msgid "Ascending"
msgstr "Stigande"
#: google-calendar-events/views/widgets.php:297
msgid "Descending"
msgstr "Fallande"
#: google-calendar-events/views/widgets.php:302
msgid "Events per Page (List View only):"
msgstr "Händelser per Sida (endast Listvy):"
#: google-calendar-events/views/widgets.php:315
msgid ""
"This setting will pull from the custom date range set in the main feed "
"settings and cannot be changed here."
msgstr ""
"Denna inställning kommer att hämta från det anpassade datumintervall som "
"angetts i de generella överföringsinställningarna och kan inte ändras här."
#: google-calendar-events/views/widgets.php:319
msgid "Display Start Date Offset (List View only):"
msgstr "Visa Startdatum Offset (endast Listvy):"
#: google-calendar-events/views/widgets.php:330
msgid ""
"Display Title on Tooltip/List Item (e.g. 'Events on 7th March'). Grouped "
"lists always have a title displayed."
msgstr ""
"Visa Rubrik i Inforuta/Listobjekt (t.ex. \"Händelser den 7:e Mars\"). "
"Grupperade listor visas alltid med en rubrik."
@@ -1,8 +1,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Google Calendar Events\n" "Project-Id-Version: Google Calendar Events\n"
"POT-Creation-Date: 2015-02-25 15:34-0700\n" "POT-Creation-Date: 2015-07-16 12:53-0700\n"
"PO-Revision-Date: 2015-02-25 15:34-0700\n" "PO-Revision-Date: 2015-07-16 12:53-0700\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
"Language: en\n" "Language: en\n"
@@ -17,45 +17,53 @@ msgstr ""
#: google-calendar-events/class-google-calendar-events-admin.php:126 #: google-calendar-events/class-google-calendar-events-admin.php:126
#: google-calendar-events/class-google-calendar-events-admin.php:127 #: google-calendar-events/class-google-calendar-events-admin.php:127
#: google-calendar-events/class-google-calendar-events-admin.php:218 #: google-calendar-events/class-google-calendar-events-admin.php:217
#: google-calendar-events/includes/register-settings.php:54 #: google-calendar-events/includes/register-settings.php:68
msgid "General Settings" msgid "General Settings"
msgstr "" msgstr ""
#: google-calendar-events/class-google-calendar-events-admin.php:206 #: google-calendar-events/class-google-calendar-events-admin.php:205
#: google-calendar-events/views/widgets.php:27 #: google-calendar-events/views/widgets.php:27
msgid "Google Calendar Events" msgid "Google Calendar Events"
msgstr "" msgstr ""
#: google-calendar-events/class-google-calendar-events-admin.php:219 #: google-calendar-events/class-google-calendar-events-admin.php:218
msgid "Feeds" msgid "Feeds"
msgstr "" msgstr ""
#: google-calendar-events/class-google-calendar-events.php:90 #: google-calendar-events/class-google-calendar-events.php:88
msgid "Loading..." msgid "Loading..."
msgstr "" msgstr ""
#: google-calendar-events/google-calendar-events.php:43
#, php-format
msgid ""
"Google Events Calendar requires PHP %1$s and WordPress %2$s to function "
"properly. PHP version found: %3$s. WordPress installed version: %4$s. Please "
"upgrade to meet the minimum requirements."
msgstr ""
#: google-calendar-events/includes/admin/admin-functions.php:20 #: google-calendar-events/includes/admin/admin-functions.php:20
msgid "Cache has been cleared for this feed." msgid "Cache has been cleared for this feed."
msgstr "" msgstr ""
#: google-calendar-events/includes/admin/admin-functions.php:35 #: google-calendar-events/includes/admin/admin-functions.php:35
#: google-calendar-events/includes/admin/admin-functions.php:55 #: google-calendar-events/includes/admin/admin-functions.php:56
msgid "Starts:" msgid "Starts:"
msgstr "" msgstr ""
#: google-calendar-events/includes/admin/admin-functions.php:36 #: google-calendar-events/includes/admin/admin-functions.php:36
#: google-calendar-events/includes/admin/admin-functions.php:57 #: google-calendar-events/includes/admin/admin-functions.php:58
msgid "Ends:" msgid "Ends:"
msgstr "" msgstr ""
#: google-calendar-events/includes/admin/admin-functions.php:37 #: google-calendar-events/includes/admin/admin-functions.php:37
#: google-calendar-events/includes/admin/admin-functions.php:59 #: google-calendar-events/includes/admin/admin-functions.php:60
msgid "Location:" msgid "Location:"
msgstr "" msgstr ""
#: google-calendar-events/includes/admin/admin-functions.php:38 #: google-calendar-events/includes/admin/admin-functions.php:38
#: google-calendar-events/includes/admin/admin-functions.php:60 #: google-calendar-events/includes/admin/admin-functions.php:61
msgid "Description:" msgid "Description:"
msgstr "" msgstr ""
@@ -63,12 +71,12 @@ msgstr ""
msgid "More details..." msgid "More details..."
msgstr "" msgstr ""
#: google-calendar-events/includes/admin/admin-functions.php:62 #: google-calendar-events/includes/admin/admin-functions.php:63
msgid "More Details" msgid "More Details"
msgstr "" msgstr ""
#: google-calendar-events/includes/admin/admin-functions.php:76 #: google-calendar-events/includes/admin/admin-functions.php:77
#: google-calendar-events/includes/gce-feed-cpt.php:279 #: google-calendar-events/includes/gce-feed-cpt.php:292
msgid "Clear Cache" msgid "Clear Cache"
msgstr "" msgstr ""
@@ -101,76 +109,76 @@ msgstr ""
msgid "Hide this" msgid "Hide this"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-display.php:179 #: google-calendar-events/includes/class-gce-display.php:193
#: google-calendar-events/includes/class-gce-display.php:289 #: google-calendar-events/includes/class-gce-display.php:303
msgid "Back" msgid "Back"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-display.php:183 #: google-calendar-events/includes/class-gce-display.php:197
#: google-calendar-events/includes/class-gce-display.php:290 #: google-calendar-events/includes/class-gce-display.php:304
msgid "Next" msgid "Next"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-display.php:392 #: google-calendar-events/includes/class-gce-display.php:406
msgid "No events to display." msgid "No events to display."
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:518 #: google-calendar-events/includes/class-gce-event.php:522
#, php-format #, php-format
msgid "%s year" msgid "%s year"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:518 #: google-calendar-events/includes/class-gce-event.php:522
#, php-format #, php-format
msgid "%s years" msgid "%s years"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:519 #: google-calendar-events/includes/class-gce-event.php:523
#, php-format #, php-format
msgid "%s month" msgid "%s month"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:519 #: google-calendar-events/includes/class-gce-event.php:523
#, php-format #, php-format
msgid "%s months" msgid "%s months"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:520 #: google-calendar-events/includes/class-gce-event.php:524
#, php-format #, php-format
msgid "%s week" msgid "%s week"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:520 #: google-calendar-events/includes/class-gce-event.php:524
#, php-format #, php-format
msgid "%s weeks" msgid "%s weeks"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:521 #: google-calendar-events/includes/class-gce-event.php:525
#, php-format #, php-format
msgid "%s day" msgid "%s day"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:521 #: google-calendar-events/includes/class-gce-event.php:525
#, php-format #, php-format
msgid "%s days" msgid "%s days"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:522 #: google-calendar-events/includes/class-gce-event.php:526
#, php-format #, php-format
msgid "%s hour" msgid "%s hour"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:522 #: google-calendar-events/includes/class-gce-event.php:526
#, php-format #, php-format
msgid "%s hours" msgid "%s hours"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:523 #: google-calendar-events/includes/class-gce-event.php:527
#, php-format #, php-format
msgid "%s min" msgid "%s min"
msgstr "" msgstr ""
#: google-calendar-events/includes/class-gce-event.php:523 #: google-calendar-events/includes/class-gce-event.php:527
#, php-format #, php-format
msgid "%s mins" msgid "%s mins"
msgstr "" msgstr ""
@@ -275,47 +283,51 @@ msgstr ""
msgid "%4$s draft updated. %1$sView %2$s%3$s" msgid "%4$s draft updated. %1$sView %2$s%3$s"
msgstr "" msgstr ""
#: google-calendar-events/includes/gce-feed-cpt.php:94 #: google-calendar-events/includes/gce-feed-cpt.php:95
msgid "Feed Settings" msgid "Feed Settings"
msgstr "" msgstr ""
#: google-calendar-events/includes/gce-feed-cpt.php:97 #: google-calendar-events/includes/gce-feed-cpt.php:97
msgid "Helpful Links" msgid "Resources"
msgstr "" msgstr ""
#: google-calendar-events/includes/gce-feed-cpt.php:99 #: google-calendar-events/includes/gce-feed-cpt.php:98
msgid "Display Options" msgid "Display Options"
msgstr "" msgstr ""
#: google-calendar-events/includes/gce-feed-cpt.php:232 #: google-calendar-events/includes/gce-feed-cpt.php:242
msgid "Feed ID" msgid "Feed ID"
msgstr "" msgstr ""
#: google-calendar-events/includes/gce-feed-cpt.php:233 #: google-calendar-events/includes/gce-feed-cpt.php:243
#: google-calendar-events/views/admin/gce-feed-meta-display.php:87 #: google-calendar-events/views/admin/gce-feed-meta-display.php:79
msgid "Feed Shortcode" msgid "Feed Shortcode"
msgstr "" msgstr ""
#: google-calendar-events/includes/gce-feed-cpt.php:234 #: google-calendar-events/includes/gce-feed-cpt.php:244
msgid "Display Type" msgid "Display Type"
msgstr "" msgstr ""
#: google-calendar-events/includes/gce-feed-cpt.php:261 #: google-calendar-events/includes/gce-feed-cpt.php:271
msgid "Grid" msgid "Grid"
msgstr "" msgstr ""
#: google-calendar-events/includes/gce-feed-cpt.php:263 #: google-calendar-events/includes/gce-feed-cpt.php:273
#: google-calendar-events/views/admin/gce-feed-meta-display.php:137 #: google-calendar-events/views/admin/gce-feed-meta-display.php:129
#: google-calendar-events/views/widgets.php:287 #: google-calendar-events/views/widgets.php:295
msgid "List" msgid "List"
msgstr "" msgstr ""
#: google-calendar-events/includes/gce-feed-cpt.php:265 #: google-calendar-events/includes/gce-feed-cpt.php:275
#: google-calendar-events/views/admin/gce-feed-meta-display.php:138 #: google-calendar-events/views/admin/gce-feed-meta-display.php:130
#: google-calendar-events/views/widgets.php:288 #: google-calendar-events/views/widgets.php:296
msgid "Grouped List" msgid "Grouped List"
msgstr "" msgstr ""
#: google-calendar-events/includes/gce-feed-cpt.php:277
msgid "Custom Date Range"
msgstr ""
#: google-calendar-events/includes/register-settings.php:29 #: google-calendar-events/includes/register-settings.php:29
msgid "Google API Key" msgid "Google API Key"
msgstr "" msgstr ""
@@ -340,16 +352,39 @@ msgid ""
msgstr "" msgstr ""
#: google-calendar-events/includes/register-settings.php:39 #: google-calendar-events/includes/register-settings.php:39
msgid "Save Settings" msgid "Always Enqueue Scripts & Styles"
msgstr "" msgstr ""
#: google-calendar-events/includes/register-settings.php:40 #: google-calendar-events/includes/register-settings.php:40
msgid "" msgid "Enqueue this plugin's scripts and styles on every post and page."
"Save your settings when uninstalling this plugin. Useful when upgrading or "
"re-installing."
msgstr "" msgstr ""
#: google-calendar-events/includes/register-settings.php:169 #: google-calendar-events/includes/register-settings.php:41
msgid "Useful if using shortcodes in widgets or other non-standard locations."
msgstr ""
#: google-calendar-events/includes/register-settings.php:46
msgid "Disable Plugin CSS"
msgstr ""
#: google-calendar-events/includes/register-settings.php:47
msgid ""
"If this option is checked, this plugin's CSS file will not be referenced."
msgstr ""
#: google-calendar-events/includes/register-settings.php:52
msgid "Save Settings"
msgstr ""
#: google-calendar-events/includes/register-settings.php:53
msgid "Save your settings when uninstalling this plugin."
msgstr ""
#: google-calendar-events/includes/register-settings.php:54
msgid "Useful when upgrading or re-installing."
msgstr ""
#: google-calendar-events/includes/register-settings.php:183
#, php-format #, php-format
msgid "" msgid ""
"The callback function used for the <strong>%s</strong> setting is missing." "The callback function used for the <strong>%s</strong> setting is missing."
@@ -485,237 +520,250 @@ msgstr ""
msgid "The link text to be displayed." msgid "The link text to be displayed."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:77 #: google-calendar-events/views/admin/gce-feed-meta-display.php:69
msgid "Want to be in the know?" msgid "Want to be in the know?"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:80 #: google-calendar-events/views/admin/gce-feed-meta-display.php:72
msgid "Get notified when new features are released" msgid "Get notified when new features are released"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:91 #: google-calendar-events/views/admin/gce-feed-meta-display.php:83
msgid "" msgid ""
"Copy and paste this shortcode to display this Google Calendar feed on any " "Copy and paste this shortcode to display this Google Calendar feed on any "
"post or page." "post or page."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:92 #: google-calendar-events/views/admin/gce-feed-meta-display.php:84
msgid "" msgid ""
"To avoid display issues, make sure to paste the shortcode in the Text tab of " "To avoid display issues, make sure to paste the shortcode in the Text tab of "
"the post editor." "the post editor."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:97 #: google-calendar-events/views/admin/gce-feed-meta-display.php:89
msgid "Google Calendar ID" msgid "Google Calendar ID"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:101 #: google-calendar-events/views/admin/gce-feed-meta-display.php:93
msgid "The Google Calendar ID." msgid "The Google Calendar ID."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:101 #: google-calendar-events/views/admin/gce-feed-meta-display.php:93
msgid "Example" msgid "Example"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:103 #: google-calendar-events/views/admin/gce-feed-meta-display.php:95
msgid "How to find your Google Calendar ID" msgid "How to find your Google Calendar ID"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:109 #: google-calendar-events/views/admin/gce-feed-meta-display.php:101
msgid "Search Query" msgid "Search Query"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:112 #: google-calendar-events/views/admin/gce-feed-meta-display.php:104
msgid "Find and show events based on a search query." msgid "Find and show events based on a search query."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:117 #: google-calendar-events/views/admin/gce-feed-meta-display.php:109
msgid "Expand Recurring Events?" msgid "Expand Recurring Events?"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:119 #: google-calendar-events/views/admin/gce-feed-meta-display.php:111
msgid "Yes" msgid "Yes"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:120 #: google-calendar-events/views/admin/gce-feed-meta-display.php:112
msgid "" msgid ""
"Display recurring events each time they occur. If disabled, events will be " "Display recurring events each time they occur. If disabled, events will be "
"displayed only the first time they occur." "displayed only the first time they occur."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:125 #: google-calendar-events/views/admin/gce-feed-meta-display.php:117
msgid "Multiple Day Events" msgid "Multiple Day Events"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:127 #: google-calendar-events/views/admin/gce-feed-meta-display.php:119
msgid "Show on each day" msgid "Show on each day"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:128 #: google-calendar-events/views/admin/gce-feed-meta-display.php:120
msgid "" msgid ""
"Display multiple day events on each day that they span. If disabled, " "Display multiple day events on each day that they span. If disabled, "
"multiple day events will be displayed only on the first day they occur." "multiple day events will be displayed only on the first day they occur."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:133 #: google-calendar-events/views/admin/gce-feed-meta-display.php:125
msgid "Display Mode" msgid "Display Mode"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:136 #: google-calendar-events/views/admin/gce-feed-meta-display.php:128
#: google-calendar-events/views/widgets.php:286 #: google-calendar-events/views/widgets.php:294
msgid "Grid (Month view)" msgid "Grid (Month view)"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:139 #: google-calendar-events/views/admin/gce-feed-meta-display.php:131
#: google-calendar-events/views/widgets.php:289 #: google-calendar-events/views/widgets.php:297
msgid "Custom Date Range (List)" msgid "Custom Date Range (List)"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:141 #: google-calendar-events/views/admin/gce-feed-meta-display.php:132
#: google-calendar-events/views/widgets.php:298
msgid "Custom Date Range (Grid)"
msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:134
msgid "Select how to display this feed." msgid "Select how to display this feed."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:146 #: google-calendar-events/views/admin/gce-feed-meta-display.php:139
msgid "Events per Page" msgid "Events per Page"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:149 #: google-calendar-events/views/admin/gce-feed-meta-display.php:142
#: google-calendar-events/views/widgets.php:304 #: google-calendar-events/views/widgets.php:313
msgid "Number of Days" msgid "Number of Days"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:150 #: google-calendar-events/views/admin/gce-feed-meta-display.php:143
#: google-calendar-events/views/widgets.php:305 #: google-calendar-events/views/widgets.php:314
msgid "Number of Events" msgid "Number of Events"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:151 #: google-calendar-events/views/admin/gce-feed-meta-display.php:144
#: google-calendar-events/views/widgets.php:306 #: google-calendar-events/views/widgets.php:315
msgid "One Week" msgid "One Week"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:152 #: google-calendar-events/views/admin/gce-feed-meta-display.php:145
#: google-calendar-events/views/widgets.php:307 #: google-calendar-events/views/widgets.php:316
msgid "One Month" msgid "One Month"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:157 #: google-calendar-events/views/admin/gce-feed-meta-display.php:150
msgid "How many events to display per page (List View only)." msgid "How many events to display per page (List View only)."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:162 #: google-calendar-events/views/admin/gce-feed-meta-display.php:155
msgid "Display Start Date Offset" msgid "Display Start Date Offset"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:165 #: google-calendar-events/views/admin/gce-feed-meta-display.php:158
#: google-calendar-events/views/admin/gce-feed-meta-display.php:177 #: google-calendar-events/views/admin/gce-feed-meta-display.php:170
#: google-calendar-events/views/widgets.php:321 #: google-calendar-events/views/widgets.php:330
msgid "Number of Days Back" msgid "Number of Days Back"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:166 #: google-calendar-events/views/admin/gce-feed-meta-display.php:159
#: google-calendar-events/views/admin/gce-feed-meta-display.php:192 #: google-calendar-events/views/admin/gce-feed-meta-display.php:189
#: google-calendar-events/views/widgets.php:322 #: google-calendar-events/views/widgets.php:331
msgid "Number of Days Forward" msgid "Number of Days Forward"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:169 #: google-calendar-events/views/admin/gce-feed-meta-display.php:162
#: google-calendar-events/views/widgets.php:326 #: google-calendar-events/views/widgets.php:335
msgid "" msgid ""
"Change to initially display events on a date other than today (List View " "Change to initially display events on a date other than today (List View "
"only)." "only)."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:174 #: google-calendar-events/views/admin/gce-feed-meta-display.php:167
msgid "Earliest Feed Event Date" msgid "Earliest Feed Event Date"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:178 #: google-calendar-events/views/admin/gce-feed-meta-display.php:171
msgid "Number of Months Back" msgid "Number of Months Back"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:179 #: google-calendar-events/views/admin/gce-feed-meta-display.php:172
msgid "Number of Years Back" msgid "Number of Years Back"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:184 #: google-calendar-events/views/admin/gce-feed-meta-display.php:178
msgid "Set how far back to retrieve events regardless of initial display." msgid "Set how far back to retrieve events regardless of initial display."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:189 #: google-calendar-events/views/admin/gce-feed-meta-display.php:180
msgid ""
"<strong>Note:</strong> Total events are currently limited to 2,500 by the "
"Google Calendar API."
msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:186
msgid "Latest Feed Event Date" msgid "Latest Feed Event Date"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:193 #: google-calendar-events/views/admin/gce-feed-meta-display.php:190
msgid "Number of Months Forward" msgid "Number of Months Forward"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:194 #: google-calendar-events/views/admin/gce-feed-meta-display.php:191
msgid "Number of Years Forward" msgid "Number of Years Forward"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:199 #: google-calendar-events/views/admin/gce-feed-meta-display.php:196
msgid "" msgid ""
"Set how far in the future to retrieve events regardless of initial display." "Set how far in the future to retrieve events regardless of initial display."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:204 #: google-calendar-events/views/admin/gce-feed-meta-display.php:201
msgid "Use Custom Date Range" msgid "Use Custom Date Range"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:210 #: google-calendar-events/views/admin/gce-feed-meta-display.php:207
msgid "Set a specific range of events to retrieve." msgid ""
"Set a specific range of events to retrieve. Leaving either field blank will "
"set the date to the current day."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:216 #: google-calendar-events/views/admin/gce-feed-meta-display.php:213
#: google-calendar-events/views/widgets.php:336 #: google-calendar-events/views/widgets.php:345
msgid "Show Paging Links" msgid "Show Paging Links"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:219 #: google-calendar-events/views/admin/gce-feed-meta-display.php:216
msgid "Display Next and Back navigation links." msgid "Display Next and Back navigation links."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:224 #: google-calendar-events/views/admin/gce-feed-meta-display.php:221
#: google-calendar-events/views/widgets.php:339 #: google-calendar-events/views/widgets.php:348
msgid "Show Tooltips" msgid "Show Tooltips"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:227 #: google-calendar-events/views/admin/gce-feed-meta-display.php:224
msgid "Display tooltips when hovering over events (Grid View only)." msgid "Display tooltips when hovering over events (Grid View only)."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:232 #: google-calendar-events/views/admin/gce-feed-meta-display.php:229
msgid "Date Format" msgid "Date Format"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:236 #: google-calendar-events/views/admin/gce-feed-meta-display.php:233
#: google-calendar-events/views/admin/gce-feed-meta-display.php:247 #: google-calendar-events/views/admin/gce-feed-meta-display.php:244
#, php-format #, php-format
msgid "Use %sPHP date formatting%s." msgid "Use %sPHP date formatting%s."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:237 #: google-calendar-events/views/admin/gce-feed-meta-display.php:234
#: google-calendar-events/views/admin/gce-feed-meta-display.php:248 #: google-calendar-events/views/admin/gce-feed-meta-display.php:245
msgid "Leave blank to use the default." msgid "Leave blank to use the default."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:243 #: google-calendar-events/views/admin/gce-feed-meta-display.php:240
msgid "Time Format" msgid "Time Format"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:254 #: google-calendar-events/views/admin/gce-feed-meta-display.php:251
msgid "Cache Duration" msgid "Cache Duration"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-meta-display.php:257 #: google-calendar-events/views/admin/gce-feed-meta-display.php:254
msgid "" msgid ""
"The length of time, in seconds, to cache the feed (43200 = 12 hours). If " "The length of time, in seconds, to cache the feed (43200 = 12 hours). If "
"this feed changes regularly, you may want to reduce the cache duration." "this feed changes regularly, you may want to reduce the cache duration."
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:6 #: google-calendar-events/views/admin/gce-feed-sidebar-help.php:6
msgid "Documentation & getting started" msgid "Documentation"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:11 #: google-calendar-events/views/admin/gce-feed-sidebar-help.php:11
@@ -723,15 +771,15 @@ msgid "Community support forums"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:16 #: google-calendar-events/views/admin/gce-feed-sidebar-help.php:16
msgid "Rate this plugin" msgid "Get notified of new features"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:21 #: google-calendar-events/views/admin/gce-feed-sidebar-help.php:21
msgid "View our roadmap & vote" msgid "Your review helps more folks find our plugin. Thanks so much!"
msgstr "" msgstr ""
#: google-calendar-events/views/admin/gce-feed-sidebar-help.php:26 #: google-calendar-events/views/admin/gce-feed-sidebar-help.php:25
msgid "Get notified of new features" msgid "Review this Plugin Now"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:28 #: google-calendar-events/views/widgets.php:28
@@ -740,74 +788,74 @@ msgid ""
"feeds you have added" "feeds you have added"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:159 #: google-calendar-events/views/widgets.php:167
msgid "" msgid ""
"No valid Feed IDs have been entered for this widget. Please check that you " "No valid Feed IDs have been entered for this widget. Please check that you "
"have entered the IDs correctly in the widget settings (Appearance > " "have entered the IDs correctly in the widget settings (Appearance > "
"Widgets), and that the Feeds have not been deleted." "Widgets), and that the Feeds have not been deleted."
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:199 #: google-calendar-events/views/widgets.php:207
msgid "" msgid ""
"There was a problem with one or more of your feed IDs. Please check your " "There was a problem with one or more of your feed IDs. Please check your "
"widget settings and make sure they are correct." "widget settings and make sure they are correct."
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:205 #: google-calendar-events/views/widgets.php:213
msgid "You have not added any feeds yet." msgid "You have not added any feeds yet."
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:248 #: google-calendar-events/views/widgets.php:256
msgid "There are no feeds created yet." msgid "There are no feeds created yet."
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:249 #: google-calendar-events/views/widgets.php:257
msgid "Add your first feed!" msgid "Add your first feed!"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:259 #: google-calendar-events/views/widgets.php:267
msgid "Events on" msgid "Events on"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:273 #: google-calendar-events/views/widgets.php:281
msgid "Title:" msgid "Title:"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:278 #: google-calendar-events/views/widgets.php:286
msgid "Feeds to Display (comma separated list - i.e. 101,102,103):" msgid "Feeds to Display (comma separated list - i.e. 101,102,103):"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:284 #: google-calendar-events/views/widgets.php:292
msgid "Display Events as:" msgid "Display Events as:"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:294 #: google-calendar-events/views/widgets.php:303
msgid "Sort Order (List View only):" msgid "Sort Order (List View only):"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:296 #: google-calendar-events/views/widgets.php:305
msgid "Ascending" msgid "Ascending"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:297 #: google-calendar-events/views/widgets.php:306
msgid "Descending" msgid "Descending"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:302 #: google-calendar-events/views/widgets.php:311
msgid "Events per Page (List View only):" msgid "Events per Page (List View only):"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:315 #: google-calendar-events/views/widgets.php:324
msgid "" msgid ""
"This setting will pull from the custom date range set in the main feed " "This setting will pull from the custom date range set in the main feed "
"settings and cannot be changed here." "settings and cannot be changed here."
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:319 #: google-calendar-events/views/widgets.php:328
msgid "Display Start Date Offset (List View only):" msgid "Display Start Date Offset (List View only):"
msgstr "" msgstr ""
#: google-calendar-events/views/widgets.php:330 #: google-calendar-events/views/widgets.php:339
msgid "" msgid ""
"Display Title on Tooltip/List Item (e.g. 'Events on 7th March'). Grouped " "Display Title on Tooltip/List Item (e.g. 'Events on 7th March'). Grouped "
"lists always have a title displayed." "lists always have a title displayed."
@@ -1,9 +1,9 @@
=== Google Calendar Events === === Google Calendar Events ===
Contributors: pderksen, nickyoung87, rosshanney Contributors: pderksen, nickyoung87, nekojira, rosshanney
Tags: google calendar, google, calendar, events, gcal Tags: google calendar, google, calendar, events, gcal
Requires at least: 3.9.3 Requires at least: 3.9
Tested up to: 4.2 Tested up to: 4.3
Stable tag: 2.2.5 Stable tag: 2.2.6
License: GPLv2 or later License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html License URI: http://www.gnu.org/licenses/gpl-2.0.html
@@ -43,6 +43,8 @@ This plugin was originally created by [Ross Hanney](http://www.rhanney.co.uk), a
* Lithuanian - Provided by Andrius Mazeika of [mazeika.info](http://mazeika.info/). * Lithuanian - Provided by Andrius Mazeika of [mazeika.info](http://mazeika.info/).
* Dutch - Provided by Henri van Werkhoven. * Dutch - Provided by Henri van Werkhoven.
* Catalan - Provided by Toni Ginard & Monica Grau of [agora.xtec.cat](http://agora.xtec.cat/). * Catalan - Provided by Toni Ginard & Monica Grau of [agora.xtec.cat](http://agora.xtec.cat/).
* Russian - Provided by Vadim Reutskiy.
* Swedish - Provided by Familjedaghemmet Chicos of [chicos.nu](http://www.chicos.nu/).
== Installation == == Installation ==
@@ -88,6 +90,19 @@ There are three ways to install this plugin.
== Changelog == == Changelog ==
= 2.2.6 - July 16, 2015 =
* Plugin performs a requirements check to ensure users are running a recent version of WordPress.
* Added '.gce-has-<n>-events' class to count events in each day in grid display.
* Removed unnecessary imagesLoaded JS library (optional dependency of the qTip2 library).
* Fixed a bug with the start month of the custom date range grid view.
* Fixed a bug with backslashes in date ant time custom format inputs.
* Fixed scripts and styles loading issues.
* Fixed bugs when custom date range values were left blank.
* Added Russian translation provided by Vadim Reutskiy.
* Added Swedish translation provided by Familjedaghemmet Chicos.
* Tested up to WordPress 4.3.
= 2.2.5 - April 22, 2015 = = 2.2.5 - April 22, 2015 =
* Updated calls to add_query_arg to prevent any possible XSS attacks. * Updated calls to add_query_arg to prevent any possible XSS attacks.
@@ -203,7 +218,7 @@ There are three ways to install this plugin.
* Fixed bug with all day events not displaying. * Fixed bug with all day events not displaying.
* Added missing timezone parameter to internal query. * Added missing timezone parameter to internal query.
= 2.1.0 = = 2.1.0 =
* Updated to use Google Calendar API version 3. Version 2 deprecated on Nov. 17, 2014. * Updated to use Google Calendar API version 3. Version 2 deprecated on Nov. 17, 2014.
@@ -211,7 +226,7 @@ There are three ways to install this plugin.
* As of Nov. 17, 2014 the GCal API v2 is deprecated, which breaks all calendar feed displays. This update will temporarily hide the display while we work on a solution that uses GCal API v3. * As of Nov. 17, 2014 the GCal API v2 is deprecated, which breaks all calendar feed displays. This update will temporarily hide the display while we work on a solution that uses GCal API v3.
= 2.0.7 = = 2.0.7 =
* Events will now display if it hasn't ended yet for list views. * Events will now display if it hasn't ended yet for list views.
* Fixed bug with date() call causing a display error in some cases. * Fixed bug with date() call causing a display error in some cases.
@@ -222,7 +237,7 @@ There are three ways to install this plugin.
* Simplified text domain function. * Simplified text domain function.
* Added Lithuanian translation - Provided by Andrius Mazeika of [mazeika.info](http://mazeika.info/). * Added Lithuanian translation - Provided by Andrius Mazeika of [mazeika.info](http://mazeika.info/).
= 2.0.6.2 = = 2.0.6.2 =
* Reverted previous bug fix that introduced new bugs. * Reverted previous bug fix that introduced new bugs.
@@ -430,4 +445,4 @@ There are three ways to install this plugin.
= 2.1.0 = = 2.1.0 =
Updated to use Google Calendar API version 3. Version 2 deprecated on Nov. 17, 2014. Updated to use Google Calendar API version 3. Version 2 deprecated on Nov. 17, 2014.
@@ -204,7 +204,7 @@
<input type="text" name="gce_feed_range_start" id="gce_feed_range_start" value="<?php echo esc_attr( $gce_feed_range_start ); ?>" /> <input type="text" name="gce_feed_range_start" id="gce_feed_range_start" value="<?php echo esc_attr( $gce_feed_range_start ); ?>" />
<?php _ex( 'to', 'separator between custom date range fields', 'gce' ); ?> <?php _ex( 'to', 'separator between custom date range fields', 'gce' ); ?>
<input type="text" id="gce_feed_range_end" name="gce_feed_range_end" value="<?php echo esc_attr( $gce_feed_range_end ); ?>" /> <input type="text" id="gce_feed_range_end" name="gce_feed_range_end" value="<?php echo esc_attr( $gce_feed_range_end ); ?>" />
<p class="description"><?php _e( 'Set a specific range of events to retrieve.', 'gce' ); ?></p> <p class="description"><?php _e( 'Set a specific range of events to retrieve. Leaving either field blank will set the date to the current day.', 'gce' ); ?></p>
</span> </span>
</td> </td>
</tr> </tr>
+3 -1
View File
@@ -1143,8 +1143,10 @@ function map_meta_cap( $cap, $user_id ) {
case 'edit_post': case 'edit_post':
case 'edit_page': case 'edit_page':
$post = get_post( $args[0] ); $post = get_post( $args[0] );
if ( empty( $post ) ) if ( empty( $post ) ) {
$caps[] = 'do_not_allow';
break; break;
}
if ( 'revision' == $post->post_type ) { if ( 'revision' == $post->post_type ) {
$post = get_post( $post->post_parent ); $post = get_post( $post->post_parent );
+5 -1
View File
@@ -57,7 +57,7 @@ class WP_Embed {
add_shortcode( 'embed', array( $this, 'shortcode' ) ); add_shortcode( 'embed', array( $this, 'shortcode' ) );
// Do the shortcode (only the [embed] one is registered) // Do the shortcode (only the [embed] one is registered)
$content = do_shortcode( $content ); $content = do_shortcode( $content, true );
// Put the original shortcodes back // Put the original shortcodes back
$shortcode_tags = $orig_shortcode_tags; $shortcode_tags = $orig_shortcode_tags;
@@ -312,6 +312,10 @@ class WP_Embed {
* @return string Potentially modified $content. * @return string Potentially modified $content.
*/ */
public function autoembed( $content ) { public function autoembed( $content ) {
// Strip newlines from all elements.
$content = wp_replace_in_html_tags( $content, array( "\n" => " " ) );
// Find URLs that are on their own line.
return preg_replace_callback( '|^(\s*)(https?://[^\s"]+)(\s*)$|im', array( $this, 'autoembed_callback' ), $content ); return preg_replace_callback( '|^(\s*)(https?://[^\s"]+)(\s*)$|im', array( $this, 'autoembed_callback' ), $content );
} }
+3
View File
@@ -2252,6 +2252,9 @@ function comment_form( $args = array(), $post_id = null ) {
*/ */
$args = wp_parse_args( $args, apply_filters( 'comment_form_defaults', $defaults ) ); $args = wp_parse_args( $args, apply_filters( 'comment_form_defaults', $defaults ) );
// Ensure that the filtered args contain all required default values.
$args = array_merge( $defaults, $args );
if ( comments_open( $post_id ) ) : ?> if ( comments_open( $post_id ) ) : ?>
<?php <?php
/** /**
+152 -43
View File
@@ -421,6 +421,9 @@ function wpautop($pee, $br = true) {
// Standardize newline characters to "\n". // Standardize newline characters to "\n".
$pee = str_replace(array("\r\n", "\r"), "\n", $pee); $pee = str_replace(array("\r\n", "\r"), "\n", $pee);
// Strip newlines from all elements.
$pee = wp_replace_in_html_tags( $pee, array( "\n" => " " ) );
// Collapse line breaks before and after <option> elements so they don't get autop'd. // Collapse line breaks before and after <option> elements so they don't get autop'd.
if ( strpos( $pee, '<option' ) !== false ) { if ( strpos( $pee, '<option' ) !== false ) {
$pee = preg_replace( '|\s*<option|', '<option', $pee ); $pee = preg_replace( '|\s*<option|', '<option', $pee );
@@ -509,6 +512,74 @@ function wpautop($pee, $br = true) {
return $pee; return $pee;
} }
/**
* Replace characters or phrases within HTML elements only.
*
* @since 4.2.3
*
* @param string $haystack The text which has to be formatted.
* @param array $replace_pairs In the form array('from' => 'to', ...).
* @return string The formatted text.
*/
function wp_replace_in_html_tags( $haystack, $replace_pairs ) {
// Find all elements.
$comments =
'!' // Start of comment, after the <.
. '(?:' // Unroll the loop: Consume everything until --> is found.
. '-(?!->)' // Dash not followed by end of comment.
. '[^\-]*+' // Consume non-dashes.
. ')*+' // Loop possessively.
. '(?:-->)?'; // End of comment. If not found, match all input.
$regex =
'/(' // Capture the entire match.
. '<' // Find start of element.
. '(?(?=!--)' // Is this a comment?
. $comments // Find end of comment.
. '|'
. '[^>]*>?' // Find end of element. If not found, match all input.
. ')'
. ')/s';
$textarr = preg_split( $regex, $haystack, -1, PREG_SPLIT_DELIM_CAPTURE );
$changed = false;
// Optimize when searching for one item.
if ( 1 === count( $replace_pairs ) ) {
// Extract $needle and $replace.
foreach ( $replace_pairs as $needle => $replace );
// Loop through delimeters (elements) only.
for ( $i = 1, $c = count( $textarr ); $i < $c; $i += 2 ) {
if ( false !== strpos( $textarr[$i], $needle ) ) {
$textarr[$i] = str_replace( $needle, $replace, $textarr[$i] );
$changed = true;
}
}
} else {
// Extract all $needles.
$needles = array_keys( $replace_pairs );
// Loop through delimeters (elements) only.
for ( $i = 1, $c = count( $textarr ); $i < $c; $i += 2 ) {
foreach ( $needles as $needle ) {
if ( false !== strpos( $textarr[$i], $needle ) ) {
$textarr[$i] = strtr( $textarr[$i], $replace_pairs );
$changed = true;
// After one strtr() break out of the foreach loop and look at next element.
break;
}
}
}
}
if ( $changed ) {
$haystack = implode( $textarr );
}
return $haystack;
}
/** /**
* Newline preservation help function for wpautop * Newline preservation help function for wpautop
* *
@@ -3327,16 +3398,19 @@ function wp_make_link_relative( $link ) {
*/ */
function sanitize_option($option, $value) { function sanitize_option($option, $value) {
global $wpdb; global $wpdb;
$error = '';
switch ( $option ) { switch ( $option ) {
case 'admin_email' : case 'admin_email' :
case 'new_admin_email' : case 'new_admin_email' :
$value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value ); $value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value );
$value = sanitize_email( $value ); if ( is_wp_error( $value ) ) {
if ( ! is_email( $value ) ) { $error = $value->get_error_message();
$value = get_option( $option ); // Resets option to stored value in the case of failed sanitization } else {
if ( function_exists( 'add_settings_error' ) ) $value = sanitize_email( $value );
add_settings_error( $option, 'invalid_admin_email', __( 'The email address entered did not appear to be a valid email address. Please enter a valid email address.' ) ); if ( ! is_email( $value ) ) {
$error = __( 'The email address entered did not appear to be a valid email address. Please enter a valid email address.' );
}
} }
break; break;
@@ -3381,8 +3455,12 @@ function sanitize_option($option, $value) {
case 'blogdescription': case 'blogdescription':
case 'blogname': case 'blogname':
$value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value ); $value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value );
$value = wp_kses_post( $value ); if ( is_wp_error( $value ) ) {
$value = esc_html( $value ); $error = $value->get_error_message();
} else {
$value = wp_kses_post( $value );
$value = esc_html( $value );
}
break; break;
case 'blog_charset': case 'blog_charset':
@@ -3404,8 +3482,12 @@ function sanitize_option($option, $value) {
case 'mailserver_pass': case 'mailserver_pass':
case 'upload_path': case 'upload_path':
$value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value ); $value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value );
$value = strip_tags( $value ); if ( is_wp_error( $value ) ) {
$value = wp_kses_data( $value ); $error = $value->get_error_message();
} else {
$value = strip_tags( $value );
$value = wp_kses_data( $value );
}
break; break;
case 'ping_sites': case 'ping_sites':
@@ -3421,23 +3503,27 @@ function sanitize_option($option, $value) {
case 'siteurl': case 'siteurl':
$value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value ); $value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value );
if ( (bool)preg_match( '#http(s?)://(.+)#i', $value) ) { if ( is_wp_error( $value ) ) {
$value = esc_url_raw($value); $error = $value->get_error_message();
} else { } else {
$value = get_option( $option ); // Resets option to stored value in the case of failed sanitization if ( preg_match( '#http(s?)://(.+)#i', $value ) ) {
if ( function_exists('add_settings_error') ) $value = esc_url_raw( $value );
add_settings_error('siteurl', 'invalid_siteurl', __('The WordPress address you entered did not appear to be a valid URL. Please enter a valid URL.')); } else {
$error = __( 'The WordPress address you entered did not appear to be a valid URL. Please enter a valid URL.' );
}
} }
break; break;
case 'home': case 'home':
$value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value ); $value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value );
if ( (bool)preg_match( '#http(s?)://(.+)#i', $value) ) { if ( is_wp_error( $value ) ) {
$value = esc_url_raw($value); $error = $value->get_error_message();
} else { } else {
$value = get_option( $option ); // Resets option to stored value in the case of failed sanitization if ( preg_match( '#http(s?)://(.+)#i', $value ) ) {
if ( function_exists('add_settings_error') ) $value = esc_url_raw( $value );
add_settings_error('home', 'invalid_home', __('The Site address you entered did not appear to be a valid URL. Please enter a valid URL.')); } else {
$error = __( 'The Site address you entered did not appear to be a valid URL. Please enter a valid URL.' );
}
} }
break; break;
@@ -3453,38 +3539,45 @@ function sanitize_option($option, $value) {
case 'illegal_names': case 'illegal_names':
$value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value ); $value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value );
if ( ! is_array( $value ) ) if ( is_wp_error( $value ) ) {
$value = explode( ' ', $value ); $error = $value->get_error_message();
} else {
if ( ! is_array( $value ) )
$value = explode( ' ', $value );
$value = array_values( array_filter( array_map( 'trim', $value ) ) ); $value = array_values( array_filter( array_map( 'trim', $value ) ) );
if ( ! $value ) if ( ! $value )
$value = ''; $value = '';
}
break; break;
case 'limited_email_domains': case 'limited_email_domains':
case 'banned_email_domains': case 'banned_email_domains':
$value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value ); $value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value );
if ( ! is_array( $value ) ) if ( is_wp_error( $value ) ) {
$value = explode( "\n", $value ); $error = $value->get_error_message();
} else {
if ( ! is_array( $value ) )
$value = explode( "\n", $value );
$domains = array_values( array_filter( array_map( 'trim', $value ) ) ); $domains = array_values( array_filter( array_map( 'trim', $value ) ) );
$value = array(); $value = array();
foreach ( $domains as $domain ) { foreach ( $domains as $domain ) {
if ( ! preg_match( '/(--|\.\.)/', $domain ) && preg_match( '|^([a-zA-Z0-9-\.])+$|', $domain ) ) if ( ! preg_match( '/(--|\.\.)/', $domain ) && preg_match( '|^([a-zA-Z0-9-\.])+$|', $domain ) ) {
$value[] = $domain; $value[] = $domain;
}
}
if ( ! $value )
$value = '';
} }
if ( ! $value )
$value = '';
break; break;
case 'timezone_string': case 'timezone_string':
$allowed_zones = timezone_identifiers_list(); $allowed_zones = timezone_identifiers_list();
if ( ! in_array( $value, $allowed_zones ) && ! empty( $value ) ) { if ( ! in_array( $value, $allowed_zones ) && ! empty( $value ) ) {
$value = get_option( $option ); // Resets option to stored value in the case of failed sanitization $error = __( 'The timezone you have entered is not valid. Please select a valid timezone.' );
if ( function_exists('add_settings_error') )
add_settings_error('timezone_string', 'invalid_timezone_string', __('The timezone you have entered is not valid. Please select a valid timezone.') );
} }
break; break;
@@ -3492,8 +3585,12 @@ function sanitize_option($option, $value) {
case 'category_base': case 'category_base':
case 'tag_base': case 'tag_base':
$value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value ); $value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value );
$value = esc_url_raw( $value ); if ( is_wp_error( $value ) ) {
$value = str_replace( 'http://', '', $value ); $error = $value->get_error_message();
} else {
$value = esc_url_raw( $value );
$value = str_replace( 'http://', '', $value );
}
break; break;
case 'default_role' : case 'default_role' :
@@ -3504,13 +3601,24 @@ function sanitize_option($option, $value) {
case 'moderation_keys': case 'moderation_keys':
case 'blacklist_keys': case 'blacklist_keys':
$value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value ); $value = $wpdb->strip_invalid_text_for_column( $wpdb->options, 'option_value', $value );
$value = explode( "\n", $value ); if ( is_wp_error( $value ) ) {
$value = array_filter( array_map( 'trim', $value ) ); $error = $value->get_error_message();
$value = array_unique( $value ); } else {
$value = implode( "\n", $value ); $value = explode( "\n", $value );
$value = array_filter( array_map( 'trim', $value ) );
$value = array_unique( $value );
$value = implode( "\n", $value );
}
break; break;
} }
if ( ! empty( $error ) ) {
$value = get_option( $option );
if ( function_exists( 'add_settings_error' ) ) {
add_settings_error( $option, "invalid_{$option}", $error );
}
}
/** /**
* Filter an option value following sanitization. * Filter an option value following sanitization.
* *
@@ -4140,8 +4248,9 @@ function print_emoji_detection_script() {
); );
$version = 'ver=' . $wp_version; $version = 'ver=' . $wp_version;
$develop_src = false !== strpos( $wp_version, '-src' );
if ( SCRIPT_DEBUG ) { if ( $develop_src || ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) ) {
$settings['source'] = array( $settings['source'] = array(
/** This filter is documented in wp-includes/class.wp-scripts.php */ /** This filter is documented in wp-includes/class.wp-scripts.php */
'wpemoji' => apply_filters( 'script_loader_src', includes_url( "js/wp-emoji.js?$version" ), 'wpemoji' ), 'wpemoji' => apply_filters( 'script_loader_src', includes_url( "js/wp-emoji.js?$version" ), 'wpemoji' ),
+11 -9
View File
@@ -93,8 +93,7 @@ window.wp = window.wp || {};
setMarkers: function( content ) { setMarkers: function( content ) {
var pieces = [ { content: content } ], var pieces = [ { content: content } ],
self = this, self = this,
instance, instance, current;
current;
_.each( views, function( view, type ) { _.each( views, function( view, type ) {
current = pieces.slice(); current = pieces.slice();
@@ -102,7 +101,7 @@ window.wp = window.wp || {};
_.each( current, function( piece ) { _.each( current, function( piece ) {
var remaining = piece.content, var remaining = piece.content,
result; result, text;
// Ignore processed pieces, but retain their location. // Ignore processed pieces, but retain their location.
if ( piece.processed ) { if ( piece.processed ) {
@@ -119,10 +118,11 @@ window.wp = window.wp || {};
} }
instance = self.createInstance( type, result.content, result.options ); instance = self.createInstance( type, result.content, result.options );
text = instance.loader ? '.' : instance.text;
// Add the processed piece for the match. // Add the processed piece for the match.
pieces.push( { pieces.push( {
content: '<p data-wpview-marker="' + instance.encodedText + '">' + instance.text + '</p>', content: '<p data-wpview-marker="' + instance.encodedText + '">' + text + '</p>',
processed: true processed: true
} ); } );
@@ -138,7 +138,8 @@ window.wp = window.wp || {};
} ); } );
} ); } );
return _.pluck( pieces, 'content' ).join( '' ); content = _.pluck( pieces, 'content' ).join( '' );
return content.replace( /<p>\s*<p data-wpview-marker=/g, '<p data-wpview-marker=' ).replace( /<\/p>\s*<\/p>/g, '</p>' );
}, },
/** /**
@@ -155,14 +156,15 @@ window.wp = window.wp || {};
encodedText, encodedText,
instance; instance;
text = tinymce.DOM.decode( text ), text = tinymce.DOM.decode( text );
encodedText = encodeURIComponent( text ), instance = this.getInstance( text );
instance = this.getInstance( encodedText );
if ( instance ) { if ( instance ) {
return instance; return instance;
} }
encodedText = encodeURIComponent( text );
options = _.extend( options || {}, { options = _.extend( options || {}, {
text: text, text: text,
encodedText: encodedText encodedText: encodedText
@@ -416,7 +418,7 @@ window.wp = window.wp || {};
*/ */
replaceMarkers: function() { replaceMarkers: function() {
this.getMarkers( function( editor, node ) { this.getMarkers( function( editor, node ) {
if ( $( node ).text() !== this.text ) { if ( ! this.loader && $( node ).text() !== this.text ) {
editor.dom.setAttrib( node, 'data-wpview-marker', null ); editor.dom.setAttrib( node, 'data-wpview-marker', null );
return; return;
} }
+1 -1
View File
@@ -1 +1 @@
window.wp=window.wp||{},function(a,b,c){"use strict";var d={},e={};b.mce=b.mce||{},b.mce.views={register:function(a,c){d[a]=b.mce.View.extend(_.extend(c,{type:a}))},unregister:function(a){delete d[a]},get:function(a){return d[a]},unbind:function(){_.each(e,function(a){a.unbind()})},setMarkers:function(a){var b,c,e=[{content:a}],f=this;return _.each(d,function(a,d){c=e.slice(),e=[],_.each(c,function(c){var g,h=c.content;if(c.processed)return void e.push(c);for(;h&&(g=a.prototype.match(h));)g.index&&e.push({content:h.substring(0,g.index)}),b=f.createInstance(d,g.content,g.options),e.push({content:'<p data-wpview-marker="'+b.encodedText+'">'+b.text+"</p>",processed:!0}),h=h.slice(g.index+g.content.length);h&&e.push({content:h})})}),_.pluck(e,"content").join("")},createInstance:function(a,b,c){var d,f,g=this.get(a);return b=tinymce.DOM.decode(b),d=encodeURIComponent(b),(f=this.getInstance(d))?f:(c=_.extend(c||{},{text:b,encodedText:d}),e[d]=new g(c))},getInstance:function(a){return"string"==typeof a?e[encodeURIComponent(a)]:e[c(a).attr("data-wpview-text")]},getText:function(a){return decodeURIComponent(c(a).attr("data-wpview-text")||"")},render:function(a){_.each(e,function(b){b.render(a)})},update:function(a,b,c){var d=this.getInstance(c);d&&d.update(a,b,c)},edit:function(a,b){var c=this.getInstance(b);c&&c.edit&&c.edit(c.text,function(d){c.update(d,a,b)})},remove:function(a,b){var c=this.getInstance(b);c&&c.remove(a,b)}},b.mce.View=function(a){_.extend(this,a),this.initialize()},b.mce.View.extend=Backbone.View.extend,_.extend(b.mce.View.prototype,{content:null,loader:!0,initialize:function(){},getContent:function(){return this.content},render:function(a,b){null!=a&&(this.content=a),a=this.getContent(),(this.loader||a)&&(b&&this.unbind(),this.replaceMarkers(),a?this.setContent(a,function(a,b,d){c(b).data("rendered",!0),this.bindNode.call(this,a,b,d)},b?null:!1):this.setLoader())},bindNode:function(){},unbindNode:function(){},unbind:function(){this.getNodes(function(a,b,d){this.unbindNode.call(this,a,b,d),c(b).trigger("wp-mce-view-unbind")},!0)},getEditors:function(a){_.each(tinymce.editors,function(b){b.plugins.wpview&&a.call(this,b)},this)},getNodes:function(a,b){this.getEditors(function(d){var e=this;c(d.getBody()).find('[data-wpview-text="'+e.encodedText+'"]').filter(function(){var a;return null==b?!0:(a=c(this).data("rendered")===!0,b?a:!a)}).each(function(){a.call(e,d,this,c(this).find(".wpview-content").get(0))})})},getMarkers:function(a){this.getEditors(function(b){var d=this;c(b.getBody()).find('[data-wpview-marker="'+this.encodedText+'"]').each(function(){a.call(d,b,this)})})},replaceMarkers:function(){this.getMarkers(function(a,b){return c(b).text()!==this.text?void a.dom.setAttrib(b,"data-wpview-marker",null):void a.dom.replace(a.dom.createFragment('<div class="wpview-wrap" data-wpview-text="'+this.encodedText+'" data-wpview-type="'+this.type+'"><p class="wpview-selection-before"> </p><div class="wpview-body" contenteditable="false"><div class="wpview-content wpview-type-'+this.type+'"></div></div><p class="wpview-selection-after"> </p></div>'),b)})},removeMarkers:function(){this.getMarkers(function(a,b){a.dom.setAttrib(b,"data-wpview-marker",null)})},setContent:function(a,b,c){_.isObject(a)&&-1!==a.body.indexOf("<script")?this.setIframes(a.head||"",a.body,b,c):_.isString(a)&&-1!==a.indexOf("<script")?this.setIframes("",a,b,c):this.getNodes(function(c,d,e){a=a.body||a,-1!==a.indexOf("<iframe")&&(a+='<div class="wpview-overlay"></div>'),e.innerHTML="",e.appendChild(_.isString(a)?c.dom.createFragment(a):a),b&&b.call(this,c,d,e)},c)},setIframes:function(b,d,e,f){var g=a.MutationObserver||a.WebKitMutationObserver||a.MozMutationObserver,h=this;this.getNodes(function(a,f,i){var j=a.dom,k="",l=a.getBody().className||"",m=a.getDoc().getElementsByTagName("head")[0];tinymce.each(j.$('link[rel="stylesheet"]',m),function(a){a.href&&-1===a.href.indexOf("skins/lightgray/content.min.css")&&-1===a.href.indexOf("skins/wordpress/wp-content.css")&&(k+=j.getOuterHTML(a))}),setTimeout(function(){function m(){var b,d;o.contentWindow&&(b=c(o),d=c(p.body).height(),b.height()!==d&&(b.height(d),a.nodeChanged()))}function n(){p.body.className=a.getBody().className}var o,p,q,r;if(i.innerHTML="",o=j.add(i,"iframe",{src:tinymce.Env.ie?'javascript:""':"",frameBorder:"0",allowTransparency:"true",scrolling:"no","class":"wpview-sandbox",style:{width:"100%",display:"block"}}),j.add(i,"div",{"class":"wpview-overlay"}),p=o.contentWindow.document,p.open(),p.write('<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />'+b+k+'<style>html {background: transparent;padding: 0;margin: 0;}body#wpview-iframe-sandbox {background: transparent;padding: 1px 0 !important;margin: -1px 0 0 !important;}body#wpview-iframe-sandbox:before,body#wpview-iframe-sandbox:after {display: none;content: "";}</style></head><body id="wpview-iframe-sandbox" class="'+l+'">'+d+"</body></html>"),p.close(),c(o.contentWindow).oLine truncated window.wp=window.wp||{},function(a,b,c){"use strict";var d={},e={};b.mce=b.mce||{},b.mce.views={register:function(a,c){d[a]=b.mce.View.extend(_.extend(c,{type:a}))},unregister:function(a){delete d[a]},get:function(a){return d[a]},unbind:function(){_.each(e,function(a){a.unbind()})},setMarkers:function(a){var b,c,e=[{content:a}],f=this;return _.each(d,function(a,d){c=e.slice(),e=[],_.each(c,function(c){var g,h,i=c.content;if(c.processed)return void e.push(c);for(;i&&(g=a.prototype.match(i));)g.index&&e.push({content:i.substring(0,g.index)}),b=f.createInstance(d,g.content,g.options),h=b.loader?".":b.text,e.push({content:'<p data-wpview-marker="'+b.encodedText+'">'+h+"</p>",processed:!0}),i=i.slice(g.index+g.content.length);i&&e.push({content:i})})}),a=_.pluck(e,"content").join(""),a.replace(/<p>\s*<p data-wpview-marker=/g,"<p data-wpview-marker=").replace(/<\/p>\s*<\/p>/g,"</p>")},createInstance:function(a,b,c){var d,f,g=this.get(a);return b=tinymce.DOM.decode(b),(f=this.getInstance(b))?f:(d=encodeURIComponent(b),c=_.extend(c||{},{text:b,encodedText:d}),e[d]=new g(c))},getInstance:function(a){return"string"==typeof a?e[encodeURIComponent(a)]:e[c(a).attr("data-wpview-text")]},getText:function(a){return decodeURIComponent(c(a).attr("data-wpview-text")||"")},render:function(a){_.each(e,function(b){b.render(a)})},update:function(a,b,c){var d=this.getInstance(c);d&&d.update(a,b,c)},edit:function(a,b){var c=this.getInstance(b);c&&c.edit&&c.edit(c.text,function(d){c.update(d,a,b)})},remove:function(a,b){var c=this.getInstance(b);c&&c.remove(a,b)}},b.mce.View=function(a){_.extend(this,a),this.initialize()},b.mce.View.extend=Backbone.View.extend,_.extend(b.mce.View.prototype,{content:null,loader:!0,initialize:function(){},getContent:function(){return this.content},render:function(a,b){null!=a&&(this.content=a),a=this.getContent(),(this.loader||a)&&(b&&this.unbind(),this.replaceMarkers(),a?this.setContent(a,function(a,b,d){c(b).data("rendered",!0),this.bindNode.call(this,a,b,d)},b?null:!1):this.setLoader())},bindNode:function(){},unbindNode:function(){},unbind:function(){this.getNodes(function(a,b,d){this.unbindNode.call(this,a,b,d),c(b).trigger("wp-mce-view-unbind")},!0)},getEditors:function(a){_.each(tinymce.editors,function(b){b.plugins.wpview&&a.call(this,b)},this)},getNodes:function(a,b){this.getEditors(function(d){var e=this;c(d.getBody()).find('[data-wpview-text="'+e.encodedText+'"]').filter(function(){var a;return null==b?!0:(a=c(this).data("rendered")===!0,b?a:!a)}).each(function(){a.call(e,d,this,c(this).find(".wpview-content").get(0))})})},getMarkers:function(a){this.getEditors(function(b){var d=this;c(b.getBody()).find('[data-wpview-marker="'+this.encodedText+'"]').each(function(){a.call(d,b,this)})})},replaceMarkers:function(){this.getMarkers(function(a,b){return this.loader||c(b).text()===this.text?void a.dom.replace(a.dom.createFragment('<div class="wpview-wrap" data-wpview-text="'+this.encodedText+'" data-wpview-type="'+this.type+'"><p class="wpview-selection-before"> </p><div class="wpview-body" contenteditable="false"><div class="wpview-content wpview-type-'+this.type+'"></div></div><p class="wpview-selection-after"> </p></div>'),b):void a.dom.setAttrib(b,"data-wpview-marker",null)})},removeMarkers:function(){this.getMarkers(function(a,b){a.dom.setAttrib(b,"data-wpview-marker",null)})},setContent:function(a,b,c){_.isObject(a)&&-1!==a.body.indexOf("<script")?this.setIframes(a.head||"",a.body,b,c):_.isString(a)&&-1!==a.indexOf("<script")?this.setIframes("",a,b,c):this.getNodes(function(c,d,e){a=a.body||a,-1!==a.indexOf("<iframe")&&(a+='<div class="wpview-overlay"></div>'),e.innerHTML="",e.appendChild(_.isString(a)?c.dom.createFragment(a):a),b&&b.call(this,c,d,e)},c)},setIframes:function(b,d,e,f){var g=a.MutationObserver||a.WebKitMutationObserver||a.MozMutationObserver,h=this;this.getNodes(function(a,f,i){var j=a.dom,k="",l=a.getBody().className||"",m=a.getDoc().getElementsByTagName("head")[0];tinymce.each(j.$('link[rel="stylesheet"]',m),function(a){a.href&&-1===a.href.indexOf("skins/lightgray/content.min.css")&&-1===a.href.indexOf("skins/wordpress/wp-content.css")&&(k+=j.getOuterHTML(a))}),setTimeout(function(){function m(){var b,d;o.contentWindow&&(b=c(o),d=c(p.body).height(),b.height()!==d&&(b.height(d),a.nodeChanged()))}function n(){p.body.className=a.getBody().className}var o,p,q,r;if(i.innerHTML="",o=j.add(i,"iframe",{src:tinymce.Env.ie?'javascript:""':"",frameBorder:"0",allowTransparency:"true",scrolling:"no","class":"wpview-sandbox",style:{width:"100%",display:"block"}}),j.add(i,"div",{"class":"wpview-overlay"}),p=o.contentWindow.document,p.open(),p.write('<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />'+b+k+'<style>html {background: transparent;padding: 0;margin: 0;}body#wpview-iframe-sandbox {background: transparent;padding: 1px 0 !important;margin: -1px 0 0 !important;}body#wpview-iframe-sandbox:before,body#wpview-iframe-sandbox:after {displaLine truncated
+1 -1
View File
@@ -704,7 +704,7 @@ VideoDetails = MediaDetails.extend({
if ( -1 === content.indexOf( attachment.get( 'url' ) ) ) { if ( -1 === content.indexOf( attachment.get( 'url' ) ) ) {
content += [ content += [
'<track srclang="en" label="English"kind="subtitles" src="', '<track srclang="en" label="English" kind="subtitles" src="',
attachment.get( 'url' ), attachment.get( 'url' ),
'" />' '" />'
].join(''); ].join('');
+1 -1
View File
@@ -1 +1 @@
!function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a){var b=wp.media,c=window._wpmejsSettings||{},d=window._wpMediaViewsL10n||{};wp.media.mixin={mejsSettings:c,removeAllPlayers:function(){var a;if(window.mejs&&window.mejs.players)for(a in window.mejs.players)window.mejs.players[a].pause(),this.removePlayer(window.mejs.players[a])},removePlayer:function(a){var b,c;if(a.options){for(b in a.options.features)if(c=a.options.features[b],a["clean"+c])try{a["clean"+c](a)}catch(d){}a.isDynamic||a.$node.remove(),"native"!==a.media.pluginType&&a.$media.remove(),delete window.mejs.players[a.id],a.container.remove(),a.globalUnbind(),delete a.node.player}},unsetPlayers:function(){this.players&&this.players.length&&(_.each(this.players,function(a){a.pause(),wp.media.mixin.removePlayer(a)}),this.players=[])}},wp.media.playlist=new wp.media.collection({tag:"playlist",editTitle:d.editPlaylistTitle,defaults:{id:wp.media.view.settings.post.id,style:"light",tracklist:!0,tracknumbers:!0,images:!0,artists:!0,type:"audio"}}),wp.media.audio={coerce:wp.media.coerce,defaults:{id:wp.media.view.settings.post.id,src:"",loop:!1,autoplay:!1,preload:"none",width:400},edit:function(a){var b,c=wp.shortcode.next("audio",a).shortcode;return b=wp.media({frame:"audio",state:"audio-details",metadata:_.defaults(c.attrs.named,this.defaults)})},shortcode:function(a){var b;return _.each(this.defaults,function(b,c){a[c]=this.coerce(a,c),b===a[c]&&delete a[c]},this),b=a.content,delete a.content,new wp.shortcode({tag:"audio",attrs:a,content:b})}},wp.media.video={coerce:wp.media.coerce,defaults:{id:wp.media.view.settings.post.id,src:"",poster:"",loop:!1,autoplay:!1,preload:"metadata",content:"",width:640,height:360},edit:function(a){var b,c,d=wp.shortcode.next("video",a).shortcode;return c=d.attrs.named,c.content=d.content,b=wp.media({frame:"video",state:"video-details",metadata:_.defaults(c,this.defaults)})},shortcode:function(a){var b;return _.each(this.defaults,function(b,c){a[c]=this.coerce(a,c),b===a[c]&&delete a[c]},this),b=a.content,delete a.content,new wp.shortcode({tag:"video",attrs:a,content:b})}},b.model.PostMedia=a("./models/post-media.js"),b.controller.AudioDetails=a("./controllers/audio-details.js"),b.controller.VideoDetails=a("./controllers/video-details.js"),b.view.MediaFrame.MediaDetails=a("./views/frame/media-details.js"),b.view.MediaFrame.AudioDetails=a("./views/frame/audio-details.js"),b.view.MediaFrame.VideoDetails=a("./views/frame/video-details.js"),b.view.MediaDetails=a("./views/media-details.js"),b.view.AudioDetails=a("./views/audio-details.js"),b.view.VideoDetails=a("./views/video-details.js")},{"./controllers/audio-details.js":2,"./controllers/video-details.js":3,"./models/post-media.js":4,"./views/audio-details.js":5,"./views/frame/audio-details.js":6,"./views/frame/media-details.js":7,"./views/frame/video-details.js":8,"./views/media-details.js":9,"./views/video-details.js":10}],2:[function(a,b){var c,d=wp.media.controller.State,e=wp.media.view.l10n;c=d.extend({defaults:{id:"audio-details",toolbar:"audio-details",title:e.audioDetailsTitle,content:"audio-details",menu:"audio-details",router:!1,priority:60},initialize:function(a){this.media=a.media,d.prototype.initialize.apply(this,arguments)}}),b.exports=c},{}],3:[function(a,b){var c,d=wp.media.controller.State,e=wp.media.view.l10n;c=d.extend({defaults:{id:"video-details",toolbar:"video-details",title:e.videoDetailsTitle,content:"video-details",menu:"video-details",router:!1,priority:60},initialize:function(a){this.media=a.media,d.prototype.initialize.apply(this,arguments)}}),b.exports=c},{}],4:[function(a,b){var c=Backbone.Model.extend({initialize:function(){this.attachment=!1},setSource:function(a){this.attachment=a,this.extension=a.get("filename").split(".").pop(),this.get("src")&&this.extension===this.get("src").split(".").pop()&&this.unset("src"),_.contains(wp.media.view.settings.embedExts,this.extension)?this.set(this.extension,this.attachment.get("url")):this.unset(this.extension)},changeAttachment:function(a){this.setSource(a),this.unset("src"),_.each(_.without(wp.media.view.settings.embedExts,this.extension),function(a){this.unset(a)},this)}});b.exports=c},{}],5:[function(a,b){var c,d=wp.media.view.MediaDetails;c=d.extend({className:"audio-details",template:wp.template("audio-details"),setMedia:function(){var a=this.$(".wp-audio-shortcode");return a.find("source").length?(a.is(":hidden")&&a.show(),this.media=d.prepareSrc(a.get(0))):(a.hide(),this.media=!1),this}}),b.exports=c},{}],6:[function(a,b){var c,d=wp.media.view.MediaFrame.MediaDetails,e=wp.media.controller.MediaLibrarLine truncated !function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);var j=new Error("Cannot find module '"+g+"'");throw j.code="MODULE_NOT_FOUND",j}var k=c[g]={exports:{}};b[g][0].call(k.exports,function(a){var c=b[g][1][a];return e(c?c:a)},k,k.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a){var b=wp.media,c=window._wpmejsSettings||{},d=window._wpMediaViewsL10n||{};wp.media.mixin={mejsSettings:c,removeAllPlayers:function(){var a;if(window.mejs&&window.mejs.players)for(a in window.mejs.players)window.mejs.players[a].pause(),this.removePlayer(window.mejs.players[a])},removePlayer:function(a){var b,c;if(a.options){for(b in a.options.features)if(c=a.options.features[b],a["clean"+c])try{a["clean"+c](a)}catch(d){}a.isDynamic||a.$node.remove(),"native"!==a.media.pluginType&&a.$media.remove(),delete window.mejs.players[a.id],a.container.remove(),a.globalUnbind(),delete a.node.player}},unsetPlayers:function(){this.players&&this.players.length&&(_.each(this.players,function(a){a.pause(),wp.media.mixin.removePlayer(a)}),this.players=[])}},wp.media.playlist=new wp.media.collection({tag:"playlist",editTitle:d.editPlaylistTitle,defaults:{id:wp.media.view.settings.post.id,style:"light",tracklist:!0,tracknumbers:!0,images:!0,artists:!0,type:"audio"}}),wp.media.audio={coerce:wp.media.coerce,defaults:{id:wp.media.view.settings.post.id,src:"",loop:!1,autoplay:!1,preload:"none",width:400},edit:function(a){var b,c=wp.shortcode.next("audio",a).shortcode;return b=wp.media({frame:"audio",state:"audio-details",metadata:_.defaults(c.attrs.named,this.defaults)})},shortcode:function(a){var b;return _.each(this.defaults,function(b,c){a[c]=this.coerce(a,c),b===a[c]&&delete a[c]},this),b=a.content,delete a.content,new wp.shortcode({tag:"audio",attrs:a,content:b})}},wp.media.video={coerce:wp.media.coerce,defaults:{id:wp.media.view.settings.post.id,src:"",poster:"",loop:!1,autoplay:!1,preload:"metadata",content:"",width:640,height:360},edit:function(a){var b,c,d=wp.shortcode.next("video",a).shortcode;return c=d.attrs.named,c.content=d.content,b=wp.media({frame:"video",state:"video-details",metadata:_.defaults(c,this.defaults)})},shortcode:function(a){var b;return _.each(this.defaults,function(b,c){a[c]=this.coerce(a,c),b===a[c]&&delete a[c]},this),b=a.content,delete a.content,new wp.shortcode({tag:"video",attrs:a,content:b})}},b.model.PostMedia=a("./models/post-media.js"),b.controller.AudioDetails=a("./controllers/audio-details.js"),b.controller.VideoDetails=a("./controllers/video-details.js"),b.view.MediaFrame.MediaDetails=a("./views/frame/media-details.js"),b.view.MediaFrame.AudioDetails=a("./views/frame/audio-details.js"),b.view.MediaFrame.VideoDetails=a("./views/frame/video-details.js"),b.view.MediaDetails=a("./views/media-details.js"),b.view.AudioDetails=a("./views/audio-details.js"),b.view.VideoDetails=a("./views/video-details.js")},{"./controllers/audio-details.js":2,"./controllers/video-details.js":3,"./models/post-media.js":4,"./views/audio-details.js":5,"./views/frame/audio-details.js":6,"./views/frame/media-details.js":7,"./views/frame/video-details.js":8,"./views/media-details.js":9,"./views/video-details.js":10}],2:[function(a,b){var c,d=wp.media.controller.State,e=wp.media.view.l10n;c=d.extend({defaults:{id:"audio-details",toolbar:"audio-details",title:e.audioDetailsTitle,content:"audio-details",menu:"audio-details",router:!1,priority:60},initialize:function(a){this.media=a.media,d.prototype.initialize.apply(this,arguments)}}),b.exports=c},{}],3:[function(a,b){var c,d=wp.media.controller.State,e=wp.media.view.l10n;c=d.extend({defaults:{id:"video-details",toolbar:"video-details",title:e.videoDetailsTitle,content:"video-details",menu:"video-details",router:!1,priority:60},initialize:function(a){this.media=a.media,d.prototype.initialize.apply(this,arguments)}}),b.exports=c},{}],4:[function(a,b){var c=Backbone.Model.extend({initialize:function(){this.attachment=!1},setSource:function(a){this.attachment=a,this.extension=a.get("filename").split(".").pop(),this.get("src")&&this.extension===this.get("src").split(".").pop()&&this.unset("src"),_.contains(wp.media.view.settings.embedExts,this.extension)?this.set(this.extension,this.attachment.get("url")):this.unset(this.extension)},changeAttachment:function(a){this.setSource(a),this.unset("src"),_.each(_.without(wp.media.view.settings.embedExts,this.extension),function(a){this.unset(a)},this)}});b.exports=c},{}],5:[function(a,b){var c,d=wp.media.view.MediaDetails;c=d.extend({className:"audio-details",template:wp.template("audio-details"),setMedia:function(){var a=this.$(".wp-audio-shortcode");return a.find("source").length?(a.is(":hidden")&&a.show(),this.media=d.prepareSrc(a.get(0))):(a.hide(),this.media=!1),this}}),b.exports=c},{}],6:[function(a,b){var c,d=wp.media.view.MediaFrame.MediaDetails,e=wp.media.controller.MediaLibrarLine truncated
+22 -23
View File
@@ -152,19 +152,20 @@ tinymce.PluginManager.add( 'wpview', function( editor ) {
}; };
} }
// Remove the content of view wrappers from HTML string function resetViewsCallback( match, viewText ) {
function emptyViews( content ) { return '<p>' + window.decodeURIComponent( viewText ) + '</p>';
content = content.replace( /<div[^>]+data-wpview-text="([^"]+)"[^>]*>[\s\S]+?wpview-selection-after[^>]+>[^<>]*<\/p>\s*<\/div>/g, function( all, match ) { }
return '<p>' + window.decodeURIComponent( match ) + '</p>';
});
return content.replace( / data-wpview-marker="[^"]+"/g, '' ); // Replace the view tags with the view string
function resetViews( content ) {
return content.replace( /<div[^>]+data-wpview-text="([^"]+)"[^>]*>(?:[\s\S]+?wpview-selection-after[^>]+>[^<>]*<\/p>\s*|\.)<\/div>/g, resetViewsCallback )
.replace( /<p [^>]*?data-wpview-marker="([^"]+)"[^>]*>[\s\S]*?<\/p>/g, resetViewsCallback );
} }
// Prevent adding undo levels on changes inside a view wrapper // Prevent adding undo levels on changes inside a view wrapper
editor.on( 'BeforeAddUndo', function( event ) { editor.on( 'BeforeAddUndo', function( event ) {
if ( event.level.content ) { if ( event.level.content ) {
event.level.content = emptyViews( event.level.content ); event.level.content = resetViews( event.level.content );
} }
}); });
@@ -348,31 +349,29 @@ tinymce.PluginManager.add( 'wpview', function( editor ) {
} }
}); });
function resetViews( rootNode ) { // Empty the wpview wrap and marker nodes
// Replace view nodes function emptyViewNodes( rootNode ) {
$( 'div[data-wpview-text]', rootNode ).each( function( i, node ) { $( 'div[data-wpview-text], p[data-wpview-marker]', rootNode ).each( function( i, node ) {
var $node = $( node ), node.innerHTML = '.';
text = window.decodeURIComponent( $node.attr( 'data-wpview-text' ) || '' );
if ( text && node.parentNode ) {
$node.replaceWith( $( editor.dom.create('p') ).text( text ) );
}
}); });
// Remove marker attributes
$( 'p[data-wpview-marker]', rootNode ).attr( 'data-wpview-marker', null );
} }
// Run that before the DOM cleanup
editor.on( 'PreProcess', function( event ) { editor.on( 'PreProcess', function( event ) {
// Replace the view nodes with their text in the DOM clone. emptyViewNodes( event.node );
resetViews( event.node );
}, true ); }, true );
editor.on( 'hide', function() { editor.on( 'hide', function() {
// Replace the view nodes with their text directly in the editor body.
wp.mce.views.unbind(); wp.mce.views.unbind();
deselect(); deselect();
resetViews( editor.getBody() ); emptyViewNodes();
});
editor.on( 'PostProcess', function( event ) {
if ( event.content ) {
event.content = event.content.replace( /<div [^>]*?data-wpview-text="([^"]+)"[^>]*>[\s\S]*?<\/div>/g, resetViewsCallback )
.replace( /<p [^>]*?data-wpview-marker="([^"]+)"[^>]*>[\s\S]*?<\/p>/g, resetViewsCallback );
}
}); });
// Excludes arrow keys, delete, backspace, enter, space bar. // Excludes arrow keys, delete, backspace, enter, space bar.
+1 -1
View File
@@ -1 +1 @@
tinymce.PluginManager.add("wpview",function(a){function b(a){return c(a,"wpview-wrap")}function c(a,b){for(;a&&a.parentNode;){if(a.className&&-1!==(" "+a.className+" ").indexOf(" "+b+" "))return a;a=a.parentNode}return!1}function d(a){a.stopPropagation()}function e(b,c){var d=b?"before":"after",e=b?0:1;i(),a.selection.setCursorLocation(a.dom.select(".wpview-selection-"+d,c)[0],e),a.nodeChanged()}function f(b,c,d){var f=a.dom,g=f.create("p");v.ie&&v.ie<11||(g.innerHTML='<br data-mce-bogus="1">'),c?b.parentNode.insertBefore(g,b):f.insertAfter(g,b),i(),c&&d===w.ENTER?e(c,b):a.selection.setCursorLocation(g,0),a.nodeChanged()}function g(b){a.undoManager.transact(function(){f(b),wp.mce.views.remove(a,b)})}function h(b){var c,e=a.dom;b&&(b!==m&&(a.getBody().focus(),i(),m=b,e.setAttrib(b,"data-mce-selected",1),c=e.create("div",{"class":"wpview-clipboard",contenteditable:"true"},wp.mce.views.getText(b)),a.dom.select(".wpview-body",b)[0].appendChild(c),e.bind(c,"beforedeactivate focusin focusout",d),e.bind(m,"beforedeactivate focusin focusout",d),B?a.selection.select(c):a.selection.select(c,!0)),a.nodeChanged(),a.fire("wpview-selected",b))}function i(){var b,c=a.dom;m&&(b=a.dom.select(".wpview-clipboard",m)[0],c.unbind(b),c.remove(b),c.unbind(m,"beforedeactivate focusin focusout click mouseup",d),c.setAttrib(m,"data-mce-selected",null)),m=null}function j(a){return a=a.replace(/<div[^>]+data-wpview-text="([^"]+)"[^>]*>[\s\S]+?wpview-selection-after[^>]+>[^<>]*<\/p>\s*<\/div>/g,function(a,b){return"<p>"+window.decodeURIComponent(b)+"</p>"}),a.replace(/ data-wpview-marker="[^"]+"/g,"")}function k(b){u("div[data-wpview-text]",b).each(function(b,c){var d=u(c),e=window.decodeURIComponent(d.attr("data-wpview-text")||"");e&&c.parentNode&&d.replaceWith(u(a.dom.create("p")).text(e))}),u("p[data-wpview-marker]",b).attr("data-wpview-marker",null)}function l(a){return 47>=a&&a!==w.SPACEBAR&&a!==w.ENTER&&a!==w.DELETE&&a!==w.BACKSPACE&&(37>a||a>40)||a>=224||a>=144&&150>=a||a>=91&&93>=a||a>=112&&135>=a}var m,n,o,p,q,r,s,t,u=a.$,v=tinymce.Env,w=tinymce.util.VK,x=tinymce.dom.TreeWalker,y=!1,z=!0,A=function(){return!1},B=/iPad|iPod|iPhone/.test(navigator.userAgent);return"undefined"!=typeof wp&&wp.mce?(a.on("BeforeAddUndo",function(a){a.level.content&&(a.level.content=j(a.level.content))}),a.on("BeforeSetContent",function(b){var c;if(b.selection||wp.mce.views.unbind(),b.content){if(!b.load&&(m&&g(m),c=a.selection.getNode(),c&&c!==a.getBody()&&/^\s*https?:\/\/\S+\s*$/i.test(b.content))){if(c=a.dom.getParent(c,"p"),!c||!/^[\s\uFEFF\u00A0]*$/.test(u(c).text()||""))return;c.innerHTML=""}b.content=wp.mce.views.setMarkers(b.content)}}),a.on("pastePreProcess",function(a){var b=a.content;b&&(b=tinymce.trim(b.replace(/<[^>]+>/g,"")),/^https?:\/\/\S+$/i.test(b)&&(a.content=b))}),a.on("SetContent",function(){wp.mce.views.render()}),a.on("click",function(c){var d,f,g,h=c.clientX,i=c.clientY,j=a.getBody(),k=j.getBoundingClientRect(),l=j.firstChild,m=j.lastChild;l&&m&&(d=l.getBoundingClientRect(),f=m.getBoundingClientRect(),i<d.top&&(g=b(l))?(e(!0,g),c.preventDefault()):i>f.bottom&&(g=b(m))?(e(!1,g),c.preventDefault()):(h<k.left||h>k.right)&&tinymce.each(a.dom.select(".wpview-wrap"),function(a){var b=a.getBoundingClientRect();return i<b.top?!1:i>=b.top&&i<=b.bottom?(h<k.left?(e(!0,a),c.preventDefault()):h>k.right&&(e(!1,a),c.preventDefault()),!1):void 0}))}),a.on("init",function(){var c=!1,d=a.selection,e=window.MutationObserver||window.WebKitMutationObserver;a.on("BeforeSetContent",function(){var c,e,f=b(d.getNode());f&&(!f.nextSibling||b(f.nextSibling)?(e=a.getDoc().createTextNode(""),a.dom.insertAfter(e,f)):(c=new x(f.nextSibling,f.nextSibling),e=c.next()),d.select(e),d.collapse(!0))}),a.dom.bind(a.getDoc(),"touchmove",function(){c=!0}),a.on("mousedown mouseup click touchend",function(a){var d=b(a.target);return z=!1,d?(a.stopImmediatePropagation(),a.preventDefault(),"touchend"===a.type&&c?c=!1:h(d),!1):(("touchend"===a.type||"mousedown"===a.type)&&i(),void("touchend"===a.type&&c&&(c=!1)))},!0),e&&new e(function(){a.fire("wp-body-class-change")}).observe(a.getBody(),{attributes:!0,attributeFilter:["class"]})}),a.on("PreProcess",function(a){k(a.node)},!0),a.on("hide",function(){wp.mce.views.unbind(),i(),k(a.getBody())}),a.on("keydown",function(c){var d,j,k,n,p,q,r,s=c.keyCode,t=a.dom,u=a.selection;if(m){if((c.metaKey||c.ctrlKey)&&s!==w.BACKSPACE&&86!==s||s>=112&&123>=s)return void((c.metaKey||c.ctrlKey)&&88===s&&(y=m));if(j=b(u.getNode()),j!==m)return void i();s===w.LEFT?(e(!0,j),c.preventDefault()):s===w.UP?(j.previousSibling?b(j.previousSibling)?e(!0,j.previousSibling):(i(),u.select(j.previousSibling,!0),u.collapse()):e(!0,j),c.preventDefault()):s===w.RIGHT?(e(!1,j),c.preventDefault()):s===w.DOWN?(j.nextSibling?b(j.nextSibling)?e(!1,j.nextSibling):(i(),u.setCursorLocation(j.nextSibling,0)):e(!1,j),c.preventDefault()):l(s)||(g(m),(s===w.ENTER||s===w.DELETE||s===w.BACKSPACE)&&c.preventDefault())}else{if(c.metaKey||c.ctrlKey||s>=112&&123>=s)returnLine truncated tinymce.PluginManager.add("wpview",function(a){function b(a){return c(a,"wpview-wrap")}function c(a,b){for(;a&&a.parentNode;){if(a.className&&-1!==(" "+a.className+" ").indexOf(" "+b+" "))return a;a=a.parentNode}return!1}function d(a){a.stopPropagation()}function e(b,c){var d=b?"before":"after",e=b?0:1;i(),a.selection.setCursorLocation(a.dom.select(".wpview-selection-"+d,c)[0],e),a.nodeChanged()}function f(b,c,d){var f=a.dom,g=f.create("p");w.ie&&w.ie<11||(g.innerHTML='<br data-mce-bogus="1">'),c?b.parentNode.insertBefore(g,b):f.insertAfter(g,b),i(),c&&d===x.ENTER?e(c,b):a.selection.setCursorLocation(g,0),a.nodeChanged()}function g(b){a.undoManager.transact(function(){f(b),wp.mce.views.remove(a,b)})}function h(b){var c,e=a.dom;b&&(b!==n&&(a.getBody().focus(),i(),n=b,e.setAttrib(b,"data-mce-selected",1),c=e.create("div",{"class":"wpview-clipboard",contenteditable:"true"},wp.mce.views.getText(b)),a.dom.select(".wpview-body",b)[0].appendChild(c),e.bind(c,"beforedeactivate focusin focusout",d),e.bind(n,"beforedeactivate focusin focusout",d),C?a.selection.select(c):a.selection.select(c,!0)),a.nodeChanged(),a.fire("wpview-selected",b))}function i(){var b,c=a.dom;n&&(b=a.dom.select(".wpview-clipboard",n)[0],c.unbind(b),c.remove(b),c.unbind(n,"beforedeactivate focusin focusout click mouseup",d),c.setAttrib(n,"data-mce-selected",null)),n=null}function j(a,b){return"<p>"+window.decodeURIComponent(b)+"</p>"}function k(a){return a.replace(/<div[^>]+data-wpview-text="([^"]+)"[^>]*>(?:[\s\S]+?wpview-selection-after[^>]+>[^<>]*<\/p>\s*|\.)<\/div>/g,j).replace(/<p [^>]*?data-wpview-marker="([^"]+)"[^>]*>[\s\S]*?<\/p>/g,j)}function l(a){v("div[data-wpview-text], p[data-wpview-marker]",a).each(function(a,b){b.innerHTML="."})}function m(a){return 47>=a&&a!==x.SPACEBAR&&a!==x.ENTER&&a!==x.DELETE&&a!==x.BACKSPACE&&(37>a||a>40)||a>=224||a>=144&&150>=a||a>=91&&93>=a||a>=112&&135>=a}var n,o,p,q,r,s,t,u,v=a.$,w=tinymce.Env,x=tinymce.util.VK,y=tinymce.dom.TreeWalker,z=!1,A=!0,B=function(){return!1},C=/iPad|iPod|iPhone/.test(navigator.userAgent);return"undefined"!=typeof wp&&wp.mce?(a.on("BeforeAddUndo",function(a){a.level.content&&(a.level.content=k(a.level.content))}),a.on("BeforeSetContent",function(b){var c;if(b.selection||wp.mce.views.unbind(),b.content){if(!b.load&&(n&&g(n),c=a.selection.getNode(),c&&c!==a.getBody()&&/^\s*https?:\/\/\S+\s*$/i.test(b.content))){if(c=a.dom.getParent(c,"p"),!c||!/^[\s\uFEFF\u00A0]*$/.test(v(c).text()||""))return;c.innerHTML=""}b.content=wp.mce.views.setMarkers(b.content)}}),a.on("pastePreProcess",function(a){var b=a.content;b&&(b=tinymce.trim(b.replace(/<[^>]+>/g,"")),/^https?:\/\/\S+$/i.test(b)&&(a.content=b))}),a.on("SetContent",function(){wp.mce.views.render()}),a.on("click",function(c){var d,f,g,h=c.clientX,i=c.clientY,j=a.getBody(),k=j.getBoundingClientRect(),l=j.firstChild,m=j.lastChild;l&&m&&(d=l.getBoundingClientRect(),f=m.getBoundingClientRect(),i<d.top&&(g=b(l))?(e(!0,g),c.preventDefault()):i>f.bottom&&(g=b(m))?(e(!1,g),c.preventDefault()):(h<k.left||h>k.right)&&tinymce.each(a.dom.select(".wpview-wrap"),function(a){var b=a.getBoundingClientRect();return i<b.top?!1:i>=b.top&&i<=b.bottom?(h<k.left?(e(!0,a),c.preventDefault()):h>k.right&&(e(!1,a),c.preventDefault()),!1):void 0}))}),a.on("init",function(){var c=!1,d=a.selection,e=window.MutationObserver||window.WebKitMutationObserver;a.on("BeforeSetContent",function(){var c,e,f=b(d.getNode());f&&(!f.nextSibling||b(f.nextSibling)?(e=a.getDoc().createTextNode(""),a.dom.insertAfter(e,f)):(c=new y(f.nextSibling,f.nextSibling),e=c.next()),d.select(e),d.collapse(!0))}),a.dom.bind(a.getDoc(),"touchmove",function(){c=!0}),a.on("mousedown mouseup click touchend",function(a){var d=b(a.target);return A=!1,d?(a.stopImmediatePropagation(),a.preventDefault(),"touchend"===a.type&&c?c=!1:h(d),!1):(("touchend"===a.type||"mousedown"===a.type)&&i(),void("touchend"===a.type&&c&&(c=!1)))},!0),e&&new e(function(){a.fire("wp-body-class-change")}).observe(a.getBody(),{attributes:!0,attributeFilter:["class"]})}),a.on("PreProcess",function(a){l(a.node)},!0),a.on("hide",function(){wp.mce.views.unbind(),i(),l()}),a.on("PostProcess",function(a){a.content&&(a.content=a.content.replace(/<div [^>]*?data-wpview-text="([^"]+)"[^>]*>[\s\S]*?<\/div>/g,j).replace(/<p [^>]*?data-wpview-marker="([^"]+)"[^>]*>[\s\S]*?<\/p>/g,j))}),a.on("keydown",function(c){var d,j,k,l,o,q,r,s=c.keyCode,t=a.dom,u=a.selection;if(n){if((c.metaKey||c.ctrlKey)&&s!==x.BACKSPACE&&86!==s||s>=112&&123>=s)return void((c.metaKey||c.ctrlKey)&&88===s&&(z=n));if(j=b(u.getNode()),j!==n)return void i();s===x.LEFT?(e(!0,j),c.preventDefault()):s===x.UP?(j.previousSibling?b(j.previousSibling)?e(!0,j.previousSibling):(i(),u.select(j.previousSibling,!0),u.collapse()):e(!0,j),c.preventDefault()):s===x.RIGHT?(e(!1,j),c.preventDefault()):s===x.DOWN?(j.nextSibling?b(j.nextSibling)?e(!1,j.nextSibling):(i(),u.setCursorLocation(j.nextSibling,0)):e(!1,j),c.preventDefault()):m(s)||(g(n),(s===x.ENTER||s===x.DELETE||s===x.BACKLine truncated
Binary file not shown.
+1 -1
View File
@@ -1,4 +1,4 @@
// Source: wp-includes/js/twemoji.min.js // Source: wp-includes/js/twemoji.min.js
var twemoji=function(){"use strict";function a(a){return document.createTextNode(a)}function b(a,b){return"".concat(b.base,b.size,"/",a,b.ext)}function c(a,b){for(var d,e,f=a.childNodes,g=f.length;g--;)d=f[g],e=d.nodeType,3===e?b.push(d):1!==e||o.test(d.nodeName)||c(d,b);return b}function d(a,b){return l("️"===b?a.slice(0,-1):3===a.length&&"️"===a.charAt(1)?a.charAt(0)+a.charAt(2):a)}function e(b,e){for(var f,g,h,i,j,k,l,o,p,q,r,s,t,u=c(b,[]),v=u.length;v--;){for(f=!1,g=document.createDocumentFragment(),h=u[v],i=h.nodeValue,k=0;j=n.exec(i);){if(l=j.index,l!==k&&g.appendChild(a(i.slice(k,l))),p=j[0],q=j[1],r=j[2],k=l+p.length,"︎"!==r&&(s=e.callback(d(q,r),e,r))){if(o=new Image,e.imgAttr)for(t in e.imgAttr)o.setAttribute(t,e.imgAttr[t]);o.onerror=m.onerror,o.className=e.className,o.setAttribute("draggable","false"),o.alt=p,o.src=s,f=!0,g.appendChild(o)}o||g.appendChild(a(p)),o=null}f&&(k<i.length&&g.appendChild(a(i.slice(k))),h.parentNode.replaceChild(g,h))}return b}function f(a,b){return j(a,function(a,c,e){var f,g,h="";if("︎"!==e&&(f=b.callback(d(c,e),b,e))){if(b.imgAttr)for(g in b.imgAttr)/draggable|class|alt|src/i.test(g)||(h+=" ".concat(g,'="',b.imgAttr[g],'"'));a="<img ".concat('class="',b.className,'" ','draggable="false" ','alt="',a,'" ','src="',f,'"',h,">")}return a})}function g(a){return"number"==typeof a?a+"x"+a:a}function h(a){var b="string"==typeof a?parseInt(a,16):a;return 65536>b?p(b):(b-=65536,p(55296+(b>>10),56320+(1023&b)))}function i(a,c){return c&&"function"!=typeof c||(c={callback:c}),("string"==typeof a?f:e)(a,{callback:c.callback||b,base:"string"==typeof c.base?c.base:m.base,ext:c.ext||m.ext,size:c.folder||g(c.size||m.size),className:c.className||m.className,imgAttr:c.imgAttr})}function j(a,b){return String(a).replace(n,b)}function k(a){n.lastIndex=0;var b=n.test(a);return n.lastIndex=0,b}function l(a,b){for(var c=[],d=0,e=0,f=0;f<a.length;)d=a.charCodeAt(f++),e?(c.push((65536+(e-55296<<10)+(d-56320)).toString(16)),e=0):d>=55296&&56319>=d?e=d:c.push(d.toString(16));return c.join(b||"-")}var m={base:("https:"===location.protocol?"https:":"http:")+"//twemoji.maxcdn.com/",ext:".png",size:"36x36",className:"emoji",convert:{fromCodePoint:h,toCodePoint:l},onerror:function(){this.parentNode&&this.parentNode.replaceChild(a(this.alt),this)},parse:i,replace:j,test:k},n=/((?:\ud83c\udde8\ud83c\uddf3|\ud83c\uddfa\ud83c\uddf8|\ud83c\uddf7\ud83c\uddfa|\ud83c\uddf0\ud83c\uddf7|\ud83c\uddef\ud83c\uddf5|\ud83c\uddee\ud83c\uddf9|\ud83c\uddec\ud83c\udde7|\ud83c\uddeb\ud83c\uddf7|\ud83c\uddea\ud83c\uddf8|\ud83c\udde9\ud83c\uddea|\u0039\ufe0f?\u20e3|\u0038\ufe0f?\u20e3|\u0037\ufe0f?\u20e3|\u0036\ufe0f?\u20e3|\u0035\ufe0f?\u20e3|\u0034\ufe0f?\u20e3|\u0033\ufe0f?\u20e3|\u0032\ufe0f?\u20e3|\u0031\ufe0f?\u20e3|\u0030\ufe0f?\u20e3|\u0023\ufe0f?\u20e3|\ud83d\udeb3|\ud83d\udeb1|\ud83d\udeb0|\ud83d\udeaf|\ud83d\udeae|\ud83d\udea6|\ud83d\udea3|\ud83d\udea1|\ud83d\udea0|\ud83d\ude9f|\ud83d\ude9e|\ud83d\ude9d|\ud83d\ude9c|\ud83d\ude9b|\ud83d\ude98|\ud83d\ude96|\ud83d\ude94|\ud83d\ude90|\ud83d\ude8e|\ud83d\ude8d|\ud83d\ude8b|\ud83d\ude8a|\ud83d\ude88|\ud83d\ude86|\ud83d\ude82|\ud83d\ude81|\ud83d\ude36|\ud83d\ude34|\ud83d\ude2f|\ud83d\ude2e|\ud83d\ude2c|\ud83d\ude27|\ud83d\ude26|\ud83d\ude1f|\ud83d\ude1b|\ud83d\ude19|\ud83d\ude17|\ud83d\ude15|\ud83d\ude11|\ud83d\ude10|\ud83d\ude0e|\ud83d\ude08|\ud83d\ude07|\ud83d\ude00|\ud83d\udd67|\ud83d\udd66|\ud83d\udd65|\ud83d\udd64|\ud83d\udd63|\ud83d\udd62|\ud83d\udd61|\ud83d\udd60|\ud83d\udd5f|\ud83d\udd5e|\ud83d\udd5d|\ud83d\udd5c|\ud83d\udd2d|\ud83d\udd2c|\ud83d\udd15|\ud83d\udd09|\ud83d\udd08|\ud83d\udd07|\ud83d\udd06|\ud83d\udd05|\ud83d\udd04|\ud83d\udd02|\ud83d\udd01|\ud83d\udd00|\ud83d\udcf5|\ud83d\udcef|\ud83d\udced|\ud83d\udcec|\ud83d\udcb7|\ud83d\udcb6|\ud83d\udcad|\ud83d\udc6d|\ud83d\udc6c|\ud83d\udc65|\ud83d\udc2a|\ud83d\udc16|\ud83d\udc15|\ud83d\udc13|\ud83d\udc10|\ud83d\udc0f|\ud83d\udc0b|\ud83d\udc0a|\ud83d\udc09|\ud83d\udc08|\ud83d\udc07|\ud83d\udc06|\ud83d\udc05|\ud83d\udc04|\ud83d\udc03|\ud83d\udc02|\ud83d\udc01|\ud83d\udc00|\ud83c\udfe4|\ud83c\udfc9|\ud83c\udfc7|\ud83c\udf7c|\ud83c\udf50|\ud83c\udf4b|\ud83c\udf33|\ud83c\udf32|\ud83c\udf1e|\ud83c\udf1d|\ud83c\udf1c|\ud83c\udf1a|\ud83c\udf18|\ud83c\udccf|\ud83c\udd70|\ud83c\udd71|\ud83c\udd7e|\ud83c\udd8e|\ud83c\udd91|\ud83c\udd92|\ud83c\udd93|\ud83c\udd94|\ud83c\udd95|\ud83c\udd96|\ud83c\udd97|\ud83c\udd98|\ud83c\udd99|\ud83c\udd9a|\ud83d\udc77|\ud83d\udec5|\ud83d\udec4|\ud83d\udec3|\ud83d\udec2|\ud83d\udec1|\ud83d\udebf|\ud83d\udeb8|\ud83d\udeb7|\ud83d\udeb5|\ud83c\ude01|\ud83c\ude02|\ud83c\ude32|\ud83c\ude33|\ud83c\ude34|\ud83c\ude35|\ud83c\ude36|\ud83c\ude37|\ud83c\ude38|\ud83c\ude39|\ud83c\ude3a|\ud83c\ude50|\ud83c\ude51|\ud83c\udf00|\ud83c\udf01|\ud83c\udf02|\ud83c\udf03|\ud83c\udf04|\ud83c\udf05|\ud83c\udf06|\ud83c\udf07|\ud83c\udf08|\ud83c\udf09|\ud83c\udf0a|\ud83c\udf0b|\ud83c\udf0c|\ud83c\udf0f|\ud83c\udf11|\ud83c\udf13|\ud83c\udf14|\ud83c\udf15|\ud83c\udf19|\ud83c\udf1b|\ud83c\udf1f|\ud83c\udf2Line truncated var twemoji=function(){"use strict";function a(a){return document.createTextNode(a)}function b(a,b){return"".concat(b.base,b.size,"/",a,b.ext)}function c(a,b){for(var d,e,f=a.childNodes,g=f.length;g--;)d=f[g],e=d.nodeType,3===e?b.push(d):1!==e||o.test(d.nodeName)||c(d,b);return b}function d(a,b){return l("️"===b?a.slice(0,-1):3===a.length&&"️"===a.charAt(1)?a.charAt(0)+a.charAt(2):a)}function e(b,e){for(var f,g,h,i,j,k,l,o,p,q,r,s,t,u=c(b,[]),v=u.length;v--;){for(f=!1,g=document.createDocumentFragment(),h=u[v],i=h.nodeValue,k=0;j=n.exec(i);){if(l=j.index,l!==k&&g.appendChild(a(i.slice(k,l))),p=j[0],q=j[1],r=j[2],k=l+p.length,"︎"!==r&&(s=e.callback(d(q,r),e,r))){if(o=new Image,e.imgAttr)for(t in e.imgAttr)o.setAttribute(t,e.imgAttr[t]);o.onerror=m.onerror,o.className=e.className,o.setAttribute("draggable","false"),o.alt=p,o.src=s,f=!0,g.appendChild(o)}o||g.appendChild(a(p)),o=null}f&&(k<i.length&&g.appendChild(a(i.slice(k))),h.parentNode.replaceChild(g,h))}return b}function f(a,b){return j(a,function(a,c,e){var f,g,h="";if("︎"!==e&&(f=b.callback(d(c,e),b,e))){if(b.imgAttr)for(g in b.imgAttr)/draggable|class|alt|src/i.test(g)||(h+=" ".concat(g,'="',b.imgAttr[g],'"'));a="<img ".concat('class="',b.className,'" ','draggable="false" ','alt="',a,'" ','src="',f,'"',h,">")}return a})}function g(a){return"number"==typeof a?a+"x"+a:a}function h(a){var b="string"==typeof a?parseInt(a,16):a;return 65536>b?p(b):(b-=65536,p(55296+(b>>10),56320+(1023&b)))}function i(a,c){return c&&"function"!=typeof c||(c={callback:c}),("string"==typeof a?f:e)(a,{callback:c.callback||b,base:"string"==typeof c.base?c.base:m.base,ext:c.ext||m.ext,size:c.folder||g(c.size||m.size),className:c.className||m.className,imgAttr:c.imgAttr})}function j(a,b){return String(a).replace(n,b)}function k(a){n.lastIndex=0;var b=n.test(a);return n.lastIndex=0,b}function l(a,b){for(var c=[],d=0,e=0,f=0;f<a.length;)d=a.charCodeAt(f++),e?(c.push((65536+(e-55296<<10)+(d-56320)).toString(16)),e=0):d>=55296&&56319>=d?e=d:c.push(d.toString(16));return c.join(b||"-")}var m={base:("https:"===location.protocol?"https:":"http:")+"//twemoji.maxcdn.com/",ext:".png",size:"36x36",className:"emoji",convert:{fromCodePoint:h,toCodePoint:l},onerror:function(){this.parentNode&&this.parentNode.replaceChild(a(this.alt),this)},parse:i,replace:j,test:k},n=/((?:\ud83c\udde8\ud83c\uddf3|\ud83c\uddfa\ud83c\uddf8|\ud83c\uddf7\ud83c\uddfa|\ud83c\uddf0\ud83c\uddf7|\ud83c\uddef\ud83c\uddf5|\ud83c\uddee\ud83c\uddf9|\ud83c\uddec\ud83c\udde7|\ud83c\uddeb\ud83c\uddf7|\ud83c\uddea\ud83c\uddf8|\ud83c\udde9\ud83c\uddea|\u0039\ufe0f?\u20e3|\u0038\ufe0f?\u20e3|\u0037\ufe0f?\u20e3|\u0036\ufe0f?\u20e3|\u0035\ufe0f?\u20e3|\u0034\ufe0f?\u20e3|\u0033\ufe0f?\u20e3|\u0032\ufe0f?\u20e3|\u0031\ufe0f?\u20e3|\u0030\ufe0f?\u20e3|\u0023\ufe0f?\u20e3|\ud83d\udeb3|\ud83d\udeb1|\ud83d\udeb0|\ud83d\udeaf|\ud83d\udeae|\ud83d\udea6|\ud83d\udea3|\ud83d\udea1|\ud83d\udea0|\ud83d\ude9f|\ud83d\ude9e|\ud83d\ude9d|\ud83d\ude9c|\ud83d\ude9b|\ud83d\ude98|\ud83d\ude96|\ud83d\ude94|\ud83d\ude90|\ud83d\ude8e|\ud83d\ude8d|\ud83d\ude8b|\ud83d\ude8a|\ud83d\ude88|\ud83d\ude86|\ud83d\ude82|\ud83d\ude81|\ud83d\ude36|\ud83d\ude34|\ud83d\ude2f|\ud83d\ude2e|\ud83d\ude2c|\ud83d\ude27|\ud83d\ude26|\ud83d\ude1f|\ud83d\ude1b|\ud83d\ude19|\ud83d\ude17|\ud83d\ude15|\ud83d\ude11|\ud83d\ude10|\ud83d\ude0e|\ud83d\ude08|\ud83d\ude07|\ud83d\ude00|\ud83d\udd67|\ud83d\udd66|\ud83d\udd65|\ud83d\udd64|\ud83d\udd63|\ud83d\udd62|\ud83d\udd61|\ud83d\udd60|\ud83d\udd5f|\ud83d\udd5e|\ud83d\udd5d|\ud83d\udd5c|\ud83d\udd2d|\ud83d\udd2c|\ud83d\udd15|\ud83d\udd09|\ud83d\udd08|\ud83d\udd07|\ud83d\udd06|\ud83d\udd05|\ud83d\udd04|\ud83d\udd02|\ud83d\udd01|\ud83d\udd00|\ud83d\udcf5|\ud83d\udcef|\ud83d\udced|\ud83d\udcec|\ud83d\udcb7|\ud83d\udcb6|\ud83d\udcad|\ud83d\udc6d|\ud83d\udc6c|\ud83d\udc65|\ud83d\udc2a|\ud83d\udc16|\ud83d\udc15|\ud83d\udc13|\ud83d\udc10|\ud83d\udc0f|\ud83d\udc0b|\ud83d\udc0a|\ud83d\udc09|\ud83d\udc08|\ud83d\udc07|\ud83d\udc06|\ud83d\udc05|\ud83d\udc04|\ud83d\udc03|\ud83d\udc02|\ud83d\udc01|\ud83d\udc00|\ud83c\udfe4|\ud83c\udfc9|\ud83c\udfc7|\ud83c\udf7c|\ud83c\udf50|\ud83c\udf4b|\ud83c\udf33|\ud83c\udf32|\ud83c\udf1e|\ud83c\udf1d|\ud83c\udf1c|\ud83c\udf1a|\ud83c\udf18|\ud83c\udccf|\ud83c\udd70|\ud83c\udd71|\ud83c\udd7e|\ud83c\udd8e|\ud83c\udd91|\ud83c\udd92|\ud83c\udd93|\ud83c\udd94|\ud83c\udd95|\ud83c\udd96|\ud83c\udd97|\ud83c\udd98|\ud83c\udd99|\ud83c\udd9a|\ud83d\udc77|\ud83d\udec5|\ud83d\udec4|\ud83d\udec3|\ud83d\udec2|\ud83d\udec1|\ud83d\udebf|\ud83d\udeb8|\ud83d\udeb7|\ud83d\udeb5|\ud83c\ude01|\ud83c\ude02|\ud83c\ude32|\ud83c\ude33|\ud83c\ude34|\ud83c\ude35|\ud83c\ude36|\ud83c\ude37|\ud83c\ude38|\ud83c\ude39|\ud83c\ude3a|\ud83c\ude50|\ud83c\ude51|\ud83c\udf00|\ud83c\udf01|\ud83c\udf02|\ud83c\udf03|\ud83c\udf04|\ud83c\udf05|\ud83c\udf06|\ud83c\udf07|\ud83c\udf08|\ud83c\udf09|\ud83c\udf0a|\ud83c\udf0b|\ud83c\udf0c|\ud83c\udf0f|\ud83c\udf11|\ud83c\udf13|\ud83c\udf14|\ud83c\udf15|\ud83c\udf19|\ud83c\udf1b|\ud83c\udf1f|\ud83c\udf2Line truncated
// Source: wp-includes/js/wp-emoji.min.js // Source: wp-includes/js/wp-emoji.min.js
!function(a,b){function c(){function c(){if(!i){if("undefined"==typeof a.twemoji){if(j>600)return;return a.clearTimeout(f),f=a.setTimeout(c,50),void j++}e=a.twemoji,i=!0,g&&new g(function(a){for(var b,c,e,f,g=a.length;g--;){if(b=a[g].addedNodes,c=a[g].removedNodes,e=b.length,1===e&&1===c.length&&3===b[0].nodeType&&"IMG"===c[0].nodeName&&b[0].data===c[0].alt)return;for(;e--;)f=b[e],3===f.nodeType&&(f=f.parentNode),!f||f.className&&-1!==f.className.indexOf("wp-exclude-emoji")||f&&1===f.nodeType&&d(f)}}).observe(document.body,{childList:!0,subtree:!0}),d(document.body)}}function d(a,c){return h&&e?(c=c||{},e.parse(a,{base:b.baseUrl,ext:b.ext,className:c.className||"emoji",imgAttr:c.imgAttr,callback:function(a,c){switch(a){case"a9":case"ae":case"2122":case"2194":case"2660":case"2663":case"2665":case"2666":return!1}return b.supports.flag||!b.supports.simple||/^1f1(?:e[6-9a-f]|f[0-9a-f])-1f1(?:e[6-9a-f]|f[0-9a-f])$/.test(a)?"".concat(c.base,a,c.ext):!1}})):a}var e,f,g=a.MutationObserver||a.WebKitMutationObserver||a.MozMutationObserver,h=!1,i=!1,j=0;return b&&(h=!b.supports.simple||!b.supports.flag,b.DOMReady?c():b.readyCallback=c),{replaceEmoji:h,parse:d}}a.wp=a.wp||{},a.wp.emoji=new c}(window,window._wpemojiSettings); !function(a,b){function c(){function c(){if(!i){if("undefined"==typeof a.twemoji){if(j>600)return;return a.clearTimeout(f),f=a.setTimeout(c,50),void j++}e=a.twemoji,i=!0,g&&new g(function(a){for(var b,c,e,f,g=a.length;g--;){if(b=a[g].addedNodes,c=a[g].removedNodes,e=b.length,1===e&&1===c.length&&3===b[0].nodeType&&"IMG"===c[0].nodeName&&b[0].data===c[0].alt)return;for(;e--;)f=b[e],3===f.nodeType&&(f=f.parentNode),!f||1!==f.nodeType||"ownerSVGElement"in f||f.className&&"string"==typeof f.className&&-1!==f.className.indexOf("wp-exclude-emoji")||d(f)}}).observe(document.body,{childList:!0,subtree:!0}),d(document.body)}}function d(a,c){return h&&e?(c=c||{},e.parse(a,{base:b.baseUrl,ext:b.ext,className:c.className||"emoji",imgAttr:c.imgAttr,callback:function(a,c){switch(a){case"a9":case"ae":case"2122":case"2194":case"2660":case"2663":case"2665":case"2666":return!1}return b.supports.flag||!b.supports.simple||/^1f1(?:e[6-9a-f]|f[0-9a-f])-1f1(?:e[6-9a-f]|f[0-9a-f])$/.test(a)?"".concat(c.base,a,c.ext):!1}})):a}var e,f,g=a.MutationObserver||a.WebKitMutationObserver||a.MozMutationObserver,h=!1,i=!1,j=0;return b&&(h=!b.supports.simple||!b.supports.flag,b.DOMReady?c():b.readyCallback=c),{replaceEmoji:h,parse:d}}a.wp=a.wp||{},a.wp.emoji=new c}(window,window._wpemojiSettings);
+6 -6
View File
@@ -70,13 +70,13 @@
node = node.parentNode; node = node.parentNode;
} }
if ( ! node || ( node.className && node.className.indexOf( 'wp-exclude-emoji' ) !== -1 ) ) { if ( ! node || node.nodeType !== 1 || ( 'ownerSVGElement' in node ) ||
continue; ( node.className && typeof node.className === 'string' && node.className.indexOf( 'wp-exclude-emoji' ) !== -1 ) ) {
}
if ( node && node.nodeType === 1 ) { continue;
parse( node ); }
}
parse( node );
} }
} }
} ).observe( document.body, { } ).observe( document.body, {
+1 -1
View File
@@ -1 +1 @@
!function(a,b){function c(){function c(){if(!i){if("undefined"==typeof a.twemoji){if(j>600)return;return a.clearTimeout(f),f=a.setTimeout(c,50),void j++}e=a.twemoji,i=!0,g&&new g(function(a){for(var b,c,e,f,g=a.length;g--;){if(b=a[g].addedNodes,c=a[g].removedNodes,e=b.length,1===e&&1===c.length&&3===b[0].nodeType&&"IMG"===c[0].nodeName&&b[0].data===c[0].alt)return;for(;e--;)f=b[e],3===f.nodeType&&(f=f.parentNode),!f||f.className&&-1!==f.className.indexOf("wp-exclude-emoji")||f&&1===f.nodeType&&d(f)}}).observe(document.body,{childList:!0,subtree:!0}),d(document.body)}}function d(a,c){return h&&e?(c=c||{},e.parse(a,{base:b.baseUrl,ext:b.ext,className:c.className||"emoji",imgAttr:c.imgAttr,callback:function(a,c){switch(a){case"a9":case"ae":case"2122":case"2194":case"2660":case"2663":case"2665":case"2666":return!1}return b.supports.flag||!b.supports.simple||/^1f1(?:e[6-9a-f]|f[0-9a-f])-1f1(?:e[6-9a-f]|f[0-9a-f])$/.test(a)?"".concat(c.base,a,c.ext):!1}})):a}var e,f,g=a.MutationObserver||a.WebKitMutationObserver||a.MozMutationObserver,h=!1,i=!1,j=0;return b&&(h=!b.supports.simple||!b.supports.flag,b.DOMReady?c():b.readyCallback=c),{replaceEmoji:h,parse:d}}a.wp=a.wp||{},a.wp.emoji=new c}(window,window._wpemojiSettings); !function(a,b){function c(){function c(){if(!i){if("undefined"==typeof a.twemoji){if(j>600)return;return a.clearTimeout(f),f=a.setTimeout(c,50),void j++}e=a.twemoji,i=!0,g&&new g(function(a){for(var b,c,e,f,g=a.length;g--;){if(b=a[g].addedNodes,c=a[g].removedNodes,e=b.length,1===e&&1===c.length&&3===b[0].nodeType&&"IMG"===c[0].nodeName&&b[0].data===c[0].alt)return;for(;e--;)f=b[e],3===f.nodeType&&(f=f.parentNode),!f||1!==f.nodeType||"ownerSVGElement"in f||f.className&&"string"==typeof f.className&&-1!==f.className.indexOf("wp-exclude-emoji")||d(f)}}).observe(document.body,{childList:!0,subtree:!0}),d(document.body)}}function d(a,c){return h&&e?(c=c||{},e.parse(a,{base:b.baseUrl,ext:b.ext,className:c.className||"emoji",imgAttr:c.imgAttr,callback:function(a,c){switch(a){case"a9":case"ae":case"2122":case"2194":case"2660":case"2663":case"2665":case"2666":return!1}return b.supports.flag||!b.supports.simple||/^1f1(?:e[6-9a-f]|f[0-9a-f])-1f1(?:e[6-9a-f]|f[0-9a-f])$/.test(a)?"".concat(c.base,a,c.ext):!1}})):a}var e,f,g=a.MutationObserver||a.WebKitMutationObserver||a.MozMutationObserver,h=!1,i=!1,j=0;return b&&(h=!b.supports.simple||!b.supports.flag,b.DOMReady?c():b.readyCallback=c),{replaceEmoji:h,parse:d}}a.wp=a.wp||{},a.wp.emoji=new c}(window,window._wpemojiSettings);
+230 -38
View File
@@ -528,6 +528,82 @@ function wp_kses( $string, $allowed_html, $allowed_protocols = array() ) {
return wp_kses_split($string, $allowed_html, $allowed_protocols); return wp_kses_split($string, $allowed_html, $allowed_protocols);
} }
/**
* Filters one attribute only and ensures its value is allowed.
*
* This function has the advantage of being more secure than esc_attr() and can
* escape data in some situations where wp_kses() must strip the whole attribute.
*
* @since 4.2.3
*
* @param string $string The 'whole' attribute, including name and value.
* @param string $element The element name to which the attribute belongs.
* @return string Filtered attribute.
*/
function wp_kses_one_attr( $string, $element ) {
$uris = array('xmlns', 'profile', 'href', 'src', 'cite', 'classid', 'codebase', 'data', 'usemap', 'longdesc', 'action');
$allowed_html = wp_kses_allowed_html( 'post' );
$allowed_protocols = wp_allowed_protocols();
$string = wp_kses_no_null( $string, array( 'slash_zero' => 'keep' ) );
$string = wp_kses_js_entities( $string );
$string = wp_kses_normalize_entities( $string );
// Preserve leading and trailing whitespace.
$matches = array();
preg_match('/^\s*/', $string, $matches);
$lead = $matches[0];
preg_match('/\s*$/', $string, $matches);
$trail = $matches[0];
if ( empty( $trail ) ) {
$string = substr( $string, strlen( $lead ) );
} else {
$string = substr( $string, strlen( $lead ), -strlen( $trail ) );
}
// Parse attribute name and value from input.
$split = preg_split( '/\s*=\s*/', $string, 2 );
$name = $split[0];
if ( count( $split ) == 2 ) {
$value = $split[1];
// Remove quotes surrounding $value.
// Also guarantee correct quoting in $string for this one attribute.
if ( '' == $value ) {
$quote = '';
} else {
$quote = $value[0];
}
if ( '"' == $quote || "'" == $quote ) {
if ( substr( $value, -1 ) != $quote ) {
return '';
}
$value = substr( $value, 1, -1 );
} else {
$quote = '"';
}
// Sanitize quotes and angle braces.
$value = htmlspecialchars( $value, ENT_QUOTES, null, false );
// Sanitize URI values.
if ( in_array( strtolower( $name ), $uris ) ) {
$value = wp_kses_bad_protocol( $value, $allowed_protocols );
}
$string = "$name=$quote$value$quote";
$vless = 'n';
} else {
$value = '';
$vless = 'y';
}
// Sanitize attribute by name.
wp_kses_attr_check( $name, $value, $string, $vless, $element, $allowed_html );
// Restore whitespace.
return $lead . $string . $trail;
}
/** /**
* Return a list of allowed tags and attributes for a given context. * Return a list of allowed tags and attributes for a given context.
* *
@@ -748,45 +824,11 @@ function wp_kses_attr($element, $attr, $allowed_html, $allowed_protocols) {
// Go through $attrarr, and save the allowed attributes for this element // Go through $attrarr, and save the allowed attributes for this element
// in $attr2 // in $attr2
$attr2 = ''; $attr2 = '';
foreach ( $attrarr as $arreach ) {
$allowed_attr = $allowed_html[strtolower($element)]; if ( wp_kses_attr_check( $arreach['name'], $arreach['value'], $arreach['whole'], $arreach['vless'], $element, $allowed_html ) ) {
foreach ($attrarr as $arreach) {
if ( ! isset( $allowed_attr[strtolower($arreach['name'])] ) )
continue; // the attribute is not allowed
$current = $allowed_attr[strtolower($arreach['name'])];
if ( $current == '' )
continue; // the attribute is not allowed
if ( strtolower( $arreach['name'] ) == 'style' ) {
$orig_value = $arreach['value'];
$value = safecss_filter_attr( $orig_value );
if ( empty( $value ) )
continue;
$arreach['value'] = $value;
$arreach['whole'] = str_replace( $orig_value, $value, $arreach['whole'] );
}
if ( ! is_array($current) ) {
$attr2 .= ' '.$arreach['whole']; $attr2 .= ' '.$arreach['whole'];
// there are no checks }
}
} else {
// there are some checks
$ok = true;
foreach ($current as $currkey => $currval) {
if ( ! wp_kses_check_attr_val($arreach['value'], $arreach['vless'], $currkey, $currval) ) {
$ok = false;
break;
}
}
if ( $ok )
$attr2 .= ' '.$arreach['whole']; // it passed them
} // if !is_array($current)
} // foreach
// Remove any "<" or ">" characters // Remove any "<" or ">" characters
$attr2 = preg_replace('/[<>]/', '', $attr2); $attr2 = preg_replace('/[<>]/', '', $attr2);
@@ -794,6 +836,53 @@ function wp_kses_attr($element, $attr, $allowed_html, $allowed_protocols) {
return "<$element$attr2$xhtml_slash>"; return "<$element$attr2$xhtml_slash>";
} }
/**
* Determine whether an attribute is allowed.
*
* @since 4.2.3
*
* @param string $name The attribute name. Returns empty string when not allowed.
* @param string $value The attribute value. Returns a filtered value.
* @param string $whole The name=value input. Returns filtered input.
* @param string $vless 'y' when attribute like "enabled", otherwise 'n'.
* @param string $element The name of the element to which this attribute belongs.
* @param array $allowed_html The full list of allowed elements and attributes.
* @return bool Is the attribute allowed?
*/
function wp_kses_attr_check( &$name, &$value, &$whole, $vless, $element, $allowed_html ) {
$allowed_attr = $allowed_html[strtolower( $element )];
$name_low = strtolower( $name );
if ( ! isset( $allowed_attr[$name_low] ) || '' == $allowed_attr[$name_low] ) {
$name = $value = $whole = '';
return false;
}
if ( 'style' == $name_low ) {
$new_value = safecss_filter_attr( $value );
if ( empty( $new_value ) ) {
$name = $value = $whole = '';
return false;
}
$whole = str_replace( $value, $new_value, $whole );
$value = $new_value;
}
if ( is_array( $allowed_attr[$name_low] ) ) {
// there are some checks
foreach ( $allowed_attr[$name_low] as $currkey => $currval ) {
if ( ! wp_kses_check_attr_val( $value, $vless, $currkey, $currval ) ) {
$name = $value = $whole = '';
return false;
}
}
}
return true;
}
/** /**
* Builds an attribute list from string containing attributes. * Builds an attribute list from string containing attributes.
* *
@@ -923,6 +1012,109 @@ function wp_kses_hair($attr, $allowed_protocols) {
return $attrarr; return $attrarr;
} }
/**
* Finds all attributes of an HTML element.
*
* Does not modify input. May return "evil" output.
*
* Based on wp_kses_split2() and wp_kses_attr()
*
* @since 4.2.3
*
* @param string $element HTML element/tag
* @return array|bool List of attributes found in $element. Returns false on failure.
*/
function wp_kses_attr_parse( $element ) {
$valid = preg_match('%^(<\s*)(/\s*)?([a-zA-Z0-9]+\s*)([^>]*)(>?)$%', $element, $matches);
if ( 1 !== $valid ) {
return false;
}
$begin = $matches[1];
$slash = $matches[2];
$elname = $matches[3];
$attr = $matches[4];
$end = $matches[5];
if ( '' !== $slash ) {
// Closing elements do not get parsed.
return false;
}
// Is there a closing XHTML slash at the end of the attributes?
if ( 1 === preg_match( '%\s*/\s*$%', $attr, $matches ) ) {
$xhtml_slash = $matches[0];
$attr = substr( $attr, 0, -strlen( $xhtml_slash ) );
} else {
$xhtml_slash = '';
}
// Split it
$attrarr = wp_kses_hair_parse( $attr );
if ( false === $attrarr ) {
return false;
}
// Make sure all input is returned by adding front and back matter.
array_unshift( $attrarr, $begin . $slash . $elname );
array_push( $attrarr, $xhtml_slash . $end );
return $attrarr;
}
/**
* Builds an attribute list from string containing attributes.
*
* Does not modify input. May return "evil" output.
* In case of unexpected input, returns false instead of stripping things.
*
* Based on wp_kses_hair() but does not return a multi-dimensional array.
*
* @since 4.2.3
*
* @param string $attr Attribute list from HTML element to closing HTML element tag
* @return array|bool List of attributes found in $attr. Returns false on failure.
*/
function wp_kses_hair_parse( $attr ) {
if ( '' === $attr ) {
return array();
}
$regex =
'(?:'
. '[-a-zA-Z:]+' // Attribute name.
. '|'
. '\[\[?[^\[\]]+\]\]?' // Shortcode in the name position implies unfiltered_html.
. ')'
. '(?:' // Attribute value.
. '\s*=\s*' // All values begin with '='
. '(?:'
. '"[^"]*"' // Double-quoted
. '|'
. "'[^']*'" // Single-quoted
. '|'
. '[^\s"\']+' // Non-quoted
. '(?:\s|$)' // Must have a space
. ')'
. '|'
. '(?:\s|$)' // If attribute has no value, space is required.
. ')'
. '\s*'; // Trailing space is optional except as mentioned above.
// Although it is possible to reduce this procedure to a single regexp,
// we must run that regexp twice to get exactly the expected result.
$validation = "%^($regex)+$%";
$extraction = "%$regex%";
if ( 1 === preg_match( $validation, $attr ) ) {
preg_match_all( $extraction, $attr, $attrarr );
return $attrarr[0];
} else {
return false;
}
}
/** /**
* Performs different checks for attribute values. * Performs different checks for attribute values.
* *
+162 -4
View File
@@ -184,9 +184,10 @@ function has_shortcode( $content, $tag ) {
* @global array $shortcode_tags List of shortcode tags and their callback hooks. * @global array $shortcode_tags List of shortcode tags and their callback hooks.
* *
* @param string $content Content to search for shortcodes. * @param string $content Content to search for shortcodes.
* @param bool $ignore_html When true, shortcodes inside HTML elements will be skipped.
* @return string Content with shortcodes filtered out. * @return string Content with shortcodes filtered out.
*/ */
function do_shortcode($content) { function do_shortcode( $content, $ignore_html = false ) {
global $shortcode_tags; global $shortcode_tags;
if ( false === strpos( $content, '[' ) ) { if ( false === strpos( $content, '[' ) ) {
@@ -196,8 +197,24 @@ function do_shortcode($content) {
if (empty($shortcode_tags) || !is_array($shortcode_tags)) if (empty($shortcode_tags) || !is_array($shortcode_tags))
return $content; return $content;
$tagnames = array_keys($shortcode_tags);
$tagregexp = join( '|', array_map('preg_quote', $tagnames) );
$pattern = "/\\[($tagregexp)/s";
if ( 1 !== preg_match( $pattern, $content ) ) {
// Avoids parsing HTML when there are no shortcodes or embeds anyway.
return $content;
}
$content = do_shortcodes_in_html_tags( $content, $ignore_html );
$pattern = get_shortcode_regex(); $pattern = get_shortcode_regex();
return preg_replace_callback( "/$pattern/s", 'do_shortcode_tag', $content ); $content = preg_replace_callback( "/$pattern/s", 'do_shortcode_tag', $content );
// Always restore square braces so we don't break things like <!--[if IE ]>
$content = unescape_invalid_shortcodes( $content );
return $content;
} }
/** /**
@@ -290,6 +307,141 @@ function do_shortcode_tag( $m ) {
} }
} }
/**
* Search only inside HTML elements for shortcodes and process them.
*
* Any [ or ] characters remaining inside elements will be HTML encoded
* to prevent interference with shortcodes that are outside the elements.
* Assumes $content processed by KSES already. Users with unfiltered_html
* capability may get unexpected output if angle braces are nested in tags.
*
* @since 4.2.3
*
* @param string $content Content to search for shortcodes
* @param bool $ignore_html When true, all square braces inside elements will be encoded.
* @return string Content with shortcodes filtered out.
*/
function do_shortcodes_in_html_tags( $content, $ignore_html ) {
// Normalize entities in unfiltered HTML before adding placeholders.
$trans = array( '&#91;' => '&#091;', '&#93;' => '&#093;' );
$content = strtr( $content, $trans );
$trans = array( '[' => '&#91;', ']' => '&#93;' );
$pattern = get_shortcode_regex();
$comment_regex =
'!' // Start of comment, after the <.
. '(?:' // Unroll the loop: Consume everything until --> is found.
. '-(?!->)' // Dash not followed by end of comment.
. '[^\-]*+' // Consume non-dashes.
. ')*+' // Loop possessively.
. '(?:-->)?'; // End of comment. If not found, match all input.
$regex =
'/(' // Capture the entire match.
. '<' // Find start of element.
. '(?(?=!--)' // Is this a comment?
. $comment_regex // Find end of comment.
. '|'
. '[^>]*>?' // Find end of element. If not found, match all input.
. ')'
. ')/s';
$textarr = preg_split( $regex, $content, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY );
foreach ( $textarr as &$element ) {
if ( '<' !== $element[0] ) {
continue;
}
$noopen = false === strpos( $element, '[' );
$noclose = false === strpos( $element, ']' );
if ( $noopen || $noclose ) {
// This element does not contain shortcodes.
if ( $noopen xor $noclose ) {
// Need to encode stray [ or ] chars.
$element = strtr( $element, $trans );
}
continue;
}
if ( $ignore_html || '<!--' === substr( $element, 0, 4 ) ) {
// Encode all [ and ] chars.
$element = strtr( $element, $trans );
continue;
}
$attributes = wp_kses_attr_parse( $element );
if ( false === $attributes ) {
// Looks like we found some crazy unfiltered HTML. Skipping it for sanity.
$element = strtr( $element, $trans );
continue;
}
// Get element name
$front = array_shift( $attributes );
$back = array_pop( $attributes );
$matches = array();
preg_match('%[a-zA-Z0-9]+%', $front, $matches);
$elname = $matches[0];
// Look for shortcodes in each attribute separately.
foreach ( $attributes as &$attr ) {
$open = strpos( $attr, '[' );
$close = strpos( $attr, ']' );
if ( false === $open || false === $close ) {
continue; // Go to next attribute. Square braces will be escaped at end of loop.
}
$double = strpos( $attr, '"' );
$single = strpos( $attr, "'" );
if ( ( false === $single || $open < $single ) && ( false === $double || $open < $double ) ) {
// $attr like '[shortcode]' or 'name = [shortcode]' implies unfiltered_html.
// In this specific situation we assume KSES did not run because the input
// was written by an administrator, so we should avoid changing the output
// and we do not need to run KSES here.
$attr = preg_replace_callback( "/$pattern/s", 'do_shortcode_tag', $attr );
} else {
// $attr like 'name = "[shortcode]"' or "name = '[shortcode]'"
// We do not know if $content was unfiltered. Assume KSES ran before shortcodes.
$count = 0;
$new_attr = preg_replace_callback( "/$pattern/s", 'do_shortcode_tag', $attr, -1, $count );
if ( $count > 0 ) {
// Sanitize the shortcode output using KSES.
$new_attr = wp_kses_one_attr( $new_attr, $elname );
if ( '' !== $new_attr ) {
// The shortcode is safe to use now.
$attr = $new_attr;
}
}
}
}
$element = $front . implode( '', $attributes ) . $back;
// Now encode any remaining [ or ] chars.
$element = strtr( $element, $trans );
}
$content = implode( '', $textarr );
return $content;
}
/**
* Remove placeholders added by do_shortcodes_in_html_tags().
*
* @since 4.2.3
*
* @param string $content Content to search for placeholders.
* @return string Content with placeholders removed.
*/
function unescape_invalid_shortcodes( $content ) {
// Clean up entire string, avoids re-parsing HTML.
$trans = array( '&#91;' => '[', '&#93;' => ']' );
$content = strtr( $content, $trans );
return $content;
}
/** /**
* Retrieve all attributes from the shortcodes tag. * Retrieve all attributes from the shortcodes tag.
* *
@@ -389,9 +541,15 @@ function strip_shortcodes( $content ) {
if (empty($shortcode_tags) || !is_array($shortcode_tags)) if (empty($shortcode_tags) || !is_array($shortcode_tags))
return $content; return $content;
$pattern = get_shortcode_regex(); $content = do_shortcodes_in_html_tags( $content, true );
return preg_replace_callback( "/$pattern/s", 'strip_shortcode_tag', $content ); $pattern = get_shortcode_regex();
$content = preg_replace_callback( "/$pattern/s", 'strip_shortcode_tag', $content );
// Always restore square braces so we don't break things like <!--[if IE ]>
$content = unescape_invalid_shortcodes( $content );
return $content;
} }
function strip_shortcode_tag( $m ) { function strip_shortcode_tag( $m ) {
+2 -2
View File
@@ -4,14 +4,14 @@
* *
* @global string $wp_version * @global string $wp_version
*/ */
$wp_version = '4.2.2'; $wp_version = '4.2.3';
/** /**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema. * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
* *
* @global int $wp_db_version * @global int $wp_db_version
*/ */
$wp_db_version = 31535; $wp_db_version = 31536;
/** /**
* Holds the TinyMCE version * Holds the TinyMCE version
+29 -43
View File
@@ -738,8 +738,7 @@ class wpdb {
$this->charset = DB_CHARSET; $this->charset = DB_CHARSET;
} }
if ( ( $this->use_mysqli && ! ( $this->dbh instanceof mysqli ) ) if ( ( $this->use_mysqli && ! ( $this->dbh instanceof mysqli ) ) || empty( $this->dbh ) ) {
|| ( empty( $this->dbh ) || ! ( $this->dbh instanceof mysqli ) ) ) {
return; return;
} }
@@ -2595,8 +2594,13 @@ class wpdb {
if ( is_array( $value['length'] ) ) { if ( is_array( $value['length'] ) ) {
$length = $value['length']['length']; $length = $value['length']['length'];
$truncate_by_byte_length = 'byte' === $value['length']['type'];
} else { } else {
$length = false; $length = false;
// Since we have no length, we'll never truncate.
// Initialize the variable to false. true would take us
// through an unnecessary (for this case) codepath below.
$truncate_by_byte_length = false;
} }
// There's no charset to work with. // There's no charset to work with.
@@ -2609,8 +2613,6 @@ class wpdb {
continue; continue;
} }
$truncate_by_byte_length = 'byte' === $value['length']['type'];
$needs_validation = true; $needs_validation = true;
if ( if (
// latin1 can store any byte sequence // latin1 can store any byte sequence
@@ -2676,55 +2678,42 @@ class wpdb {
$queries = array(); $queries = array();
foreach ( $data as $col => $value ) { foreach ( $data as $col => $value ) {
if ( ! empty( $value['db'] ) ) { if ( ! empty( $value['db'] ) ) {
if ( ! isset( $queries[ $value['charset'] ] ) ) {
$queries[ $value['charset'] ] = array();
}
// We're going to need to truncate by characters or bytes, depending on the length value we have. // We're going to need to truncate by characters or bytes, depending on the length value we have.
if ( 'byte' === $value['length']['type'] ) { if ( 'byte' === $value['length']['type'] ) {
// Split the CONVERT() calls by charset, so we can make sure the connection is right // Using binary causes LEFT() to truncate by bytes.
$queries[ $value['charset'] ][ $col ] = $this->prepare( "CONVERT( LEFT( CONVERT( %s USING binary ), %d ) USING {$value['charset']} )", $value['value'], $value['length']['length'] ); $charset = 'binary';
} else { } else {
$queries[ $value['charset'] ][ $col ] = $this->prepare( "LEFT( CONVERT( %s USING {$value['charset']} ), %d )", $value['value'], $value['length']['length'] ); $charset = $value['charset'];
}
if ( is_array( $value['length'] ) ) {
$queries[ $col ] = $this->prepare( "CONVERT( LEFT( CONVERT( %s USING $charset ), %.0f ) USING {$this->charset} )", $value['value'], $value['length']['length'] );
} else if ( 'binary' !== $charset ) {
// If we don't have a length, there's no need to convert binary - it will always return the same result.
$queries[ $col ] = $this->prepare( "CONVERT( CONVERT( %s USING $charset ) USING {$this->charset} )", $value['value'] );
} }
unset( $data[ $col ]['db'] ); unset( $data[ $col ]['db'] );
} }
} }
$connection_charset = $this->charset; $sql = array();
foreach ( $queries as $charset => $query ) { foreach ( $queries as $column => $query ) {
if ( ! $query ) { if ( ! $query ) {
continue; continue;
} }
// Change the charset to match the string(s) we're converting $sql[] = $query . " AS x_$column";
if ( $charset !== $connection_charset ) {
$connection_charset = $charset;
$this->set_charset( $this->dbh, $charset );
}
$this->check_current_query = false;
$sql = array();
foreach ( $query as $column => $column_query ) {
$sql[] = $column_query . " AS x_$column";
}
$row = $this->get_row( "SELECT " . implode( ', ', $sql ), ARRAY_A );
if ( ! $row ) {
$this->set_charset( $this->dbh, $connection_charset );
return new WP_Error( 'wpdb_strip_invalid_text_failure' );
}
foreach ( array_keys( $query ) as $column ) {
$data[ $column ]['value'] = $row["x_$column"];
}
} }
// Don't forget to change the charset back! $this->check_current_query = false;
if ( $connection_charset !== $this->charset ) { $row = $this->get_row( "SELECT " . implode( ', ', $sql ), ARRAY_A );
$this->set_charset( $this->dbh ); if ( ! $row ) {
return new WP_Error( 'wpdb_strip_invalid_text_failure' );
}
foreach ( array_keys( $data ) as $column ) {
$data[ $column ]['value'] = $row["x_$column"];
} }
} }
@@ -2834,11 +2823,8 @@ class wpdb {
// Allow (select...) union [...] style queries. Use the first query's table name. // Allow (select...) union [...] style queries. Use the first query's table name.
$query = ltrim( $query, "\r\n\t (" ); $query = ltrim( $query, "\r\n\t (" );
/* // Strip everything between parentheses except nested selects.
* Strip everything between parentheses except nested selects and use only 1,000 $query = preg_replace( '/\((?!\s*select)[^(]*?\)/is', '()', $query );
* chars of the query.
*/
$query = preg_replace( '/\((?!\s*select)[^(]*?\)/is', '()', substr( $query, 0, 1000 ) );
// Quickly match most common queries. // Quickly match most common queries.
if ( preg_match( '/^\s*(?:' if ( preg_match( '/^\s*(?:'