forked from friendica/deprecated-addons
Fancybox is deprecated
This commit is contained in:
parent
1cc8afc83f
commit
500a8fc3e5
2
fancybox/.gitignore
vendored
Normal file
2
fancybox/.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
/dist/
|
||||||
|
/test/
|
27
fancybox/CHANGELOG.md
Normal file
27
fancybox/CHANGELOG.md
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
### Version 1.05
|
||||||
|
|
||||||
|
* Added ALT and TITLE of original IMG to fancybox popup.
|
||||||
|
|
||||||
|
### Version 1.04
|
||||||
|
|
||||||
|
* Update supporting upcoming imnagegrid in posts
|
||||||
|
|
||||||
|
### Version 1.03
|
||||||
|
|
||||||
|
* imgages in body-attach with title / alt attribute get them removed while adding fancy attributes
|
||||||
|
* Added fancybox to image inlined in posts. Un-hooked the old lightbox from frio and vier and excahnged that with fancybox hooks.
|
||||||
|
* Excluded images in "type-link" divs from being "fancied" as they have no images but pages linked to.
|
||||||
|
|
||||||
|
### Version 1.02
|
||||||
|
|
||||||
|
* [MrPetovan](https://github.com/MrPetovan) optimized my noob regular expression code.
|
||||||
|
|
||||||
|
### Version 1.01
|
||||||
|
|
||||||
|
* One gallery for each post
|
||||||
|
* All media attached to a post are added to the posts gallery.
|
||||||
|
* Loop scrolling: You can step from last media to first and vice versa.
|
||||||
|
### Version 1.00
|
||||||
|
|
||||||
|
* First test version released.
|
||||||
|
* One fancybox per page displaying first media of each post.
|
19
fancybox/README.md
Normal file
19
fancybox/README.md
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
# Post image gallery using fancybox
|
||||||
|
|
||||||
|
Addon author: [Grischa Brockhaus](https://brockha.us)
|
||||||
|
|
||||||
|
## Description
|
||||||
|
|
||||||
|
This addon loads all media attachments of a post into a "fancybox" instead of linking directly to the media.
|
||||||
|
|
||||||
|
Each post gets its own attachment library, when there are more than one media attached you can scroll through them.
|
||||||
|
|
||||||
|
## Licenses
|
||||||
|
|
||||||
|
### Fancybox Library
|
||||||
|
|
||||||
|
This AddOn is using the jQuery library [fancybox](https://github.com/fancyapps/fancybox).
|
||||||
|
|
||||||
|
The fancyBox libryry is licensed under the GPLv3 license for all open source applications. A commercial license is required for all commercial applications (including sites, themes and apps you plan to sell).
|
||||||
|
|
||||||
|
[Read more about fancyBox license](https://github.com/fancyapps/fancybox).
|
62
fancybox/asset/fancybox/README.md
Normal file
62
fancybox/asset/fancybox/README.md
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
# fancyBox 3.5.7
|
||||||
|
|
||||||
|
jQuery lightbox script for displaying images, videos and more.
|
||||||
|
Touch enabled, responsive and fully customizable.
|
||||||
|
|
||||||
|
See the [project page](http://fancyapps.com/fancybox/3/) for documentation and a demonstration.
|
||||||
|
|
||||||
|
Follow [@thefancyapps](//twitter.com/thefancyapps) for updates.
|
||||||
|
|
||||||
|
|
||||||
|
## Quick start
|
||||||
|
|
||||||
|
1\. Add latest jQuery and fancyBox files
|
||||||
|
|
||||||
|
```html
|
||||||
|
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
|
||||||
|
|
||||||
|
<link href="/path/to/jquery.fancybox.min.css" rel="stylesheet">
|
||||||
|
<script src="/path/to/jquery.fancybox.min.js"></script>
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
2\. Create links
|
||||||
|
|
||||||
|
```html
|
||||||
|
<a data-fancybox="gallery" href="big_1.jpg">
|
||||||
|
<img src="small_1.jpg">
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<a data-fancybox="gallery" href="big_2.jpg">
|
||||||
|
<img src="small_2.jpg">
|
||||||
|
</a>
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
3\. Enjoy!
|
||||||
|
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
fancyBox is licensed under the [GPLv3](http://choosealicense.com/licenses/gpl-3.0) license for all open source applications.
|
||||||
|
A commercial license is required for all commercial applications (including sites, themes and apps you plan to sell).
|
||||||
|
|
||||||
|
[Read more about fancyBox license](http://fancyapps.com/fancybox/3/#license).
|
||||||
|
|
||||||
|
## Bugs and feature requests
|
||||||
|
|
||||||
|
If you find a bug, please report it [here on Github](https://github.com/fancyapps/fancybox/issues).
|
||||||
|
|
||||||
|
Guidelines for bug reports:
|
||||||
|
|
||||||
|
1. Use the GitHub issue search — check if the issue has already been reported.
|
||||||
|
2. Check if the issue has been fixed — try to reproduce it using the latest master or development branch in the repository.
|
||||||
|
3. Isolate the problem — create a reduced test case and a live example. You can use CodePen to fork any demo found on documentation to use it as a template.
|
||||||
|
|
||||||
|
A good bug report shouldn't leave others needing to chase you up for more information.
|
||||||
|
Please try to be as detailed as possible in your report.
|
||||||
|
|
||||||
|
|
||||||
|
Feature requests are welcome. Please look for existing ones and use GitHub's "reactions" feature to vote.
|
||||||
|
|
||||||
|
Please do not use the issue tracker for personal support requests - use Stack Overflow ([fancybox-3](http://stackoverflow.com/questions/tagged/fancybox-3) tag) instead.
|
13
fancybox/asset/fancybox/fancybox.config.js
Normal file
13
fancybox/asset/fancybox/fancybox.config.js
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
$(document).ready(function() {
|
||||||
|
$.fancybox.defaults.loop = "true";
|
||||||
|
// this disables the colorbox hook found in frio/js/modal.js:34
|
||||||
|
$("body").off("click", ".wall-item-body a img");
|
||||||
|
|
||||||
|
// Adds ALT/TITLE text to fancybox
|
||||||
|
$('a[data-fancybox').fancybox({
|
||||||
|
afterLoad : function(instance, current) {
|
||||||
|
current.$image.attr('alt', current.opts.$orig.find('img').attr('alt') );
|
||||||
|
current.$image.attr('title', current.opts.$orig.find('img').attr('title') );
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
895
fancybox/asset/fancybox/jquery.fancybox.css
vendored
Normal file
895
fancybox/asset/fancybox/jquery.fancybox.css
vendored
Normal file
|
@ -0,0 +1,895 @@
|
||||||
|
body.compensate-for-scrollbar {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-active {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-is-hidden {
|
||||||
|
left: -9999px;
|
||||||
|
margin: 0;
|
||||||
|
position: absolute !important;
|
||||||
|
top: -9999px;
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-container {
|
||||||
|
-webkit-backface-visibility: hidden;
|
||||||
|
height: 100%;
|
||||||
|
left: 0;
|
||||||
|
outline: none;
|
||||||
|
position: fixed;
|
||||||
|
-webkit-tap-highlight-color: transparent;
|
||||||
|
top: 0;
|
||||||
|
-ms-touch-action: manipulation;
|
||||||
|
touch-action: manipulation;
|
||||||
|
transform: translateZ(0);
|
||||||
|
width: 100%;
|
||||||
|
z-index: 99992;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-container * {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-outer,
|
||||||
|
.fancybox-inner,
|
||||||
|
.fancybox-bg,
|
||||||
|
.fancybox-stage {
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-outer {
|
||||||
|
-webkit-overflow-scrolling: touch;
|
||||||
|
overflow-y: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-bg {
|
||||||
|
background: rgb(30, 30, 30);
|
||||||
|
opacity: 0;
|
||||||
|
transition-duration: inherit;
|
||||||
|
transition-property: opacity;
|
||||||
|
transition-timing-function: cubic-bezier(.47, 0, .74, .71);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-is-open .fancybox-bg {
|
||||||
|
opacity: .9;
|
||||||
|
transition-timing-function: cubic-bezier(.22, .61, .36, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-infobar,
|
||||||
|
.fancybox-toolbar,
|
||||||
|
.fancybox-caption,
|
||||||
|
.fancybox-navigation .fancybox-button {
|
||||||
|
direction: ltr;
|
||||||
|
opacity: 0;
|
||||||
|
position: absolute;
|
||||||
|
transition: opacity .25s ease, visibility 0s ease .25s;
|
||||||
|
visibility: hidden;
|
||||||
|
z-index: 99997;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-show-infobar .fancybox-infobar,
|
||||||
|
.fancybox-show-toolbar .fancybox-toolbar,
|
||||||
|
.fancybox-show-caption .fancybox-caption,
|
||||||
|
.fancybox-show-nav .fancybox-navigation .fancybox-button {
|
||||||
|
opacity: 1;
|
||||||
|
transition: opacity .25s ease 0s, visibility 0s ease 0s;
|
||||||
|
visibility: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-infobar {
|
||||||
|
color: #ccc;
|
||||||
|
font-size: 13px;
|
||||||
|
-webkit-font-smoothing: subpixel-antialiased;
|
||||||
|
height: 44px;
|
||||||
|
left: 0;
|
||||||
|
line-height: 44px;
|
||||||
|
min-width: 44px;
|
||||||
|
mix-blend-mode: difference;
|
||||||
|
padding: 0 10px;
|
||||||
|
pointer-events: none;
|
||||||
|
top: 0;
|
||||||
|
-webkit-touch-callout: none;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-toolbar {
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-stage {
|
||||||
|
direction: ltr;
|
||||||
|
overflow: visible;
|
||||||
|
transform: translateZ(0);
|
||||||
|
z-index: 99994;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-is-open .fancybox-stage {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide {
|
||||||
|
-webkit-backface-visibility: hidden;
|
||||||
|
/* Using without prefix would break IE11 */
|
||||||
|
display: none;
|
||||||
|
height: 100%;
|
||||||
|
left: 0;
|
||||||
|
outline: none;
|
||||||
|
overflow: auto;
|
||||||
|
-webkit-overflow-scrolling: touch;
|
||||||
|
padding: 44px;
|
||||||
|
position: absolute;
|
||||||
|
text-align: center;
|
||||||
|
top: 0;
|
||||||
|
transition-property: transform, opacity;
|
||||||
|
white-space: normal;
|
||||||
|
width: 100%;
|
||||||
|
z-index: 99994;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide::before {
|
||||||
|
content: '';
|
||||||
|
display: inline-block;
|
||||||
|
font-size: 0;
|
||||||
|
height: 100%;
|
||||||
|
vertical-align: middle;
|
||||||
|
width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-is-sliding .fancybox-slide,
|
||||||
|
.fancybox-slide--previous,
|
||||||
|
.fancybox-slide--current,
|
||||||
|
.fancybox-slide--next {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--image {
|
||||||
|
overflow: hidden;
|
||||||
|
padding: 44px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--image::before {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--html {
|
||||||
|
padding: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-content {
|
||||||
|
background: #fff;
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0;
|
||||||
|
max-width: 100%;
|
||||||
|
overflow: auto;
|
||||||
|
-webkit-overflow-scrolling: touch;
|
||||||
|
padding: 44px;
|
||||||
|
position: relative;
|
||||||
|
text-align: left;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--image .fancybox-content {
|
||||||
|
animation-timing-function: cubic-bezier(.5, 0, .14, 1);
|
||||||
|
-webkit-backface-visibility: hidden;
|
||||||
|
background: transparent;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-size: 100% 100%;
|
||||||
|
left: 0;
|
||||||
|
max-width: none;
|
||||||
|
overflow: visible;
|
||||||
|
padding: 0;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
-ms-transform-origin: top left;
|
||||||
|
transform-origin: top left;
|
||||||
|
transition-property: transform, opacity;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
z-index: 99995;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-can-zoomOut .fancybox-content {
|
||||||
|
cursor: zoom-out;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-can-zoomIn .fancybox-content {
|
||||||
|
cursor: zoom-in;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-can-swipe .fancybox-content,
|
||||||
|
.fancybox-can-pan .fancybox-content {
|
||||||
|
cursor: -webkit-grab;
|
||||||
|
cursor: grab;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-is-grabbing .fancybox-content {
|
||||||
|
cursor: -webkit-grabbing;
|
||||||
|
cursor: grabbing;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-container [data-selectable='true'] {
|
||||||
|
cursor: text;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-image,
|
||||||
|
.fancybox-spaceball {
|
||||||
|
background: transparent;
|
||||||
|
border: 0;
|
||||||
|
height: 100%;
|
||||||
|
left: 0;
|
||||||
|
margin: 0;
|
||||||
|
max-height: none;
|
||||||
|
max-width: none;
|
||||||
|
padding: 0;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-spaceball {
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--video .fancybox-content,
|
||||||
|
.fancybox-slide--map .fancybox-content,
|
||||||
|
.fancybox-slide--pdf .fancybox-content,
|
||||||
|
.fancybox-slide--iframe .fancybox-content {
|
||||||
|
height: 100%;
|
||||||
|
overflow: visible;
|
||||||
|
padding: 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--video .fancybox-content {
|
||||||
|
background: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--map .fancybox-content {
|
||||||
|
background: #e5e3df;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--iframe .fancybox-content {
|
||||||
|
background: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-video,
|
||||||
|
.fancybox-iframe {
|
||||||
|
background: transparent;
|
||||||
|
border: 0;
|
||||||
|
display: block;
|
||||||
|
height: 100%;
|
||||||
|
margin: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
padding: 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Fix iOS */
|
||||||
|
.fancybox-iframe {
|
||||||
|
left: 0;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-error {
|
||||||
|
background: #fff;
|
||||||
|
cursor: default;
|
||||||
|
max-width: 400px;
|
||||||
|
padding: 40px;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-error p {
|
||||||
|
color: #444;
|
||||||
|
font-size: 16px;
|
||||||
|
line-height: 20px;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Buttons */
|
||||||
|
|
||||||
|
.fancybox-button {
|
||||||
|
background: rgba(30, 30, 30, .6);
|
||||||
|
border: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
cursor: pointer;
|
||||||
|
display: inline-block;
|
||||||
|
height: 44px;
|
||||||
|
margin: 0;
|
||||||
|
padding: 10px;
|
||||||
|
position: relative;
|
||||||
|
transition: color .2s;
|
||||||
|
vertical-align: top;
|
||||||
|
visibility: inherit;
|
||||||
|
width: 44px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-button,
|
||||||
|
.fancybox-button:visited,
|
||||||
|
.fancybox-button:link {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-button:hover {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-button:focus {
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-button.fancybox-focus {
|
||||||
|
outline: 1px dotted;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-button[disabled],
|
||||||
|
.fancybox-button[disabled]:hover {
|
||||||
|
color: #888;
|
||||||
|
cursor: default;
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Fix IE11 */
|
||||||
|
.fancybox-button div {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-button svg {
|
||||||
|
display: block;
|
||||||
|
height: 100%;
|
||||||
|
overflow: visible;
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-button svg path {
|
||||||
|
fill: currentColor;
|
||||||
|
stroke-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-button--play svg:nth-child(2),
|
||||||
|
.fancybox-button--fsenter svg:nth-child(2) {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-button--pause svg:nth-child(1),
|
||||||
|
.fancybox-button--fsexit svg:nth-child(1) {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-progress {
|
||||||
|
background: #ff5268;
|
||||||
|
height: 2px;
|
||||||
|
left: 0;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
-ms-transform: scaleX(0);
|
||||||
|
transform: scaleX(0);
|
||||||
|
-ms-transform-origin: 0;
|
||||||
|
transform-origin: 0;
|
||||||
|
transition-property: transform;
|
||||||
|
transition-timing-function: linear;
|
||||||
|
z-index: 99998;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Close button on the top right corner of html content */
|
||||||
|
|
||||||
|
.fancybox-close-small {
|
||||||
|
background: transparent;
|
||||||
|
border: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
color: #ccc;
|
||||||
|
cursor: pointer;
|
||||||
|
opacity: .8;
|
||||||
|
padding: 8px;
|
||||||
|
position: absolute;
|
||||||
|
right: -12px;
|
||||||
|
top: -44px;
|
||||||
|
z-index: 401;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-close-small:hover {
|
||||||
|
color: #fff;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--html .fancybox-close-small {
|
||||||
|
color: currentColor;
|
||||||
|
padding: 10px;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-is-scaling .fancybox-close-small,
|
||||||
|
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Navigation arrows */
|
||||||
|
|
||||||
|
.fancybox-navigation .fancybox-button {
|
||||||
|
background-clip: content-box;
|
||||||
|
height: 100px;
|
||||||
|
opacity: 0;
|
||||||
|
position: absolute;
|
||||||
|
top: calc(50% - 50px);
|
||||||
|
width: 70px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-navigation .fancybox-button div {
|
||||||
|
padding: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-navigation .fancybox-button--arrow_left {
|
||||||
|
left: 0;
|
||||||
|
left: env(safe-area-inset-left);
|
||||||
|
padding: 31px 26px 31px 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-navigation .fancybox-button--arrow_right {
|
||||||
|
padding: 31px 6px 31px 26px;
|
||||||
|
right: 0;
|
||||||
|
right: env(safe-area-inset-right);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Caption */
|
||||||
|
|
||||||
|
.fancybox-caption {
|
||||||
|
background: linear-gradient(to top,
|
||||||
|
rgba(0, 0, 0, .85) 0%,
|
||||||
|
rgba(0, 0, 0, .3) 50%,
|
||||||
|
rgba(0, 0, 0, .15) 65%,
|
||||||
|
rgba(0, 0, 0, .075) 75.5%,
|
||||||
|
rgba(0, 0, 0, .037) 82.85%,
|
||||||
|
rgba(0, 0, 0, .019) 88%,
|
||||||
|
rgba(0, 0, 0, 0) 100%);
|
||||||
|
bottom: 0;
|
||||||
|
color: #eee;
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 400;
|
||||||
|
left: 0;
|
||||||
|
line-height: 1.5;
|
||||||
|
padding: 75px 44px 25px 44px;
|
||||||
|
pointer-events: none;
|
||||||
|
right: 0;
|
||||||
|
text-align: center;
|
||||||
|
z-index: 99996;
|
||||||
|
}
|
||||||
|
|
||||||
|
@supports (padding: max(0px)) {
|
||||||
|
.fancybox-caption {
|
||||||
|
padding: 75px max(44px, env(safe-area-inset-right)) max(25px, env(safe-area-inset-bottom)) max(44px, env(safe-area-inset-left));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-caption--separate {
|
||||||
|
margin-top: -50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-caption__body {
|
||||||
|
max-height: 50vh;
|
||||||
|
overflow: auto;
|
||||||
|
pointer-events: all;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-caption a,
|
||||||
|
.fancybox-caption a:link,
|
||||||
|
.fancybox-caption a:visited {
|
||||||
|
color: #ccc;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-caption a:hover {
|
||||||
|
color: #fff;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Loading indicator */
|
||||||
|
|
||||||
|
.fancybox-loading {
|
||||||
|
animation: fancybox-rotate 1s linear infinite;
|
||||||
|
background: transparent;
|
||||||
|
border: 4px solid #888;
|
||||||
|
border-bottom-color: #fff;
|
||||||
|
border-radius: 50%;
|
||||||
|
height: 50px;
|
||||||
|
left: 50%;
|
||||||
|
margin: -25px 0 0 -25px;
|
||||||
|
opacity: .7;
|
||||||
|
padding: 0;
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
width: 50px;
|
||||||
|
z-index: 99999;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes fancybox-rotate {
|
||||||
|
100% {
|
||||||
|
transform: rotate(360deg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Transition effects */
|
||||||
|
|
||||||
|
.fancybox-animated {
|
||||||
|
transition-timing-function: cubic-bezier(0, 0, .25, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* transitionEffect: slide */
|
||||||
|
|
||||||
|
.fancybox-fx-slide.fancybox-slide--previous {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translate3d(-100%, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-fx-slide.fancybox-slide--next {
|
||||||
|
opacity: 0;
|
||||||
|
transform: translate3d(100%, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-fx-slide.fancybox-slide--current {
|
||||||
|
opacity: 1;
|
||||||
|
transform: translate3d(0, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* transitionEffect: fade */
|
||||||
|
|
||||||
|
.fancybox-fx-fade.fancybox-slide--previous,
|
||||||
|
.fancybox-fx-fade.fancybox-slide--next {
|
||||||
|
opacity: 0;
|
||||||
|
transition-timing-function: cubic-bezier(.19, 1, .22, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-fx-fade.fancybox-slide--current {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* transitionEffect: zoom-in-out */
|
||||||
|
|
||||||
|
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
|
||||||
|
opacity: 0;
|
||||||
|
transform: scale3d(1.5, 1.5, 1.5);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-fx-zoom-in-out.fancybox-slide--next {
|
||||||
|
opacity: 0;
|
||||||
|
transform: scale3d(.5, .5, .5);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-fx-zoom-in-out.fancybox-slide--current {
|
||||||
|
opacity: 1;
|
||||||
|
transform: scale3d(1, 1, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* transitionEffect: rotate */
|
||||||
|
|
||||||
|
.fancybox-fx-rotate.fancybox-slide--previous {
|
||||||
|
opacity: 0;
|
||||||
|
-ms-transform: rotate(-360deg);
|
||||||
|
transform: rotate(-360deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-fx-rotate.fancybox-slide--next {
|
||||||
|
opacity: 0;
|
||||||
|
-ms-transform: rotate(360deg);
|
||||||
|
transform: rotate(360deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-fx-rotate.fancybox-slide--current {
|
||||||
|
opacity: 1;
|
||||||
|
-ms-transform: rotate(0deg);
|
||||||
|
transform: rotate(0deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* transitionEffect: circular */
|
||||||
|
|
||||||
|
.fancybox-fx-circular.fancybox-slide--previous {
|
||||||
|
opacity: 0;
|
||||||
|
transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-fx-circular.fancybox-slide--next {
|
||||||
|
opacity: 0;
|
||||||
|
transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-fx-circular.fancybox-slide--current {
|
||||||
|
opacity: 1;
|
||||||
|
transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* transitionEffect: tube */
|
||||||
|
|
||||||
|
.fancybox-fx-tube.fancybox-slide--previous {
|
||||||
|
transform: translate3d(-100%, 0, 0) scale(.1) skew(-10deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-fx-tube.fancybox-slide--next {
|
||||||
|
transform: translate3d(100%, 0, 0) scale(.1) skew(10deg);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-fx-tube.fancybox-slide--current {
|
||||||
|
transform: translate3d(0, 0, 0) scale(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Styling for Small-Screen Devices */
|
||||||
|
@media all and (max-height: 576px) {
|
||||||
|
.fancybox-slide {
|
||||||
|
padding-left: 6px;
|
||||||
|
padding-right: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--image {
|
||||||
|
padding: 6px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-close-small {
|
||||||
|
right: -6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-slide--image .fancybox-close-small {
|
||||||
|
background: #4e4e4e;
|
||||||
|
color: #f2f4f6;
|
||||||
|
height: 36px;
|
||||||
|
opacity: 1;
|
||||||
|
padding: 6px;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
width: 36px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-caption {
|
||||||
|
padding-left: 12px;
|
||||||
|
padding-right: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@supports (padding: max(0px)) {
|
||||||
|
.fancybox-caption {
|
||||||
|
padding-left: max(12px, env(safe-area-inset-left));
|
||||||
|
padding-right: max(12px, env(safe-area-inset-right));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* Share */
|
||||||
|
|
||||||
|
.fancybox-share {
|
||||||
|
background: #f4f4f4;
|
||||||
|
border-radius: 3px;
|
||||||
|
max-width: 90%;
|
||||||
|
padding: 30px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share h1 {
|
||||||
|
color: #222;
|
||||||
|
font-size: 35px;
|
||||||
|
font-weight: 700;
|
||||||
|
margin: 0 0 20px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share p {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__button {
|
||||||
|
border: 0;
|
||||||
|
border-radius: 3px;
|
||||||
|
display: inline-block;
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 700;
|
||||||
|
line-height: 40px;
|
||||||
|
margin: 0 5px 10px 5px;
|
||||||
|
min-width: 130px;
|
||||||
|
padding: 0 15px;
|
||||||
|
text-decoration: none;
|
||||||
|
transition: all .2s;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__button:visited,
|
||||||
|
.fancybox-share__button:link {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__button:hover {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__button--fb {
|
||||||
|
background: #3b5998;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__button--fb:hover {
|
||||||
|
background: #344e86;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__button--pt {
|
||||||
|
background: #bd081d;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__button--pt:hover {
|
||||||
|
background: #aa0719;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__button--tw {
|
||||||
|
background: #1da1f2;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__button--tw:hover {
|
||||||
|
background: #0d95e8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__button svg {
|
||||||
|
height: 25px;
|
||||||
|
margin-right: 7px;
|
||||||
|
position: relative;
|
||||||
|
top: -1px;
|
||||||
|
vertical-align: middle;
|
||||||
|
width: 25px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__button svg path {
|
||||||
|
fill: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-share__input {
|
||||||
|
background: transparent;
|
||||||
|
border: 0;
|
||||||
|
border-bottom: 1px solid #d7d7d7;
|
||||||
|
border-radius: 0;
|
||||||
|
color: #5d5b5b;
|
||||||
|
font-size: 14px;
|
||||||
|
margin: 10px 0 0 0;
|
||||||
|
outline: none;
|
||||||
|
padding: 10px 15px;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
/* Thumbs */
|
||||||
|
|
||||||
|
.fancybox-thumbs {
|
||||||
|
background: #ddd;
|
||||||
|
bottom: 0;
|
||||||
|
display: none;
|
||||||
|
margin: 0;
|
||||||
|
-webkit-overflow-scrolling: touch;
|
||||||
|
-ms-overflow-style: -ms-autohiding-scrollbar;
|
||||||
|
padding: 2px 2px 4px 2px;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
||||||
|
top: 0;
|
||||||
|
width: 212px;
|
||||||
|
z-index: 99995;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-thumbs-x {
|
||||||
|
overflow-x: auto;
|
||||||
|
overflow-y: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-show-thumbs .fancybox-thumbs {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-show-thumbs .fancybox-inner {
|
||||||
|
right: 212px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-thumbs__list {
|
||||||
|
font-size: 0;
|
||||||
|
height: 100%;
|
||||||
|
list-style: none;
|
||||||
|
margin: 0;
|
||||||
|
overflow-x: hidden;
|
||||||
|
overflow-y: auto;
|
||||||
|
padding: 0;
|
||||||
|
position: absolute;
|
||||||
|
position: relative;
|
||||||
|
white-space: nowrap;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-thumbs-x .fancybox-thumbs__list {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
|
||||||
|
width: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 10px;
|
||||||
|
box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
|
||||||
|
background: #2a2a2a;
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-thumbs__list a {
|
||||||
|
-webkit-backface-visibility: hidden;
|
||||||
|
backface-visibility: hidden;
|
||||||
|
background-color: rgba(0, 0, 0, .1);
|
||||||
|
background-position: center center;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-size: cover;
|
||||||
|
cursor: pointer;
|
||||||
|
float: left;
|
||||||
|
height: 75px;
|
||||||
|
margin: 2px;
|
||||||
|
max-height: calc(100% - 8px);
|
||||||
|
max-width: calc(50% - 4px);
|
||||||
|
outline: none;
|
||||||
|
overflow: hidden;
|
||||||
|
padding: 0;
|
||||||
|
position: relative;
|
||||||
|
-webkit-tap-highlight-color: transparent;
|
||||||
|
width: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-thumbs__list a::before {
|
||||||
|
border: 6px solid #ff5268;
|
||||||
|
bottom: 0;
|
||||||
|
content: '';
|
||||||
|
left: 0;
|
||||||
|
opacity: 0;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
transition: all .2s cubic-bezier(.25, .46, .45, .94);
|
||||||
|
z-index: 99991;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-thumbs__list a:focus::before {
|
||||||
|
opacity: .5;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-thumbs__list a.fancybox-thumbs-active::before {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Styling for Small-Screen Devices */
|
||||||
|
@media all and (max-width: 576px) {
|
||||||
|
.fancybox-thumbs {
|
||||||
|
width: 110px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-show-thumbs .fancybox-inner {
|
||||||
|
right: 110px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fancybox-thumbs__list a {
|
||||||
|
max-width: calc(100% - 10px);
|
||||||
|
}
|
||||||
|
}
|
5632
fancybox/asset/fancybox/jquery.fancybox.js
vendored
Normal file
5632
fancybox/asset/fancybox/jquery.fancybox.js
vendored
Normal file
File diff suppressed because it is too large
Load diff
1
fancybox/asset/fancybox/jquery.fancybox.min.css
vendored
Normal file
1
fancybox/asset/fancybox/jquery.fancybox.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
13
fancybox/asset/fancybox/jquery.fancybox.min.js
vendored
Normal file
13
fancybox/asset/fancybox/jquery.fancybox.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
15
fancybox/createrelease
Executable file
15
fancybox/createrelease
Executable file
|
@ -0,0 +1,15 @@
|
||||||
|
MODULE=fancybox
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
# old releases not needed anymore
|
||||||
|
mkdir -p $MODULE/dist
|
||||||
|
rm $MODULE/dist/*
|
||||||
|
|
||||||
|
# create release for actual version
|
||||||
|
zip -r9 $MODULE/dist/release.zip $MODULE/* -x $MODULE/dist/\* -x $MODULE/test/\* $MODULE/createrelease
|
||||||
|
|
||||||
|
echo dist/release.zip created.
|
||||||
|
|
||||||
|
cd $MODULE
|
||||||
|
|
61
fancybox/fancybox.php
Normal file
61
fancybox/fancybox.php
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Name: Fancybox
|
||||||
|
* Description: Open media attachments of posts into a fancybox overlay.
|
||||||
|
* Version: 1.05
|
||||||
|
* Author: Grischa Brockhaus <grischa@brockha.us>
|
||||||
|
* Status: Unsupported
|
||||||
|
*/
|
||||||
|
|
||||||
|
use Friendica\App;
|
||||||
|
use Friendica\Core\Hook;
|
||||||
|
use Friendica\DI;
|
||||||
|
|
||||||
|
function fancybox_install()
|
||||||
|
{
|
||||||
|
Hook::register('head', __FILE__, 'fancybox_head');
|
||||||
|
Hook::register('footer', __FILE__, 'fancybox_footer');
|
||||||
|
Hook::register('prepare_body_final', __FILE__, 'fancybox_render');
|
||||||
|
}
|
||||||
|
|
||||||
|
function fancybox_head(string &$b)
|
||||||
|
{
|
||||||
|
DI::page()->registerStylesheet(__DIR__ . '/asset/fancybox/jquery.fancybox.min.css');
|
||||||
|
}
|
||||||
|
|
||||||
|
function fancybox_footer(string &$str)
|
||||||
|
{
|
||||||
|
DI::page()->registerFooterScript(__DIR__ . '/asset/fancybox/jquery.fancybox.min.js');
|
||||||
|
DI::page()->registerFooterScript(__DIR__ . '/asset/fancybox/fancybox.config.js');
|
||||||
|
}
|
||||||
|
|
||||||
|
function fancybox_render(array &$b){
|
||||||
|
$gallery = 'gallery-' . $b['item']['uri-id'] ?? random_int(1000000, 10000000);
|
||||||
|
|
||||||
|
// performWithEscapedBlocks escapes block defined with 2nd par pattern that won't be processed.
|
||||||
|
// We don't want to touch images in class="type-link":
|
||||||
|
$b['html'] = \Friendica\Util\Strings::performWithEscapedBlocks(
|
||||||
|
$b['html'],
|
||||||
|
'#<div class="type-link">.*?</div>#s',
|
||||||
|
function ($text) use ($gallery) {
|
||||||
|
// This processes images inlined in posts
|
||||||
|
// Frio / Vier hooks für lightbox are un-hooked in fancybox-config.js. So this works for them, too!
|
||||||
|
//if (!in_array(DI::app()->getCurrentTheme(),['vier','frio']))
|
||||||
|
$text = preg_replace(
|
||||||
|
'#<a[^>]*href="([^"]*)"[^>]*>(<img[^>]*src="[^"]*"[^>]*>)</a>#',
|
||||||
|
'<a data-fancybox="' . $gallery . '" href="$1">$2</a>',
|
||||||
|
$text);
|
||||||
|
|
||||||
|
// Local content images attached:
|
||||||
|
$text = preg_replace_callback(
|
||||||
|
'#<div class="(body-attach|imagegrid-column)">.*?</div>#s',
|
||||||
|
function ($matches) use ($gallery) {
|
||||||
|
return str_replace('<a href', '<a data-fancybox="' . $gallery . '" href', $matches[0]);
|
||||||
|
},
|
||||||
|
$text
|
||||||
|
);
|
||||||
|
|
||||||
|
return $text;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
24
x-twitter/LICENSE
Normal file
24
x-twitter/LICENSE
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
Copyright (c) 2011-2018 Tobias Diekershoff, Michael Vogel, Hypolite Petovan
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
* Redistributions of source code must retain the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer.
|
||||||
|
* Redistributions in binary form must reproduce the above
|
||||||
|
* copyright notice, this list of conditions and the following disclaimer in
|
||||||
|
the documentation and/or other materials provided with the distribution.
|
||||||
|
* Neither the name of the <organization> nor the names of its contributors
|
||||||
|
may be used to endorse or promote products derived from this software
|
||||||
|
without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY DIRECT,
|
||||||
|
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||||
|
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||||
|
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||||
|
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
||||||
|
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||||
|
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
46
x-twitter/README.md
Normal file
46
x-twitter/README.md
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
Twitter Addon
|
||||||
|
==============
|
||||||
|
|
||||||
|
Main authors Tobias Diekershoff, Michael Vogel and Hypolite Petovan.
|
||||||
|
|
||||||
|
This bi-directional connector addon allows each user to crosspost their Friendica public posts to Twitter, import their Twitter timeline, interact with tweets from Friendica, and crosspost to Friendica their public tweets.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
To use this addon you have to register an [application](https://apps.twitter.com/) for your Friendica instance on Twitter.
|
||||||
|
Register your Friendica site as "Client" application with "Read & Write" access we do not need "Twitter as login".
|
||||||
|
Please leave the field "Callback URL" empty.
|
||||||
|
When you've registered the app you get the OAuth Consumer key and secret pair for your application/site.
|
||||||
|
|
||||||
|
After the registration please enter the values for "Consumer Key" and "Consumer Secret" in the [administration](admin/addons/twitter).
|
||||||
|
|
||||||
|
## Alternative configuration
|
||||||
|
|
||||||
|
Open the `config/local.config.php` file and add "twitter" to the list of activated addons:
|
||||||
|
|
||||||
|
'addons' => [
|
||||||
|
...
|
||||||
|
'twitter' => [
|
||||||
|
admin => true,
|
||||||
|
],
|
||||||
|
]
|
||||||
|
|
||||||
|
Add your key pair to your `config/twitter.config.php` file.
|
||||||
|
|
||||||
|
return [
|
||||||
|
'twitter' => [
|
||||||
|
'consumerkey' => 'your consumer_key here',
|
||||||
|
'consumersecret' => 'your consumer_secret here',
|
||||||
|
],
|
||||||
|
];
|
||||||
|
|
||||||
|
After this, users can configure their Twitter account settings from "Settings -> Addon Settings".
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
The _Twitter Connector_ is licensed under the [3-clause BSD license][2] see the LICENSE file in the addons directory.
|
||||||
|
|
||||||
|
The _Twitter Connector_ uses the [Twitter OAuth library][2] by Abraham Williams, MIT licensed
|
||||||
|
|
||||||
|
[1]: http://opensource.org/licenses/BSD-3-Clause
|
||||||
|
[2]: https://github.com/abraham/twitteroauth
|
32
x-twitter/composer.json
Normal file
32
x-twitter/composer.json
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
{
|
||||||
|
"name": "friendica-addons/twitter",
|
||||||
|
"description": "Twitter Connector addon for Friendica",
|
||||||
|
"type": "friendica-addon",
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Tobias Diekershoff",
|
||||||
|
"homepage": "https://f.diekershoff.de/profile/tobias",
|
||||||
|
"role": "Developer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Michael Vogel",
|
||||||
|
"homepage": "https://pirati.ca/profile/heluecht",
|
||||||
|
"role": "Developer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Hypolite Petovan",
|
||||||
|
"email": "hypolite@mrpetovan.com",
|
||||||
|
"homepage": "https://friendica.mrpetovan.com/profile/hypolite",
|
||||||
|
"role": "Developer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"require": {
|
||||||
|
"abraham/twitteroauth": "2.0.0",
|
||||||
|
"jublonet/codebird-php": "dev-master"
|
||||||
|
},
|
||||||
|
"license": "3-clause BSD license",
|
||||||
|
"minimum-stability": "stable",
|
||||||
|
"config": {
|
||||||
|
"autoloader-suffix": "TwitterAddon"
|
||||||
|
}
|
||||||
|
}
|
328
x-twitter/composer.lock
generated
Normal file
328
x-twitter/composer.lock
generated
Normal file
|
@ -0,0 +1,328 @@
|
||||||
|
{
|
||||||
|
"_readme": [
|
||||||
|
"This file locks the dependencies of your project to a known state",
|
||||||
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
|
"This file is @generated automatically"
|
||||||
|
],
|
||||||
|
"content-hash": "fafd1db0b4f04c4268f5034ce8c7f6ea",
|
||||||
|
"packages": [
|
||||||
|
{
|
||||||
|
"name": "abraham/twitteroauth",
|
||||||
|
"version": "2.0.0",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/abraham/twitteroauth.git",
|
||||||
|
"reference": "96f49e67baec10f5e5cb703d87be16ba01a798a5"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/abraham/twitteroauth/zipball/96f49e67baec10f5e5cb703d87be16ba01a798a5",
|
||||||
|
"reference": "96f49e67baec10f5e5cb703d87be16ba01a798a5",
|
||||||
|
"shasum": ""
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"composer/ca-bundle": "^1.2",
|
||||||
|
"ext-curl": "*",
|
||||||
|
"php": "^7.2 || ^7.3 || ^7.4 || ^8.0"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"php-vcr/php-vcr": "^1",
|
||||||
|
"php-vcr/phpunit-testlistener-vcr": "dev-php-8",
|
||||||
|
"phpmd/phpmd": "^2",
|
||||||
|
"phpunit/phpunit": "^8",
|
||||||
|
"squizlabs/php_codesniffer": "^3"
|
||||||
|
},
|
||||||
|
"type": "library",
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Abraham\\TwitterOAuth\\": "src"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Abraham Williams",
|
||||||
|
"email": "abraham@abrah.am",
|
||||||
|
"homepage": "https://abrah.am",
|
||||||
|
"role": "Developer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "The most popular PHP library for use with the Twitter OAuth REST API.",
|
||||||
|
"homepage": "https://twitteroauth.com",
|
||||||
|
"keywords": [
|
||||||
|
"Twitter API",
|
||||||
|
"Twitter oAuth",
|
||||||
|
"api",
|
||||||
|
"oauth",
|
||||||
|
"rest",
|
||||||
|
"social",
|
||||||
|
"twitter"
|
||||||
|
],
|
||||||
|
"time": "2020-12-02T01:27:06+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "composer/ca-bundle",
|
||||||
|
"version": "1.2.10",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/composer/ca-bundle.git",
|
||||||
|
"reference": "9fdb22c2e97a614657716178093cd1da90a64aa8"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/composer/ca-bundle/zipball/9fdb22c2e97a614657716178093cd1da90a64aa8",
|
||||||
|
"reference": "9fdb22c2e97a614657716178093cd1da90a64aa8",
|
||||||
|
"shasum": ""
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"ext-openssl": "*",
|
||||||
|
"ext-pcre": "*",
|
||||||
|
"php": "^5.3.2 || ^7.0 || ^8.0"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"phpstan/phpstan": "^0.12.55",
|
||||||
|
"psr/log": "^1.0",
|
||||||
|
"symfony/phpunit-bridge": "^4.2 || ^5",
|
||||||
|
"symfony/process": "^2.5 || ^3.0 || ^4.0 || ^5.0"
|
||||||
|
},
|
||||||
|
"type": "library",
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-main": "1.x-dev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Composer\\CaBundle\\": "src"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Jordi Boggiano",
|
||||||
|
"email": "j.boggiano@seld.be",
|
||||||
|
"homepage": "http://seld.be"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "Lets you find a path to the system CA bundle, and includes a fallback to the Mozilla CA bundle.",
|
||||||
|
"keywords": [
|
||||||
|
"cabundle",
|
||||||
|
"cacert",
|
||||||
|
"certificate",
|
||||||
|
"ssl",
|
||||||
|
"tls"
|
||||||
|
],
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"url": "https://packagist.com",
|
||||||
|
"type": "custom"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "https://github.com/composer",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"url": "https://tidelift.com/funding/github/packagist/composer/composer",
|
||||||
|
"type": "tidelift"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"time": "2021-06-07T13:58:28+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "composer/installers",
|
||||||
|
"version": "v1.6.0",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/composer/installers.git",
|
||||||
|
"reference": "cfcca6b1b60bc4974324efb5783c13dca6932b5b"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/composer/installers/zipball/cfcca6b1b60bc4974324efb5783c13dca6932b5b",
|
||||||
|
"reference": "cfcca6b1b60bc4974324efb5783c13dca6932b5b",
|
||||||
|
"shasum": ""
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"composer-plugin-api": "^1.0"
|
||||||
|
},
|
||||||
|
"replace": {
|
||||||
|
"roundcube/plugin-installer": "*",
|
||||||
|
"shama/baton": "*"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"composer/composer": "1.0.*@dev",
|
||||||
|
"phpunit/phpunit": "^4.8.36"
|
||||||
|
},
|
||||||
|
"type": "composer-plugin",
|
||||||
|
"extra": {
|
||||||
|
"class": "Composer\\Installers\\Plugin",
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "1.0-dev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Composer\\Installers\\": "src/Composer/Installers"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Kyle Robinson Young",
|
||||||
|
"email": "kyle@dontkry.com",
|
||||||
|
"homepage": "https://github.com/shama"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "A multi-framework Composer library installer",
|
||||||
|
"homepage": "https://composer.github.io/installers/",
|
||||||
|
"keywords": [
|
||||||
|
"Craft",
|
||||||
|
"Dolibarr",
|
||||||
|
"Eliasis",
|
||||||
|
"Hurad",
|
||||||
|
"ImageCMS",
|
||||||
|
"Kanboard",
|
||||||
|
"Lan Management System",
|
||||||
|
"MODX Evo",
|
||||||
|
"Mautic",
|
||||||
|
"Maya",
|
||||||
|
"OXID",
|
||||||
|
"Plentymarkets",
|
||||||
|
"Porto",
|
||||||
|
"RadPHP",
|
||||||
|
"SMF",
|
||||||
|
"Thelia",
|
||||||
|
"WolfCMS",
|
||||||
|
"agl",
|
||||||
|
"aimeos",
|
||||||
|
"annotatecms",
|
||||||
|
"attogram",
|
||||||
|
"bitrix",
|
||||||
|
"cakephp",
|
||||||
|
"chef",
|
||||||
|
"cockpit",
|
||||||
|
"codeigniter",
|
||||||
|
"concrete5",
|
||||||
|
"croogo",
|
||||||
|
"dokuwiki",
|
||||||
|
"drupal",
|
||||||
|
"eZ Platform",
|
||||||
|
"elgg",
|
||||||
|
"expressionengine",
|
||||||
|
"fuelphp",
|
||||||
|
"grav",
|
||||||
|
"installer",
|
||||||
|
"itop",
|
||||||
|
"joomla",
|
||||||
|
"kohana",
|
||||||
|
"laravel",
|
||||||
|
"lavalite",
|
||||||
|
"lithium",
|
||||||
|
"magento",
|
||||||
|
"majima",
|
||||||
|
"mako",
|
||||||
|
"mediawiki",
|
||||||
|
"modulework",
|
||||||
|
"modx",
|
||||||
|
"moodle",
|
||||||
|
"osclass",
|
||||||
|
"phpbb",
|
||||||
|
"piwik",
|
||||||
|
"ppi",
|
||||||
|
"puppet",
|
||||||
|
"pxcms",
|
||||||
|
"reindex",
|
||||||
|
"roundcube",
|
||||||
|
"shopware",
|
||||||
|
"silverstripe",
|
||||||
|
"sydes",
|
||||||
|
"symfony",
|
||||||
|
"typo3",
|
||||||
|
"wordpress",
|
||||||
|
"yawik",
|
||||||
|
"zend",
|
||||||
|
"zikula"
|
||||||
|
],
|
||||||
|
"time": "2018-08-27T06:10:37+00:00"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "jublonet/codebird-php",
|
||||||
|
"version": "dev-master",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/jublo/codebird-php.git",
|
||||||
|
"reference": "df362d8ad629aad6c4c7dbf36a440e569ec41368"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/jublo/codebird-php/zipball/df362d8ad629aad6c4c7dbf36a440e569ec41368",
|
||||||
|
"reference": "df362d8ad629aad6c4c7dbf36a440e569ec41368",
|
||||||
|
"shasum": ""
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"composer/installers": "~1.0",
|
||||||
|
"ext-hash": "*",
|
||||||
|
"ext-json": "*",
|
||||||
|
"lib-openssl": "*",
|
||||||
|
"php": ">=5.5.0"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"php-coveralls/php-coveralls": ">=0.6",
|
||||||
|
"phpunit/phpunit": ">=7.3",
|
||||||
|
"squizlabs/php_codesniffer": "2.*"
|
||||||
|
},
|
||||||
|
"type": "library",
|
||||||
|
"autoload": {
|
||||||
|
"classmap": [
|
||||||
|
"src/"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"GPL-3.0+"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Joshua Atkins",
|
||||||
|
"role": "Developer",
|
||||||
|
"email": "joshua.atkins@jublo.net",
|
||||||
|
"homepage": "http://atkins.im/"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "J.M.",
|
||||||
|
"role": "Developer",
|
||||||
|
"email": "jm@jublo.net",
|
||||||
|
"homepage": "http://mynetx.net/"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "Easy access to the Twitter REST API, Direct Messages API, Account Activity API, TON (Object Nest) API and Twitter Ads API — all from one PHP library.",
|
||||||
|
"homepage": "https://www.jublo.net/projects/codebird/php",
|
||||||
|
"keywords": [
|
||||||
|
"api",
|
||||||
|
"networking",
|
||||||
|
"twitter"
|
||||||
|
],
|
||||||
|
"time": "2018-08-16T00:07:08+00:00"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"packages-dev": [],
|
||||||
|
"aliases": [],
|
||||||
|
"minimum-stability": "stable",
|
||||||
|
"stability-flags": {
|
||||||
|
"jublonet/codebird-php": 20
|
||||||
|
},
|
||||||
|
"prefer-stable": false,
|
||||||
|
"prefer-lowest": false,
|
||||||
|
"platform": [],
|
||||||
|
"platform-dev": [],
|
||||||
|
"plugin-api-version": "1.1.0"
|
||||||
|
}
|
16
x-twitter/config/twitter.config.php
Normal file
16
x-twitter/config/twitter.config.php
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
// Warning: Don't change this file! It only holds the default config values for this addon.
|
||||||
|
// Instead, copy this file to config/twitter.config.php in your Friendica directory and set the correct values there
|
||||||
|
|
||||||
|
return [
|
||||||
|
'twitter' => [
|
||||||
|
// consumerkey (String)
|
||||||
|
// OAuth Consumer Key provided by Twitter on registering an app at https://twitter.com/apps
|
||||||
|
'consumerkey' => '',
|
||||||
|
|
||||||
|
// consumersecret (String)
|
||||||
|
// OAuth Consumer Secret provided by Twitter on registering an app at https://twitter.com/apps
|
||||||
|
'consumersecret' => '',
|
||||||
|
],
|
||||||
|
];
|
159
x-twitter/lang/C/messages.po
Normal file
159
x-twitter/lang/C/messages.po
Normal file
|
@ -0,0 +1,159 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
#, fuzzy
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: \n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2023-06-03 15:50-0400\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
"Language: \n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
|
#: twitter.php:220
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:267
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:334
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:347
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input "
|
||||||
|
"box below and submit the form. Only your <strong>public</strong> posts will "
|
||||||
|
"be posted to Twitter."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:348
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:350
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:358 twitter.php:403
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:372
|
||||||
|
#, php-format
|
||||||
|
msgid ""
|
||||||
|
"Currently connected to: <a href=\"https://twitter.com/%1$s\" target="
|
||||||
|
"\"_twitter\">%1$s</a>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:378
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:385
|
||||||
|
msgid "Invalid Twitter info"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:386
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:391
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:391
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for "
|
||||||
|
"every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:392
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:393
|
||||||
|
msgid "Use threads instead of truncating the content"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:394
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:395
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:396
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:396
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive "
|
||||||
|
"a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:397
|
||||||
|
msgid "Follow in fediverse"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:397
|
||||||
|
msgid ""
|
||||||
|
"Automatically subscribe to the contact in the fediverse, when a fediverse "
|
||||||
|
"account is mentioned in name or description and we are following the Twitter "
|
||||||
|
"contact."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:410
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:567
|
||||||
|
msgid ""
|
||||||
|
"Please connect a Twitter account in your Social Network settings to import "
|
||||||
|
"Twitter posts."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:574
|
||||||
|
msgid "Twitter post not found."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:999
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:1001
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:1002
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:1200
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr ""
|
129
x-twitter/lang/ar/messages.po
Normal file
129
x-twitter/lang/ar/messages.po
Normal file
|
@ -0,0 +1,129 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Farida Khalaf <faridakhalaf@hotmail.com>, 2021
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2021-10-08 22:25-0400\n"
|
||||||
|
"PO-Revision-Date: 2021-10-09 06:17+0000\n"
|
||||||
|
"Last-Translator: Transifex Bot <>\n"
|
||||||
|
"Language-Team: Arabic (http://www.transifex.com/Friendica/friendica/language/ar/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: ar\n"
|
||||||
|
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
|
||||||
|
|
||||||
|
#: twitter.php:224
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:269
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:329 twitter.php:333
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:340
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:352
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:353
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:355
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:360 twitter.php:415 twitter.php:803
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "حفظ الإعدادات"
|
||||||
|
|
||||||
|
#: twitter.php:362 twitter.php:417
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:379
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:380 twitter.php:390
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:397
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:397
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:400
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:403
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:406
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:409
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:412
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:412
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:805
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:806
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:1002
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr ""
|
8
x-twitter/lang/ar/strings.php
Normal file
8
x-twitter/lang/ar/strings.php
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_ar")) {
|
||||||
|
function string_plural_select_ar($n){
|
||||||
|
$n = intval($n);
|
||||||
|
if ($n==0) { return 0; } else if ($n==1) { return 1; } else if ($n==2) { return 2; } else if ($n%100>=3 && $n%100<=10) { return 3; } else if ($n%100>=11 && $n%100<=99) { return 4; } else { return 5; }
|
||||||
|
}}
|
||||||
|
$a->strings['Save Settings'] = 'حفظ الإعدادات';
|
24
x-twitter/lang/ca/strings.php
Normal file
24
x-twitter/lang/ca/strings.php
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$a->strings["Post to Twitter"] = "Publica-ho al Twitter";
|
||||||
|
$a->strings["Twitter settings updated."] = "La configuració de Twitter actualitzada.";
|
||||||
|
$a->strings["Twitter Posting Settings"] = "Configuració d'Enviaments per a Twitter";
|
||||||
|
$a->strings["No consumer key pair for Twitter found. Please contact your site administrator."] = "No s'ha pogut emparellar cap clau \"consumer key\" per a Twitter. Si us plau, poseu-vos en contacte amb l'administrador del lloc.";
|
||||||
|
$a->strings["At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter."] = "En aquesta instància Friendica el addon Twitter va ser habilitat, però encara no ha connectat el compte al seu compte de Twitter. Per a això feu clic al botó de sota per obtenir un PIN de Twitter que ha de copiar a la casella de sota i enviar el formulari. Només els missatges <strong> públics </strong> es publicaran a Twitter.";
|
||||||
|
$a->strings["Log in with Twitter"] = "Accedeixi com en Twitter";
|
||||||
|
$a->strings["Copy the PIN from Twitter here"] = "Copieu el codi PIN de Twitter aquí";
|
||||||
|
$a->strings["Submit"] = "Enviar";
|
||||||
|
$a->strings["Currently connected to: "] = "Actualment connectat a: ";
|
||||||
|
$a->strings["If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry."] = "Si està activat, tots els seus anuncis <strong> públics </strong> poden ser publicats en el corresponent compte de Twitter. Vostè pot optar per fer-ho per defecte (en aquest cas) o per cada missatge per separat en les opcions de comptabilització en escriure l'entrada.";
|
||||||
|
$a->strings["<strong>Note</strong>: Due your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted."] = "<strong>Nota</strong>: donada la seva configuració de privacitat (<em> Amaga els detalls del teu perfil dels espectadors desconeguts? </em>) el vincle potencialment inclòs en anuncis públics retransmesos a Twitter conduirà al visitant a una pàgina en blanc informar als visitants que l'accés al seu perfil s'ha restringit.";
|
||||||
|
$a->strings["Allow posting to Twitter"] = "Permetre anunci a Twitter";
|
||||||
|
$a->strings["Send public postings to Twitter by default"] = "Enviar anuncis públics a Twitter per defecte";
|
||||||
|
$a->strings["Mirror all posts from twitter that are no replies or retweets"] = "";
|
||||||
|
$a->strings["Shortening method that optimizes the tweet"] = "";
|
||||||
|
$a->strings["Send linked #-tags and @-names to Twitter"] = "Enviar enllaços #-etiquetes i @-noms a Twitter";
|
||||||
|
$a->strings["Clear OAuth configuration"] = "Esborrar configuració de OAuth";
|
||||||
|
$a->strings["Settings updated."] = "Ajustos actualitzats.";
|
||||||
|
$a->strings["Consumer key"] = "Consumer key";
|
||||||
|
$a->strings["Consumer secret"] = "Consumer secret";
|
||||||
|
$a->strings["Name of the Twitter Application"] = "";
|
||||||
|
$a->strings["set this to avoid mirroring postings from ~friendica back to ~friendica"] = "";
|
136
x-twitter/lang/cs/messages.po
Normal file
136
x-twitter/lang/cs/messages.po
Normal file
|
@ -0,0 +1,136 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Aditoo, 2018
|
||||||
|
# Aditoo, 2018
|
||||||
|
# michal_s <msupler@gmail.com>, 2014
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-06-02 10:25+0700\n"
|
||||||
|
"PO-Revision-Date: 2018-06-14 10:10+0000\n"
|
||||||
|
"Last-Translator: Aditoo\n"
|
||||||
|
"Language-Team: Czech (http://www.transifex.com/Friendica/friendica/language/cs/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: cs\n"
|
||||||
|
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
|
||||||
|
|
||||||
|
#: twitter.php:195
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Poslat příspěvek na Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:236
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "Vložil/a jste prázdný PIN kód, prosím přihlaste se opět na Twitter pro nový."
|
||||||
|
|
||||||
|
#: twitter.php:263
|
||||||
|
msgid "Twitter settings updated."
|
||||||
|
msgstr "Nastavení pro Twitter aktualizována."
|
||||||
|
|
||||||
|
#: twitter.php:293 twitter.php:297
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Import/Export/Zrcadlení Twitteru"
|
||||||
|
|
||||||
|
#: twitter.php:304
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Nenalezen žádný spotřebitelský páru klíčů pro Twitter. Obraťte se na administrátora webu."
|
||||||
|
|
||||||
|
#: twitter.php:316
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "Na této instanci Friendica byl doplněk pro Twitter povolen, ještě jste však nepřipojil/a Váš účet k Vašemu účtu na Twitteru. Pokud to chcete udělat, kliknutím na tlačítko níže získáte od Twitteru PIN kód, zkopírujte jej do pole níže a odešlete formulář. Pouze Vaše <strong>veřejné</strong> příspěvky budou odesílány na Twitter."
|
||||||
|
|
||||||
|
#: twitter.php:317
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Přihlásit se přes Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:319
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Zkopírujte sem PIN z Twitteru"
|
||||||
|
|
||||||
|
#: twitter.php:324 twitter.php:366 twitter.php:636
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Uložit nastavení"
|
||||||
|
|
||||||
|
#: twitter.php:336
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr "V současné době připojen k:"
|
||||||
|
|
||||||
|
#: twitter.php:337
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "Odpojit"
|
||||||
|
|
||||||
|
#: twitter.php:347
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Povolit odesílání na Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:347
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "Je-li povoleno, všechny Vaše <strong>veřejné</strong> příspěvky mohou být zasílány na související účet na Twitteru. Můžete si vybrat, zda-li toto bude výchozí nastavení (zde), nebo budete mít možnost si vybrat požadované chování při psaní každého příspěvku."
|
||||||
|
|
||||||
|
#: twitter.php:350
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Poznámka</strong>: Kvůli vašim nastavením o soukromí (<em>Skrýt Vaše profilové detaily před neznámými návštěvníky?</em>), odkaz potenciálně obsažen ve veřejných příspěvcích přeposílaných na Twitter zavedou návštěvníky na prázdnou stránku informující návštěvníky, že přístup na Váš profil byl zakázán."
|
||||||
|
|
||||||
|
#: twitter.php:353
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Defaultně zasílat veřejné komentáře na Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:356
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "Zrcadlit všechny příspěvky z Twitteru, které nejsou odpovědi."
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "Importovat vzdálenou časovou osu"
|
||||||
|
|
||||||
|
#: twitter.php:362
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Automaticky vytvořit kontakty"
|
||||||
|
|
||||||
|
#: twitter.php:362
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here. However if enabled, you cannot "
|
||||||
|
"merely remove a twitter contact from the Friendica contact list, as it will "
|
||||||
|
"recreate this contact when they post again."
|
||||||
|
msgstr "Tato možnost automaticky vytvoří kontakt na Friendica, jakmile obdržíte zprávu od existujícího kontaktu přes síť Twitter. Pokud toto nezapnete, budete si muset tyto kontakty na Twitteru, od kterých chcete dostávat příspěvky, přidávat do Friendica manuálně. Pokud toto ovšem zapnete, nemůžete jednoduše odstranit kontakt na Twitteru ze seznamu kontaktů na Friendica, neboť tato možnost jej při každém novém příspěvku opět vytvoří."
|
||||||
|
|
||||||
|
#: twitter.php:614
|
||||||
|
msgid "Twitter post failed. Queued for retry."
|
||||||
|
msgstr "Poslání příspěvku na Twitter selhalo. Příspěvek byl poslán do fronty pro zopakování."
|
||||||
|
|
||||||
|
#: twitter.php:628
|
||||||
|
msgid "Settings updated."
|
||||||
|
msgstr "Nastavení aktualizováno."
|
||||||
|
|
||||||
|
#: twitter.php:638
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Consumer key"
|
||||||
|
|
||||||
|
#: twitter.php:639
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Consumer secret"
|
30
x-twitter/lang/cs/strings.php
Normal file
30
x-twitter/lang/cs/strings.php
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_cs")) {
|
||||||
|
function string_plural_select_cs($n){
|
||||||
|
$n = intval($n);
|
||||||
|
if (($n == 1 && $n % 1 == 0)) { return 0; } else if (($n >= 2 && $n <= 4 && $n % 1 == 0)) { return 1; } else if (($n % 1 != 0 )) { return 2; } else { return 3; }
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Poslat příspěvek na Twitter';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = 'Vložil/a jste prázdný PIN kód, prosím přihlaste se opět na Twitter pro nový.';
|
||||||
|
$a->strings['Twitter settings updated.'] = 'Nastavení pro Twitter aktualizována.';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Import/Export/Zrcadlení Twitteru';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Nenalezen žádný spotřebitelský páru klíčů pro Twitter. Obraťte se na administrátora webu.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'Na této instanci Friendica byl doplněk pro Twitter povolen, ještě jste však nepřipojil/a Váš účet k Vašemu účtu na Twitteru. Pokud to chcete udělat, kliknutím na tlačítko níže získáte od Twitteru PIN kód, zkopírujte jej do pole níže a odešlete formulář. Pouze Vaše <strong>veřejné</strong> příspěvky budou odesílány na Twitter.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Přihlásit se přes Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Zkopírujte sem PIN z Twitteru';
|
||||||
|
$a->strings['Save Settings'] = 'Uložit nastavení';
|
||||||
|
$a->strings['Currently connected to: '] = 'V současné době připojen k:';
|
||||||
|
$a->strings['Disconnect'] = 'Odpojit';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Povolit odesílání na Twitter';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'Je-li povoleno, všechny Vaše <strong>veřejné</strong> příspěvky mohou být zasílány na související účet na Twitteru. Můžete si vybrat, zda-li toto bude výchozí nastavení (zde), nebo budete mít možnost si vybrat požadované chování při psaní každého příspěvku.';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Poznámka</strong>: Kvůli vašim nastavením o soukromí (<em>Skrýt Vaše profilové detaily před neznámými návštěvníky?</em>), odkaz potenciálně obsažen ve veřejných příspěvcích přeposílaných na Twitter zavedou návštěvníky na prázdnou stránku informující návštěvníky, že přístup na Váš profil byl zakázán.';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Defaultně zasílat veřejné komentáře na Twitter';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'Zrcadlit všechny příspěvky z Twitteru, které nejsou odpovědi.';
|
||||||
|
$a->strings['Import the remote timeline'] = 'Importovat vzdálenou časovou osu';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Automaticky vytvořit kontakty';
|
||||||
|
$a->strings['This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here. However if enabled, you cannot merely remove a twitter contact from the Friendica contact list, as it will recreate this contact when they post again.'] = 'Tato možnost automaticky vytvoří kontakt na Friendica, jakmile obdržíte zprávu od existujícího kontaktu přes síť Twitter. Pokud toto nezapnete, budete si muset tyto kontakty na Twitteru, od kterých chcete dostávat příspěvky, přidávat do Friendica manuálně. Pokud toto ovšem zapnete, nemůžete jednoduše odstranit kontakt na Twitteru ze seznamu kontaktů na Friendica, neboť tato možnost jej při každém novém příspěvku opět vytvoří.';
|
||||||
|
$a->strings['Twitter post failed. Queued for retry.'] = 'Poslání příspěvku na Twitter selhalo. Příspěvek byl poslán do fronty pro zopakování.';
|
||||||
|
$a->strings['Settings updated.'] = 'Nastavení aktualizováno.';
|
||||||
|
$a->strings['Consumer key'] = 'Consumer key';
|
||||||
|
$a->strings['Consumer secret'] = 'Consumer secret';
|
146
x-twitter/lang/da-dk/messages.po
Normal file
146
x-twitter/lang/da-dk/messages.po
Normal file
|
@ -0,0 +1,146 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Anton <dev@atjn.dk>, 2022
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2021-11-27 10:25-0500\n"
|
||||||
|
"PO-Revision-Date: 2014-06-23 12:58+0000\n"
|
||||||
|
"Last-Translator: Anton <dev@atjn.dk>, 2022\n"
|
||||||
|
"Language-Team: Danish (Denmark) (http://www.transifex.com/Friendica/friendica/language/da_DK/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: da_DK\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: twitter.php:213
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Læg op på Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:258
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "Du indsendte en tom PIN, log venligst ind med Twitter igen og få en ny en."
|
||||||
|
|
||||||
|
#: twitter.php:321
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Intet \"consumer key pair\" fundet for Twitter. Kontakt venligst din sides administrator."
|
||||||
|
|
||||||
|
#: twitter.php:334
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "På denne Friendica instans er Twitter-tilføjelsen slået til, men du har ikke forbundet din konto til din Twitter-konto endnu. For at gøre det, skal du klikke på knappen herunder for at få en PIN fra Twitter, som du så skal kopiere ind i input-boksen og indsende . Det er kun dine <strong>offentlige</strong> opslag som vil blive lagt op på Twitter."
|
||||||
|
|
||||||
|
#: twitter.php:335
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Log ind med Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:337
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Kopier din PIN fra Twitter ind her"
|
||||||
|
|
||||||
|
#: twitter.php:345 twitter.php:388
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr "Der opstod en fejl:"
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
#, php-format
|
||||||
|
msgid ""
|
||||||
|
"Currently connected to: <a href=\"https://twitter.com/%1$s\" "
|
||||||
|
"target=\"_twitter\">%1$s</a>"
|
||||||
|
msgstr "I øjeblikket forbundet til: <a href=\"https://twitter.com/%1$s\" target=\"_twitter\">%1$s</a>"
|
||||||
|
|
||||||
|
#: twitter.php:365
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Note</strong>: Grundet dine privatlivsindstillinger (<em>Skjul dine profildetaljer fra ukendte besøgende?</em>), vil linket, som potentielt kan være inkluderet i offentlige opslag på Twitter, lede tilbage til en blank side som informerer den besøgende om at adgang til din profil er begrænset."
|
||||||
|
|
||||||
|
#: twitter.php:372
|
||||||
|
msgid "Invalid Twitter info"
|
||||||
|
msgstr "Ugyldig Twitter information"
|
||||||
|
|
||||||
|
#: twitter.php:373
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "Afbryd forbindelsen"
|
||||||
|
|
||||||
|
#: twitter.php:378
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Tillad at lave opslag på Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:378
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "Hvis aktiveret, kan alle dine <strong>offentlige</strong> opslag blive lagt op på den associerede Twitter konto. Du kan vælge at gøre dette automatisk (her), eller separat for hvert opslag in valgmulighederne når du skriver opslaget."
|
||||||
|
|
||||||
|
#: twitter.php:379
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Send som standard offentlige opslag til Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:380
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "Spejl alle opslag fra Twitter som ikke er svar"
|
||||||
|
|
||||||
|
#: twitter.php:381
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "Importér den eksterne tidslinje"
|
||||||
|
|
||||||
|
#: twitter.php:382
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Opret automatisk kontakter"
|
||||||
|
|
||||||
|
#: twitter.php:382
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here."
|
||||||
|
msgstr "Dette vil automatisk skabe en kontakt i Friendica, så snart du modtager en besked fra en eksisterende kontakt via Twitter-netværket. Hvis du ikke slår dette til, skal du manuelt tilføje de Twitter kontakter i Friendica, som du gerne vil se opslag fra her."
|
||||||
|
|
||||||
|
#: twitter.php:395
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Twitter Import/Eksport/Spejl"
|
||||||
|
|
||||||
|
#: twitter.php:547
|
||||||
|
msgid ""
|
||||||
|
"Please connect a Twitter account in your Social Network settings to import "
|
||||||
|
"Twitter posts."
|
||||||
|
msgstr "Forbind venligst en Twitter konto i dine Sociale Netværk indstiliinger for at importere Twitter opslag."
|
||||||
|
|
||||||
|
#: twitter.php:554
|
||||||
|
msgid "Twitter post not found."
|
||||||
|
msgstr "Twitter opslag kunne ikke opstøves."
|
||||||
|
|
||||||
|
#: twitter.php:914
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Gem indstillinger"
|
||||||
|
|
||||||
|
#: twitter.php:916
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "\"Consumer\" nøgle"
|
||||||
|
|
||||||
|
#: twitter.php:917
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "\"Consumer\" hemmelighed"
|
||||||
|
|
||||||
|
#: twitter.php:1113
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr "%s på Twitter"
|
32
x-twitter/lang/da-dk/strings.php
Normal file
32
x-twitter/lang/da-dk/strings.php
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_da_dk")) {
|
||||||
|
function string_plural_select_da_dk($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval($n != 1);
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Læg op på Twitter';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = 'Du indsendte en tom PIN, log venligst ind med Twitter igen og få en ny en.';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Intet "consumer key pair" fundet for Twitter. Kontakt venligst din sides administrator.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'På denne Friendica instans er Twitter-tilføjelsen slået til, men du har ikke forbundet din konto til din Twitter-konto endnu. For at gøre det, skal du klikke på knappen herunder for at få en PIN fra Twitter, som du så skal kopiere ind i input-boksen og indsende . Det er kun dine <strong>offentlige</strong> opslag som vil blive lagt op på Twitter.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Log ind med Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Kopier din PIN fra Twitter ind her';
|
||||||
|
$a->strings['An error occured: '] = 'Der opstod en fejl:';
|
||||||
|
$a->strings['Currently connected to: <a href="https://twitter.com/%1$s" target="_twitter">%1$s</a>'] = 'I øjeblikket forbundet til: <a href="https://twitter.com/%1$s" target="_twitter">%1$s</a>';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Note</strong>: Grundet dine privatlivsindstillinger (<em>Skjul dine profildetaljer fra ukendte besøgende?</em>), vil linket, som potentielt kan være inkluderet i offentlige opslag på Twitter, lede tilbage til en blank side som informerer den besøgende om at adgang til din profil er begrænset.';
|
||||||
|
$a->strings['Invalid Twitter info'] = 'Ugyldig Twitter information';
|
||||||
|
$a->strings['Disconnect'] = 'Afbryd forbindelsen';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Tillad at lave opslag på Twitter';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'Hvis aktiveret, kan alle dine <strong>offentlige</strong> opslag blive lagt op på den associerede Twitter konto. Du kan vælge at gøre dette automatisk (her), eller separat for hvert opslag in valgmulighederne når du skriver opslaget.';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Send som standard offentlige opslag til Twitter';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'Spejl alle opslag fra Twitter som ikke er svar';
|
||||||
|
$a->strings['Import the remote timeline'] = 'Importér den eksterne tidslinje';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Opret automatisk kontakter';
|
||||||
|
$a->strings['This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here.'] = 'Dette vil automatisk skabe en kontakt i Friendica, så snart du modtager en besked fra en eksisterende kontakt via Twitter-netværket. Hvis du ikke slår dette til, skal du manuelt tilføje de Twitter kontakter i Friendica, som du gerne vil se opslag fra her.';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Twitter Import/Eksport/Spejl';
|
||||||
|
$a->strings['Please connect a Twitter account in your Social Network settings to import Twitter posts.'] = 'Forbind venligst en Twitter konto i dine Sociale Netværk indstiliinger for at importere Twitter opslag.';
|
||||||
|
$a->strings['Twitter post not found.'] = 'Twitter opslag kunne ikke opstøves.';
|
||||||
|
$a->strings['Save Settings'] = 'Gem indstillinger';
|
||||||
|
$a->strings['Consumer key'] = '"Consumer" nøgle';
|
||||||
|
$a->strings['Consumer secret'] = '"Consumer" hemmelighed';
|
||||||
|
$a->strings['%s on Twitter'] = '%s på Twitter';
|
164
x-twitter/lang/de/messages.po
Normal file
164
x-twitter/lang/de/messages.po
Normal file
|
@ -0,0 +1,164 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Till Mohr <tmtrfx@till-mohr.de>, 2021
|
||||||
|
# Tobias Diekershoff <tobias.diekershoff@gmx.net>, 2014-2015
|
||||||
|
# Tobias Diekershoff <tobias.diekershoff@gmx.net>, 2018,2020-2022
|
||||||
|
# Ulf Rompe <transifex.com@rompe.org>, 2019
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2022-11-13 10:15+0000\n"
|
||||||
|
"PO-Revision-Date: 2014-06-23 12:58+0000\n"
|
||||||
|
"Last-Translator: Tobias Diekershoff <tobias.diekershoff@gmx.net>, 2018,2020-2022\n"
|
||||||
|
"Language-Team: German (http://app.transifex.com/Friendica/friendica/language/de/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: de\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: twitter.php:216
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Auf Twitter veröffentlichen"
|
||||||
|
|
||||||
|
#: twitter.php:263
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "Du hast keine PIN übertragen. Bitte melde dich erneut bei Twitter an, um eine neue PIN zu erhalten."
|
||||||
|
|
||||||
|
#: twitter.php:330
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Kein Consumer-Schlüsselpaar für Twitter gefunden. Bitte wende dich an den Administrator der Seite."
|
||||||
|
|
||||||
|
#: twitter.php:343
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "Auf diesem Friendica-Server wurde das Twitter-Addon aktiviert, aber du hast deinen Account noch nicht mit deinem Twitter-Account verbunden. Klicke dazu auf die Schaltfläche unten. Du erhältst dann eine PIN von Twitter, die du in das Eingabefeld unten einfügst. Denk daran, den Senden-Knopf zu drücken! Nur <strong>öffentliche</strong> Beiträge werden bei Twitter veröffentlicht."
|
||||||
|
|
||||||
|
#: twitter.php:344
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "bei Twitter anmelden"
|
||||||
|
|
||||||
|
#: twitter.php:346
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Kopiere die Twitter-PIN hierher"
|
||||||
|
|
||||||
|
#: twitter.php:354 twitter.php:399
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr "Ein Fehler ist aufgetreten:"
|
||||||
|
|
||||||
|
#: twitter.php:368
|
||||||
|
#, php-format
|
||||||
|
msgid ""
|
||||||
|
"Currently connected to: <a href=\"https://twitter.com/%1$s\" "
|
||||||
|
"target=\"_twitter\">%1$s</a>"
|
||||||
|
msgstr "Derzeit verbunden mit: <a href=\"https://twitter.com/%1$s\" target=\"_twitter\">%1$s</a>"
|
||||||
|
|
||||||
|
#: twitter.php:374
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Hinweis</strong>: Aufgrund deiner Privatsphären-Einstellungen (<em>Profil-Details vor unbekannten Betrachtern verbergen?</em>) wird der Link, der eventuell an deinen Twitter-Beitrag angehängt wird, um auf den Originalbeitrag zu verweisen, den Betrachter auf eine leere Seite führen, die ihn darüber informiert, dass der Zugriff eingeschränkt wurde."
|
||||||
|
|
||||||
|
#: twitter.php:381
|
||||||
|
msgid "Invalid Twitter info"
|
||||||
|
msgstr "Ungültige Twitter Informationen"
|
||||||
|
|
||||||
|
#: twitter.php:382
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "Trennen"
|
||||||
|
|
||||||
|
#: twitter.php:387
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Veröffentlichung bei Twitter erlauben"
|
||||||
|
|
||||||
|
#: twitter.php:387
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "Wenn aktiviert, können all deine <strong>öffentlichen</strong> Einträge auf dem verbundenen Twitter-Konto veröffentlicht werden. Du kannst dies (hier) als Standardverhalten einstellen oder beim Schreiben eines Beitrags in den Beitragsoptionen festlegen."
|
||||||
|
|
||||||
|
#: twitter.php:388
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Veröffentliche öffentliche Beiträge standardmäßig bei Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:389
|
||||||
|
msgid "Use threads instead of truncating the content"
|
||||||
|
msgstr "Verwende Threads anstelle den Inhalt zu kürzen"
|
||||||
|
|
||||||
|
#: twitter.php:390
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "Spiegle alle Beiträge von Twitter, die keine Antworten sind"
|
||||||
|
|
||||||
|
#: twitter.php:391
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "Importiere die Remote-Zeitleiste"
|
||||||
|
|
||||||
|
#: twitter.php:392
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Automatisch Kontakte anlegen"
|
||||||
|
|
||||||
|
#: twitter.php:392
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here."
|
||||||
|
msgstr "Mit dieser Option wird automatisch ein Kontakt bei Friendica angelegt, wenn du eine Nachricht von einem bestehenden Kontakt auf Twitter erhältst. Ist die Option nicht aktiv, musst du manuell Kontakte für diejenigen deiner Twitter-Kontakte anlegen, deren Nachrichten du auf Friendica lesen möchtest."
|
||||||
|
|
||||||
|
#: twitter.php:393
|
||||||
|
msgid "Follow in fediverse"
|
||||||
|
msgstr "Im Fediverse folgen"
|
||||||
|
|
||||||
|
#: twitter.php:393
|
||||||
|
msgid ""
|
||||||
|
"Automatically subscribe to the contact in the fediverse, when a fediverse "
|
||||||
|
"account is mentioned in name or description and we are following the Twitter"
|
||||||
|
" contact."
|
||||||
|
msgstr "Hat ein Twitter Kontakt eine Profiladresse im Fediverse im Namen oder der Beschreibung genannt, wird dieser automatisch gefolgt."
|
||||||
|
|
||||||
|
#: twitter.php:406
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Twitter-Import/Export/Spiegeln"
|
||||||
|
|
||||||
|
#: twitter.php:558
|
||||||
|
msgid ""
|
||||||
|
"Please connect a Twitter account in your Social Network settings to import "
|
||||||
|
"Twitter posts."
|
||||||
|
msgstr "Bitte verbinde deinen Twitter Account in den Einstellungen zu den Soziale Netzwerken damit deine Twitter Beiträge importiert werden."
|
||||||
|
|
||||||
|
#: twitter.php:565
|
||||||
|
msgid "Twitter post not found."
|
||||||
|
msgstr "Beiträge auf Twitter nicht gefunden."
|
||||||
|
|
||||||
|
#: twitter.php:965
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Einstellungen speichern"
|
||||||
|
|
||||||
|
#: twitter.php:967
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Consumer Key"
|
||||||
|
|
||||||
|
#: twitter.php:968
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Consumer Secret"
|
||||||
|
|
||||||
|
#: twitter.php:1167
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr "%s auf Twitter"
|
35
x-twitter/lang/de/strings.php
Normal file
35
x-twitter/lang/de/strings.php
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_de")) {
|
||||||
|
function string_plural_select_de($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval($n != 1);
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Auf Twitter veröffentlichen';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = 'Du hast keine PIN übertragen. Bitte melde dich erneut bei Twitter an, um eine neue PIN zu erhalten.';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Kein Consumer-Schlüsselpaar für Twitter gefunden. Bitte wende dich an den Administrator der Seite.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'Auf diesem Friendica-Server wurde das Twitter-Addon aktiviert, aber du hast deinen Account noch nicht mit deinem Twitter-Account verbunden. Klicke dazu auf die Schaltfläche unten. Du erhältst dann eine PIN von Twitter, die du in das Eingabefeld unten einfügst. Denk daran, den Senden-Knopf zu drücken! Nur <strong>öffentliche</strong> Beiträge werden bei Twitter veröffentlicht.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'bei Twitter anmelden';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Kopiere die Twitter-PIN hierher';
|
||||||
|
$a->strings['An error occured: '] = 'Ein Fehler ist aufgetreten:';
|
||||||
|
$a->strings['Currently connected to: <a href="https://twitter.com/%1$s" target="_twitter">%1$s</a>'] = 'Derzeit verbunden mit: <a href="https://twitter.com/%1$s" target="_twitter">%1$s</a>';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Hinweis</strong>: Aufgrund deiner Privatsphären-Einstellungen (<em>Profil-Details vor unbekannten Betrachtern verbergen?</em>) wird der Link, der eventuell an deinen Twitter-Beitrag angehängt wird, um auf den Originalbeitrag zu verweisen, den Betrachter auf eine leere Seite führen, die ihn darüber informiert, dass der Zugriff eingeschränkt wurde.';
|
||||||
|
$a->strings['Invalid Twitter info'] = 'Ungültige Twitter Informationen';
|
||||||
|
$a->strings['Disconnect'] = 'Trennen';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Veröffentlichung bei Twitter erlauben';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'Wenn aktiviert, können all deine <strong>öffentlichen</strong> Einträge auf dem verbundenen Twitter-Konto veröffentlicht werden. Du kannst dies (hier) als Standardverhalten einstellen oder beim Schreiben eines Beitrags in den Beitragsoptionen festlegen.';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Veröffentliche öffentliche Beiträge standardmäßig bei Twitter';
|
||||||
|
$a->strings['Use threads instead of truncating the content'] = 'Verwende Threads anstelle den Inhalt zu kürzen';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'Spiegle alle Beiträge von Twitter, die keine Antworten sind';
|
||||||
|
$a->strings['Import the remote timeline'] = 'Importiere die Remote-Zeitleiste';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Automatisch Kontakte anlegen';
|
||||||
|
$a->strings['This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here.'] = 'Mit dieser Option wird automatisch ein Kontakt bei Friendica angelegt, wenn du eine Nachricht von einem bestehenden Kontakt auf Twitter erhältst. Ist die Option nicht aktiv, musst du manuell Kontakte für diejenigen deiner Twitter-Kontakte anlegen, deren Nachrichten du auf Friendica lesen möchtest.';
|
||||||
|
$a->strings['Follow in fediverse'] = 'Im Fediverse folgen';
|
||||||
|
$a->strings['Automatically subscribe to the contact in the fediverse, when a fediverse account is mentioned in name or description and we are following the Twitter contact.'] = 'Hat ein Twitter Kontakt eine Profiladresse im Fediverse im Namen oder der Beschreibung genannt, wird dieser automatisch gefolgt.';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Twitter-Import/Export/Spiegeln';
|
||||||
|
$a->strings['Please connect a Twitter account in your Social Network settings to import Twitter posts.'] = 'Bitte verbinde deinen Twitter Account in den Einstellungen zu den Soziale Netzwerken damit deine Twitter Beiträge importiert werden.';
|
||||||
|
$a->strings['Twitter post not found.'] = 'Beiträge auf Twitter nicht gefunden.';
|
||||||
|
$a->strings['Save Settings'] = 'Einstellungen speichern';
|
||||||
|
$a->strings['Consumer key'] = 'Consumer Key';
|
||||||
|
$a->strings['Consumer secret'] = 'Consumer Secret';
|
||||||
|
$a->strings['%s on Twitter'] = '%s auf Twitter';
|
134
x-twitter/lang/en-gb/messages.po
Normal file
134
x-twitter/lang/en-gb/messages.po
Normal file
|
@ -0,0 +1,134 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Andy H3 <andy@hubup.pro>, 2018-2019
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-06-02 10:25+0700\n"
|
||||||
|
"PO-Revision-Date: 2019-03-11 16:21+0000\n"
|
||||||
|
"Last-Translator: Andy H3 <andy@hubup.pro>\n"
|
||||||
|
"Language-Team: English (United Kingdom) (http://www.transifex.com/Friendica/friendica/language/en_GB/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: en_GB\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: twitter.php:195
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Post to Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:236
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "You submitted an empty PIN, please sign in with Twitter again to get a new PIN."
|
||||||
|
|
||||||
|
#: twitter.php:263
|
||||||
|
msgid "Twitter settings updated."
|
||||||
|
msgstr "Twitter settings updated."
|
||||||
|
|
||||||
|
#: twitter.php:293 twitter.php:297
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Twitter Import/Export/Mirror"
|
||||||
|
|
||||||
|
#: twitter.php:304
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "No consumer key pair for Twitter found. Please contact your site administrator."
|
||||||
|
|
||||||
|
#: twitter.php:316
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "At this Friendica instance the Twitter addon was enabled, but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter."
|
||||||
|
|
||||||
|
#: twitter.php:317
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Log in with Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:319
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Copy the PIN from Twitter here"
|
||||||
|
|
||||||
|
#: twitter.php:324 twitter.php:366 twitter.php:636
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Save settings"
|
||||||
|
|
||||||
|
#: twitter.php:336
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr "Currently connected to: "
|
||||||
|
|
||||||
|
#: twitter.php:337
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "Disconnect"
|
||||||
|
|
||||||
|
#: twitter.php:347
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Allow posting to Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:347
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry."
|
||||||
|
|
||||||
|
#: twitter.php:350
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted."
|
||||||
|
|
||||||
|
#: twitter.php:353
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Send public postings to Twitter by default"
|
||||||
|
|
||||||
|
#: twitter.php:356
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "Mirror all posts from twitter that are no replies"
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "Import the remote timeline"
|
||||||
|
|
||||||
|
#: twitter.php:362
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Automatically create contacts"
|
||||||
|
|
||||||
|
#: twitter.php:362
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here. However if enabled, you cannot "
|
||||||
|
"merely remove a twitter contact from the Friendica contact list, as it will "
|
||||||
|
"recreate this contact when they post again."
|
||||||
|
msgstr "This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here. However if enabled, you cannot merely remove a twitter contact from the Friendica contact list, as it will recreate this contact when they post again."
|
||||||
|
|
||||||
|
#: twitter.php:614
|
||||||
|
msgid "Twitter post failed. Queued for retry."
|
||||||
|
msgstr "Twitter post failed. Queued for retry."
|
||||||
|
|
||||||
|
#: twitter.php:628
|
||||||
|
msgid "Settings updated."
|
||||||
|
msgstr "Settings updated."
|
||||||
|
|
||||||
|
#: twitter.php:638
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Consumer key"
|
||||||
|
|
||||||
|
#: twitter.php:639
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Consumer secret"
|
30
x-twitter/lang/en-gb/strings.php
Normal file
30
x-twitter/lang/en-gb/strings.php
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_en_gb")) {
|
||||||
|
function string_plural_select_en_gb($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval($n != 1);
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Post to Twitter';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = 'You submitted an empty PIN, please sign in with Twitter again to get a new PIN.';
|
||||||
|
$a->strings['Twitter settings updated.'] = 'Twitter settings updated.';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Twitter Import/Export/Mirror';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'No consumer key pair for Twitter found. Please contact your site administrator.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'At this Friendica instance the Twitter addon was enabled, but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Log in with Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Copy the PIN from Twitter here';
|
||||||
|
$a->strings['Save Settings'] = 'Save settings';
|
||||||
|
$a->strings['Currently connected to: '] = 'Currently connected to: ';
|
||||||
|
$a->strings['Disconnect'] = 'Disconnect';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Allow posting to Twitter';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Send public postings to Twitter by default';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'Mirror all posts from twitter that are no replies';
|
||||||
|
$a->strings['Import the remote timeline'] = 'Import the remote timeline';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Automatically create contacts';
|
||||||
|
$a->strings['This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here. However if enabled, you cannot merely remove a twitter contact from the Friendica contact list, as it will recreate this contact when they post again.'] = 'This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here. However if enabled, you cannot merely remove a twitter contact from the Friendica contact list, as it will recreate this contact when they post again.';
|
||||||
|
$a->strings['Twitter post failed. Queued for retry.'] = 'Twitter post failed. Queued for retry.';
|
||||||
|
$a->strings['Settings updated.'] = 'Settings updated.';
|
||||||
|
$a->strings['Consumer key'] = 'Consumer key';
|
||||||
|
$a->strings['Consumer secret'] = 'Consumer secret';
|
133
x-twitter/lang/en-us/messages.po
Normal file
133
x-twitter/lang/en-us/messages.po
Normal file
|
@ -0,0 +1,133 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Andy H3 <andy@hubup.pro>, 2018
|
||||||
|
# R C, 2018
|
||||||
|
# Spencer Dub <southwest23@gmail.com>, 2021
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2020-10-23 02:00-0400\n"
|
||||||
|
"PO-Revision-Date: 2021-01-14 00:51+0000\n"
|
||||||
|
"Last-Translator: Spencer Dub <southwest23@gmail.com>\n"
|
||||||
|
"Language-Team: English (United States) (http://www.transifex.com/Friendica/friendica/language/en_US/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: en_US\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: twitter.php:189
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Post to Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:234
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "You submitted an empty PIN, please sign in with Twitter again to get a new PIN."
|
||||||
|
|
||||||
|
#: twitter.php:291 twitter.php:295
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Twitter Import/Export/Mirror"
|
||||||
|
|
||||||
|
#: twitter.php:302
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "No consumer key pair for Twitter found. Please contact your site administrator."
|
||||||
|
|
||||||
|
#: twitter.php:314
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "This Friendica instance has enabled the Twitter addon, but you have not yet connected your Friendica account to your Twitter account. To do so, click the button below to get a PIN from Twitter. Copy the PIN into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter."
|
||||||
|
|
||||||
|
#: twitter.php:315
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Log in with Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:317
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Copy the PIN from Twitter here"
|
||||||
|
|
||||||
|
#: twitter.php:322 twitter.php:377 twitter.php:757
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Save settings"
|
||||||
|
|
||||||
|
#: twitter.php:324 twitter.php:379
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr "An error occurred: "
|
||||||
|
|
||||||
|
#: twitter.php:341
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr "Currently connected to: "
|
||||||
|
|
||||||
|
#: twitter.php:342 twitter.php:352
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "Disconnect"
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Allow posting to Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "If enabled, all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry."
|
||||||
|
|
||||||
|
#: twitter.php:362
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted."
|
||||||
|
|
||||||
|
#: twitter.php:365
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Send public postings to Twitter by default"
|
||||||
|
|
||||||
|
#: twitter.php:368
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "Mirror all posts from Twitter that are not replies"
|
||||||
|
|
||||||
|
#: twitter.php:371
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "Import the remote timeline"
|
||||||
|
|
||||||
|
#: twitter.php:374
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Automatically create contacts"
|
||||||
|
|
||||||
|
#: twitter.php:374
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here. However if enabled, you cannot "
|
||||||
|
"merely remove a twitter contact from the Friendica contact list, as it will "
|
||||||
|
"recreate this contact when they post again."
|
||||||
|
msgstr "This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here. However if enabled, you cannot merely remove a Twitter contact from the Friendica contact list, as it will recreate this contact when they post again."
|
||||||
|
|
||||||
|
#: twitter.php:759
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Consumer key"
|
||||||
|
|
||||||
|
#: twitter.php:760
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Consumer secret"
|
||||||
|
|
||||||
|
#: twitter.php:945
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr "%s on Twitter"
|
29
x-twitter/lang/en-us/strings.php
Normal file
29
x-twitter/lang/en-us/strings.php
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_en_us")) {
|
||||||
|
function string_plural_select_en_us($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval($n != 1);
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Post to Twitter';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = 'You submitted an empty PIN, please sign in with Twitter again to get a new PIN.';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Twitter Import/Export/Mirror';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'No consumer key pair for Twitter found. Please contact your site administrator.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'This Friendica instance has enabled the Twitter addon, but you have not yet connected your Friendica account to your Twitter account. To do so, click the button below to get a PIN from Twitter. Copy the PIN into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Log in with Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Copy the PIN from Twitter here';
|
||||||
|
$a->strings['Save Settings'] = 'Save settings';
|
||||||
|
$a->strings['An error occured: '] = 'An error occurred: ';
|
||||||
|
$a->strings['Currently connected to: '] = 'Currently connected to: ';
|
||||||
|
$a->strings['Disconnect'] = 'Disconnect';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Allow posting to Twitter';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'If enabled, all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Send public postings to Twitter by default';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'Mirror all posts from Twitter that are not replies';
|
||||||
|
$a->strings['Import the remote timeline'] = 'Import the remote timeline';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Automatically create contacts';
|
||||||
|
$a->strings['This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here. However if enabled, you cannot merely remove a twitter contact from the Friendica contact list, as it will recreate this contact when they post again.'] = 'This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here. However if enabled, you cannot merely remove a Twitter contact from the Friendica contact list, as it will recreate this contact when they post again.';
|
||||||
|
$a->strings['Consumer key'] = 'Consumer key';
|
||||||
|
$a->strings['Consumer secret'] = 'Consumer secret';
|
||||||
|
$a->strings['%s on Twitter'] = '%s on Twitter';
|
20
x-twitter/lang/eo/strings.php
Normal file
20
x-twitter/lang/eo/strings.php
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$a->strings["Post to Twitter"] = "Afiŝi ĉe Twitter";
|
||||||
|
$a->strings["Twitter settings updated."] = "Ĝisdatigis Twitter agordojn.";
|
||||||
|
$a->strings["Twitter Posting Settings"] = "Agordoj por afiŝi ĉe Twitter";
|
||||||
|
$a->strings["No consumer key pair for Twitter found. Please contact your site administrator."] = "Ne trovis klientajn ŝlosilojn por Twitter. Bonvolu kontakti vian retejan administranton.";
|
||||||
|
$a->strings["At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter."] = "Je ĉi tiu Friendica retejo, la Twitter kromprogramo jam estas ŝaltita, sed via konto anokoraŭ ne estas konektita kun via Twitter konto. Por fari tion, klaku la supran butonon por atingi nombrokodon de Twitter, kion vi kopiu en la supran eniga ĉelo, kaj sendu la formularon. Nur viaj <strong>publikaj</strong> afiŝoj estas plusendota al Twitter. ";
|
||||||
|
$a->strings["Log in with Twitter"] = "Ensaluti kun Twitter";
|
||||||
|
$a->strings["Copy the PIN from Twitter here"] = "Alglui la PIN de Twitter ĉi tie";
|
||||||
|
$a->strings["Submit"] = "Sendi";
|
||||||
|
$a->strings["Currently connected to: "] = "Konektita al:";
|
||||||
|
$a->strings["If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry."] = "Kiam ŝaltita, ĉiuj <strong>publikaj</strong> afiŝoj de vi ankaŭ eblas esti afiŝota al la asociigita Twitter konto. Vi povas elekti ĝin defaŭlte (ĉi tie) au unuope por ĉiuj afiŝoj kiam vi skribos ilin.";
|
||||||
|
$a->strings["<strong>Note</strong>: Due your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted."] = "<strong>Averto</strong>: Laŭ viaj privatecaj agordoj (<em>Kaŝi viajn profilajn detalojn al nekonataj spektantoj?</em>), la ligilo en publikaj afiŝoj plusendata al Twitter gvidas vizitontojn al malplena paĝo sciigante ilin ke atingo al via profilo estas lmitigita.";
|
||||||
|
$a->strings["Allow posting to Twitter"] = "Permesi afiŝojn al Twitter";
|
||||||
|
$a->strings["Send public postings to Twitter by default"] = "Defaŭlte sendi publikajn afiŝojn al Twitter";
|
||||||
|
$a->strings["Send linked #-tags and @-names to Twitter"] = "Sendi ligitajn #-etikedojn kaj @-nomon al Twitter";
|
||||||
|
$a->strings["Clear OAuth configuration"] = "Forviŝi OAuth agordojn";
|
||||||
|
$a->strings["Settings updated."] = "Agordoj ĝisdatigita.";
|
||||||
|
$a->strings["Consumer key"] = "Ŝlosilo de Kliento";
|
||||||
|
$a->strings["Consumer secret"] = "Sekreto de Kliento";
|
133
x-twitter/lang/es/messages.po
Normal file
133
x-twitter/lang/es/messages.po
Normal file
|
@ -0,0 +1,133 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Albert, 2016
|
||||||
|
# Julio Cova, 2019
|
||||||
|
# Senex Petrovic <javierruizo@hotmail.com>, 2021
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2021-02-01 18:16+0100\n"
|
||||||
|
"PO-Revision-Date: 2021-04-06 02:17+0000\n"
|
||||||
|
"Last-Translator: Senex Petrovic <javierruizo@hotmail.com>\n"
|
||||||
|
"Language-Team: Spanish (http://www.transifex.com/Friendica/friendica/language/es/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: es\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: twitter.php:189
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Entrada para Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:234
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "Envió un PIN vacío, inicie sesión con Twitter nuevamente para obtener uno nuevo."
|
||||||
|
|
||||||
|
#: twitter.php:291 twitter.php:295
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Importación / Exportación / Espejo de Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:302
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "No se ha encontrado ningún par de claves de consumidor para Twitter. Por favor, póngase en contacto con el administrador de su sitio. "
|
||||||
|
|
||||||
|
#: twitter.php:314
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "En esta instancia de Friendica, se habilitó el complemento de Twitter, pero aún no ha conectado su cuenta a su cuenta de Twitter. Para hacerlo, haga clic en el botón de abajo para obtener un PIN de Twitter que debe copiar en el cuadro de entrada a continuación y enviar el formulario. Solo sus publicaciones de <strong> public </strong> se publicarán en Twitter."
|
||||||
|
|
||||||
|
#: twitter.php:315
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Iniciar sesión con Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:317
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Copie el PIN de Twitter aquí"
|
||||||
|
|
||||||
|
#: twitter.php:322 twitter.php:377 twitter.php:768
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Guardar ajustes"
|
||||||
|
|
||||||
|
#: twitter.php:324 twitter.php:379
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr "Ocurrió un error:"
|
||||||
|
|
||||||
|
#: twitter.php:341
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr "Moneda conectada a:"
|
||||||
|
|
||||||
|
#: twitter.php:342 twitter.php:352
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "Desconectar"
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Permitir publicar en Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "Si habilita todas sus publicaciones <strong>públicas</strong> pueden ser publicadas en la cuenta de Twitter asociada. Puede elegir hacer eso por defecto (aquí) o por cada publicación por separado en las opciones de entrada cuando escriba la entrada."
|
||||||
|
|
||||||
|
#: twitter.php:362
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Nota</strong>: Debido a tu privacidad (<em>Ocultar tu perfil de desconocidos?</em>) el enlace potencialmente incluido en publicaciones públicas retransmitidas a Twitter llevará al visitante a una página en blanco que le informa que el acceso a su perfil ha sido restringido."
|
||||||
|
|
||||||
|
#: twitter.php:365
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Enviar publicaciones públicas a Twitter por defecto"
|
||||||
|
|
||||||
|
#: twitter.php:368
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "Refleje todas las publicaciones de Twitter que no sean respuestas"
|
||||||
|
|
||||||
|
#: twitter.php:371
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "Importar la línea de tiempo remota"
|
||||||
|
|
||||||
|
#: twitter.php:374
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Crea contactos automáticamente"
|
||||||
|
|
||||||
|
#: twitter.php:374
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here. However if enabled, you cannot "
|
||||||
|
"merely remove a twitter contact from the Friendica contact list, as it will "
|
||||||
|
"recreate this contact when they post again."
|
||||||
|
msgstr "Esto creará automáticamente un contacto en Friendica tan pronto como reciba un mensaje de un contacto existente a través de la red de Twitter. Si no habilita esto, debe agregar manualmente los contactos de Twitter en Friendica de los que le gustaría ver las publicaciones aquí. Sin embargo, si está habilitado, no puede simplemente eliminar un contacto de Twitter de la lista de contactos de Friendica, ya que volverá a crear este contacto cuando vuelva a publicar."
|
||||||
|
|
||||||
|
#: twitter.php:770
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Clave de consumidor"
|
||||||
|
|
||||||
|
#: twitter.php:771
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Secreto de consumidor"
|
||||||
|
|
||||||
|
#: twitter.php:967
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr "%s en Twitter"
|
29
x-twitter/lang/es/strings.php
Normal file
29
x-twitter/lang/es/strings.php
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_es")) {
|
||||||
|
function string_plural_select_es($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval($n != 1);
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Entrada para Twitter';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = 'Envió un PIN vacío, inicie sesión con Twitter nuevamente para obtener uno nuevo.';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Importación / Exportación / Espejo de Twitter';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'No se ha encontrado ningún par de claves de consumidor para Twitter. Por favor, póngase en contacto con el administrador de su sitio. ';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'En esta instancia de Friendica, se habilitó el complemento de Twitter, pero aún no ha conectado su cuenta a su cuenta de Twitter. Para hacerlo, haga clic en el botón de abajo para obtener un PIN de Twitter que debe copiar en el cuadro de entrada a continuación y enviar el formulario. Solo sus publicaciones de <strong> public </strong> se publicarán en Twitter.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Iniciar sesión con Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Copie el PIN de Twitter aquí';
|
||||||
|
$a->strings['Save Settings'] = 'Guardar ajustes';
|
||||||
|
$a->strings['An error occured: '] = 'Ocurrió un error:';
|
||||||
|
$a->strings['Currently connected to: '] = 'Moneda conectada a:';
|
||||||
|
$a->strings['Disconnect'] = 'Desconectar';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Permitir publicar en Twitter';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'Si habilita todas sus publicaciones <strong>públicas</strong> pueden ser publicadas en la cuenta de Twitter asociada. Puede elegir hacer eso por defecto (aquí) o por cada publicación por separado en las opciones de entrada cuando escriba la entrada.';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Nota</strong>: Debido a tu privacidad (<em>Ocultar tu perfil de desconocidos?</em>) el enlace potencialmente incluido en publicaciones públicas retransmitidas a Twitter llevará al visitante a una página en blanco que le informa que el acceso a su perfil ha sido restringido.';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Enviar publicaciones públicas a Twitter por defecto';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'Refleje todas las publicaciones de Twitter que no sean respuestas';
|
||||||
|
$a->strings['Import the remote timeline'] = 'Importar la línea de tiempo remota';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Crea contactos automáticamente';
|
||||||
|
$a->strings['This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here. However if enabled, you cannot merely remove a twitter contact from the Friendica contact list, as it will recreate this contact when they post again.'] = 'Esto creará automáticamente un contacto en Friendica tan pronto como reciba un mensaje de un contacto existente a través de la red de Twitter. Si no habilita esto, debe agregar manualmente los contactos de Twitter en Friendica de los que le gustaría ver las publicaciones aquí. Sin embargo, si está habilitado, no puede simplemente eliminar un contacto de Twitter de la lista de contactos de Friendica, ya que volverá a crear este contacto cuando vuelva a publicar.';
|
||||||
|
$a->strings['Consumer key'] = 'Clave de consumidor';
|
||||||
|
$a->strings['Consumer secret'] = 'Secreto de consumidor';
|
||||||
|
$a->strings['%s on Twitter'] = '%s en Twitter';
|
125
x-twitter/lang/fi-fi/messages.po
Normal file
125
x-twitter/lang/fi-fi/messages.po
Normal file
|
@ -0,0 +1,125 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Kris, 2018
|
||||||
|
# Kris, 2018
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-02-08 07:07+0100\n"
|
||||||
|
"PO-Revision-Date: 2018-05-12 13:21+0000\n"
|
||||||
|
"Last-Translator: Kris\n"
|
||||||
|
"Language-Team: Finnish (Finland) (http://www.transifex.com/Friendica/friendica/language/fi_FI/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: fi_FI\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: twitter.php:193
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Lähetä Twitteriin"
|
||||||
|
|
||||||
|
#: twitter.php:234
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:261
|
||||||
|
msgid "Twitter settings updated."
|
||||||
|
msgstr "Twitter -asetukset päivitetty."
|
||||||
|
|
||||||
|
#: twitter.php:291 twitter.php:295
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Twitter tuonti/vienti/peili"
|
||||||
|
|
||||||
|
#: twitter.php:302
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Twitter -kuluttajan avainparia ei löytynyt. Ota yhteyttä sivuston ylläpitäjään."
|
||||||
|
|
||||||
|
#: twitter.php:314
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:315
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Kirjaudu sisään Twitterillä"
|
||||||
|
|
||||||
|
#: twitter.php:317
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:322 twitter.php:364 twitter.php:642
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Tallenna asetukset"
|
||||||
|
|
||||||
|
#: twitter.php:334
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:335
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "Katkaise yhteys"
|
||||||
|
|
||||||
|
#: twitter.php:345
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Salli julkaisu Twitteriin"
|
||||||
|
|
||||||
|
#: twitter.php:345
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:348
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:351
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Lähetä oletuksena kaikki julkiset julkaisut Twitteriin"
|
||||||
|
|
||||||
|
#: twitter.php:354
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "Peilaa kaikki julkaisut Twitteristä jotka eivät ole vastauksia"
|
||||||
|
|
||||||
|
#: twitter.php:357
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "Tuo etäaikajana"
|
||||||
|
|
||||||
|
#: twitter.php:360
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Luo kontaktit automaattisesti"
|
||||||
|
|
||||||
|
#: twitter.php:619
|
||||||
|
msgid "Twitter post failed. Queued for retry."
|
||||||
|
msgstr "Twitter -julkaisu epäonnistui. Jonossa uudelleenyritykseen."
|
||||||
|
|
||||||
|
#: twitter.php:634
|
||||||
|
msgid "Settings updated."
|
||||||
|
msgstr "Asetukset päivitetty."
|
||||||
|
|
||||||
|
#: twitter.php:644
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Kuluttajan avain"
|
||||||
|
|
||||||
|
#: twitter.php:645
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Kuluttajasalaisuus"
|
23
x-twitter/lang/fi-fi/strings.php
Normal file
23
x-twitter/lang/fi-fi/strings.php
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_fi_fi")) {
|
||||||
|
function string_plural_select_fi_fi($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval($n != 1);
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Lähetä Twitteriin';
|
||||||
|
$a->strings['Twitter settings updated.'] = 'Twitter -asetukset päivitetty.';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Twitter tuonti/vienti/peili';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Twitter -kuluttajan avainparia ei löytynyt. Ota yhteyttä sivuston ylläpitäjään.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Kirjaudu sisään Twitterillä';
|
||||||
|
$a->strings['Save Settings'] = 'Tallenna asetukset';
|
||||||
|
$a->strings['Disconnect'] = 'Katkaise yhteys';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Salli julkaisu Twitteriin';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Lähetä oletuksena kaikki julkiset julkaisut Twitteriin';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'Peilaa kaikki julkaisut Twitteristä jotka eivät ole vastauksia';
|
||||||
|
$a->strings['Import the remote timeline'] = 'Tuo etäaikajana';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Luo kontaktit automaattisesti';
|
||||||
|
$a->strings['Twitter post failed. Queued for retry.'] = 'Twitter -julkaisu epäonnistui. Jonossa uudelleenyritykseen.';
|
||||||
|
$a->strings['Settings updated.'] = 'Asetukset päivitetty.';
|
||||||
|
$a->strings['Consumer key'] = 'Kuluttajan avain';
|
||||||
|
$a->strings['Consumer secret'] = 'Kuluttajasalaisuus';
|
163
x-twitter/lang/fr/messages.po
Normal file
163
x-twitter/lang/fr/messages.po
Normal file
|
@ -0,0 +1,163 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Nicolas Derive, 2022
|
||||||
|
# ea1cd8241cb389ffb6f92bc6891eff5d_dc12308 <70dced5587d47e18d88f9298024d96f8_93383>, 2015
|
||||||
|
# StefOfficiel <pichard.stephane@free.fr>, 2015
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2022-11-13 10:15+0000\n"
|
||||||
|
"PO-Revision-Date: 2014-06-23 12:58+0000\n"
|
||||||
|
"Last-Translator: Nicolas Derive, 2022\n"
|
||||||
|
"Language-Team: French (http://www.transifex.com/Friendica/friendica/language/fr/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: fr\n"
|
||||||
|
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
|
||||||
|
|
||||||
|
#: twitter.php:216
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Publier sur Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:263
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "Vous avez envoyé un PIN vide, veuillez vous connecter à Twitter à nouveau pour en avoir un autre."
|
||||||
|
|
||||||
|
#: twitter.php:330
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Aucune clé d'application pour Twitter n'a été trouvée. Merci de contacter l'administrateur de votre site."
|
||||||
|
|
||||||
|
#: twitter.php:343
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "Sur cette instance de Friendica, le connecteur Twitter a été activé, mais vous n'avez pas encore connecté votre compte local à votre compte Twitter. Pour ce faire, cliquer sur le bouton ci-dessous. Vous obtiendrez alors un 'PIN' de Twitter, que vous devrez copier dans le champ ci-dessous, puis soumettre le formulaire. Seules vos publications <strong>publiques</strong> seront transmises à Twitter."
|
||||||
|
|
||||||
|
#: twitter.php:344
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Se connecter avec Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:346
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Copier le PIN de Twitter ici"
|
||||||
|
|
||||||
|
#: twitter.php:354 twitter.php:399
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr "Une erreur est survenue :"
|
||||||
|
|
||||||
|
#: twitter.php:368
|
||||||
|
#, php-format
|
||||||
|
msgid ""
|
||||||
|
"Currently connected to: <a href=\"https://twitter.com/%1$s\" "
|
||||||
|
"target=\"_twitter\">%1$s</a>"
|
||||||
|
msgstr "Actuellement connecté à : <a href=\"https://twitter.com/%1$s\" target=\"_twitter\">%1$s</a>"
|
||||||
|
|
||||||
|
#: twitter.php:374
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Note</strong>: Du fait de vos paramètres de vie privée (<em>Cacher les détails de votre profil des visiteurs inconnus?</em>), le lien potentiellement inclus dans les publications publiques relayées vers Twitter conduira les visiteurs vers une page blanche les informant que leur accès à votre profil a été restreint."
|
||||||
|
|
||||||
|
#: twitter.php:381
|
||||||
|
msgid "Invalid Twitter info"
|
||||||
|
msgstr "Informations Twitter invalides"
|
||||||
|
|
||||||
|
#: twitter.php:382
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "Se déconnecter"
|
||||||
|
|
||||||
|
#: twitter.php:387
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Autoriser la publication sur Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:387
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "En cas d'activation, toutes vos publications <strong>publiques</strong> seront transmises au compte Twitter associé. Vous pourrez choisir de le faire par défaut (ici), ou bien pour chaque publication séparément lors de sa rédaction."
|
||||||
|
|
||||||
|
#: twitter.php:388
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Envoyer par défaut les publications publiques sur Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:389
|
||||||
|
msgid "Use threads instead of truncating the content"
|
||||||
|
msgstr "Utiliser des fils de discussion (threads) au lieu de tronquer le contenu"
|
||||||
|
|
||||||
|
#: twitter.php:390
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "Synchroniser toutes les publications de Twitter qui ne sont pas des réponses"
|
||||||
|
|
||||||
|
#: twitter.php:391
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "Importer la Timeline distante"
|
||||||
|
|
||||||
|
#: twitter.php:392
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Créer automatiquement les contacts"
|
||||||
|
|
||||||
|
#: twitter.php:392
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here."
|
||||||
|
msgstr "Cela va automatiquement créer un contact dans Friendica dès qu'une publication d'un contact existant est reçue de Twitter. Si vous n'activez pas ceci, vous devrez ajouter manuellement ces contacts dans Friendica afin d'y voir leurs publications."
|
||||||
|
|
||||||
|
#: twitter.php:393
|
||||||
|
msgid "Follow in fediverse"
|
||||||
|
msgstr "Suivre dans le fediverse"
|
||||||
|
|
||||||
|
#: twitter.php:393
|
||||||
|
msgid ""
|
||||||
|
"Automatically subscribe to the contact in the fediverse, when a fediverse "
|
||||||
|
"account is mentioned in name or description and we are following the Twitter"
|
||||||
|
" contact."
|
||||||
|
msgstr "Suivre automatiquement le contact dans le fediverse, quand un compte fediverse est mentionné dans le nom ou la description et que le contact Twitter est suivi."
|
||||||
|
|
||||||
|
#: twitter.php:406
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Importation/Exportation/Synchronisation avec Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:558
|
||||||
|
msgid ""
|
||||||
|
"Please connect a Twitter account in your Social Network settings to import "
|
||||||
|
"Twitter posts."
|
||||||
|
msgstr "Merci de connecter un compte Twitter depuis vos Paramètres de réseaux sociaux afin d'importer les publications Twitter."
|
||||||
|
|
||||||
|
#: twitter.php:565
|
||||||
|
msgid "Twitter post not found."
|
||||||
|
msgstr "Publication Twitter non trouvée."
|
||||||
|
|
||||||
|
#: twitter.php:965
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Sauvegarder les paramètres"
|
||||||
|
|
||||||
|
#: twitter.php:967
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Consumer key"
|
||||||
|
|
||||||
|
#: twitter.php:968
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Consumer secret"
|
||||||
|
|
||||||
|
#: twitter.php:1167
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr "%s sur Twitter"
|
35
x-twitter/lang/fr/strings.php
Normal file
35
x-twitter/lang/fr/strings.php
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_fr")) {
|
||||||
|
function string_plural_select_fr($n){
|
||||||
|
$n = intval($n);
|
||||||
|
if (($n == 0 || $n == 1)) { return 0; } else if ($n != 0 && $n % 1000000 == 0) { return 1; } else { return 2; }
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Publier sur Twitter';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = 'Vous avez envoyé un PIN vide, veuillez vous connecter à Twitter à nouveau pour en avoir un autre.';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Aucune clé d\'application pour Twitter n\'a été trouvée. Merci de contacter l\'administrateur de votre site.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'Sur cette instance de Friendica, le connecteur Twitter a été activé, mais vous n\'avez pas encore connecté votre compte local à votre compte Twitter. Pour ce faire, cliquer sur le bouton ci-dessous. Vous obtiendrez alors un \'PIN\' de Twitter, que vous devrez copier dans le champ ci-dessous, puis soumettre le formulaire. Seules vos publications <strong>publiques</strong> seront transmises à Twitter.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Se connecter avec Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Copier le PIN de Twitter ici';
|
||||||
|
$a->strings['An error occured: '] = 'Une erreur est survenue :';
|
||||||
|
$a->strings['Currently connected to: <a href="https://twitter.com/%1$s" target="_twitter">%1$s</a>'] = 'Actuellement connecté à : <a href="https://twitter.com/%1$s" target="_twitter">%1$s</a>';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Note</strong>: Du fait de vos paramètres de vie privée (<em>Cacher les détails de votre profil des visiteurs inconnus?</em>), le lien potentiellement inclus dans les publications publiques relayées vers Twitter conduira les visiteurs vers une page blanche les informant que leur accès à votre profil a été restreint.';
|
||||||
|
$a->strings['Invalid Twitter info'] = 'Informations Twitter invalides';
|
||||||
|
$a->strings['Disconnect'] = 'Se déconnecter';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Autoriser la publication sur Twitter';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'En cas d\'activation, toutes vos publications <strong>publiques</strong> seront transmises au compte Twitter associé. Vous pourrez choisir de le faire par défaut (ici), ou bien pour chaque publication séparément lors de sa rédaction.';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Envoyer par défaut les publications publiques sur Twitter';
|
||||||
|
$a->strings['Use threads instead of truncating the content'] = 'Utiliser des fils de discussion (threads) au lieu de tronquer le contenu';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'Synchroniser toutes les publications de Twitter qui ne sont pas des réponses';
|
||||||
|
$a->strings['Import the remote timeline'] = 'Importer la Timeline distante';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Créer automatiquement les contacts';
|
||||||
|
$a->strings['This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here.'] = 'Cela va automatiquement créer un contact dans Friendica dès qu\'une publication d\'un contact existant est reçue de Twitter. Si vous n\'activez pas ceci, vous devrez ajouter manuellement ces contacts dans Friendica afin d\'y voir leurs publications.';
|
||||||
|
$a->strings['Follow in fediverse'] = 'Suivre dans le fediverse';
|
||||||
|
$a->strings['Automatically subscribe to the contact in the fediverse, when a fediverse account is mentioned in name or description and we are following the Twitter contact.'] = 'Suivre automatiquement le contact dans le fediverse, quand un compte fediverse est mentionné dans le nom ou la description et que le contact Twitter est suivi.';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Importation/Exportation/Synchronisation avec Twitter';
|
||||||
|
$a->strings['Please connect a Twitter account in your Social Network settings to import Twitter posts.'] = 'Merci de connecter un compte Twitter depuis vos Paramètres de réseaux sociaux afin d\'importer les publications Twitter.';
|
||||||
|
$a->strings['Twitter post not found.'] = 'Publication Twitter non trouvée.';
|
||||||
|
$a->strings['Save Settings'] = 'Sauvegarder les paramètres';
|
||||||
|
$a->strings['Consumer key'] = 'Consumer key';
|
||||||
|
$a->strings['Consumer secret'] = 'Consumer secret';
|
||||||
|
$a->strings['%s on Twitter'] = '%s sur Twitter';
|
161
x-twitter/lang/hu/messages.po
Normal file
161
x-twitter/lang/hu/messages.po
Normal file
|
@ -0,0 +1,161 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Balázs Úr, 2020-2022
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2022-11-13 10:15+0000\n"
|
||||||
|
"PO-Revision-Date: 2014-06-23 12:58+0000\n"
|
||||||
|
"Last-Translator: Balázs Úr, 2020-2022\n"
|
||||||
|
"Language-Team: Hungarian (http://www.transifex.com/Friendica/friendica/language/hu/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: hu\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: twitter.php:216
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Beküldés a Twitterre"
|
||||||
|
|
||||||
|
#: twitter.php:263
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "Üres PIN-kódot küldött be. Jelentkezzen be a Twitter használatával újra, hogy egy újat kapjon."
|
||||||
|
|
||||||
|
#: twitter.php:330
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Nem találhatók felhasználói kulcspárok a Twitterhez. Vegye fel a kapcsolatot az oldal adminisztrátorával."
|
||||||
|
|
||||||
|
#: twitter.php:343
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "Ennél a Friendica példánynál a Twitter bővítmény engedélyezve lett, de még nem kapcsolta hozzá a fiókját a Twitter-fiókjához. Ehhez kattintson a lenti gombra, hogy kapjon egy PIN-kódot a Twittertől, amelyet a lenti beviteli mezőbe kell bemásolnia, majd el kell küldenie az űrlapot. Csak a <strong>nyilvános</strong> bejegyzései lesznek beküldve a Twitterre."
|
||||||
|
|
||||||
|
#: twitter.php:344
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Bejelentkezés Twitter használatával"
|
||||||
|
|
||||||
|
#: twitter.php:346
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Másolja be ide a Twittertől kapott PIN-kódot"
|
||||||
|
|
||||||
|
#: twitter.php:354 twitter.php:399
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr "Hiba történt: "
|
||||||
|
|
||||||
|
#: twitter.php:368
|
||||||
|
#, php-format
|
||||||
|
msgid ""
|
||||||
|
"Currently connected to: <a href=\"https://twitter.com/%1$s\" "
|
||||||
|
"target=\"_twitter\">%1$s</a>"
|
||||||
|
msgstr "Jelenleg ehhez kapcsolódott: <a href=\"https://twitter.com/%1$s\" target=\"_twitter\">%1$s</a>"
|
||||||
|
|
||||||
|
#: twitter.php:374
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Megjegyzés</strong>: az adatvédelmi beállításai miatt (<em>Elrejti a profilja részleteit az ismeretlen megtekintők elől?</em>) a Twitterre továbbított nyilvános beküldésekben vélhetően tartalmazott hivatkozás a látogatót egy üres oldalra fogja vezetni, amely arról tájékoztatja a látogatót, hogy a profiljához való hozzáférés korlátozva lett."
|
||||||
|
|
||||||
|
#: twitter.php:381
|
||||||
|
msgid "Invalid Twitter info"
|
||||||
|
msgstr "Érvénytelen Twitter-információk"
|
||||||
|
|
||||||
|
#: twitter.php:382
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "Leválasztás"
|
||||||
|
|
||||||
|
#: twitter.php:387
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Beküldés engedélyezése a Twitterre"
|
||||||
|
|
||||||
|
#: twitter.php:387
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "Ha engedélyezve van, akkor az összes <strong>nyilvános</strong> beküldés beküldhető a hozzárendelt Twitter-fiókba. Kiválaszthatja, hogy ezt alapértelmezetten szeretné-e (itt), vagy minden egyes beküldésnél különállóan a beküldési beállításokban, amikor megírja a bejegyzést."
|
||||||
|
|
||||||
|
#: twitter.php:388
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Nyilvános beküldések küldése a Twitterre alapértelmezetten"
|
||||||
|
|
||||||
|
#: twitter.php:389
|
||||||
|
msgid "Use threads instead of truncating the content"
|
||||||
|
msgstr "Szálak használata a tartalom csonkítása helyett"
|
||||||
|
|
||||||
|
#: twitter.php:390
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "A Twittertől származó összes bejegyzés tükrözése, amelyek nem válaszok"
|
||||||
|
|
||||||
|
#: twitter.php:391
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "A távoli idővonal importálása"
|
||||||
|
|
||||||
|
#: twitter.php:392
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Partnerek automatikus létrehozása"
|
||||||
|
|
||||||
|
#: twitter.php:392
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here."
|
||||||
|
msgstr "Ez automatikusan létre fog hozni egy partnert a Friendicán, amint üzenetet fogad egy meglévő partnertől a Twitter hálózaton keresztül. Ha ezt nem engedélyezi, akkor kézzel kell hozzáadnia azokat a Twitter-partnereket a Friendicában, akiktől bejegyzéseket szeretne látni itt."
|
||||||
|
|
||||||
|
#: twitter.php:393
|
||||||
|
msgid "Follow in fediverse"
|
||||||
|
msgstr "Követés a födiverzumban"
|
||||||
|
|
||||||
|
#: twitter.php:393
|
||||||
|
msgid ""
|
||||||
|
"Automatically subscribe to the contact in the fediverse, when a fediverse "
|
||||||
|
"account is mentioned in name or description and we are following the Twitter"
|
||||||
|
" contact."
|
||||||
|
msgstr "Automatikus feliratkozás a födiverzumban lévő partnerre, ha egy födiverzumfiókot említenek a névben vagy a leírásban, és követjük a Twitter-partnert."
|
||||||
|
|
||||||
|
#: twitter.php:406
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Twitter importálás, exportálás vagy tükrözés"
|
||||||
|
|
||||||
|
#: twitter.php:558
|
||||||
|
msgid ""
|
||||||
|
"Please connect a Twitter account in your Social Network settings to import "
|
||||||
|
"Twitter posts."
|
||||||
|
msgstr "Kapcsoljon hozzá egy Twitter-fiókot a közösségi hálózatok beállításában a Twitter-bejegyzések importálásához."
|
||||||
|
|
||||||
|
#: twitter.php:565
|
||||||
|
msgid "Twitter post not found."
|
||||||
|
msgstr "A Twitter-bejegyzés nem található."
|
||||||
|
|
||||||
|
#: twitter.php:965
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Beállítások mentése"
|
||||||
|
|
||||||
|
#: twitter.php:967
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Felhasználói kulcs"
|
||||||
|
|
||||||
|
#: twitter.php:968
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Felhasználói titok"
|
||||||
|
|
||||||
|
#: twitter.php:1167
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr "%s a Twitteren"
|
35
x-twitter/lang/hu/strings.php
Normal file
35
x-twitter/lang/hu/strings.php
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_hu")) {
|
||||||
|
function string_plural_select_hu($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval($n != 1);
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Beküldés a Twitterre';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = 'Üres PIN-kódot küldött be. Jelentkezzen be a Twitter használatával újra, hogy egy újat kapjon.';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Nem találhatók felhasználói kulcspárok a Twitterhez. Vegye fel a kapcsolatot az oldal adminisztrátorával.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'Ennél a Friendica példánynál a Twitter bővítmény engedélyezve lett, de még nem kapcsolta hozzá a fiókját a Twitter-fiókjához. Ehhez kattintson a lenti gombra, hogy kapjon egy PIN-kódot a Twittertől, amelyet a lenti beviteli mezőbe kell bemásolnia, majd el kell küldenie az űrlapot. Csak a <strong>nyilvános</strong> bejegyzései lesznek beküldve a Twitterre.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Bejelentkezés Twitter használatával';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Másolja be ide a Twittertől kapott PIN-kódot';
|
||||||
|
$a->strings['An error occured: '] = 'Hiba történt: ';
|
||||||
|
$a->strings['Currently connected to: <a href="https://twitter.com/%1$s" target="_twitter">%1$s</a>'] = 'Jelenleg ehhez kapcsolódott: <a href="https://twitter.com/%1$s" target="_twitter">%1$s</a>';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Megjegyzés</strong>: az adatvédelmi beállításai miatt (<em>Elrejti a profilja részleteit az ismeretlen megtekintők elől?</em>) a Twitterre továbbított nyilvános beküldésekben vélhetően tartalmazott hivatkozás a látogatót egy üres oldalra fogja vezetni, amely arról tájékoztatja a látogatót, hogy a profiljához való hozzáférés korlátozva lett.';
|
||||||
|
$a->strings['Invalid Twitter info'] = 'Érvénytelen Twitter-információk';
|
||||||
|
$a->strings['Disconnect'] = 'Leválasztás';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Beküldés engedélyezése a Twitterre';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'Ha engedélyezve van, akkor az összes <strong>nyilvános</strong> beküldés beküldhető a hozzárendelt Twitter-fiókba. Kiválaszthatja, hogy ezt alapértelmezetten szeretné-e (itt), vagy minden egyes beküldésnél különállóan a beküldési beállításokban, amikor megírja a bejegyzést.';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Nyilvános beküldések küldése a Twitterre alapértelmezetten';
|
||||||
|
$a->strings['Use threads instead of truncating the content'] = 'Szálak használata a tartalom csonkítása helyett';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'A Twittertől származó összes bejegyzés tükrözése, amelyek nem válaszok';
|
||||||
|
$a->strings['Import the remote timeline'] = 'A távoli idővonal importálása';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Partnerek automatikus létrehozása';
|
||||||
|
$a->strings['This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here.'] = 'Ez automatikusan létre fog hozni egy partnert a Friendicán, amint üzenetet fogad egy meglévő partnertől a Twitter hálózaton keresztül. Ha ezt nem engedélyezi, akkor kézzel kell hozzáadnia azokat a Twitter-partnereket a Friendicában, akiktől bejegyzéseket szeretne látni itt.';
|
||||||
|
$a->strings['Follow in fediverse'] = 'Követés a födiverzumban';
|
||||||
|
$a->strings['Automatically subscribe to the contact in the fediverse, when a fediverse account is mentioned in name or description and we are following the Twitter contact.'] = 'Automatikus feliratkozás a födiverzumban lévő partnerre, ha egy födiverzumfiókot említenek a névben vagy a leírásban, és követjük a Twitter-partnert.';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Twitter importálás, exportálás vagy tükrözés';
|
||||||
|
$a->strings['Please connect a Twitter account in your Social Network settings to import Twitter posts.'] = 'Kapcsoljon hozzá egy Twitter-fiókot a közösségi hálózatok beállításában a Twitter-bejegyzések importálásához.';
|
||||||
|
$a->strings['Twitter post not found.'] = 'A Twitter-bejegyzés nem található.';
|
||||||
|
$a->strings['Save Settings'] = 'Beállítások mentése';
|
||||||
|
$a->strings['Consumer key'] = 'Felhasználói kulcs';
|
||||||
|
$a->strings['Consumer secret'] = 'Felhasználói titok';
|
||||||
|
$a->strings['%s on Twitter'] = '%s a Twitteren';
|
20
x-twitter/lang/is/strings.php
Normal file
20
x-twitter/lang/is/strings.php
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$a->strings["Post to Twitter"] = "Senda færslu á Twitter";
|
||||||
|
$a->strings["Twitter settings updated."] = "Stillingar Twitter uppfærðar.";
|
||||||
|
$a->strings["Twitter Posting Settings"] = "Twitter færslu stillingar";
|
||||||
|
$a->strings["No consumer key pair for Twitter found. Please contact your site administrator."] = "Ekkert notenda lykils par fyrir Twitter fundið. Hafðu samband við kerfisstjórann.";
|
||||||
|
$a->strings["At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter."] = "";
|
||||||
|
$a->strings["Log in with Twitter"] = "Innskrá með Twitter";
|
||||||
|
$a->strings["Copy the PIN from Twitter here"] = "Afrita PIN frá Twitter hingað";
|
||||||
|
$a->strings["Submit"] = "Senda inn";
|
||||||
|
$a->strings["Currently connected to: "] = "Núna tengdur við:";
|
||||||
|
$a->strings["If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry."] = "Ef virkt þá geta allar <strong>opinberu</strong> stöðu meldingarnar þínar verið birtar á tengdri StatusNet síðu. Þú getur valið að gera þetta sjálfvirkt (hér) eða fyrir hvern póst í senn þegar hann er skrifaður.";
|
||||||
|
$a->strings["<strong>Note</strong>: Due your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted."] = "";
|
||||||
|
$a->strings["Allow posting to Twitter"] = "Leyfa færslum að flæða á Twitter";
|
||||||
|
$a->strings["Send public postings to Twitter by default"] = "Senda sjálfgefið opinberar færslur á Twitter";
|
||||||
|
$a->strings["Send linked #-tags and @-names to Twitter"] = "";
|
||||||
|
$a->strings["Clear OAuth configuration"] = "Hreinsa OAuth stillingar";
|
||||||
|
$a->strings["Settings updated."] = "Stillingar uppfærðar";
|
||||||
|
$a->strings["Consumer key"] = "Lykill neytanda";
|
||||||
|
$a->strings["Consumer secret"] = "Leyndarmál neytanda";
|
162
x-twitter/lang/it/messages.po
Normal file
162
x-twitter/lang/it/messages.po
Normal file
|
@ -0,0 +1,162 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# fabrixxm <fabrix.xm@gmail.com>, 2014-2015,2018
|
||||||
|
# Sylke Vicious <silkevicious@gmail.com>, 2020
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2022-11-13 10:15+0000\n"
|
||||||
|
"PO-Revision-Date: 2014-06-23 12:58+0000\n"
|
||||||
|
"Last-Translator: Sylke Vicious <silkevicious@gmail.com>, 2020\n"
|
||||||
|
"Language-Team: Italian (http://app.transifex.com/Friendica/friendica/language/it/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: it\n"
|
||||||
|
"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
|
||||||
|
|
||||||
|
#: twitter.php:216
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Invia a Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:263
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "Hai inserito un PIN vuoto, autenticati con Twitter nuovamente per averne uno nuovo."
|
||||||
|
|
||||||
|
#: twitter.php:330
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Nessuna coppia di chiavi per Twitter trovata. Contatta l'amministratore del sito."
|
||||||
|
|
||||||
|
#: twitter.php:343
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "Il componente aggiuntivo Twitter è abilitato ma non hai ancora collegato i tuoi account Friendica e Twitter. Per farlo, clicca il bottone qui sotto per ricevere un PIN da Twitter che dovrai copiare nel campo qui sotto. Solo i tuoi messaggi <strong>pubblici</strong> saranno inviati a Twitter."
|
||||||
|
|
||||||
|
#: twitter.php:344
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Accedi con Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:346
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Copia il PIN da Twitter qui"
|
||||||
|
|
||||||
|
#: twitter.php:354 twitter.php:399
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr "Si è verificato un errore:"
|
||||||
|
|
||||||
|
#: twitter.php:368
|
||||||
|
#, php-format
|
||||||
|
msgid ""
|
||||||
|
"Currently connected to: <a href=\"https://twitter.com/%1$s\" "
|
||||||
|
"target=\"_twitter\">%1$s</a>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:374
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Nota</strong>: A causa delle tue impostazioni di privacy(<em>Nascondi i dettagli del tuo profilo ai visitatori sconosciuti?</em>) il collegamento potenzialmente incluso nei messaggi pubblici inviati a Twitter porterà i visitatori a una pagina bianca con una nota che li informa che l'accesso al tuo profilo è stato limitato."
|
||||||
|
|
||||||
|
#: twitter.php:381
|
||||||
|
msgid "Invalid Twitter info"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:382
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "Disconnetti"
|
||||||
|
|
||||||
|
#: twitter.php:387
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Permetti l'invio a Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:387
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "Se abilitato tutti i tuoi messaggi <strong>pubblici</strong> possono essere inviati all'account Twitter associato. Puoi scegliere di farlo sempre (qui) o ogni volta che invii, nelle impostazioni di privacy del messaggio."
|
||||||
|
|
||||||
|
#: twitter.php:388
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Invia sempre i messaggi pubblici a Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:389
|
||||||
|
msgid "Use threads instead of truncating the content"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:390
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "Clona tutti i messaggi da Twitter che non sono risposte"
|
||||||
|
|
||||||
|
#: twitter.php:391
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "Importa la timeline remota"
|
||||||
|
|
||||||
|
#: twitter.php:392
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Crea automaticamente i contatti"
|
||||||
|
|
||||||
|
#: twitter.php:392
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:393
|
||||||
|
msgid "Follow in fediverse"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:393
|
||||||
|
msgid ""
|
||||||
|
"Automatically subscribe to the contact in the fediverse, when a fediverse "
|
||||||
|
"account is mentioned in name or description and we are following the Twitter"
|
||||||
|
" contact."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:406
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Importa/Esporta/Clona Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:558
|
||||||
|
msgid ""
|
||||||
|
"Please connect a Twitter account in your Social Network settings to import "
|
||||||
|
"Twitter posts."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:565
|
||||||
|
msgid "Twitter post not found."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:965
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Salva Impostazioni"
|
||||||
|
|
||||||
|
#: twitter.php:967
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Consumer key"
|
||||||
|
|
||||||
|
#: twitter.php:968
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Consumer secret"
|
||||||
|
|
||||||
|
#: twitter.php:1167
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr "%s su Twitter"
|
27
x-twitter/lang/it/strings.php
Normal file
27
x-twitter/lang/it/strings.php
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_it")) {
|
||||||
|
function string_plural_select_it($n){
|
||||||
|
$n = intval($n);
|
||||||
|
if ($n == 1) { return 0; } else if ($n != 0 && $n % 1000000 == 0) { return 1; } else { return 2; }
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Invia a Twitter';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = 'Hai inserito un PIN vuoto, autenticati con Twitter nuovamente per averne uno nuovo.';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Nessuna coppia di chiavi per Twitter trovata. Contatta l\'amministratore del sito.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'Il componente aggiuntivo Twitter è abilitato ma non hai ancora collegato i tuoi account Friendica e Twitter. Per farlo, clicca il bottone qui sotto per ricevere un PIN da Twitter che dovrai copiare nel campo qui sotto. Solo i tuoi messaggi <strong>pubblici</strong> saranno inviati a Twitter.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Accedi con Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Copia il PIN da Twitter qui';
|
||||||
|
$a->strings['An error occured: '] = 'Si è verificato un errore:';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Nota</strong>: A causa delle tue impostazioni di privacy(<em>Nascondi i dettagli del tuo profilo ai visitatori sconosciuti?</em>) il collegamento potenzialmente incluso nei messaggi pubblici inviati a Twitter porterà i visitatori a una pagina bianca con una nota che li informa che l\'accesso al tuo profilo è stato limitato.';
|
||||||
|
$a->strings['Disconnect'] = 'Disconnetti';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Permetti l\'invio a Twitter';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'Se abilitato tutti i tuoi messaggi <strong>pubblici</strong> possono essere inviati all\'account Twitter associato. Puoi scegliere di farlo sempre (qui) o ogni volta che invii, nelle impostazioni di privacy del messaggio.';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Invia sempre i messaggi pubblici a Twitter';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'Clona tutti i messaggi da Twitter che non sono risposte';
|
||||||
|
$a->strings['Import the remote timeline'] = 'Importa la timeline remota';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Crea automaticamente i contatti';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Importa/Esporta/Clona Twitter';
|
||||||
|
$a->strings['Save Settings'] = 'Salva Impostazioni';
|
||||||
|
$a->strings['Consumer key'] = 'Consumer key';
|
||||||
|
$a->strings['Consumer secret'] = 'Consumer secret';
|
||||||
|
$a->strings['%s on Twitter'] = '%s su Twitter';
|
131
x-twitter/lang/ja/messages.po
Normal file
131
x-twitter/lang/ja/messages.po
Normal file
|
@ -0,0 +1,131 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# XMPPはいいぞ, 2021
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2021-02-01 18:16+0100\n"
|
||||||
|
"PO-Revision-Date: 2021-05-19 00:39+0000\n"
|
||||||
|
"Last-Translator: XMPPはいいぞ\n"
|
||||||
|
"Language-Team: Japanese (http://www.transifex.com/Friendica/friendica/language/ja/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: ja\n"
|
||||||
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
|
|
||||||
|
#: twitter.php:189
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Twitterに投稿"
|
||||||
|
|
||||||
|
#: twitter.php:234
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "空のPINを送信しました。もう一度Twitterでサインインして新しいPINを取得してください。"
|
||||||
|
|
||||||
|
#: twitter.php:291 twitter.php:295
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Twitterインポート/エクスポート/ミラー"
|
||||||
|
|
||||||
|
#: twitter.php:302
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Twitterのコンシューマキーペアが見つかりません。サイト管理者に連絡してください。"
|
||||||
|
|
||||||
|
#: twitter.php:314
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "このFriendicaインスタンスでは、Twitterアドオンは有効になっていますが、アカウントをTwitterアカウントにまだ接続していません。これを行うには、下のボタンをクリックしてTwitterからPINを取得し、それを下の入力ボックスにコピーしてフォームを送信する必要があります。 <strong>一般公開</strong>投稿のみがTwitterに投稿されます。"
|
||||||
|
|
||||||
|
#: twitter.php:315
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Twitterでログイン"
|
||||||
|
|
||||||
|
#: twitter.php:317
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "ここからTwitterからPINをコピーします"
|
||||||
|
|
||||||
|
#: twitter.php:322 twitter.php:377 twitter.php:768
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "設定を保存する"
|
||||||
|
|
||||||
|
#: twitter.php:324 twitter.php:379
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr "エラーが発生しました:"
|
||||||
|
|
||||||
|
#: twitter.php:341
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr "現在接続中:"
|
||||||
|
|
||||||
|
#: twitter.php:342 twitter.php:352
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "切断する"
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Twitterへの投稿を許可する"
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "有効にすると、すべての<strong>一般公開</strong>投稿を、関連づけたTwitterアカウントに投稿できます。デフォルト(ここ)で行うか、エントリを書き込む際に投稿オプションですべての投稿を個別に行うかを選択できます。"
|
||||||
|
|
||||||
|
#: twitter.php:362
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>注</strong>:プライバシー設定(<em>未知の視聴者からプロフィールの詳細を非表示にしますか?</em>)により、Twitterに中継・公開される投稿内のリンクは、プロフィールへのアクセスが制限されている訪問者に対して空白ページを表示します。"
|
||||||
|
|
||||||
|
#: twitter.php:365
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "デフォルトでTwitterに一般公開投稿を送信する"
|
||||||
|
|
||||||
|
#: twitter.php:368
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "返信がないTwitterのすべての投稿をミラーリングする"
|
||||||
|
|
||||||
|
#: twitter.php:371
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "リモートタイムラインをインポートする"
|
||||||
|
|
||||||
|
#: twitter.php:374
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "連絡先を自動的に作成する"
|
||||||
|
|
||||||
|
#: twitter.php:374
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here. However if enabled, you cannot "
|
||||||
|
"merely remove a twitter contact from the Friendica contact list, as it will "
|
||||||
|
"recreate this contact when they post again."
|
||||||
|
msgstr "これにより、Twitterネットワーク経由で既存の連絡先からメッセージを受信するとすぐに、Friendicaに連絡先が自動的に作成されます。これを有効にしない場合、ここで投稿を表示するFriendicaのTwitter連絡先を手動で追加する必要があります。ただし、有効にした場合、Twitterの連絡先をFriendicaの連絡先リストから単に削除することはできません。再送信するとこの連絡先が再作成されるためです。"
|
||||||
|
|
||||||
|
#: twitter.php:770
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "コンシューマ キー"
|
||||||
|
|
||||||
|
#: twitter.php:771
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "コンシューマ シークレット"
|
||||||
|
|
||||||
|
#: twitter.php:967
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr ""
|
28
x-twitter/lang/ja/strings.php
Normal file
28
x-twitter/lang/ja/strings.php
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_ja")) {
|
||||||
|
function string_plural_select_ja($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval(0);
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Twitterに投稿';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = '空のPINを送信しました。もう一度Twitterでサインインして新しいPINを取得してください。';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Twitterインポート/エクスポート/ミラー';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Twitterのコンシューマキーペアが見つかりません。サイト管理者に連絡してください。';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'このFriendicaインスタンスでは、Twitterアドオンは有効になっていますが、アカウントをTwitterアカウントにまだ接続していません。これを行うには、下のボタンをクリックしてTwitterからPINを取得し、それを下の入力ボックスにコピーしてフォームを送信する必要があります。 <strong>一般公開</strong>投稿のみがTwitterに投稿されます。';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Twitterでログイン';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'ここからTwitterからPINをコピーします';
|
||||||
|
$a->strings['Save Settings'] = '設定を保存する';
|
||||||
|
$a->strings['An error occured: '] = 'エラーが発生しました:';
|
||||||
|
$a->strings['Currently connected to: '] = '現在接続中:';
|
||||||
|
$a->strings['Disconnect'] = '切断する';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Twitterへの投稿を許可する';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = '有効にすると、すべての<strong>一般公開</strong>投稿を、関連づけたTwitterアカウントに投稿できます。デフォルト(ここ)で行うか、エントリを書き込む際に投稿オプションですべての投稿を個別に行うかを選択できます。';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>注</strong>:プライバシー設定(<em>未知の視聴者からプロフィールの詳細を非表示にしますか?</em>)により、Twitterに中継・公開される投稿内のリンクは、プロフィールへのアクセスが制限されている訪問者に対して空白ページを表示します。';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'デフォルトでTwitterに一般公開投稿を送信する';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = '返信がないTwitterのすべての投稿をミラーリングする';
|
||||||
|
$a->strings['Import the remote timeline'] = 'リモートタイムラインをインポートする';
|
||||||
|
$a->strings['Automatically create contacts'] = '連絡先を自動的に作成する';
|
||||||
|
$a->strings['This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here. However if enabled, you cannot merely remove a twitter contact from the Friendica contact list, as it will recreate this contact when they post again.'] = 'これにより、Twitterネットワーク経由で既存の連絡先からメッセージを受信するとすぐに、Friendicaに連絡先が自動的に作成されます。これを有効にしない場合、ここで投稿を表示するFriendicaのTwitter連絡先を手動で追加する必要があります。ただし、有効にした場合、Twitterの連絡先をFriendicaの連絡先リストから単に削除することはできません。再送信するとこの連絡先が再作成されるためです。';
|
||||||
|
$a->strings['Consumer key'] = 'コンシューマ キー';
|
||||||
|
$a->strings['Consumer secret'] = 'コンシューマ シークレット';
|
20
x-twitter/lang/nb-no/strings.php
Normal file
20
x-twitter/lang/nb-no/strings.php
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$a->strings["Post to Twitter"] = "Post til Twitter";
|
||||||
|
$a->strings["Twitter settings updated."] = "Twitter-innstilinger oppdatert.";
|
||||||
|
$a->strings["Twitter Posting Settings"] = "Innstillinger for posting til Twitter";
|
||||||
|
$a->strings["No consumer key pair for Twitter found. Please contact your site administrator."] = "Ingen \"consumer key pair\" for Twitter funnet. Vennligst kontakt stedets administrator.";
|
||||||
|
$a->strings["At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter."] = "Ved denne Friendica-forekomsten er Twitter-tillegget aktivert, men du har ennå ikke tilkoblet din konto til din Twitter-konto. For å gjøre det, klikk på knappen nedenfor for å få en PIN-kode fra Twitter som du må kopiere inn i feltet nedenfor og sende inn skjemaet. Bare dine <strong>offentlige</strong> innlegg vil bli lagt inn på Twitter. ";
|
||||||
|
$a->strings["Log in with Twitter"] = "Logg inn via Twitter";
|
||||||
|
$a->strings["Copy the PIN from Twitter here"] = "Kopier PIN-kode fra Twitter hit";
|
||||||
|
$a->strings["Submit"] = "Lagre";
|
||||||
|
$a->strings["Currently connected to: "] = "For øyeblikket tilkoblet til:";
|
||||||
|
$a->strings["If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry."] = "Aktivering gjør at alle dine <strong>offentlige</strong> innlegg kan postes til den tilknyttede Twitter-kontoen. Du kan velge å gjøre dette som standard (her), eller for hvert enkelt innlegg separat i valgmulighetene for posting når du skriver et innlegg.";
|
||||||
|
$a->strings["<strong>Note</strong>: Due your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted."] = "";
|
||||||
|
$a->strings["Allow posting to Twitter"] = "Tillat posting til Twitter";
|
||||||
|
$a->strings["Send public postings to Twitter by default"] = "Send offentlige innlegg til Twitter som standard";
|
||||||
|
$a->strings["Send linked #-tags and @-names to Twitter"] = "";
|
||||||
|
$a->strings["Clear OAuth configuration"] = "Fjern OAuth-konfigurasjon";
|
||||||
|
$a->strings["Settings updated."] = "Innstillinger oppdatert.";
|
||||||
|
$a->strings["Consumer key"] = "Consumer key";
|
||||||
|
$a->strings["Consumer secret"] = "Consumer secret";
|
134
x-twitter/lang/nl/messages.po
Normal file
134
x-twitter/lang/nl/messages.po
Normal file
|
@ -0,0 +1,134 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Jeroen De Meerleer <me@jeroened.be>, 2018
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-06-02 10:25+0700\n"
|
||||||
|
"PO-Revision-Date: 2018-08-24 13:56+0000\n"
|
||||||
|
"Last-Translator: Jeroen De Meerleer <me@jeroened.be>\n"
|
||||||
|
"Language-Team: Dutch (http://www.transifex.com/Friendica/friendica/language/nl/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: nl\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: twitter.php:195
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Plaatsen op Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:236
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:263
|
||||||
|
msgid "Twitter settings updated."
|
||||||
|
msgstr "Twitter instellingen opgeslagen"
|
||||||
|
|
||||||
|
#: twitter.php:293 twitter.php:297
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Twitter Import/Exporteren/Spiegelen"
|
||||||
|
|
||||||
|
#: twitter.php:304
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:316
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:317
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:319
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:324 twitter.php:366 twitter.php:636
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Instellingen opslaan"
|
||||||
|
|
||||||
|
#: twitter.php:336
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:337
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:347
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Plaatsen op Twitter toestaan"
|
||||||
|
|
||||||
|
#: twitter.php:347
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:350
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:353
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Verzend publieke berichten naar Twitter als standaard instellen "
|
||||||
|
|
||||||
|
#: twitter.php:356
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:362
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:362
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here. However if enabled, you cannot "
|
||||||
|
"merely remove a twitter contact from the Friendica contact list, as it will "
|
||||||
|
"recreate this contact when they post again."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:614
|
||||||
|
msgid "Twitter post failed. Queued for retry."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:628
|
||||||
|
msgid "Settings updated."
|
||||||
|
msgstr "Instellingen opgeslagen"
|
||||||
|
|
||||||
|
#: twitter.php:638
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:639
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr ""
|
14
x-twitter/lang/nl/strings.php
Normal file
14
x-twitter/lang/nl/strings.php
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_nl")) {
|
||||||
|
function string_plural_select_nl($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval($n != 1);
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Plaatsen op Twitter';
|
||||||
|
$a->strings['Twitter settings updated.'] = 'Twitter instellingen opgeslagen';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Twitter Import/Exporteren/Spiegelen';
|
||||||
|
$a->strings['Save Settings'] = 'Instellingen opslaan';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Plaatsen op Twitter toestaan';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Verzend publieke berichten naar Twitter als standaard instellen ';
|
||||||
|
$a->strings['Settings updated.'] = 'Instellingen opgeslagen';
|
162
x-twitter/lang/pl/messages.po
Normal file
162
x-twitter/lang/pl/messages.po
Normal file
|
@ -0,0 +1,162 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Piotr Strębski <strebski@gmail.com>, 2022
|
||||||
|
# Waldemar Stoczkowski, 2018
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2022-11-13 10:15+0000\n"
|
||||||
|
"PO-Revision-Date: 2014-06-23 12:58+0000\n"
|
||||||
|
"Last-Translator: Piotr Strębski <strebski@gmail.com>, 2022\n"
|
||||||
|
"Language-Team: Polish (http://www.transifex.com/Friendica/friendica/language/pl/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: pl\n"
|
||||||
|
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
|
||||||
|
|
||||||
|
#: twitter.php:216
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Opublikuj na Twitterze"
|
||||||
|
|
||||||
|
#: twitter.php:263
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "Przesłałeś pusty kod PIN, zaloguj się ponownie na Twitterze, aby otrzymać nowy."
|
||||||
|
|
||||||
|
#: twitter.php:330
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Nie znaleziono pary kluczy konsumpcyjnych dla Twittera. Skontaktuj się z administratorem witryny."
|
||||||
|
|
||||||
|
#: twitter.php:343
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "W tej instancji Friendica dodatek do Twittera został włączony, ale jeszcze nie podłączyłeś swojego konta do konta na Twitterze. Aby to zrobić, kliknij przycisk poniżej, aby uzyskać numer PIN z Twittera, który musisz skopiować do poniższego pola wprowadzania i przesłać formularz. Tylko Twoje <strong>publiczne</strong> posty będą publikowane na Twitterze."
|
||||||
|
|
||||||
|
#: twitter.php:344
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Zaloguj się przez Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:346
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Skopiuj tutaj kod PIN z Twittera"
|
||||||
|
|
||||||
|
#: twitter.php:354 twitter.php:399
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr "Wystąpił błąd:"
|
||||||
|
|
||||||
|
#: twitter.php:368
|
||||||
|
#, php-format
|
||||||
|
msgid ""
|
||||||
|
"Currently connected to: <a href=\"https://twitter.com/%1$s\" "
|
||||||
|
"target=\"_twitter\">%1$s</a>"
|
||||||
|
msgstr "Obecnie połączony z: <a href=\"https://twitter.com/%1$s\" target=\"_twitter\">%1$s</a>"
|
||||||
|
|
||||||
|
#: twitter.php:374
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Uwaga</strong>: Ze względu na ustawienia prywatności (<em>Ukryć szczegóły Twojego profilu, przed nieznanymi użytkownikami?</em>) link potencjalnie zawarty w publicznych komentarzach do Twitter doprowadzi użytkownika do pustej strony informowania odwiedzających, że dostęp do Twojego profilu został ograniczony."
|
||||||
|
|
||||||
|
#: twitter.php:381
|
||||||
|
msgid "Invalid Twitter info"
|
||||||
|
msgstr "Nieprawidłowe informacje Twittera"
|
||||||
|
|
||||||
|
#: twitter.php:382
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "Rozłączony"
|
||||||
|
|
||||||
|
#: twitter.php:387
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Zezwalaj na publikowanie na Twitterze"
|
||||||
|
|
||||||
|
#: twitter.php:387
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "Jeśli ta opcja jest włączona, wszystkie twoje <strong>publiczne</strong> ogłoszenia mogą być wysyłane na powiązane konto Twitter. Możesz to zrobić domyślnie (tutaj) lub dla każdego komentarza osobno w opcjach komentarza podczas pisania wpisu."
|
||||||
|
|
||||||
|
#: twitter.php:388
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Wyślij domyślnie komentarze publiczne do Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:389
|
||||||
|
msgid "Use threads instead of truncating the content"
|
||||||
|
msgstr "Używaj wątków zamiast obcinania treści"
|
||||||
|
|
||||||
|
#: twitter.php:390
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "Lustro wszystkich postów Twitter, które są bez odpowiedzi"
|
||||||
|
|
||||||
|
#: twitter.php:391
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "Zaimportuj zdalną oś czasu"
|
||||||
|
|
||||||
|
#: twitter.php:392
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Automatycznie twórz kontakty"
|
||||||
|
|
||||||
|
#: twitter.php:392
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here."
|
||||||
|
msgstr "Spowoduje to automatyczne utworzenie kontaktu w Friendica, gdy tylko otrzymasz wiadomość od istniejącego kontaktu za pośrednictwem sieci Twitter. Jeśli nie włączysz tej opcji, musisz ręcznie dodać te kontakty z Twittera w Friendica, od których chciałbyś widzieć tutaj wpisy."
|
||||||
|
|
||||||
|
#: twitter.php:393
|
||||||
|
msgid "Follow in fediverse"
|
||||||
|
msgstr "Śledź w fediverse"
|
||||||
|
|
||||||
|
#: twitter.php:393
|
||||||
|
msgid ""
|
||||||
|
"Automatically subscribe to the contact in the fediverse, when a fediverse "
|
||||||
|
"account is mentioned in name or description and we are following the Twitter"
|
||||||
|
" contact."
|
||||||
|
msgstr "Automatycznie subskrybuj kontakt w fediverse, gdy konto fediverse jest wymienione w nazwie lub opisie i obserwujesz kontakt na Twitterze."
|
||||||
|
|
||||||
|
#: twitter.php:406
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Twitter Import/Export/Mirror"
|
||||||
|
|
||||||
|
#: twitter.php:558
|
||||||
|
msgid ""
|
||||||
|
"Please connect a Twitter account in your Social Network settings to import "
|
||||||
|
"Twitter posts."
|
||||||
|
msgstr "Aby zaimportować wpisy z Twittera, połącz konto Twitter w ustawieniach sieci społecznościowej."
|
||||||
|
|
||||||
|
#: twitter.php:565
|
||||||
|
msgid "Twitter post not found."
|
||||||
|
msgstr "Nie odnaleziono wpisu Twittera."
|
||||||
|
|
||||||
|
#: twitter.php:965
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Zapisz ustawienia"
|
||||||
|
|
||||||
|
#: twitter.php:967
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Klucz klienta"
|
||||||
|
|
||||||
|
#: twitter.php:968
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Tajny klucz klienta"
|
||||||
|
|
||||||
|
#: twitter.php:1167
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr "%s na Twitterze"
|
35
x-twitter/lang/pl/strings.php
Normal file
35
x-twitter/lang/pl/strings.php
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_pl")) {
|
||||||
|
function string_plural_select_pl($n){
|
||||||
|
$n = intval($n);
|
||||||
|
if ($n==1) { return 0; } else if (($n%10>=2 && $n%10<=4) && ($n%100<12 || $n%100>14)) { return 1; } else if ($n!=1 && ($n%10>=0 && $n%10<=1) || ($n%10>=5 && $n%10<=9) || ($n%100>=12 && $n%100<=14)) { return 2; } else { return 3; }
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Opublikuj na Twitterze';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = 'Przesłałeś pusty kod PIN, zaloguj się ponownie na Twitterze, aby otrzymać nowy.';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Nie znaleziono pary kluczy konsumpcyjnych dla Twittera. Skontaktuj się z administratorem witryny.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'W tej instancji Friendica dodatek do Twittera został włączony, ale jeszcze nie podłączyłeś swojego konta do konta na Twitterze. Aby to zrobić, kliknij przycisk poniżej, aby uzyskać numer PIN z Twittera, który musisz skopiować do poniższego pola wprowadzania i przesłać formularz. Tylko Twoje <strong>publiczne</strong> posty będą publikowane na Twitterze.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Zaloguj się przez Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Skopiuj tutaj kod PIN z Twittera';
|
||||||
|
$a->strings['An error occured: '] = 'Wystąpił błąd:';
|
||||||
|
$a->strings['Currently connected to: <a href="https://twitter.com/%1$s" target="_twitter">%1$s</a>'] = 'Obecnie połączony z: <a href="https://twitter.com/%1$s" target="_twitter">%1$s</a>';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Uwaga</strong>: Ze względu na ustawienia prywatności (<em>Ukryć szczegóły Twojego profilu, przed nieznanymi użytkownikami?</em>) link potencjalnie zawarty w publicznych komentarzach do Twitter doprowadzi użytkownika do pustej strony informowania odwiedzających, że dostęp do Twojego profilu został ograniczony.';
|
||||||
|
$a->strings['Invalid Twitter info'] = 'Nieprawidłowe informacje Twittera';
|
||||||
|
$a->strings['Disconnect'] = 'Rozłączony';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Zezwalaj na publikowanie na Twitterze';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'Jeśli ta opcja jest włączona, wszystkie twoje <strong>publiczne</strong> ogłoszenia mogą być wysyłane na powiązane konto Twitter. Możesz to zrobić domyślnie (tutaj) lub dla każdego komentarza osobno w opcjach komentarza podczas pisania wpisu.';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Wyślij domyślnie komentarze publiczne do Twitter';
|
||||||
|
$a->strings['Use threads instead of truncating the content'] = 'Używaj wątków zamiast obcinania treści';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'Lustro wszystkich postów Twitter, które są bez odpowiedzi';
|
||||||
|
$a->strings['Import the remote timeline'] = 'Zaimportuj zdalną oś czasu';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Automatycznie twórz kontakty';
|
||||||
|
$a->strings['This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here.'] = 'Spowoduje to automatyczne utworzenie kontaktu w Friendica, gdy tylko otrzymasz wiadomość od istniejącego kontaktu za pośrednictwem sieci Twitter. Jeśli nie włączysz tej opcji, musisz ręcznie dodać te kontakty z Twittera w Friendica, od których chciałbyś widzieć tutaj wpisy.';
|
||||||
|
$a->strings['Follow in fediverse'] = 'Śledź w fediverse';
|
||||||
|
$a->strings['Automatically subscribe to the contact in the fediverse, when a fediverse account is mentioned in name or description and we are following the Twitter contact.'] = 'Automatycznie subskrybuj kontakt w fediverse, gdy konto fediverse jest wymienione w nazwie lub opisie i obserwujesz kontakt na Twitterze.';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Twitter Import/Export/Mirror';
|
||||||
|
$a->strings['Please connect a Twitter account in your Social Network settings to import Twitter posts.'] = 'Aby zaimportować wpisy z Twittera, połącz konto Twitter w ustawieniach sieci społecznościowej.';
|
||||||
|
$a->strings['Twitter post not found.'] = 'Nie odnaleziono wpisu Twittera.';
|
||||||
|
$a->strings['Save Settings'] = 'Zapisz ustawienia';
|
||||||
|
$a->strings['Consumer key'] = 'Klucz klienta';
|
||||||
|
$a->strings['Consumer secret'] = 'Tajny klucz klienta';
|
||||||
|
$a->strings['%s on Twitter'] = '%s na Twitterze';
|
123
x-twitter/lang/pt-br/messages.po
Normal file
123
x-twitter/lang/pt-br/messages.po
Normal file
|
@ -0,0 +1,123 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Beatriz Vital <vitalb@riseup.net>, 2016
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2013-02-27 05:01-0500\n"
|
||||||
|
"PO-Revision-Date: 2016-08-19 20:38+0000\n"
|
||||||
|
"Last-Translator: Beatriz Vital <vitalb@riseup.net>\n"
|
||||||
|
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/Friendica/friendica/language/pt_BR/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: pt_BR\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
|
|
||||||
|
#: twitter.php:77
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Publicar no Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:129
|
||||||
|
msgid "Twitter settings updated."
|
||||||
|
msgstr "As configurações do Twitter foram atualizadas."
|
||||||
|
|
||||||
|
#: twitter.php:157
|
||||||
|
msgid "Twitter Posting Settings"
|
||||||
|
msgstr "Configurações de publicação no Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:164
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Não foi encontrado nenhum par de \"consumer keys\" para o Twitter. Por favor, entre em contato com a administração do site."
|
||||||
|
|
||||||
|
#: twitter.php:183
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "O plug-in do Twitter está habilitado nesta instância do Friendica, mas você ainda não conectou sua conta aqui à sua conta no Twitter. Para fazer isso, clique no botão abaixo. Você vai receber um código de verificação do Twitter. Copie-o para o campo abaixo e envie o formulário. Apenas os seus posts <strong>públicos</strong> serão publicados no Twitter."
|
||||||
|
|
||||||
|
#: twitter.php:184
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Entrar com o Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:186
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Cole o código de verificação do Twitter aqui"
|
||||||
|
|
||||||
|
#: twitter.php:191 twitter.php:229 twitter.php:556
|
||||||
|
msgid "Submit"
|
||||||
|
msgstr "Enviar"
|
||||||
|
|
||||||
|
#: twitter.php:200
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr "Atualmente conectado a:"
|
||||||
|
|
||||||
|
#: twitter.php:201
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "Se habilitado, todos os seus posts <strong>públicos</strong> poderão ser replicados na conta do Twitter associada. Você pode escolher entre fazer isso por padrão (aqui) ou separadamente, quando escrever cada mensagem, nas opções de publicação."
|
||||||
|
|
||||||
|
#: twitter.php:203
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:206
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Permitir a publicação no Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:209
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Publicar posts públicos no Twitter por padrão"
|
||||||
|
|
||||||
|
#: twitter.php:213
|
||||||
|
msgid "Mirror all posts from twitter that are no replies or retweets"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:217
|
||||||
|
msgid "Shortening method that optimizes the tweet"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:221
|
||||||
|
msgid "Send linked #-tags and @-names to Twitter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:226
|
||||||
|
msgid "Clear OAuth configuration"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:550
|
||||||
|
msgid "Settings updated."
|
||||||
|
msgstr "As configurações foram atualizadas."
|
||||||
|
|
||||||
|
#: twitter.php:558
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:559
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:560
|
||||||
|
msgid "Name of the Twitter Application"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:560
|
||||||
|
msgid ""
|
||||||
|
"set this to avoid mirroring postings from ~friendica back to ~friendica"
|
||||||
|
msgstr ""
|
20
x-twitter/lang/pt-br/strings.php
Normal file
20
x-twitter/lang/pt-br/strings.php
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_pt_br")) {
|
||||||
|
function string_plural_select_pt_br($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval($n > 1);
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Publicar no Twitter';
|
||||||
|
$a->strings['Twitter settings updated.'] = 'As configurações do Twitter foram atualizadas.';
|
||||||
|
$a->strings['Twitter Posting Settings'] = 'Configurações de publicação no Twitter';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Não foi encontrado nenhum par de "consumer keys" para o Twitter. Por favor, entre em contato com a administração do site.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'O plug-in do Twitter está habilitado nesta instância do Friendica, mas você ainda não conectou sua conta aqui à sua conta no Twitter. Para fazer isso, clique no botão abaixo. Você vai receber um código de verificação do Twitter. Copie-o para o campo abaixo e envie o formulário. Apenas os seus posts <strong>públicos</strong> serão publicados no Twitter.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Entrar com o Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Cole o código de verificação do Twitter aqui';
|
||||||
|
$a->strings['Submit'] = 'Enviar';
|
||||||
|
$a->strings['Currently connected to: '] = 'Atualmente conectado a:';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'Se habilitado, todos os seus posts <strong>públicos</strong> poderão ser replicados na conta do Twitter associada. Você pode escolher entre fazer isso por padrão (aqui) ou separadamente, quando escrever cada mensagem, nas opções de publicação.';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Permitir a publicação no Twitter';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Publicar posts públicos no Twitter por padrão';
|
||||||
|
$a->strings['Settings updated.'] = 'As configurações foram atualizadas.';
|
126
x-twitter/lang/ro/messages.po
Normal file
126
x-twitter/lang/ro/messages.po
Normal file
|
@ -0,0 +1,126 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2014-06-23 14:45+0200\n"
|
||||||
|
"PO-Revision-Date: 2014-07-08 12:10+0000\n"
|
||||||
|
"Last-Translator: Arian - Cazare Muncitori <arianserv@gmail.com>\n"
|
||||||
|
"Language-Team: Romanian (Romania) (http://www.transifex.com/projects/p/friendica/language/ro_RO/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: ro_RO\n"
|
||||||
|
"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
|
||||||
|
|
||||||
|
#: twitter.php:146
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Postați pe Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:203
|
||||||
|
msgid "Twitter settings updated."
|
||||||
|
msgstr "Configurările Twitter au fost actualizate."
|
||||||
|
|
||||||
|
#: twitter.php:233 twitter.php:237
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Import/Export/Clonare Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:245
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Nici o pereche de chei de utilizator pentru Twitter nu a fost găsită. Vă rugăm să vă contactați administratorul de site."
|
||||||
|
|
||||||
|
#: twitter.php:264
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "Pe această sesiune Friendica, modulul Twitter era activat, dar încă nu v-ați conectat contul la profilul dvs. Twitter. Pentru aceasta apăsați pe butonul de mai jos pentru a obține un PIN de pe Twitter pe care va trebui să îl copiați în caseta de introducere mai jos şi trimiteți formularul. Numai postările dumneavoastră <strong>publice</strong> vor fi postate pe Twitter."
|
||||||
|
|
||||||
|
#: twitter.php:265
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Autentificare prin Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:267
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Copiați aici PIN-ul de la Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:272 twitter.php:311 twitter.php:569
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "Salvare Configurări"
|
||||||
|
|
||||||
|
#: twitter.php:281
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr "Conectat curent la:"
|
||||||
|
|
||||||
|
#: twitter.php:282
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "Dacă activați, toate postările dvs. <strong>publice</strong> pot fi publicate în contul Twitter asociat. Puteți face acest lucru, implicit (aici), sau pentru fiecare postare separată, prin opțiunile de postare atunci când compuneți un mesaj."
|
||||||
|
|
||||||
|
#: twitter.php:284
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Notă</strong>: Datorită configurărilor de confidenţialitate (<em>Se ascund detaliile profilului dvs. de vizitatorii necunoscuți?</em>), legătura potențial inclusă în postările publice transmise către Twitter, va conduce vizitatorul la o pagină goală, informându-l pe vizitator că accesul la profilul dvs. a fost restricţionat."
|
||||||
|
|
||||||
|
#: twitter.php:287
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Permite postarea pe Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:290
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Trimite postările publice pe Twitter, ca și implicit"
|
||||||
|
|
||||||
|
#: twitter.php:294
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "Clonează toate postările, din Twitter, care nu sunt răspunsuri"
|
||||||
|
|
||||||
|
#: twitter.php:299
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "Importare cronologie la distanță"
|
||||||
|
|
||||||
|
#: twitter.php:303
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "Creați Automat contactele"
|
||||||
|
|
||||||
|
#: twitter.php:308
|
||||||
|
msgid "Clear OAuth configuration"
|
||||||
|
msgstr "Ștergeți configurările OAuth"
|
||||||
|
|
||||||
|
#: twitter.php:539
|
||||||
|
msgid "Twitter post failed. Queued for retry."
|
||||||
|
msgstr "Postarea pe Twitter a eșuat. S-a pus în așteptare pentru reîncercare."
|
||||||
|
|
||||||
|
#: twitter.php:563
|
||||||
|
msgid "Settings updated."
|
||||||
|
msgstr "Configurări actualizate."
|
||||||
|
|
||||||
|
#: twitter.php:571
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Cheia Utilizatorului"
|
||||||
|
|
||||||
|
#: twitter.php:572
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Cheia Secretă a Utilizatorului"
|
||||||
|
|
||||||
|
#: twitter.php:573
|
||||||
|
msgid "Name of the Twitter Application"
|
||||||
|
msgstr "Numele Aplicației Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:573
|
||||||
|
msgid ""
|
||||||
|
"set this to avoid mirroring postings from ~friendica back to ~friendica"
|
||||||
|
msgstr "stabiliți aceasta pentru a evita clonarea postărilor din ~friendica înapoi la ~friendica"
|
30
x-twitter/lang/ro/strings.php
Normal file
30
x-twitter/lang/ro/strings.php
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_ro")) {
|
||||||
|
function string_plural_select_ro($n){
|
||||||
|
$n = intval($n);
|
||||||
|
if ($n==1) { return 0; } else if ((($n%100>19)||(($n%100==0)&&($n!=0)))) { return 2; } else { return 1; }
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Postați pe Twitter';
|
||||||
|
$a->strings['Twitter settings updated.'] = 'Configurările Twitter au fost actualizate.';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Import/Export/Clonare Twitter';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Nici o pereche de chei de utilizator pentru Twitter nu a fost găsită. Vă rugăm să vă contactați administratorul de site.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'Pe această sesiune Friendica, modulul Twitter era activat, dar încă nu v-ați conectat contul la profilul dvs. Twitter. Pentru aceasta apăsați pe butonul de mai jos pentru a obține un PIN de pe Twitter pe care va trebui să îl copiați în caseta de introducere mai jos şi trimiteți formularul. Numai postările dumneavoastră <strong>publice</strong> vor fi postate pe Twitter.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Autentificare prin Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Copiați aici PIN-ul de la Twitter';
|
||||||
|
$a->strings['Save Settings'] = 'Salvare Configurări';
|
||||||
|
$a->strings['Currently connected to: '] = 'Conectat curent la:';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'Dacă activați, toate postările dvs. <strong>publice</strong> pot fi publicate în contul Twitter asociat. Puteți face acest lucru, implicit (aici), sau pentru fiecare postare separată, prin opțiunile de postare atunci când compuneți un mesaj.';
|
||||||
|
$a->strings['<strong>Note</strong>: Due your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Notă</strong>: Datorită configurărilor de confidenţialitate (<em>Se ascund detaliile profilului dvs. de vizitatorii necunoscuți?</em>), legătura potențial inclusă în postările publice transmise către Twitter, va conduce vizitatorul la o pagină goală, informându-l pe vizitator că accesul la profilul dvs. a fost restricţionat.';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Permite postarea pe Twitter';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Trimite postările publice pe Twitter, ca și implicit';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = 'Clonează toate postările, din Twitter, care nu sunt răspunsuri';
|
||||||
|
$a->strings['Import the remote timeline'] = 'Importare cronologie la distanță';
|
||||||
|
$a->strings['Automatically create contacts'] = 'Creați Automat contactele';
|
||||||
|
$a->strings['Clear OAuth configuration'] = 'Ștergeți configurările OAuth';
|
||||||
|
$a->strings['Twitter post failed. Queued for retry.'] = 'Postarea pe Twitter a eșuat. S-a pus în așteptare pentru reîncercare.';
|
||||||
|
$a->strings['Settings updated.'] = 'Configurări actualizate.';
|
||||||
|
$a->strings['Consumer key'] = 'Cheia Utilizatorului';
|
||||||
|
$a->strings['Consumer secret'] = 'Cheia Secretă a Utilizatorului';
|
||||||
|
$a->strings['Name of the Twitter Application'] = 'Numele Aplicației Twitter';
|
||||||
|
$a->strings['set this to avoid mirroring postings from ~friendica back to ~friendica'] = 'stabiliți aceasta pentru a evita clonarea postărilor din ~friendica înapoi la ~friendica';
|
123
x-twitter/lang/ru/messages.po
Normal file
123
x-twitter/lang/ru/messages.po
Normal file
|
@ -0,0 +1,123 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Stanislav N. <pztrn@pztrn.name>, 2017
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2013-02-27 05:01-0500\n"
|
||||||
|
"PO-Revision-Date: 2017-04-08 05:49+0000\n"
|
||||||
|
"Last-Translator: Stanislav N. <pztrn@pztrn.name>\n"
|
||||||
|
"Language-Team: Russian (http://www.transifex.com/Friendica/friendica/language/ru/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: ru\n"
|
||||||
|
"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"
|
||||||
|
|
||||||
|
#: twitter.php:77
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "Отправить в Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:129
|
||||||
|
msgid "Twitter settings updated."
|
||||||
|
msgstr "Настройки Twitter обновлены."
|
||||||
|
|
||||||
|
#: twitter.php:157
|
||||||
|
msgid "Twitter Posting Settings"
|
||||||
|
msgstr "Настройка отправки сообщений в Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:164
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "Не найдено пары потребительских ключей для Twitter. Пожалуйста, обратитесь к администратору сайта."
|
||||||
|
|
||||||
|
#: twitter.php:183
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "Чтобы подключиться к Twitter аккаунту, нажмите на кнопку ниже, чтобы получить код безопасности от Twitter, который нужно скопировать в поле ввода ниже, и отправить форму. Только ваши <strong>публичные сообщения</strong> будут отправляться на Twitter."
|
||||||
|
|
||||||
|
#: twitter.php:184
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Войдите через Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:186
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Скопируйте PIN с Twitter сюда"
|
||||||
|
|
||||||
|
#: twitter.php:191 twitter.php:229 twitter.php:556
|
||||||
|
msgid "Submit"
|
||||||
|
msgstr "Подтвердить"
|
||||||
|
|
||||||
|
#: twitter.php:200
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr "В настоящее время соединены с: "
|
||||||
|
|
||||||
|
#: twitter.php:201
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "Если включено, то все ваши <strong>общественные сообщения</strong> могут быть отправлены на связанный аккаунт Twitter. Вы можете сделать это по умолчанию (здесь) или для каждого сообщения отдельно при написании записи."
|
||||||
|
|
||||||
|
#: twitter.php:203
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "<strong>Внимание</strong>: Из-за настроек приватности (<em>Hide your profile details from unknown viewers?</em>) ссылка, которая может быть включена в твит, будет вести посетителя на пустую страницу с информированием о том, что доступ к профилю запрещен."
|
||||||
|
|
||||||
|
#: twitter.php:206
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "Разрешить отправку сообщений на Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:209
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "Отправлять сообщения для всех в Twitter по умолчанию"
|
||||||
|
|
||||||
|
#: twitter.php:213
|
||||||
|
msgid "Mirror all posts from twitter that are no replies or retweets"
|
||||||
|
msgstr "Получать посты с Twitter у которых нет ответов и ретвитов"
|
||||||
|
|
||||||
|
#: twitter.php:217
|
||||||
|
msgid "Shortening method that optimizes the tweet"
|
||||||
|
msgstr "Метод сокращения ссылок для оптимизации твита"
|
||||||
|
|
||||||
|
#: twitter.php:221
|
||||||
|
msgid "Send linked #-tags and @-names to Twitter"
|
||||||
|
msgstr "Отправлять #-теги и @-имена в Twitter ссылками"
|
||||||
|
|
||||||
|
#: twitter.php:226
|
||||||
|
msgid "Clear OAuth configuration"
|
||||||
|
msgstr "Удалить конфигурацию OAuth"
|
||||||
|
|
||||||
|
#: twitter.php:550
|
||||||
|
msgid "Settings updated."
|
||||||
|
msgstr "Настройки обновлены."
|
||||||
|
|
||||||
|
#: twitter.php:558
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Consumer key"
|
||||||
|
|
||||||
|
#: twitter.php:559
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Consumer secret"
|
||||||
|
|
||||||
|
#: twitter.php:560
|
||||||
|
msgid "Name of the Twitter Application"
|
||||||
|
msgstr "Имя приложения для Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:560
|
||||||
|
msgid ""
|
||||||
|
"set this to avoid mirroring postings from ~friendica back to ~friendica"
|
||||||
|
msgstr "установите это для избежания отправки сообщений из Friendica обратно в Friendica"
|
29
x-twitter/lang/ru/strings.php
Normal file
29
x-twitter/lang/ru/strings.php
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_ru")) {
|
||||||
|
function string_plural_select_ru($n){
|
||||||
|
$n = intval($n);
|
||||||
|
if ($n%10==1 && $n%100!=11) { return 0; } else if ($n%10>=2 && $n%10<=4 && ($n%100<12 || $n%100>14)) { return 1; } else if ($n%10==0 || ($n%10>=5 && $n%10<=9) || ($n%100>=11 && $n%100<=14)) { return 2; } else { return 3; }
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = 'Отправить в Twitter';
|
||||||
|
$a->strings['Twitter settings updated.'] = 'Настройки Twitter обновлены.';
|
||||||
|
$a->strings['Twitter Posting Settings'] = 'Настройка отправки сообщений в Twitter';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = 'Не найдено пары потребительских ключей для Twitter. Пожалуйста, обратитесь к администратору сайта.';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = 'Чтобы подключиться к Twitter аккаунту, нажмите на кнопку ниже, чтобы получить код безопасности от Twitter, который нужно скопировать в поле ввода ниже, и отправить форму. Только ваши <strong>публичные сообщения</strong> будут отправляться на Twitter.';
|
||||||
|
$a->strings['Log in with Twitter'] = 'Войдите через Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Скопируйте PIN с Twitter сюда';
|
||||||
|
$a->strings['Submit'] = 'Подтвердить';
|
||||||
|
$a->strings['Currently connected to: '] = 'В настоящее время соединены с: ';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = 'Если включено, то все ваши <strong>общественные сообщения</strong> могут быть отправлены на связанный аккаунт Twitter. Вы можете сделать это по умолчанию (здесь) или для каждого сообщения отдельно при написании записи.';
|
||||||
|
$a->strings['<strong>Note</strong>: Due your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '<strong>Внимание</strong>: Из-за настроек приватности (<em>Hide your profile details from unknown viewers?</em>) ссылка, которая может быть включена в твит, будет вести посетителя на пустую страницу с информированием о том, что доступ к профилю запрещен.';
|
||||||
|
$a->strings['Allow posting to Twitter'] = 'Разрешить отправку сообщений на Twitter';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = 'Отправлять сообщения для всех в Twitter по умолчанию';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies or retweets'] = 'Получать посты с Twitter у которых нет ответов и ретвитов';
|
||||||
|
$a->strings['Shortening method that optimizes the tweet'] = 'Метод сокращения ссылок для оптимизации твита';
|
||||||
|
$a->strings['Send linked #-tags and @-names to Twitter'] = 'Отправлять #-теги и @-имена в Twitter ссылками';
|
||||||
|
$a->strings['Clear OAuth configuration'] = 'Удалить конфигурацию OAuth';
|
||||||
|
$a->strings['Settings updated.'] = 'Настройки обновлены.';
|
||||||
|
$a->strings['Consumer key'] = 'Consumer key';
|
||||||
|
$a->strings['Consumer secret'] = 'Consumer secret';
|
||||||
|
$a->strings['Name of the Twitter Application'] = 'Имя приложения для Twitter';
|
||||||
|
$a->strings['set this to avoid mirroring postings from ~friendica back to ~friendica'] = 'установите это для избежания отправки сообщений из Friendica обратно в Friendica';
|
147
x-twitter/lang/sv/messages.po
Normal file
147
x-twitter/lang/sv/messages.po
Normal file
|
@ -0,0 +1,147 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# Hypolite Petovan <hypolite@mrpetovan.com>, 2019
|
||||||
|
# Kristoffer Grundström <lovaren@gmail.com>, 2022
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2021-11-27 10:25-0500\n"
|
||||||
|
"PO-Revision-Date: 2022-01-16 00:56+0000\n"
|
||||||
|
"Last-Translator: Kristoffer Grundström <lovaren@gmail.com>\n"
|
||||||
|
"Language-Team: Swedish (http://www.transifex.com/Friendica/friendica/language/sv/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: sv\n"
|
||||||
|
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||||
|
|
||||||
|
#: twitter.php:213
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:258
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:321
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:334
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:335
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "Logga in med Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:337
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "Kopiera PIN-koden från Twitter här"
|
||||||
|
|
||||||
|
#: twitter.php:345 twitter.php:388
|
||||||
|
msgid "An error occured: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
#, php-format
|
||||||
|
msgid ""
|
||||||
|
"Currently connected to: <a href=\"https://twitter.com/%1$s\" "
|
||||||
|
"target=\"_twitter\">%1$s</a>"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:365
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:372
|
||||||
|
msgid "Invalid Twitter info"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:373
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:378
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:378
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:379
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:380
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:381
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:382
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:382
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:395
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:547
|
||||||
|
msgid ""
|
||||||
|
"Please connect a Twitter account in your Social Network settings to import "
|
||||||
|
"Twitter posts."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:554
|
||||||
|
msgid "Twitter post not found."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:914
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: twitter.php:916
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "Kundnyckel"
|
||||||
|
|
||||||
|
#: twitter.php:917
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "Kundhemlighet"
|
||||||
|
|
||||||
|
#: twitter.php:1113
|
||||||
|
#, php-format
|
||||||
|
msgid "%s on Twitter"
|
||||||
|
msgstr ""
|
11
x-twitter/lang/sv/strings.php
Normal file
11
x-twitter/lang/sv/strings.php
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_sv")) {
|
||||||
|
function string_plural_select_sv($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval($n != 1);
|
||||||
|
}}
|
||||||
|
$a->strings['Log in with Twitter'] = 'Logga in med Twitter';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = 'Kopiera PIN-koden från Twitter här';
|
||||||
|
$a->strings['Consumer key'] = 'Kundnyckel';
|
||||||
|
$a->strings['Consumer secret'] = 'Kundhemlighet';
|
134
x-twitter/lang/zh-cn/messages.po
Normal file
134
x-twitter/lang/zh-cn/messages.po
Normal file
|
@ -0,0 +1,134 @@
|
||||||
|
# ADDON twitter
|
||||||
|
# Copyright (C)
|
||||||
|
# This file is distributed under the same license as the Friendica twitter addon package.
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Translators:
|
||||||
|
# steve jobs <vicdorke@gmail.com>, 2020
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: friendica\n"
|
||||||
|
"Report-Msgid-Bugs-To: \n"
|
||||||
|
"POT-Creation-Date: 2018-06-02 10:25+0700\n"
|
||||||
|
"PO-Revision-Date: 2020-06-10 14:20+0000\n"
|
||||||
|
"Last-Translator: steve jobs <vicdorke@gmail.com>\n"
|
||||||
|
"Language-Team: Chinese (China) (http://www.transifex.com/Friendica/friendica/language/zh_CN/)\n"
|
||||||
|
"MIME-Version: 1.0\n"
|
||||||
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
"Language: zh_CN\n"
|
||||||
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
|
|
||||||
|
#: twitter.php:195
|
||||||
|
msgid "Post to Twitter"
|
||||||
|
msgstr "发帖到Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:236
|
||||||
|
msgid ""
|
||||||
|
"You submitted an empty PIN, please Sign In with Twitter again to get a new "
|
||||||
|
"one."
|
||||||
|
msgstr "您提交的PIN为空,请重新登录Twitter获取新PIN。"
|
||||||
|
|
||||||
|
#: twitter.php:263
|
||||||
|
msgid "Twitter settings updated."
|
||||||
|
msgstr "已更新Twitter设置。"
|
||||||
|
|
||||||
|
#: twitter.php:293 twitter.php:297
|
||||||
|
msgid "Twitter Import/Export/Mirror"
|
||||||
|
msgstr "Twitter导入/导出/镜像"
|
||||||
|
|
||||||
|
#: twitter.php:304
|
||||||
|
msgid ""
|
||||||
|
"No consumer key pair for Twitter found. Please contact your site "
|
||||||
|
"administrator."
|
||||||
|
msgstr "找不到Twitter的使用者密钥。请与您的站点管理员联系。"
|
||||||
|
|
||||||
|
#: twitter.php:316
|
||||||
|
msgid ""
|
||||||
|
"At this Friendica instance the Twitter addon was enabled but you have not "
|
||||||
|
"yet connected your account to your Twitter account. To do so click the "
|
||||||
|
"button below to get a PIN from Twitter which you have to copy into the input"
|
||||||
|
" box below and submit the form. Only your <strong>public</strong> posts will"
|
||||||
|
" be posted to Twitter."
|
||||||
|
msgstr "在此Friendica实例中,Twitter插件已启用,但您尚未将您的帐户连接到您的Twitter帐户。要执行此操作,请单击下面的按钮从Twitter获取PIN,您必须将其复制到下面的输入框中并提交表单。只有您的公共帖子才会发布到Twitter上。"
|
||||||
|
|
||||||
|
#: twitter.php:317
|
||||||
|
msgid "Log in with Twitter"
|
||||||
|
msgstr "使用Twitter登录"
|
||||||
|
|
||||||
|
#: twitter.php:319
|
||||||
|
msgid "Copy the PIN from Twitter here"
|
||||||
|
msgstr "将Twitter上的PIN复制到此处"
|
||||||
|
|
||||||
|
#: twitter.php:324 twitter.php:366 twitter.php:636
|
||||||
|
msgid "Save Settings"
|
||||||
|
msgstr "保存设置"
|
||||||
|
|
||||||
|
#: twitter.php:336
|
||||||
|
msgid "Currently connected to: "
|
||||||
|
msgstr "当前连接到:"
|
||||||
|
|
||||||
|
#: twitter.php:337
|
||||||
|
msgid "Disconnect"
|
||||||
|
msgstr "断开连接"
|
||||||
|
|
||||||
|
#: twitter.php:347
|
||||||
|
msgid "Allow posting to Twitter"
|
||||||
|
msgstr "允許發佈到Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:347
|
||||||
|
msgid ""
|
||||||
|
"If enabled all your <strong>public</strong> postings can be posted to the "
|
||||||
|
"associated Twitter account. You can choose to do so by default (here) or for"
|
||||||
|
" every posting separately in the posting options when writing the entry."
|
||||||
|
msgstr "如果启用,您所有的公开帖子都可以发布到关联的Twitter帐户。在写入条目时,您可以选择默认(此处),也可以在过帐选项中分别为每个过帐选择这样做。"
|
||||||
|
|
||||||
|
#: twitter.php:350
|
||||||
|
msgid ""
|
||||||
|
"<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile "
|
||||||
|
"details from unknown viewers?</em>) the link potentially included in public "
|
||||||
|
"postings relayed to Twitter will lead the visitor to a blank page informing "
|
||||||
|
"the visitor that the access to your profile has been restricted."
|
||||||
|
msgstr "注意:由于您的隐私设置(向未知观众隐藏您的个人资料详细信息?)。转发到Twitter的公共帖子中可能包含的链接将把访问者引导到一个空白页面,通知访问者访问您的个人资料已受到限制。"
|
||||||
|
|
||||||
|
#: twitter.php:353
|
||||||
|
msgid "Send public postings to Twitter by default"
|
||||||
|
msgstr "默认情况下将公共帖子发送到Twitter"
|
||||||
|
|
||||||
|
#: twitter.php:356
|
||||||
|
msgid "Mirror all posts from twitter that are no replies"
|
||||||
|
msgstr "镜像来自Twitter的所有未回复的帖子"
|
||||||
|
|
||||||
|
#: twitter.php:359
|
||||||
|
msgid "Import the remote timeline"
|
||||||
|
msgstr "导入远程时间线"
|
||||||
|
|
||||||
|
#: twitter.php:362
|
||||||
|
msgid "Automatically create contacts"
|
||||||
|
msgstr "自动创建联系人"
|
||||||
|
|
||||||
|
#: twitter.php:362
|
||||||
|
msgid ""
|
||||||
|
"This will automatically create a contact in Friendica as soon as you receive"
|
||||||
|
" a message from an existing contact via the Twitter network. If you do not "
|
||||||
|
"enable this, you need to manually add those Twitter contacts in Friendica "
|
||||||
|
"from whom you would like to see posts here. However if enabled, you cannot "
|
||||||
|
"merely remove a twitter contact from the Friendica contact list, as it will "
|
||||||
|
"recreate this contact when they post again."
|
||||||
|
msgstr "一旦您通过Twitter网络收到来自现有联系人的消息,这将在Friendica中自动创建一个联系人。如果您不启用此功能,则需要在Friendica中手动添加您希望在此处查看其帖子的Twitter联系人。但是,如果启用,您不能仅将Twitter联系人从Friendica联系人列表中删除,因为它会在他们再次发帖时重新创建此联系人。"
|
||||||
|
|
||||||
|
#: twitter.php:614
|
||||||
|
msgid "Twitter post failed. Queued for retry."
|
||||||
|
msgstr "推特发帖失败。已排队等待重试。"
|
||||||
|
|
||||||
|
#: twitter.php:628
|
||||||
|
msgid "Settings updated."
|
||||||
|
msgstr "设置已更新。"
|
||||||
|
|
||||||
|
#: twitter.php:638
|
||||||
|
msgid "Consumer key"
|
||||||
|
msgstr "使用者密钥"
|
||||||
|
|
||||||
|
#: twitter.php:639
|
||||||
|
msgid "Consumer secret"
|
||||||
|
msgstr "使用者机密"
|
30
x-twitter/lang/zh-cn/strings.php
Normal file
30
x-twitter/lang/zh-cn/strings.php
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
if(! function_exists("string_plural_select_zh_cn")) {
|
||||||
|
function string_plural_select_zh_cn($n){
|
||||||
|
$n = intval($n);
|
||||||
|
return intval(0);
|
||||||
|
}}
|
||||||
|
$a->strings['Post to Twitter'] = '发帖到Twitter';
|
||||||
|
$a->strings['You submitted an empty PIN, please Sign In with Twitter again to get a new one.'] = '您提交的PIN为空,请重新登录Twitter获取新PIN。';
|
||||||
|
$a->strings['Twitter settings updated.'] = '已更新Twitter设置。';
|
||||||
|
$a->strings['Twitter Import/Export/Mirror'] = 'Twitter导入/导出/镜像';
|
||||||
|
$a->strings['No consumer key pair for Twitter found. Please contact your site administrator.'] = '找不到Twitter的使用者密钥。请与您的站点管理员联系。';
|
||||||
|
$a->strings['At this Friendica instance the Twitter addon was enabled but you have not yet connected your account to your Twitter account. To do so click the button below to get a PIN from Twitter which you have to copy into the input box below and submit the form. Only your <strong>public</strong> posts will be posted to Twitter.'] = '在此Friendica实例中,Twitter插件已启用,但您尚未将您的帐户连接到您的Twitter帐户。要执行此操作,请单击下面的按钮从Twitter获取PIN,您必须将其复制到下面的输入框中并提交表单。只有您的公共帖子才会发布到Twitter上。';
|
||||||
|
$a->strings['Log in with Twitter'] = '使用Twitter登录';
|
||||||
|
$a->strings['Copy the PIN from Twitter here'] = '将Twitter上的PIN复制到此处';
|
||||||
|
$a->strings['Save Settings'] = '保存设置';
|
||||||
|
$a->strings['Currently connected to: '] = '当前连接到:';
|
||||||
|
$a->strings['Disconnect'] = '断开连接';
|
||||||
|
$a->strings['Allow posting to Twitter'] = '允許發佈到Twitter';
|
||||||
|
$a->strings['If enabled all your <strong>public</strong> postings can be posted to the associated Twitter account. You can choose to do so by default (here) or for every posting separately in the posting options when writing the entry.'] = '如果启用,您所有的公开帖子都可以发布到关联的Twitter帐户。在写入条目时,您可以选择默认(此处),也可以在过帐选项中分别为每个过帐选择这样做。';
|
||||||
|
$a->strings['<strong>Note</strong>: Due to your privacy settings (<em>Hide your profile details from unknown viewers?</em>) the link potentially included in public postings relayed to Twitter will lead the visitor to a blank page informing the visitor that the access to your profile has been restricted.'] = '注意:由于您的隐私设置(向未知观众隐藏您的个人资料详细信息?)。转发到Twitter的公共帖子中可能包含的链接将把访问者引导到一个空白页面,通知访问者访问您的个人资料已受到限制。';
|
||||||
|
$a->strings['Send public postings to Twitter by default'] = '默认情况下将公共帖子发送到Twitter';
|
||||||
|
$a->strings['Mirror all posts from twitter that are no replies'] = '镜像来自Twitter的所有未回复的帖子';
|
||||||
|
$a->strings['Import the remote timeline'] = '导入远程时间线';
|
||||||
|
$a->strings['Automatically create contacts'] = '自动创建联系人';
|
||||||
|
$a->strings['This will automatically create a contact in Friendica as soon as you receive a message from an existing contact via the Twitter network. If you do not enable this, you need to manually add those Twitter contacts in Friendica from whom you would like to see posts here. However if enabled, you cannot merely remove a twitter contact from the Friendica contact list, as it will recreate this contact when they post again.'] = '一旦您通过Twitter网络收到来自现有联系人的消息,这将在Friendica中自动创建一个联系人。如果您不启用此功能,则需要在Friendica中手动添加您希望在此处查看其帖子的Twitter联系人。但是,如果启用,您不能仅将Twitter联系人从Friendica联系人列表中删除,因为它会在他们再次发帖时重新创建此联系人。';
|
||||||
|
$a->strings['Twitter post failed. Queued for retry.'] = '推特发帖失败。已排队等待重试。';
|
||||||
|
$a->strings['Settings updated.'] = '设置已更新。';
|
||||||
|
$a->strings['Consumer key'] = '使用者密钥';
|
||||||
|
$a->strings['Consumer secret'] = '使用者机密';
|
BIN
x-twitter/lighter.png
Normal file
BIN
x-twitter/lighter.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.4 KiB |
4
x-twitter/templates/admin.tpl
Normal file
4
x-twitter/templates/admin.tpl
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
{{include file="field_input.tpl" field=$consumerkey}}
|
||||||
|
{{include file="field_input.tpl" field=$consumersecret}}
|
||||||
|
<!-- {{include file="field_input.tpl" field=$applicationname}} -->
|
||||||
|
<div class="submit"><input type="submit" name="page_site" value="{{$submit}}" /></div>
|
25
x-twitter/templates/connector_settings.tpl
Normal file
25
x-twitter/templates/connector_settings.tpl
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
<div id="twitter-info" >
|
||||||
|
{{if $l10n.connected}}
|
||||||
|
<p>{{$l10n.connected nofilter}} <button type="submit" name="twitter-disconnect" value="1">{{$l10n.disconnect}}</button></p>
|
||||||
|
<p id="twitter-info-block">
|
||||||
|
<a href="https://twitter.com/{{$account->screen_name}}" target="_twitter"><img id="twitter-avatar" src="{{$account->profile_image_url}}" /></a>
|
||||||
|
<em>{{$account->description}}</em>
|
||||||
|
</p>
|
||||||
|
{{else}}
|
||||||
|
<p>{{$l10n.invalid}}</p>
|
||||||
|
<button type="submit" name="twitter-disconnect" value="1">{{$l10n.disconnect}}</button>
|
||||||
|
{{/if}}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="clear"></div>
|
||||||
|
|
||||||
|
{{include file="field_checkbox.tpl" field=$enable}}
|
||||||
|
{{if $l10n.privacy_warning}}
|
||||||
|
<p>{{$l10n.privacy_warning nofilter}}</p>
|
||||||
|
{{/if}}
|
||||||
|
{{include file="field_checkbox.tpl" field=$default}}
|
||||||
|
{{include file="field_checkbox.tpl" field=$thread}}
|
||||||
|
{{include file="field_checkbox.tpl" field=$mirror}}
|
||||||
|
{{include file="field_checkbox.tpl" field=$import}}
|
||||||
|
{{include file="field_checkbox.tpl" field=$create_user}}
|
||||||
|
{{include file="field_checkbox.tpl" field=$auto_follow}}
|
12
x-twitter/twitter.css
Normal file
12
x-twitter/twitter.css
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
|
||||||
|
|
||||||
|
#twitter-avatar {
|
||||||
|
float: left;
|
||||||
|
width: 48px;
|
||||||
|
height: 48px;
|
||||||
|
padding: 2px;
|
||||||
|
}
|
||||||
|
#twitter-info-block {
|
||||||
|
height: 52px;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
2500
x-twitter/twitter.php
Normal file
2500
x-twitter/twitter.php
Normal file
File diff suppressed because it is too large
Load diff
31
x-twitter/twitter_sync.php
Normal file
31
x-twitter/twitter_sync.php
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Friendica\Core\Logger;
|
||||||
|
use Friendica\DI;
|
||||||
|
|
||||||
|
function twitter_sync_run($argv, $argc)
|
||||||
|
{
|
||||||
|
require_once 'addon/twitter/twitter.php';
|
||||||
|
|
||||||
|
if (function_exists('sys_getloadavg')) {
|
||||||
|
$load = sys_getloadavg();
|
||||||
|
$maxload = DI::config()->get('system', 'maxloadavg', 50);
|
||||||
|
if (intval($load[0]) > $maxload) {
|
||||||
|
Logger::notice('load too high. Twitter sync deferred to next scheduled run.', ['current' => $load[0], 'max' => $maxload]);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($argc < 3) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$mode = intval($argv[1]);
|
||||||
|
$uid = intval($argv[2]);
|
||||||
|
|
||||||
|
if ($mode == 1) {
|
||||||
|
twitter_fetchtimeline($uid);
|
||||||
|
} elseif ($mode == 2) {
|
||||||
|
twitter_fetchhometimeline($uid);
|
||||||
|
}
|
||||||
|
}
|
14
x-twitter/vendor/abraham/twitteroauth/.github/dependabot.yml
vendored
Normal file
14
x-twitter/vendor/abraham/twitteroauth/.github/dependabot.yml
vendored
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
version: 2
|
||||||
|
updates:
|
||||||
|
- package-ecosystem: npm
|
||||||
|
directory: '/'
|
||||||
|
schedule:
|
||||||
|
interval: daily
|
||||||
|
time: '11:00'
|
||||||
|
open-pull-requests-limit: 10
|
||||||
|
- package-ecosystem: composer
|
||||||
|
directory: '/'
|
||||||
|
schedule:
|
||||||
|
interval: daily
|
||||||
|
time: '11:00'
|
||||||
|
open-pull-requests-limit: 10
|
12
x-twitter/vendor/abraham/twitteroauth/.github/workflows/lint.yaml
vendored
Normal file
12
x-twitter/vendor/abraham/twitteroauth/.github/workflows/lint.yaml
vendored
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
name: Lint
|
||||||
|
on: push
|
||||||
|
jobs:
|
||||||
|
lint:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: 12
|
||||||
|
- run: npm ci
|
||||||
|
- run: npm run lint
|
18
x-twitter/vendor/abraham/twitteroauth/.github/workflows/test.yaml
vendored
Normal file
18
x-twitter/vendor/abraham/twitteroauth/.github/workflows/test.yaml
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
name: Test
|
||||||
|
on: push
|
||||||
|
jobs:
|
||||||
|
run:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
php-versions: ['7.2', '7.3', '7.4', '8.0']
|
||||||
|
name: PHP ${{ matrix.php-versions }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: shivammathur/setup-php@v2
|
||||||
|
with:
|
||||||
|
php-version: ${{ matrix.php-versions }}
|
||||||
|
- run: composer validate --no-interaction --strict
|
||||||
|
- run: composer install --no-interaction --prefer-dist
|
||||||
|
- run: npm test
|
5
x-twitter/vendor/abraham/twitteroauth/.gitignore
vendored
Normal file
5
x-twitter/vendor/abraham/twitteroauth/.gitignore
vendored
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
.DS_Store
|
||||||
|
vendor
|
||||||
|
env
|
||||||
|
*.cache
|
||||||
|
node_modules
|
3
x-twitter/vendor/abraham/twitteroauth/.prettierignore
vendored
Normal file
3
x-twitter/vendor/abraham/twitteroauth/.prettierignore
vendored
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
vendor
|
||||||
|
composer.lock
|
||||||
|
tests/fixtures
|
6
x-twitter/vendor/abraham/twitteroauth/.prettierrc.json
vendored
Normal file
6
x-twitter/vendor/abraham/twitteroauth/.prettierrc.json
vendored
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"singleQuote": true,
|
||||||
|
"phpVersion": "7.2",
|
||||||
|
"trailingCommaPHP": true,
|
||||||
|
"braceStyle": "psr-2"
|
||||||
|
}
|
46
x-twitter/vendor/abraham/twitteroauth/CODE_OF_CONDUCT.md
vendored
Normal file
46
x-twitter/vendor/abraham/twitteroauth/CODE_OF_CONDUCT.md
vendored
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
# Contributor Covenant Code of Conduct
|
||||||
|
|
||||||
|
## Our Pledge
|
||||||
|
|
||||||
|
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
|
||||||
|
|
||||||
|
## Our Standards
|
||||||
|
|
||||||
|
Examples of behavior that contributes to creating a positive environment include:
|
||||||
|
|
||||||
|
- Using welcoming and inclusive language
|
||||||
|
- Being respectful of differing viewpoints and experiences
|
||||||
|
- Gracefully accepting constructive criticism
|
||||||
|
- Focusing on what is best for the community
|
||||||
|
- Showing empathy towards other community members
|
||||||
|
|
||||||
|
Examples of unacceptable behavior by participants include:
|
||||||
|
|
||||||
|
- The use of sexualized language or imagery and unwelcome sexual attention or advances
|
||||||
|
- Trolling, insulting/derogatory comments, and personal or political attacks
|
||||||
|
- Public or private harassment
|
||||||
|
- Publishing others' private information, such as a physical or electronic address, without explicit permission
|
||||||
|
- Other conduct which could reasonably be considered inappropriate in a professional setting
|
||||||
|
|
||||||
|
## Our Responsibilities
|
||||||
|
|
||||||
|
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
|
||||||
|
|
||||||
|
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
|
||||||
|
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
|
||||||
|
|
||||||
|
## Enforcement
|
||||||
|
|
||||||
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at abraham@abrah.am. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
|
||||||
|
|
||||||
|
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
|
||||||
|
|
||||||
|
## Attribution
|
||||||
|
|
||||||
|
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
|
||||||
|
|
||||||
|
[homepage]: http://contributor-covenant.org
|
||||||
|
[version]: http://contributor-covenant.org/version/1/4/
|
21
x-twitter/vendor/abraham/twitteroauth/CONTRIBUTING.md
vendored
Normal file
21
x-twitter/vendor/abraham/twitteroauth/CONTRIBUTING.md
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
# Contributing to TwitterOAuth
|
||||||
|
|
||||||
|
## 👏 Thanks!
|
||||||
|
|
||||||
|
Thanks for your interest in contributing to TwitterOAuth. We appreciate contributions small and large.
|
||||||
|
|
||||||
|
## 🌱 Grow
|
||||||
|
|
||||||
|
If you have an idea for something new or would like to improve something. Please [open a quick issue](https://github.com/abraham/twitteroauth/issues/new) explaining the changes and the reasons for them. Everyone's time is important and we don't want you duplicating work someone else might already be working on.
|
||||||
|
|
||||||
|
GitHub has [outlined instructions](https://help.github.com/articles/fork-a-repo/) for forking a repo. To work on an update to this repo, you will:
|
||||||
|
|
||||||
|
- Fork the repo
|
||||||
|
- Make the changes
|
||||||
|
- Submit a pull request
|
||||||
|
|
||||||
|
Once the [pull request](https://help.github.com/articles/about-pull-requests/) is reviewed, if the changes are approved they will be merged in to the project.
|
||||||
|
|
||||||
|
## 🐛 Bugs
|
||||||
|
|
||||||
|
Please [open a new issue](https://github.com/abraham/twitteroauth/issues/new) and details what you are trying to do, what is happening, and what you expect to happen. Err on the side of providing more details.
|
22
x-twitter/vendor/abraham/twitteroauth/LICENSE.md
vendored
Normal file
22
x-twitter/vendor/abraham/twitteroauth/LICENSE.md
vendored
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
Copyright (c) 2009 Abraham Williams - http://abrah.am - abraham@abrah.am
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person
|
||||||
|
obtaining a copy of this software and associated documentation
|
||||||
|
files (the "Software"), to deal in the Software without
|
||||||
|
restriction, including without limitation the rights to use,
|
||||||
|
copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the
|
||||||
|
Software is furnished to do so, subject to the following
|
||||||
|
conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be
|
||||||
|
included in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||||
|
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||||
|
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||||
|
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||||
|
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||||
|
OTHER DEALINGS IN THE SOFTWARE.
|
11
x-twitter/vendor/abraham/twitteroauth/README.md
vendored
Normal file
11
x-twitter/vendor/abraham/twitteroauth/README.md
vendored
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
<span itemprop="name">TwitterOAuth</span> [![Build Status](https://github.com/abraham/twitteroauth/workflows/Test/badge.svg)](https://github.com/abraham/twitteroauth/actions) [![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/abraham/twitteroauth/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/abraham/twitteroauth/?branch=master) [![Issues Count](https://img.shields.io/github/issues/abraham/twitteroauth.svg)](https://github.com/abraham/twitteroauth/issues) [![Latest Version](https://img.shields.io/packagist/v/abraham/twitteroauth.svg)](https://packagist.org/packages/abraham/twitteroauth) [![Downloads this Month](https://img.shields.io/packagist/dm/abraham/twitteroauth.svg)](https://packagist.org/packages/abraham/twitteroauth)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
<p itemprop="description">The most popular PHP library for Twitter's OAuth REST API.</p>
|
||||||
|
|
||||||
|
See documentation at https://twitteroauth.com.
|
||||||
|
|
||||||
|
PHP versions [listed](https://secure.php.net/supported-versions.php) as "active support" or "security fixes only" are supported.
|
||||||
|
|
||||||
|
<img src="https://raw.githubusercontent.com/abraham/twitteroauth-com/master/images/twitter-logo-blue.png" itemprop="image" alt="Twitter bird" width="200px">
|
35
x-twitter/vendor/abraham/twitteroauth/autoload.php
vendored
Normal file
35
x-twitter/vendor/abraham/twitteroauth/autoload.php
vendored
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Use to autoload needed classes without Composer.
|
||||||
|
*
|
||||||
|
* @param string $class The fully-qualified class name.
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
spl_autoload_register(function ($class) {
|
||||||
|
// project-specific namespace prefix
|
||||||
|
$prefix = 'Abraham\\TwitterOAuth\\';
|
||||||
|
|
||||||
|
// base directory for the namespace prefix
|
||||||
|
$base_dir = __DIR__ . '/src/';
|
||||||
|
|
||||||
|
// does the class use the namespace prefix?
|
||||||
|
$len = strlen($prefix);
|
||||||
|
if (strncmp($prefix, $class, $len) !== 0) {
|
||||||
|
// no, move to the next registered autoloader
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// get the relative class name
|
||||||
|
$relative_class = substr($class, $len);
|
||||||
|
|
||||||
|
// replace the namespace prefix with the base directory, replace namespace
|
||||||
|
// separators with directory separators in the relative class name, append
|
||||||
|
// with .php
|
||||||
|
$file = $base_dir . str_replace('\\', '/', $relative_class) . '.php';
|
||||||
|
|
||||||
|
// if the file exists, require it
|
||||||
|
if (file_exists($file)) {
|
||||||
|
require $file;
|
||||||
|
}
|
||||||
|
});
|
55
x-twitter/vendor/abraham/twitteroauth/composer.json
vendored
Normal file
55
x-twitter/vendor/abraham/twitteroauth/composer.json
vendored
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
{
|
||||||
|
"name": "abraham/twitteroauth",
|
||||||
|
"type": "library",
|
||||||
|
"description": "The most popular PHP library for use with the Twitter OAuth REST API.",
|
||||||
|
"keywords": [
|
||||||
|
"twitter",
|
||||||
|
"api",
|
||||||
|
"oauth",
|
||||||
|
"rest",
|
||||||
|
"social",
|
||||||
|
"twitter api",
|
||||||
|
"twitter oauth"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"homepage": "https://twitteroauth.com",
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Abraham Williams",
|
||||||
|
"email": "abraham@abrah.am",
|
||||||
|
"homepage": "https://abrah.am",
|
||||||
|
"role": "Developer"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"support": {
|
||||||
|
"source": "https://github.com/abraham/twitteroauth",
|
||||||
|
"issues": "https://github.com/abraham/twitteroauth/issues"
|
||||||
|
},
|
||||||
|
"repositories": [
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/morozov/php-vcr"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/abraham/phpunit-testlistener-vcr"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"require": {
|
||||||
|
"php": "^7.2 || ^7.3 || ^7.4 || ^8.0",
|
||||||
|
"ext-curl": "*",
|
||||||
|
"composer/ca-bundle": "^1.2"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"phpunit/phpunit": "^8",
|
||||||
|
"squizlabs/php_codesniffer": "^3",
|
||||||
|
"phpmd/phpmd": "^2",
|
||||||
|
"php-vcr/php-vcr": "^1",
|
||||||
|
"php-vcr/phpunit-testlistener-vcr": "dev-php-8"
|
||||||
|
},
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Abraham\\TwitterOAuth\\": "src"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
2761
x-twitter/vendor/abraham/twitteroauth/composer.lock
generated
vendored
Normal file
2761
x-twitter/vendor/abraham/twitteroauth/composer.lock
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
511
x-twitter/vendor/abraham/twitteroauth/package-lock.json
generated
vendored
Normal file
511
x-twitter/vendor/abraham/twitteroauth/package-lock.json
generated
vendored
Normal file
|
@ -0,0 +1,511 @@
|
||||||
|
{
|
||||||
|
"name": "twitteroauth",
|
||||||
|
"version": "0.0.0",
|
||||||
|
"lockfileVersion": 1,
|
||||||
|
"requires": true,
|
||||||
|
"dependencies": {
|
||||||
|
"@prettier/plugin-php": {
|
||||||
|
"version": "0.16.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@prettier/plugin-php/-/plugin-php-0.16.0.tgz",
|
||||||
|
"integrity": "sha512-HG/FamMUtq4/9hZmeuvwy0BWmOr4m9OWacvLSUmmgUrQd4+TRZW7Nqs2MAJkwSNiBIgAKTt2Vw9PK+33Gxxx8g==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"linguist-languages": "^7.5.1",
|
||||||
|
"mem": "^8.0.0",
|
||||||
|
"php-parser": "3.0.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ansi-regex": {
|
||||||
|
"version": "4.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
|
||||||
|
"integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"ansi-styles": {
|
||||||
|
"version": "3.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||||
|
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"color-convert": "^1.9.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"camelcase": {
|
||||||
|
"version": "5.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
|
||||||
|
"integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"chalk": {
|
||||||
|
"version": "2.4.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||||
|
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-styles": "^3.2.1",
|
||||||
|
"escape-string-regexp": "^1.0.5",
|
||||||
|
"supports-color": "^5.3.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"supports-color": {
|
||||||
|
"version": "5.5.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||||
|
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"has-flag": "^3.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"cliui": {
|
||||||
|
"version": "5.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
|
||||||
|
"integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"string-width": "^3.1.0",
|
||||||
|
"strip-ansi": "^5.2.0",
|
||||||
|
"wrap-ansi": "^5.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"color-convert": {
|
||||||
|
"version": "1.9.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
|
||||||
|
"integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"color-name": "1.1.3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"color-name": {
|
||||||
|
"version": "1.1.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
|
||||||
|
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"concurrently": {
|
||||||
|
"version": "5.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/concurrently/-/concurrently-5.3.0.tgz",
|
||||||
|
"integrity": "sha512-8MhqOB6PWlBfA2vJ8a0bSFKATOdWlHiQlk11IfmQBPaHVP8oP2gsh2MObE6UR3hqDHqvaIvLTyceNW6obVuFHQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"chalk": "^2.4.2",
|
||||||
|
"date-fns": "^2.0.1",
|
||||||
|
"lodash": "^4.17.15",
|
||||||
|
"read-pkg": "^4.0.1",
|
||||||
|
"rxjs": "^6.5.2",
|
||||||
|
"spawn-command": "^0.0.2-1",
|
||||||
|
"supports-color": "^6.1.0",
|
||||||
|
"tree-kill": "^1.2.2",
|
||||||
|
"yargs": "^13.3.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"date-fns": {
|
||||||
|
"version": "2.15.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.15.0.tgz",
|
||||||
|
"integrity": "sha512-ZCPzAMJZn3rNUvvQIMlXhDr4A+Ar07eLeGsGREoWU19a3Pqf5oYa+ccd+B3F6XVtQY6HANMFdOQ8A+ipFnvJdQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"decamelize": {
|
||||||
|
"version": "1.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
|
||||||
|
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"emoji-regex": {
|
||||||
|
"version": "7.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
|
||||||
|
"integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"error-ex": {
|
||||||
|
"version": "1.3.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
|
||||||
|
"integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"is-arrayish": "^0.2.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"escape-string-regexp": {
|
||||||
|
"version": "1.0.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
|
||||||
|
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"find-up": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"locate-path": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"get-caller-file": {
|
||||||
|
"version": "2.0.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
|
||||||
|
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"has-flag": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
|
||||||
|
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"hosted-git-info": {
|
||||||
|
"version": "2.8.8",
|
||||||
|
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz",
|
||||||
|
"integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"is-arrayish": {
|
||||||
|
"version": "0.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
|
||||||
|
"integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"is-fullwidth-code-point": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"json-parse-better-errors": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
|
||||||
|
"integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"linguist-languages": {
|
||||||
|
"version": "7.11.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/linguist-languages/-/linguist-languages-7.11.1.tgz",
|
||||||
|
"integrity": "sha512-+cRUk+1WTbydcdzipXQER2iilX+wMrb1LPkbkGuDP/IcGPJRDmOZH6Olf1iH6sHlHwPnJYiNJH39YsFCVZxvUQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"locate-path": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"p-locate": "^3.0.0",
|
||||||
|
"path-exists": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"lodash": {
|
||||||
|
"version": "4.17.19",
|
||||||
|
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
|
||||||
|
"integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"map-age-cleaner": {
|
||||||
|
"version": "0.1.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz",
|
||||||
|
"integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"p-defer": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"mem": {
|
||||||
|
"version": "8.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/mem/-/mem-8.0.0.tgz",
|
||||||
|
"integrity": "sha512-qrcJOe6uD+EW8Wrci1Vdiua/15Xw3n/QnaNXE7varnB6InxSk7nu3/i5jfy3S6kWxr8WYJ6R1o0afMUtvorTsA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"map-age-cleaner": "^0.1.3",
|
||||||
|
"mimic-fn": "^3.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"mimic-fn": {
|
||||||
|
"version": "3.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz",
|
||||||
|
"integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"normalize-package-data": {
|
||||||
|
"version": "2.5.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
|
||||||
|
"integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"hosted-git-info": "^2.1.4",
|
||||||
|
"resolve": "^1.10.0",
|
||||||
|
"semver": "2 || 3 || 4 || 5",
|
||||||
|
"validate-npm-package-license": "^3.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"p-defer": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"p-limit": {
|
||||||
|
"version": "2.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
|
||||||
|
"integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"p-try": "^2.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"p-locate": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"p-limit": "^2.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"p-try": {
|
||||||
|
"version": "2.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
|
||||||
|
"integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"parse-json": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
|
||||||
|
"integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"error-ex": "^1.3.1",
|
||||||
|
"json-parse-better-errors": "^1.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"path-exists": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
|
||||||
|
"integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"path-parse": {
|
||||||
|
"version": "1.0.6",
|
||||||
|
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
|
||||||
|
"integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"php-parser": {
|
||||||
|
"version": "3.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/php-parser/-/php-parser-3.0.2.tgz",
|
||||||
|
"integrity": "sha512-a7y1+odEGsceLDLpu7oNyspZ0pK8FMWJOoim4/yd82AtnEZNLdCLZ67arnOQZ9K0lHJiSp4/7lVUpGELVxE14w==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"pify": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
|
||||||
|
"integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"prettier": {
|
||||||
|
"version": "2.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.1.tgz",
|
||||||
|
"integrity": "sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"prettier-plugin-package": {
|
||||||
|
"version": "1.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/prettier-plugin-package/-/prettier-plugin-package-1.3.0.tgz",
|
||||||
|
"integrity": "sha512-KPNHR/Jm2zTevBp1SnjzMnooO1BOQW2bixVbOp8flOJoW+dxdDwEncObfsKZdkjwrv6AIH4oWqm5EO/etDmK9Q==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"read-pkg": {
|
||||||
|
"version": "4.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-4.0.1.tgz",
|
||||||
|
"integrity": "sha1-ljYlN48+HE1IyFhytabsfV0JMjc=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"normalize-package-data": "^2.3.2",
|
||||||
|
"parse-json": "^4.0.0",
|
||||||
|
"pify": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"require-directory": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
|
||||||
|
"integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"require-main-filename": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
|
||||||
|
"integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"resolve": {
|
||||||
|
"version": "1.17.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
|
||||||
|
"integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"path-parse": "^1.0.6"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"rxjs": {
|
||||||
|
"version": "6.6.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.2.tgz",
|
||||||
|
"integrity": "sha512-BHdBMVoWC2sL26w//BCu3YzKT4s2jip/WhwsGEDmeKYBhKDZeYezVUnHatYB7L85v5xs0BAQmg6BEYJEKxBabg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"tslib": "^1.9.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"semver": {
|
||||||
|
"version": "5.7.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
|
||||||
|
"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"set-blocking": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"spawn-command": {
|
||||||
|
"version": "0.0.2-1",
|
||||||
|
"resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz",
|
||||||
|
"integrity": "sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"spdx-correct": {
|
||||||
|
"version": "3.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
|
||||||
|
"integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"spdx-expression-parse": "^3.0.0",
|
||||||
|
"spdx-license-ids": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"spdx-exceptions": {
|
||||||
|
"version": "2.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
|
||||||
|
"integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"spdx-expression-parse": {
|
||||||
|
"version": "3.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
|
||||||
|
"integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"spdx-exceptions": "^2.1.0",
|
||||||
|
"spdx-license-ids": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"spdx-license-ids": {
|
||||||
|
"version": "3.0.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz",
|
||||||
|
"integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"string-width": {
|
||||||
|
"version": "3.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
|
||||||
|
"integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"emoji-regex": "^7.0.1",
|
||||||
|
"is-fullwidth-code-point": "^2.0.0",
|
||||||
|
"strip-ansi": "^5.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"strip-ansi": {
|
||||||
|
"version": "5.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
|
||||||
|
"integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-regex": "^4.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"supports-color": {
|
||||||
|
"version": "6.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
|
||||||
|
"integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"has-flag": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tree-kill": {
|
||||||
|
"version": "1.2.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz",
|
||||||
|
"integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"tslib": {
|
||||||
|
"version": "1.13.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
|
||||||
|
"integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"validate-npm-package-license": {
|
||||||
|
"version": "3.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
|
||||||
|
"integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"spdx-correct": "^3.0.0",
|
||||||
|
"spdx-expression-parse": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"which-module": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"wrap-ansi": {
|
||||||
|
"version": "5.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
|
||||||
|
"integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-styles": "^3.2.0",
|
||||||
|
"string-width": "^3.0.0",
|
||||||
|
"strip-ansi": "^5.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"y18n": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"yargs": {
|
||||||
|
"version": "13.3.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
|
||||||
|
"integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"cliui": "^5.0.0",
|
||||||
|
"find-up": "^3.0.0",
|
||||||
|
"get-caller-file": "^2.0.1",
|
||||||
|
"require-directory": "^2.1.1",
|
||||||
|
"require-main-filename": "^2.0.0",
|
||||||
|
"set-blocking": "^2.0.0",
|
||||||
|
"string-width": "^3.0.0",
|
||||||
|
"which-module": "^2.0.0",
|
||||||
|
"y18n": "^4.0.0",
|
||||||
|
"yargs-parser": "^13.1.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"yargs-parser": {
|
||||||
|
"version": "13.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
|
||||||
|
"integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"camelcase": "^5.0.0",
|
||||||
|
"decamelize": "^1.2.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
44
x-twitter/vendor/abraham/twitteroauth/package.json
vendored
Normal file
44
x-twitter/vendor/abraham/twitteroauth/package.json
vendored
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
{
|
||||||
|
"name": "twitteroauth",
|
||||||
|
"version": "0.0.0",
|
||||||
|
"description": "The most popular PHP library for use with the Twitter OAuth REST API.",
|
||||||
|
"license": "MIT",
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "git+https://github.com/abraham/twitteroauth.git"
|
||||||
|
},
|
||||||
|
"author": "Abraham Williams <abraham@abrah.am>",
|
||||||
|
"homepage": "https://github.com/abraham/twitteroauth#readme",
|
||||||
|
"bugs": {
|
||||||
|
"url": "https://github.com/abraham/twitteroauth/issues"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"fix": "concurrently npm:fix:*",
|
||||||
|
"fix:phpcbf": "./vendor/bin/phpcbf src tests --standard=PSR12",
|
||||||
|
"fix:prettier": "prettier . --write",
|
||||||
|
"lint": "concurrently npm:lint:*",
|
||||||
|
"lint:phpcs": "./vendor/bin/phpcs src tests --standard=PSR12",
|
||||||
|
"lint:prettier": "prettier . --check",
|
||||||
|
"postinstall": "composer install --no-interaction",
|
||||||
|
"test": "./vendor/bin/phpunit"
|
||||||
|
},
|
||||||
|
"keywords": [
|
||||||
|
"twitter",
|
||||||
|
"api",
|
||||||
|
"oauth",
|
||||||
|
"rest",
|
||||||
|
"social",
|
||||||
|
"twitter-api",
|
||||||
|
"twitter-oauth"
|
||||||
|
],
|
||||||
|
"dependencies": {},
|
||||||
|
"devDependencies": {
|
||||||
|
"@prettier/plugin-php": "0.16.0",
|
||||||
|
"concurrently": "^5.3.0",
|
||||||
|
"prettier": "2.2.1",
|
||||||
|
"prettier-plugin-package": "1.3.0"
|
||||||
|
},
|
||||||
|
"directories": {
|
||||||
|
"test": "tests"
|
||||||
|
}
|
||||||
|
}
|
15
x-twitter/vendor/abraham/twitteroauth/phpmd.xml
vendored
Normal file
15
x-twitter/vendor/abraham/twitteroauth/phpmd.xml
vendored
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<ruleset name="My first PHPMD rule set"
|
||||||
|
xmlns="http://pmd.sf.net/ruleset/1.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd"
|
||||||
|
xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd">
|
||||||
|
<description>Keep TwitterOAuth source code clean.</description>
|
||||||
|
|
||||||
|
<!-- <rule ref="rulesets/cleancode.xml" /> -->
|
||||||
|
<rule ref="rulesets/codesize.xml" />
|
||||||
|
<rule ref="rulesets/controversial.xml" />
|
||||||
|
<rule ref="rulesets/design.xml" />
|
||||||
|
<rule ref="rulesets/naming.xml" />
|
||||||
|
<rule ref="rulesets/unusedcode.xml" />
|
||||||
|
</ruleset>
|
18
x-twitter/vendor/abraham/twitteroauth/phpunit.xml
vendored
Normal file
18
x-twitter/vendor/abraham/twitteroauth/phpunit.xml
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<phpunit
|
||||||
|
colors="true"
|
||||||
|
bootstrap="tests/bootstrap.php"
|
||||||
|
testdox="true">
|
||||||
|
|
||||||
|
<testsuites>
|
||||||
|
<testsuite name="TwitterOAuth Test Suite">
|
||||||
|
<directory>./tests/</directory>
|
||||||
|
</testsuite>
|
||||||
|
</testsuites>
|
||||||
|
|
||||||
|
<listeners>
|
||||||
|
<listener
|
||||||
|
class="VCR\PHPUnit\TestListener\VCRTestListener"
|
||||||
|
file="vendor/php-vcr/phpunit-testlistener-vcr/src/VCRTestListener.php" />
|
||||||
|
</listeners>
|
||||||
|
</phpunit>
|
109
x-twitter/vendor/abraham/twitteroauth/src/Config.php
vendored
Normal file
109
x-twitter/vendor/abraham/twitteroauth/src/Config.php
vendored
Normal file
|
@ -0,0 +1,109 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handle setting and storing config for TwitterOAuth.
|
||||||
|
*
|
||||||
|
* @author Abraham Williams <abraham@abrah.am>
|
||||||
|
*/
|
||||||
|
class Config
|
||||||
|
{
|
||||||
|
/** @var int How long to wait for a response from the API */
|
||||||
|
protected $timeout = 5;
|
||||||
|
/** @var int how long to wait while connecting to the API */
|
||||||
|
protected $connectionTimeout = 5;
|
||||||
|
/** @var int How many times we retry request when API is down */
|
||||||
|
protected $maxRetries = 0;
|
||||||
|
/** @var int Delay in seconds before we retry the request */
|
||||||
|
protected $retriesDelay = 1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Decode JSON Response as associative Array
|
||||||
|
*
|
||||||
|
* @see http://php.net/manual/en/function.json-decode.php
|
||||||
|
*
|
||||||
|
* @var bool
|
||||||
|
*/
|
||||||
|
protected $decodeJsonAsArray = false;
|
||||||
|
/** @var string User-Agent header */
|
||||||
|
protected $userAgent = 'TwitterOAuth (+https://twitteroauth.com)';
|
||||||
|
/** @var array Store proxy connection details */
|
||||||
|
protected $proxy = [];
|
||||||
|
|
||||||
|
/** @var bool Whether to encode the curl requests with gzip or not */
|
||||||
|
protected $gzipEncoding = true;
|
||||||
|
|
||||||
|
/** @var integer Size for Chunked Uploads */
|
||||||
|
protected $chunkSize = 250000; // 0.25 MegaByte
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the connection and response timeouts.
|
||||||
|
*
|
||||||
|
* @param int $connectionTimeout
|
||||||
|
* @param int $timeout
|
||||||
|
*/
|
||||||
|
public function setTimeouts(int $connectionTimeout, int $timeout): void
|
||||||
|
{
|
||||||
|
$this->connectionTimeout = $connectionTimeout;
|
||||||
|
$this->timeout = $timeout;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the number of times to retry on error and how long between each.
|
||||||
|
*
|
||||||
|
* @param int $maxRetries
|
||||||
|
* @param int $retriesDelay
|
||||||
|
*/
|
||||||
|
public function setRetries(int $maxRetries, int $retriesDelay): void
|
||||||
|
{
|
||||||
|
$this->maxRetries = $maxRetries;
|
||||||
|
$this->retriesDelay = $retriesDelay;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param bool $value
|
||||||
|
*/
|
||||||
|
public function setDecodeJsonAsArray(bool $value): void
|
||||||
|
{
|
||||||
|
$this->decodeJsonAsArray = $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $userAgent
|
||||||
|
*/
|
||||||
|
public function setUserAgent(string $userAgent): void
|
||||||
|
{
|
||||||
|
$this->userAgent = $userAgent;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param array $proxy
|
||||||
|
*/
|
||||||
|
public function setProxy(array $proxy): void
|
||||||
|
{
|
||||||
|
$this->proxy = $proxy;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Whether to encode the curl requests with gzip or not.
|
||||||
|
*
|
||||||
|
* @param boolean $gzipEncoding
|
||||||
|
*/
|
||||||
|
public function setGzipEncoding(bool $gzipEncoding): void
|
||||||
|
{
|
||||||
|
$this->gzipEncoding = $gzipEncoding;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the size of each part of file for chunked media upload.
|
||||||
|
*
|
||||||
|
* @param int $value
|
||||||
|
*/
|
||||||
|
public function setChunkSize(int $value): void
|
||||||
|
{
|
||||||
|
$this->chunkSize = $value;
|
||||||
|
}
|
||||||
|
}
|
43
x-twitter/vendor/abraham/twitteroauth/src/Consumer.php
vendored
Normal file
43
x-twitter/vendor/abraham/twitteroauth/src/Consumer.php
vendored
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The MIT License
|
||||||
|
* Copyright (c) 2007 Andy Smith
|
||||||
|
*/
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth;
|
||||||
|
|
||||||
|
class Consumer
|
||||||
|
{
|
||||||
|
/** @var string */
|
||||||
|
public $key;
|
||||||
|
/** @var string */
|
||||||
|
public $secret;
|
||||||
|
/** @var string|null */
|
||||||
|
public $callbackUrl;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string|null $key
|
||||||
|
* @param string|null $secret
|
||||||
|
* @param null $callbackUrl
|
||||||
|
*/
|
||||||
|
public function __construct(
|
||||||
|
?string $key,
|
||||||
|
?string $secret,
|
||||||
|
?string $callbackUrl = null
|
||||||
|
) {
|
||||||
|
$this->key = $key;
|
||||||
|
$this->secret = $secret;
|
||||||
|
$this->callbackUrl = $callbackUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function __toString()
|
||||||
|
{
|
||||||
|
return "Consumer[key=$this->key,secret=$this->secret]";
|
||||||
|
}
|
||||||
|
}
|
46
x-twitter/vendor/abraham/twitteroauth/src/HmacSha1.php
vendored
Normal file
46
x-twitter/vendor/abraham/twitteroauth/src/HmacSha1.php
vendored
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The MIT License
|
||||||
|
* Copyright (c) 2007 Andy Smith
|
||||||
|
*/
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The HMAC-SHA1 signature method uses the HMAC-SHA1 signature algorithm as defined in [RFC2104]
|
||||||
|
* where the Signature Base String is the text and the key is the concatenated values (each first
|
||||||
|
* encoded per Parameter Encoding) of the Consumer Secret and Token Secret, separated by an '&'
|
||||||
|
* character (ASCII code 38) even if empty.
|
||||||
|
* - Chapter 9.2 ("HMAC-SHA1")
|
||||||
|
*/
|
||||||
|
class HmacSha1 extends SignatureMethod
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* {@inheritDoc}
|
||||||
|
*/
|
||||||
|
public function getName()
|
||||||
|
{
|
||||||
|
return 'HMAC-SHA1';
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritDoc}
|
||||||
|
*/
|
||||||
|
public function buildSignature(
|
||||||
|
Request $request,
|
||||||
|
Consumer $consumer,
|
||||||
|
Token $token = null
|
||||||
|
): string {
|
||||||
|
$signatureBase = $request->getSignatureBaseString();
|
||||||
|
|
||||||
|
$parts = [$consumer->secret, null !== $token ? $token->secret : ''];
|
||||||
|
|
||||||
|
$parts = Util::urlencodeRfc3986($parts);
|
||||||
|
$key = implode('&', $parts);
|
||||||
|
|
||||||
|
return base64_encode(hash_hmac('sha1', $signatureBase, $key, true));
|
||||||
|
}
|
||||||
|
}
|
289
x-twitter/vendor/abraham/twitteroauth/src/Request.php
vendored
Normal file
289
x-twitter/vendor/abraham/twitteroauth/src/Request.php
vendored
Normal file
|
@ -0,0 +1,289 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The MIT License
|
||||||
|
* Copyright (c) 2007 Andy Smith
|
||||||
|
*/
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth;
|
||||||
|
|
||||||
|
class Request
|
||||||
|
{
|
||||||
|
protected $parameters;
|
||||||
|
protected $httpMethod;
|
||||||
|
protected $httpUrl;
|
||||||
|
protected $json;
|
||||||
|
public static $version = '1.0';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor
|
||||||
|
*
|
||||||
|
* @param string $httpMethod
|
||||||
|
* @param string $httpUrl
|
||||||
|
* @param array|null $parameters
|
||||||
|
*/
|
||||||
|
public function __construct(
|
||||||
|
string $httpMethod,
|
||||||
|
string $httpUrl,
|
||||||
|
?array $parameters = []
|
||||||
|
) {
|
||||||
|
$parameters = array_merge(
|
||||||
|
Util::parseParameters(parse_url($httpUrl, PHP_URL_QUERY)),
|
||||||
|
$parameters
|
||||||
|
);
|
||||||
|
$this->parameters = $parameters;
|
||||||
|
$this->httpMethod = $httpMethod;
|
||||||
|
$this->httpUrl = $httpUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* pretty much a helper function to set up the request
|
||||||
|
*
|
||||||
|
* @param Consumer $consumer
|
||||||
|
* @param Token $token
|
||||||
|
* @param string $httpMethod
|
||||||
|
* @param string $httpUrl
|
||||||
|
* @param array $parameters
|
||||||
|
*
|
||||||
|
* @return Request
|
||||||
|
*/
|
||||||
|
public static function fromConsumerAndToken(
|
||||||
|
Consumer $consumer,
|
||||||
|
Token $token = null,
|
||||||
|
string $httpMethod,
|
||||||
|
string $httpUrl,
|
||||||
|
array $parameters = [],
|
||||||
|
$json = false
|
||||||
|
) {
|
||||||
|
$defaults = [
|
||||||
|
'oauth_version' => Request::$version,
|
||||||
|
'oauth_nonce' => Request::generateNonce(),
|
||||||
|
'oauth_timestamp' => time(),
|
||||||
|
'oauth_consumer_key' => $consumer->key,
|
||||||
|
];
|
||||||
|
if (null !== $token) {
|
||||||
|
$defaults['oauth_token'] = $token->key;
|
||||||
|
}
|
||||||
|
|
||||||
|
// The json payload is not included in the signature on json requests,
|
||||||
|
// therefore it shouldn't be included in the parameters array.
|
||||||
|
if ($json) {
|
||||||
|
$parameters = $defaults;
|
||||||
|
} else {
|
||||||
|
$parameters = array_merge($defaults, $parameters);
|
||||||
|
}
|
||||||
|
|
||||||
|
return new Request($httpMethod, $httpUrl, $parameters);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $name
|
||||||
|
* @param string $value
|
||||||
|
*/
|
||||||
|
public function setParameter(string $name, string $value)
|
||||||
|
{
|
||||||
|
$this->parameters[$name] = $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $name
|
||||||
|
*
|
||||||
|
* @return string|null
|
||||||
|
*/
|
||||||
|
public function getParameter(string $name): ?string
|
||||||
|
{
|
||||||
|
return isset($this->parameters[$name])
|
||||||
|
? $this->parameters[$name]
|
||||||
|
: null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function getParameters(): array
|
||||||
|
{
|
||||||
|
return $this->parameters;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $name
|
||||||
|
*/
|
||||||
|
public function removeParameter(string $name): void
|
||||||
|
{
|
||||||
|
unset($this->parameters[$name]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The request parameters, sorted and concatenated into a normalized string.
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function getSignableParameters(): string
|
||||||
|
{
|
||||||
|
// Grab all parameters
|
||||||
|
$params = $this->parameters;
|
||||||
|
|
||||||
|
// Remove oauth_signature if present
|
||||||
|
// Ref: Spec: 9.1.1 ("The oauth_signature parameter MUST be excluded.")
|
||||||
|
if (isset($params['oauth_signature'])) {
|
||||||
|
unset($params['oauth_signature']);
|
||||||
|
}
|
||||||
|
|
||||||
|
return Util::buildHttpQuery($params);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the base string of this request
|
||||||
|
*
|
||||||
|
* The base string defined as the method, the url
|
||||||
|
* and the parameters (normalized), each urlencoded
|
||||||
|
* and the concated with &.
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function getSignatureBaseString(): string
|
||||||
|
{
|
||||||
|
$parts = [
|
||||||
|
$this->getNormalizedHttpMethod(),
|
||||||
|
$this->getNormalizedHttpUrl(),
|
||||||
|
$this->getSignableParameters(),
|
||||||
|
];
|
||||||
|
|
||||||
|
$parts = Util::urlencodeRfc3986($parts);
|
||||||
|
|
||||||
|
return implode('&', $parts);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the HTTP Method in uppercase
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function getNormalizedHttpMethod(): string
|
||||||
|
{
|
||||||
|
return strtoupper($this->httpMethod);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* parses the url and rebuilds it to be
|
||||||
|
* scheme://host/path
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function getNormalizedHttpUrl(): string
|
||||||
|
{
|
||||||
|
$parts = parse_url($this->httpUrl);
|
||||||
|
|
||||||
|
$scheme = $parts['scheme'];
|
||||||
|
$host = strtolower($parts['host']);
|
||||||
|
$path = $parts['path'];
|
||||||
|
|
||||||
|
return "$scheme://$host$path";
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Builds a url usable for a GET request
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function toUrl(): string
|
||||||
|
{
|
||||||
|
$postData = $this->toPostdata();
|
||||||
|
$out = $this->getNormalizedHttpUrl();
|
||||||
|
if ($postData) {
|
||||||
|
$out .= '?' . $postData;
|
||||||
|
}
|
||||||
|
return $out;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Builds the data one would send in a POST request
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function toPostdata(): string
|
||||||
|
{
|
||||||
|
return Util::buildHttpQuery($this->parameters);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Builds the Authorization: header
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
* @throws TwitterOAuthException
|
||||||
|
*/
|
||||||
|
public function toHeader(): string
|
||||||
|
{
|
||||||
|
$first = true;
|
||||||
|
$out = 'Authorization: OAuth';
|
||||||
|
foreach ($this->parameters as $k => $v) {
|
||||||
|
if (substr($k, 0, 5) != 'oauth') {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (is_array($v)) {
|
||||||
|
throw new TwitterOAuthException(
|
||||||
|
'Arrays not supported in headers'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
$out .= $first ? ' ' : ', ';
|
||||||
|
$out .=
|
||||||
|
Util::urlencodeRfc3986($k) .
|
||||||
|
'="' .
|
||||||
|
Util::urlencodeRfc3986($v) .
|
||||||
|
'"';
|
||||||
|
$first = false;
|
||||||
|
}
|
||||||
|
return $out;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function __toString(): string
|
||||||
|
{
|
||||||
|
return $this->toUrl();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param SignatureMethod $signatureMethod
|
||||||
|
* @param Consumer $consumer
|
||||||
|
* @param Token $token
|
||||||
|
*/
|
||||||
|
public function signRequest(
|
||||||
|
SignatureMethod $signatureMethod,
|
||||||
|
Consumer $consumer,
|
||||||
|
Token $token = null
|
||||||
|
) {
|
||||||
|
$this->setParameter(
|
||||||
|
'oauth_signature_method',
|
||||||
|
$signatureMethod->getName()
|
||||||
|
);
|
||||||
|
$signature = $this->buildSignature($signatureMethod, $consumer, $token);
|
||||||
|
$this->setParameter('oauth_signature', $signature);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param SignatureMethod $signatureMethod
|
||||||
|
* @param Consumer $consumer
|
||||||
|
* @param Token $token
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function buildSignature(
|
||||||
|
SignatureMethod $signatureMethod,
|
||||||
|
Consumer $consumer,
|
||||||
|
Token $token = null
|
||||||
|
): string {
|
||||||
|
return $signatureMethod->buildSignature($this, $consumer, $token);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public static function generateNonce(): string
|
||||||
|
{
|
||||||
|
return md5(microtime() . mt_rand());
|
||||||
|
}
|
||||||
|
}
|
109
x-twitter/vendor/abraham/twitteroauth/src/Response.php
vendored
Normal file
109
x-twitter/vendor/abraham/twitteroauth/src/Response.php
vendored
Normal file
|
@ -0,0 +1,109 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The result of the most recent API request.
|
||||||
|
*
|
||||||
|
* @author Abraham Williams <abraham@abrah.am>
|
||||||
|
*/
|
||||||
|
class Response
|
||||||
|
{
|
||||||
|
/** @var string|null API path from the most recent request */
|
||||||
|
private $apiPath;
|
||||||
|
/** @var int HTTP status code from the most recent request */
|
||||||
|
private $httpCode = 0;
|
||||||
|
/** @var array HTTP headers from the most recent request */
|
||||||
|
private $headers = [];
|
||||||
|
/** @var array|object Response body from the most recent request */
|
||||||
|
private $body = [];
|
||||||
|
/** @var array HTTP headers from the most recent request that start with X */
|
||||||
|
private $xHeaders = [];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $apiPath
|
||||||
|
*/
|
||||||
|
public function setApiPath(string $apiPath): void
|
||||||
|
{
|
||||||
|
$this->apiPath = $apiPath;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string|null
|
||||||
|
*/
|
||||||
|
public function getApiPath(): ?string
|
||||||
|
{
|
||||||
|
return $this->apiPath;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param array|object $body
|
||||||
|
*/
|
||||||
|
public function setBody($body)
|
||||||
|
{
|
||||||
|
$this->body = $body;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return array|object|string
|
||||||
|
*/
|
||||||
|
public function getBody()
|
||||||
|
{
|
||||||
|
return $this->body;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param int $httpCode
|
||||||
|
*/
|
||||||
|
public function setHttpCode(int $httpCode): void
|
||||||
|
{
|
||||||
|
$this->httpCode = $httpCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
|
public function getHttpCode(): int
|
||||||
|
{
|
||||||
|
return $this->httpCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param array $headers
|
||||||
|
*/
|
||||||
|
public function setHeaders(array $headers): void
|
||||||
|
{
|
||||||
|
foreach ($headers as $key => $value) {
|
||||||
|
if (substr($key, 0, 1) == 'x') {
|
||||||
|
$this->xHeaders[$key] = $value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->headers = $headers;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function getsHeaders(): array
|
||||||
|
{
|
||||||
|
return $this->headers;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param array $xHeaders
|
||||||
|
*/
|
||||||
|
public function setXHeaders(array $xHeaders = []): void
|
||||||
|
{
|
||||||
|
$this->xHeaders = $xHeaders;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function getXHeaders(): array
|
||||||
|
{
|
||||||
|
return $this->xHeaders;
|
||||||
|
}
|
||||||
|
}
|
78
x-twitter/vendor/abraham/twitteroauth/src/SignatureMethod.php
vendored
Normal file
78
x-twitter/vendor/abraham/twitteroauth/src/SignatureMethod.php
vendored
Normal file
|
@ -0,0 +1,78 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The MIT License
|
||||||
|
* Copyright (c) 2007 Andy Smith
|
||||||
|
*/
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A class for implementing a Signature Method
|
||||||
|
* See section 9 ("Signing Requests") in the spec
|
||||||
|
*/
|
||||||
|
abstract class SignatureMethod
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Needs to return the name of the Signature Method (ie HMAC-SHA1)
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
abstract public function getName();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Build up the signature
|
||||||
|
* NOTE: The output of this function MUST NOT be urlencoded.
|
||||||
|
* the encoding is handled in OAuthRequest when the final
|
||||||
|
* request is serialized
|
||||||
|
*
|
||||||
|
* @param Request $request
|
||||||
|
* @param Consumer $consumer
|
||||||
|
* @param Token $token
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
abstract public function buildSignature(
|
||||||
|
Request $request,
|
||||||
|
Consumer $consumer,
|
||||||
|
Token $token = null
|
||||||
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Verifies that a given signature is correct
|
||||||
|
*
|
||||||
|
* @param Request $request
|
||||||
|
* @param Consumer $consumer
|
||||||
|
* @param Token $token
|
||||||
|
* @param string $signature
|
||||||
|
*
|
||||||
|
* @return bool
|
||||||
|
*/
|
||||||
|
public function checkSignature(
|
||||||
|
Request $request,
|
||||||
|
Consumer $consumer,
|
||||||
|
Token $token,
|
||||||
|
string $signature
|
||||||
|
): bool {
|
||||||
|
$built = $this->buildSignature($request, $consumer, $token);
|
||||||
|
|
||||||
|
// Check for zero length, although unlikely here
|
||||||
|
if (strlen($built) == 0 || strlen($signature) == 0) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (strlen($built) != strlen($signature)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Avoid a timing leak with a (hopefully) time insensitive compare
|
||||||
|
$result = 0;
|
||||||
|
for ($i = 0; $i < strlen($signature); $i++) {
|
||||||
|
$result |= ord($built[$i]) ^ ord($signature[$i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $result == 0;
|
||||||
|
}
|
||||||
|
}
|
43
x-twitter/vendor/abraham/twitteroauth/src/Token.php
vendored
Normal file
43
x-twitter/vendor/abraham/twitteroauth/src/Token.php
vendored
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The MIT License
|
||||||
|
* Copyright (c) 2007 Andy Smith
|
||||||
|
*/
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth;
|
||||||
|
|
||||||
|
class Token
|
||||||
|
{
|
||||||
|
/** @var string */
|
||||||
|
public $key;
|
||||||
|
/** @var string */
|
||||||
|
public $secret;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $key The OAuth Token
|
||||||
|
* @param string $secret The OAuth Token Secret
|
||||||
|
*/
|
||||||
|
public function __construct(?string $key, ?string $secret)
|
||||||
|
{
|
||||||
|
$this->key = $key;
|
||||||
|
$this->secret = $secret;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generates the basic string serialization of a token that a server
|
||||||
|
* would respond to request_token and access_token calls with
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function __toString(): string
|
||||||
|
{
|
||||||
|
return sprintf(
|
||||||
|
'oauth_token=%s&oauth_token_secret=%s',
|
||||||
|
Util::urlencodeRfc3986($this->key),
|
||||||
|
Util::urlencodeRfc3986($this->secret)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
727
x-twitter/vendor/abraham/twitteroauth/src/TwitterOAuth.php
vendored
Normal file
727
x-twitter/vendor/abraham/twitteroauth/src/TwitterOAuth.php
vendored
Normal file
|
@ -0,0 +1,727 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The most popular PHP library for use with the Twitter OAuth REST API.
|
||||||
|
*
|
||||||
|
* @license MIT
|
||||||
|
*/
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth;
|
||||||
|
|
||||||
|
use Abraham\TwitterOAuth\Util\JsonDecoder;
|
||||||
|
use Composer\CaBundle\CaBundle;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* TwitterOAuth class for interacting with the Twitter API.
|
||||||
|
*
|
||||||
|
* @author Abraham Williams <abraham@abrah.am>
|
||||||
|
*/
|
||||||
|
class TwitterOAuth extends Config
|
||||||
|
{
|
||||||
|
private const API_VERSION = '1.1';
|
||||||
|
private const API_HOST = 'https://api.twitter.com';
|
||||||
|
private const UPLOAD_HOST = 'https://upload.twitter.com';
|
||||||
|
|
||||||
|
/** @var Response details about the result of the last request */
|
||||||
|
private $response;
|
||||||
|
/** @var string|null Application bearer token */
|
||||||
|
private $bearer;
|
||||||
|
/** @var Consumer Twitter application details */
|
||||||
|
private $consumer;
|
||||||
|
/** @var Token|null User access token details */
|
||||||
|
private $token;
|
||||||
|
/** @var HmacSha1 OAuth 1 signature type used by Twitter */
|
||||||
|
private $signatureMethod;
|
||||||
|
/** @var int Number of attempts we made for the request */
|
||||||
|
private $attempts = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor
|
||||||
|
*
|
||||||
|
* @param string $consumerKey The Application Consumer Key
|
||||||
|
* @param string $consumerSecret The Application Consumer Secret
|
||||||
|
* @param string|null $oauthToken The Client Token (optional)
|
||||||
|
* @param string|null $oauthTokenSecret The Client Token Secret (optional)
|
||||||
|
*/
|
||||||
|
public function __construct(
|
||||||
|
string $consumerKey,
|
||||||
|
string $consumerSecret,
|
||||||
|
?string $oauthToken = null,
|
||||||
|
?string $oauthTokenSecret = null
|
||||||
|
) {
|
||||||
|
$this->resetLastResponse();
|
||||||
|
$this->signatureMethod = new HmacSha1();
|
||||||
|
$this->consumer = new Consumer($consumerKey, $consumerSecret);
|
||||||
|
if (!empty($oauthToken) && !empty($oauthTokenSecret)) {
|
||||||
|
$this->setOauthToken($oauthToken, $oauthTokenSecret);
|
||||||
|
}
|
||||||
|
if (empty($oauthToken) && !empty($oauthTokenSecret)) {
|
||||||
|
$this->setBearer($oauthTokenSecret);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $oauthToken
|
||||||
|
* @param string $oauthTokenSecret
|
||||||
|
*/
|
||||||
|
public function setOauthToken(
|
||||||
|
string $oauthToken,
|
||||||
|
string $oauthTokenSecret
|
||||||
|
): void {
|
||||||
|
$this->token = new Token($oauthToken, $oauthTokenSecret);
|
||||||
|
$this->bearer = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $oauthTokenSecret
|
||||||
|
*/
|
||||||
|
public function setBearer(string $oauthTokenSecret): void
|
||||||
|
{
|
||||||
|
$this->bearer = $oauthTokenSecret;
|
||||||
|
$this->token = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string|null
|
||||||
|
*/
|
||||||
|
public function getLastApiPath(): ?string
|
||||||
|
{
|
||||||
|
return $this->response->getApiPath();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
|
public function getLastHttpCode(): int
|
||||||
|
{
|
||||||
|
return $this->response->getHttpCode();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function getLastXHeaders(): array
|
||||||
|
{
|
||||||
|
return $this->response->getXHeaders();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return array|object|null
|
||||||
|
*/
|
||||||
|
public function getLastBody()
|
||||||
|
{
|
||||||
|
return $this->response->getBody();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resets the last response cache.
|
||||||
|
*/
|
||||||
|
public function resetLastResponse(): void
|
||||||
|
{
|
||||||
|
$this->response = new Response();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resets the attempts number.
|
||||||
|
*/
|
||||||
|
private function resetAttemptsNumber(): void
|
||||||
|
{
|
||||||
|
$this->attempts = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Delays the retries when they're activated.
|
||||||
|
*/
|
||||||
|
private function sleepIfNeeded(): void
|
||||||
|
{
|
||||||
|
if ($this->maxRetries && $this->attempts) {
|
||||||
|
sleep($this->retriesDelay);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Make URLs for user browser navigation.
|
||||||
|
*
|
||||||
|
* @param string $path
|
||||||
|
* @param array $parameters
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function url(string $path, array $parameters): string
|
||||||
|
{
|
||||||
|
$this->resetLastResponse();
|
||||||
|
$this->response->setApiPath($path);
|
||||||
|
$query = http_build_query($parameters);
|
||||||
|
return sprintf('%s/%s?%s', self::API_HOST, $path, $query);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Make /oauth/* requests to the API.
|
||||||
|
*
|
||||||
|
* @param string $path
|
||||||
|
* @param array $parameters
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
* @throws TwitterOAuthException
|
||||||
|
*/
|
||||||
|
public function oauth(string $path, array $parameters = []): array
|
||||||
|
{
|
||||||
|
$response = [];
|
||||||
|
$this->resetLastResponse();
|
||||||
|
$this->response->setApiPath($path);
|
||||||
|
$url = sprintf('%s/%s', self::API_HOST, $path);
|
||||||
|
$result = $this->oAuthRequest($url, 'POST', $parameters);
|
||||||
|
|
||||||
|
if ($this->getLastHttpCode() != 200) {
|
||||||
|
throw new TwitterOAuthException($result);
|
||||||
|
}
|
||||||
|
|
||||||
|
parse_str($result, $response);
|
||||||
|
$this->response->setBody($response);
|
||||||
|
|
||||||
|
return $response;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Make /oauth2/* requests to the API.
|
||||||
|
*
|
||||||
|
* @param string $path
|
||||||
|
* @param array $parameters
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
public function oauth2(string $path, array $parameters = [])
|
||||||
|
{
|
||||||
|
$method = 'POST';
|
||||||
|
$this->resetLastResponse();
|
||||||
|
$this->response->setApiPath($path);
|
||||||
|
$url = sprintf('%s/%s', self::API_HOST, $path);
|
||||||
|
$request = Request::fromConsumerAndToken(
|
||||||
|
$this->consumer,
|
||||||
|
$this->token,
|
||||||
|
$method,
|
||||||
|
$url,
|
||||||
|
$parameters
|
||||||
|
);
|
||||||
|
$authorization =
|
||||||
|
'Authorization: Basic ' .
|
||||||
|
$this->encodeAppAuthorization($this->consumer);
|
||||||
|
$result = $this->request(
|
||||||
|
$request->getNormalizedHttpUrl(),
|
||||||
|
$method,
|
||||||
|
$authorization,
|
||||||
|
$parameters
|
||||||
|
);
|
||||||
|
$response = JsonDecoder::decode($result, $this->decodeJsonAsArray);
|
||||||
|
$this->response->setBody($response);
|
||||||
|
return $response;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Make GET requests to the API.
|
||||||
|
*
|
||||||
|
* @param string $path
|
||||||
|
* @param array $parameters
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
public function get(string $path, array $parameters = [])
|
||||||
|
{
|
||||||
|
return $this->http('GET', self::API_HOST, $path, $parameters, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Make POST requests to the API.
|
||||||
|
*
|
||||||
|
* @param string $path
|
||||||
|
* @param array $parameters
|
||||||
|
* @param bool $json
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
public function post(
|
||||||
|
string $path,
|
||||||
|
array $parameters = [],
|
||||||
|
bool $json = false
|
||||||
|
) {
|
||||||
|
return $this->http('POST', self::API_HOST, $path, $parameters, $json);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Make DELETE requests to the API.
|
||||||
|
*
|
||||||
|
* @param string $path
|
||||||
|
* @param array $parameters
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
public function delete(string $path, array $parameters = [])
|
||||||
|
{
|
||||||
|
return $this->http('DELETE', self::API_HOST, $path, $parameters, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Make PUT requests to the API.
|
||||||
|
*
|
||||||
|
* @param string $path
|
||||||
|
* @param array $parameters
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
public function put(string $path, array $parameters = [])
|
||||||
|
{
|
||||||
|
return $this->http('PUT', self::API_HOST, $path, $parameters, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Upload media to upload.twitter.com.
|
||||||
|
*
|
||||||
|
* @param string $path
|
||||||
|
* @param array $parameters
|
||||||
|
* @param boolean $chunked
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
public function upload(
|
||||||
|
string $path,
|
||||||
|
array $parameters = [],
|
||||||
|
bool $chunked = false
|
||||||
|
) {
|
||||||
|
if ($chunked) {
|
||||||
|
return $this->uploadMediaChunked($path, $parameters);
|
||||||
|
} else {
|
||||||
|
return $this->uploadMediaNotChunked($path, $parameters);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Progression of media upload
|
||||||
|
*
|
||||||
|
* @param string $media_id
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
public function mediaStatus(string $media_id)
|
||||||
|
{
|
||||||
|
return $this->http(
|
||||||
|
'GET',
|
||||||
|
self::UPLOAD_HOST,
|
||||||
|
'media/upload',
|
||||||
|
[
|
||||||
|
'command' => 'STATUS',
|
||||||
|
'media_id' => $media_id,
|
||||||
|
],
|
||||||
|
false
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Private method to upload media (not chunked) to upload.twitter.com.
|
||||||
|
*
|
||||||
|
* @param string $path
|
||||||
|
* @param array $parameters
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
private function uploadMediaNotChunked(string $path, array $parameters)
|
||||||
|
{
|
||||||
|
if (
|
||||||
|
!is_readable($parameters['media']) ||
|
||||||
|
($file = file_get_contents($parameters['media'])) === false
|
||||||
|
) {
|
||||||
|
throw new \InvalidArgumentException(
|
||||||
|
'You must supply a readable file'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
$parameters['media'] = base64_encode($file);
|
||||||
|
return $this->http(
|
||||||
|
'POST',
|
||||||
|
self::UPLOAD_HOST,
|
||||||
|
$path,
|
||||||
|
$parameters,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Private method to upload media (chunked) to upload.twitter.com.
|
||||||
|
*
|
||||||
|
* @param string $path
|
||||||
|
* @param array $parameters
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
private function uploadMediaChunked(string $path, array $parameters)
|
||||||
|
{
|
||||||
|
$init = $this->http(
|
||||||
|
'POST',
|
||||||
|
self::UPLOAD_HOST,
|
||||||
|
$path,
|
||||||
|
$this->mediaInitParameters($parameters),
|
||||||
|
false
|
||||||
|
);
|
||||||
|
// Append
|
||||||
|
$segmentIndex = 0;
|
||||||
|
$media = fopen($parameters['media'], 'rb');
|
||||||
|
while (!feof($media)) {
|
||||||
|
$this->http(
|
||||||
|
'POST',
|
||||||
|
self::UPLOAD_HOST,
|
||||||
|
'media/upload',
|
||||||
|
[
|
||||||
|
'command' => 'APPEND',
|
||||||
|
'media_id' => $init->media_id_string,
|
||||||
|
'segment_index' => $segmentIndex++,
|
||||||
|
'media_data' => base64_encode(
|
||||||
|
fread($media, $this->chunkSize)
|
||||||
|
),
|
||||||
|
],
|
||||||
|
false
|
||||||
|
);
|
||||||
|
}
|
||||||
|
fclose($media);
|
||||||
|
// Finalize
|
||||||
|
$finalize = $this->http(
|
||||||
|
'POST',
|
||||||
|
self::UPLOAD_HOST,
|
||||||
|
'media/upload',
|
||||||
|
[
|
||||||
|
'command' => 'FINALIZE',
|
||||||
|
'media_id' => $init->media_id_string,
|
||||||
|
],
|
||||||
|
false
|
||||||
|
);
|
||||||
|
return $finalize;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Private method to get params for upload media chunked init.
|
||||||
|
* Twitter docs: https://dev.twitter.com/rest/reference/post/media/upload-init.html
|
||||||
|
*
|
||||||
|
* @param array $parameters
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
private function mediaInitParameters(array $parameters): array
|
||||||
|
{
|
||||||
|
$allowed_keys = [
|
||||||
|
'media_type',
|
||||||
|
'additional_owners',
|
||||||
|
'media_category',
|
||||||
|
'shared',
|
||||||
|
];
|
||||||
|
$base = [
|
||||||
|
'command' => 'INIT',
|
||||||
|
'total_bytes' => filesize($parameters['media']),
|
||||||
|
];
|
||||||
|
$allowed_parameters = array_intersect_key(
|
||||||
|
$parameters,
|
||||||
|
array_flip($allowed_keys)
|
||||||
|
);
|
||||||
|
return array_merge($base, $allowed_parameters);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Cleanup any parameters that are known not to work.
|
||||||
|
*
|
||||||
|
* @param array $parameters
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
private function cleanUpParameters(array $parameters)
|
||||||
|
{
|
||||||
|
foreach ($parameters as $key => $value) {
|
||||||
|
// PHP coerces `true` to `"1"` which some Twitter APIs don't like.
|
||||||
|
if (is_bool($value)) {
|
||||||
|
$parameters[$key] = var_export($value, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $parameters;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $method
|
||||||
|
* @param string $host
|
||||||
|
* @param string $path
|
||||||
|
* @param array $parameters
|
||||||
|
* @param bool $json
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
private function http(
|
||||||
|
string $method,
|
||||||
|
string $host,
|
||||||
|
string $path,
|
||||||
|
array $parameters,
|
||||||
|
bool $json
|
||||||
|
) {
|
||||||
|
$this->resetLastResponse();
|
||||||
|
$this->resetAttemptsNumber();
|
||||||
|
$url = sprintf('%s/%s/%s.json', $host, self::API_VERSION, $path);
|
||||||
|
$this->response->setApiPath($path);
|
||||||
|
if (!$json) {
|
||||||
|
$parameters = $this->cleanUpParameters($parameters);
|
||||||
|
}
|
||||||
|
return $this->makeRequests($url, $method, $parameters, $json);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Make requests and retry them (if enabled) in case of Twitter's problems.
|
||||||
|
*
|
||||||
|
* @param string $method
|
||||||
|
* @param string $url
|
||||||
|
* @param string $method
|
||||||
|
* @param array $parameters
|
||||||
|
* @param bool $json
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
private function makeRequests(
|
||||||
|
string $url,
|
||||||
|
string $method,
|
||||||
|
array $parameters,
|
||||||
|
bool $json
|
||||||
|
) {
|
||||||
|
do {
|
||||||
|
$this->sleepIfNeeded();
|
||||||
|
$result = $this->oAuthRequest($url, $method, $parameters, $json);
|
||||||
|
$response = JsonDecoder::decode($result, $this->decodeJsonAsArray);
|
||||||
|
$this->response->setBody($response);
|
||||||
|
$this->attempts++;
|
||||||
|
// Retry up to our $maxRetries number if we get errors greater than 500 (over capacity etc)
|
||||||
|
} while ($this->requestsAvailable());
|
||||||
|
|
||||||
|
return $response;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks if we have to retry request if API is down.
|
||||||
|
*
|
||||||
|
* @return bool
|
||||||
|
*/
|
||||||
|
private function requestsAvailable(): bool
|
||||||
|
{
|
||||||
|
return $this->maxRetries &&
|
||||||
|
$this->attempts <= $this->maxRetries &&
|
||||||
|
$this->getLastHttpCode() >= 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Format and sign an OAuth / API request
|
||||||
|
*
|
||||||
|
* @param string $url
|
||||||
|
* @param string $method
|
||||||
|
* @param array $parameters
|
||||||
|
* @param bool $json
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
* @throws TwitterOAuthException
|
||||||
|
*/
|
||||||
|
private function oAuthRequest(
|
||||||
|
string $url,
|
||||||
|
string $method,
|
||||||
|
array $parameters,
|
||||||
|
bool $json = false
|
||||||
|
) {
|
||||||
|
$request = Request::fromConsumerAndToken(
|
||||||
|
$this->consumer,
|
||||||
|
$this->token,
|
||||||
|
$method,
|
||||||
|
$url,
|
||||||
|
$parameters,
|
||||||
|
$json
|
||||||
|
);
|
||||||
|
if (array_key_exists('oauth_callback', $parameters)) {
|
||||||
|
// Twitter doesn't like oauth_callback as a parameter.
|
||||||
|
unset($parameters['oauth_callback']);
|
||||||
|
}
|
||||||
|
if ($this->bearer === null) {
|
||||||
|
$request->signRequest(
|
||||||
|
$this->signatureMethod,
|
||||||
|
$this->consumer,
|
||||||
|
$this->token
|
||||||
|
);
|
||||||
|
$authorization = $request->toHeader();
|
||||||
|
if (array_key_exists('oauth_verifier', $parameters)) {
|
||||||
|
// Twitter doesn't always work with oauth in the body and in the header
|
||||||
|
// and it's already included in the $authorization header
|
||||||
|
unset($parameters['oauth_verifier']);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$authorization = 'Authorization: Bearer ' . $this->bearer;
|
||||||
|
}
|
||||||
|
return $this->request(
|
||||||
|
$request->getNormalizedHttpUrl(),
|
||||||
|
$method,
|
||||||
|
$authorization,
|
||||||
|
$parameters,
|
||||||
|
$json
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set Curl options.
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
private function curlOptions(): array
|
||||||
|
{
|
||||||
|
$bundlePath = CaBundle::getSystemCaRootBundlePath();
|
||||||
|
$options = [
|
||||||
|
// CURLOPT_VERBOSE => true,
|
||||||
|
CURLOPT_CONNECTTIMEOUT => $this->connectionTimeout,
|
||||||
|
CURLOPT_HEADER => true,
|
||||||
|
CURLOPT_RETURNTRANSFER => true,
|
||||||
|
CURLOPT_SSL_VERIFYHOST => 2,
|
||||||
|
CURLOPT_SSL_VERIFYPEER => true,
|
||||||
|
CURLOPT_TIMEOUT => $this->timeout,
|
||||||
|
CURLOPT_USERAGENT => $this->userAgent,
|
||||||
|
$this->curlCaOpt($bundlePath) => $bundlePath,
|
||||||
|
];
|
||||||
|
|
||||||
|
if ($this->gzipEncoding) {
|
||||||
|
$options[CURLOPT_ENCODING] = 'gzip';
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!empty($this->proxy)) {
|
||||||
|
$options[CURLOPT_PROXY] = $this->proxy['CURLOPT_PROXY'];
|
||||||
|
$options[CURLOPT_PROXYUSERPWD] =
|
||||||
|
$this->proxy['CURLOPT_PROXYUSERPWD'];
|
||||||
|
$options[CURLOPT_PROXYPORT] = $this->proxy['CURLOPT_PROXYPORT'];
|
||||||
|
$options[CURLOPT_PROXYAUTH] = CURLAUTH_BASIC;
|
||||||
|
$options[CURLOPT_PROXYTYPE] = CURLPROXY_HTTP;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $options;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Make an HTTP request
|
||||||
|
*
|
||||||
|
* @param string $url
|
||||||
|
* @param string $method
|
||||||
|
* @param string $authorization
|
||||||
|
* @param array $postfields
|
||||||
|
* @param bool $json
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
* @throws TwitterOAuthException
|
||||||
|
*/
|
||||||
|
private function request(
|
||||||
|
string $url,
|
||||||
|
string $method,
|
||||||
|
string $authorization,
|
||||||
|
array $postfields,
|
||||||
|
bool $json = false
|
||||||
|
): string {
|
||||||
|
$options = $this->curlOptions();
|
||||||
|
$options[CURLOPT_URL] = $url;
|
||||||
|
$options[CURLOPT_HTTPHEADER] = [
|
||||||
|
'Accept: application/json',
|
||||||
|
$authorization,
|
||||||
|
'Expect:',
|
||||||
|
];
|
||||||
|
|
||||||
|
switch ($method) {
|
||||||
|
case 'GET':
|
||||||
|
break;
|
||||||
|
case 'POST':
|
||||||
|
$options[CURLOPT_POST] = true;
|
||||||
|
if ($json) {
|
||||||
|
$options[CURLOPT_HTTPHEADER][] =
|
||||||
|
'Content-type: application/json';
|
||||||
|
$options[CURLOPT_POSTFIELDS] = json_encode($postfields);
|
||||||
|
} else {
|
||||||
|
$options[CURLOPT_POSTFIELDS] = Util::buildHttpQuery(
|
||||||
|
$postfields
|
||||||
|
);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'DELETE':
|
||||||
|
$options[CURLOPT_CUSTOMREQUEST] = 'DELETE';
|
||||||
|
break;
|
||||||
|
case 'PUT':
|
||||||
|
$options[CURLOPT_CUSTOMREQUEST] = 'PUT';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (
|
||||||
|
in_array($method, ['GET', 'PUT', 'DELETE']) &&
|
||||||
|
!empty($postfields)
|
||||||
|
) {
|
||||||
|
$options[CURLOPT_URL] .= '?' . Util::buildHttpQuery($postfields);
|
||||||
|
}
|
||||||
|
|
||||||
|
$curlHandle = curl_init();
|
||||||
|
curl_setopt_array($curlHandle, $options);
|
||||||
|
$response = curl_exec($curlHandle);
|
||||||
|
|
||||||
|
// Throw exceptions on cURL errors.
|
||||||
|
if (curl_errno($curlHandle) > 0) {
|
||||||
|
$error = curl_error($curlHandle);
|
||||||
|
$errorNo = curl_errno($curlHandle);
|
||||||
|
curl_close($curlHandle);
|
||||||
|
throw new TwitterOAuthException($error, $errorNo);
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->response->setHttpCode(
|
||||||
|
curl_getinfo($curlHandle, CURLINFO_HTTP_CODE)
|
||||||
|
);
|
||||||
|
$parts = explode("\r\n\r\n", $response);
|
||||||
|
$responseBody = array_pop($parts);
|
||||||
|
$responseHeader = array_pop($parts);
|
||||||
|
$this->response->setHeaders($this->parseHeaders($responseHeader));
|
||||||
|
|
||||||
|
curl_close($curlHandle);
|
||||||
|
|
||||||
|
return $responseBody;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the header info to store.
|
||||||
|
*
|
||||||
|
* @param string $header
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
private function parseHeaders(string $header): array
|
||||||
|
{
|
||||||
|
$headers = [];
|
||||||
|
foreach (explode("\r\n", $header) as $line) {
|
||||||
|
if (strpos($line, ':') !== false) {
|
||||||
|
[$key, $value] = explode(': ', $line);
|
||||||
|
$key = str_replace('-', '_', strtolower($key));
|
||||||
|
$headers[$key] = trim($value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $headers;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Encode application authorization header with base64.
|
||||||
|
*
|
||||||
|
* @param Consumer $consumer
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
private function encodeAppAuthorization(Consumer $consumer): string
|
||||||
|
{
|
||||||
|
$key = rawurlencode($consumer->key);
|
||||||
|
$secret = rawurlencode($consumer->secret);
|
||||||
|
return base64_encode($key . ':' . $secret);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get Curl CA option based on whether the given path is a directory or file.
|
||||||
|
*
|
||||||
|
* @param string $path
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
|
private function curlCaOpt(string $path): int
|
||||||
|
{
|
||||||
|
return is_dir($path) ? CURLOPT_CAPATH : CURLOPT_CAINFO;
|
||||||
|
}
|
||||||
|
}
|
12
x-twitter/vendor/abraham/twitteroauth/src/TwitterOAuthException.php
vendored
Normal file
12
x-twitter/vendor/abraham/twitteroauth/src/TwitterOAuthException.php
vendored
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Abraham Williams <abraham@abrah.am>
|
||||||
|
*/
|
||||||
|
class TwitterOAuthException extends \Exception
|
||||||
|
{
|
||||||
|
}
|
122
x-twitter/vendor/abraham/twitteroauth/src/Util.php
vendored
Normal file
122
x-twitter/vendor/abraham/twitteroauth/src/Util.php
vendored
Normal file
|
@ -0,0 +1,122 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The MIT License
|
||||||
|
* Copyright (c) 2007 Andy Smith
|
||||||
|
*/
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth;
|
||||||
|
|
||||||
|
class Util
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param mixed $input
|
||||||
|
*
|
||||||
|
* @return mixed
|
||||||
|
*/
|
||||||
|
public static function urlencodeRfc3986($input)
|
||||||
|
{
|
||||||
|
$output = '';
|
||||||
|
if (is_array($input)) {
|
||||||
|
$output = array_map(
|
||||||
|
[__NAMESPACE__ . '\Util', 'urlencodeRfc3986'],
|
||||||
|
$input
|
||||||
|
);
|
||||||
|
} elseif (is_scalar($input)) {
|
||||||
|
$output = rawurlencode((string) $input);
|
||||||
|
}
|
||||||
|
return $output;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $string
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public static function urldecodeRfc3986($string): string
|
||||||
|
{
|
||||||
|
return urldecode($string);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This function takes a input like a=b&a=c&d=e and returns the parsed
|
||||||
|
* parameters like this
|
||||||
|
* array('a' => array('b','c'), 'd' => 'e')
|
||||||
|
*
|
||||||
|
* @param string $input
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public static function parseParameters($input): array
|
||||||
|
{
|
||||||
|
if (!is_string($input)) {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
$pairs = explode('&', $input);
|
||||||
|
|
||||||
|
$parameters = [];
|
||||||
|
foreach ($pairs as $pair) {
|
||||||
|
$split = explode('=', $pair, 2);
|
||||||
|
$parameter = Util::urldecodeRfc3986($split[0]);
|
||||||
|
$value = isset($split[1]) ? Util::urldecodeRfc3986($split[1]) : '';
|
||||||
|
|
||||||
|
if (isset($parameters[$parameter])) {
|
||||||
|
// We have already recieved parameter(s) with this name, so add to the list
|
||||||
|
// of parameters with this name
|
||||||
|
|
||||||
|
if (is_scalar($parameters[$parameter])) {
|
||||||
|
// This is the first duplicate, so transform scalar (string) into an array
|
||||||
|
// so we can add the duplicates
|
||||||
|
$parameters[$parameter] = [$parameters[$parameter]];
|
||||||
|
}
|
||||||
|
|
||||||
|
$parameters[$parameter][] = $value;
|
||||||
|
} else {
|
||||||
|
$parameters[$parameter] = $value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $parameters;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param array $params
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public static function buildHttpQuery(array $params): string
|
||||||
|
{
|
||||||
|
if (empty($params)) {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Urlencode both keys and values
|
||||||
|
$keys = Util::urlencodeRfc3986(array_keys($params));
|
||||||
|
$values = Util::urlencodeRfc3986(array_values($params));
|
||||||
|
$params = array_combine($keys, $values);
|
||||||
|
|
||||||
|
// Parameters are sorted by name, using lexicographical byte value ordering.
|
||||||
|
// Ref: Spec: 9.1.1 (1)
|
||||||
|
uksort($params, 'strcmp');
|
||||||
|
|
||||||
|
$pairs = [];
|
||||||
|
foreach ($params as $parameter => $value) {
|
||||||
|
if (is_array($value)) {
|
||||||
|
// If two or more parameters share the same name, they are sorted by their value
|
||||||
|
// Ref: Spec: 9.1.1 (1)
|
||||||
|
// June 12th, 2010 - changed to sort because of issue 164 by hidetaka
|
||||||
|
sort($value, SORT_STRING);
|
||||||
|
foreach ($value as $duplicateValue) {
|
||||||
|
$pairs[] = $parameter . '=' . $duplicateValue;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$pairs[] = $parameter . '=' . $value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// For each parameter, the name is separated from the corresponding value by an '=' character (ASCII code 61)
|
||||||
|
// Each name-value pair is separated by an '&' character (ASCII code 38)
|
||||||
|
return implode('&', $pairs);
|
||||||
|
}
|
||||||
|
}
|
29
x-twitter/vendor/abraham/twitteroauth/src/Util/JsonDecoder.php
vendored
Normal file
29
x-twitter/vendor/abraham/twitteroauth/src/Util/JsonDecoder.php
vendored
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth\Util;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author louis <louis@systemli.org>
|
||||||
|
*/
|
||||||
|
class JsonDecoder
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Decodes a JSON string to stdObject or associative array
|
||||||
|
*
|
||||||
|
* @param string $string
|
||||||
|
* @param bool $asArray
|
||||||
|
*
|
||||||
|
* @return array|object
|
||||||
|
*/
|
||||||
|
public static function decode(string $string, bool $asArray)
|
||||||
|
{
|
||||||
|
if (
|
||||||
|
version_compare(PHP_VERSION, '5.4.0', '>=') &&
|
||||||
|
!(defined('JSON_C_VERSION') && PHP_INT_SIZE > 4)
|
||||||
|
) {
|
||||||
|
return json_decode($string, $asArray, 512, JSON_BIGINT_AS_STRING);
|
||||||
|
}
|
||||||
|
|
||||||
|
return json_decode($string, $asArray);
|
||||||
|
}
|
||||||
|
}
|
60
x-twitter/vendor/abraham/twitteroauth/tests/AbstractSignatureMethodTest.php
vendored
Normal file
60
x-twitter/vendor/abraham/twitteroauth/tests/AbstractSignatureMethodTest.php
vendored
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth\Tests;
|
||||||
|
|
||||||
|
use PHPUnit\Framework\TestCase;
|
||||||
|
use Abraham\TwitterOAuth\SignatureMethod;
|
||||||
|
|
||||||
|
abstract class AbstractSignatureMethodTest extends TestCase
|
||||||
|
{
|
||||||
|
protected $name;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return SignatureMethod
|
||||||
|
*/
|
||||||
|
abstract public function getClass();
|
||||||
|
|
||||||
|
abstract protected function signatureDataProvider();
|
||||||
|
|
||||||
|
public function testGetName()
|
||||||
|
{
|
||||||
|
$this->assertEquals($this->name, $this->getClass()->getName());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @dataProvider signatureDataProvider
|
||||||
|
*/
|
||||||
|
public function testBuildSignature($expected, $request, $consumer, $token)
|
||||||
|
{
|
||||||
|
$this->assertEquals(
|
||||||
|
$expected,
|
||||||
|
$this->getClass()->buildSignature($request, $consumer, $token)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getRequest()
|
||||||
|
{
|
||||||
|
return $this->getMockBuilder('Abraham\TwitterOAuth\Request')
|
||||||
|
->disableOriginalConstructor()
|
||||||
|
->getMock();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getConsumer(
|
||||||
|
$key = null,
|
||||||
|
$secret = null,
|
||||||
|
$callbackUrl = null
|
||||||
|
) {
|
||||||
|
return $this->getMockBuilder('Abraham\TwitterOAuth\Consumer')
|
||||||
|
->setConstructorArgs([$key, $secret, $callbackUrl])
|
||||||
|
->getMock();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getToken($key = null, $secret = null)
|
||||||
|
{
|
||||||
|
return $this->getMockBuilder('Abraham\TwitterOAuth\Token')
|
||||||
|
->setConstructorArgs([$key, $secret])
|
||||||
|
->getMock();
|
||||||
|
}
|
||||||
|
}
|
23
x-twitter/vendor/abraham/twitteroauth/tests/ConsumerTest.php
vendored
Normal file
23
x-twitter/vendor/abraham/twitteroauth/tests/ConsumerTest.php
vendored
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth\Tests;
|
||||||
|
|
||||||
|
use PHPUnit\Framework\TestCase;
|
||||||
|
use Abraham\TwitterOAuth\Consumer;
|
||||||
|
|
||||||
|
class ConsumerTest extends TestCase
|
||||||
|
{
|
||||||
|
public function testToString()
|
||||||
|
{
|
||||||
|
$key = uniqid();
|
||||||
|
$secret = uniqid();
|
||||||
|
$consumer = new Consumer($key, $secret);
|
||||||
|
|
||||||
|
$this->assertEquals(
|
||||||
|
"Consumer[key=$key,secret=$secret]",
|
||||||
|
$consumer->__toString()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
47
x-twitter/vendor/abraham/twitteroauth/tests/HmacSha1Test.php
vendored
Normal file
47
x-twitter/vendor/abraham/twitteroauth/tests/HmacSha1Test.php
vendored
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth\Tests;
|
||||||
|
|
||||||
|
use Abraham\TwitterOAuth\HmacSha1;
|
||||||
|
|
||||||
|
class HmacSha1Test extends AbstractSignatureMethodTest
|
||||||
|
{
|
||||||
|
protected $name = 'HMAC-SHA1';
|
||||||
|
|
||||||
|
public function getClass()
|
||||||
|
{
|
||||||
|
return new HmacSha1();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function signatureDataProvider()
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
[
|
||||||
|
'5CoEcoq7XoKFjwYCieQvuzadeUA=',
|
||||||
|
$this->getRequest(),
|
||||||
|
$this->getConsumer(),
|
||||||
|
$this->getToken(),
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'EBw0gHngam3BTx8kfPfNNSyKem4=',
|
||||||
|
$this->getRequest(),
|
||||||
|
$this->getConsumer('key', 'secret'),
|
||||||
|
$this->getToken(),
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'kDsHFZzws2a5M6cAQjfpdNBo+v8=',
|
||||||
|
$this->getRequest(),
|
||||||
|
$this->getConsumer('key', 'secret'),
|
||||||
|
$this->getToken('key', 'secret'),
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'EBw0gHngam3BTx8kfPfNNSyKem4=',
|
||||||
|
$this->getRequest(),
|
||||||
|
$this->getConsumer('key', 'secret'),
|
||||||
|
null,
|
||||||
|
],
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
38
x-twitter/vendor/abraham/twitteroauth/tests/TokenTest.php
vendored
Normal file
38
x-twitter/vendor/abraham/twitteroauth/tests/TokenTest.php
vendored
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth\Tests;
|
||||||
|
|
||||||
|
use PHPUnit\Framework\TestCase;
|
||||||
|
use Abraham\TwitterOAuth\Token;
|
||||||
|
|
||||||
|
class TokenTest extends TestCase
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @dataProvider tokenProvider
|
||||||
|
*/
|
||||||
|
public function testToString($expected, $key, $secret)
|
||||||
|
{
|
||||||
|
$token = new Token($key, $secret);
|
||||||
|
|
||||||
|
$this->assertEquals($expected, $token->__toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
public function tokenProvider()
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
['oauth_token=key&oauth_token_secret=secret', 'key', 'secret'],
|
||||||
|
[
|
||||||
|
'oauth_token=key%2Bkey&oauth_token_secret=secret',
|
||||||
|
'key+key',
|
||||||
|
'secret',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'oauth_token=key~key&oauth_token_secret=secret',
|
||||||
|
'key~key',
|
||||||
|
'secret',
|
||||||
|
],
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
397
x-twitter/vendor/abraham/twitteroauth/tests/TwitterOAuthTest.php
vendored
Normal file
397
x-twitter/vendor/abraham/twitteroauth/tests/TwitterOAuthTest.php
vendored
Normal file
|
@ -0,0 +1,397 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* WARNING: Running tests will post and delete through the actual Twitter account when updating or saving VCR cassettes.
|
||||||
|
*/
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth\Test;
|
||||||
|
|
||||||
|
use PHPUnit\Framework\TestCase;
|
||||||
|
use Abraham\TwitterOAuth\TwitterOAuth;
|
||||||
|
|
||||||
|
class TwitterOAuthTest extends TestCase
|
||||||
|
{
|
||||||
|
/** @var TwitterOAuth */
|
||||||
|
protected $twitter;
|
||||||
|
|
||||||
|
protected function setUp(): void
|
||||||
|
{
|
||||||
|
$this->twitter = new TwitterOAuth(
|
||||||
|
CONSUMER_KEY,
|
||||||
|
CONSUMER_SECRET,
|
||||||
|
ACCESS_TOKEN,
|
||||||
|
ACCESS_TOKEN_SECRET
|
||||||
|
);
|
||||||
|
$this->userId = explode('-', ACCESS_TOKEN)[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testBuildClient()
|
||||||
|
{
|
||||||
|
$this->assertObjectHasAttribute('consumer', $this->twitter);
|
||||||
|
$this->assertObjectHasAttribute('token', $this->twitter);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testSetOauthToken.json
|
||||||
|
*/
|
||||||
|
public function testSetOauthToken()
|
||||||
|
{
|
||||||
|
$twitter = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET);
|
||||||
|
$twitter->setOauthToken(ACCESS_TOKEN, ACCESS_TOKEN_SECRET);
|
||||||
|
$this->assertObjectHasAttribute('consumer', $twitter);
|
||||||
|
$this->assertObjectHasAttribute('token', $twitter);
|
||||||
|
$twitter->get('friendships/show', [
|
||||||
|
'target_screen_name' => 'twitterapi',
|
||||||
|
]);
|
||||||
|
$this->assertEquals(200, $twitter->getLastHttpCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testOauth2Token.json
|
||||||
|
*/
|
||||||
|
public function testOauth2Token()
|
||||||
|
{
|
||||||
|
$twitter = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET);
|
||||||
|
$result = $twitter->oauth2('oauth2/token', [
|
||||||
|
'grant_type' => 'client_credentials',
|
||||||
|
]);
|
||||||
|
$this->assertEquals(200, $twitter->getLastHttpCode());
|
||||||
|
$this->assertObjectHasAttribute('token_type', $result);
|
||||||
|
$this->assertObjectHasAttribute('access_token', $result);
|
||||||
|
$this->assertEquals('bearer', $result->token_type);
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @depends testOauth2Token
|
||||||
|
* @vcr testOauth2BearerToken.json
|
||||||
|
*/
|
||||||
|
public function testOauth2BearerToken($accessToken)
|
||||||
|
{
|
||||||
|
$twitter = new TwitterOAuth(
|
||||||
|
CONSUMER_KEY,
|
||||||
|
CONSUMER_SECRET,
|
||||||
|
null,
|
||||||
|
$accessToken->access_token
|
||||||
|
);
|
||||||
|
$result = $twitter->get('statuses/user_timeline', [
|
||||||
|
'screen_name' => 'twitterapi',
|
||||||
|
]);
|
||||||
|
$this->assertEquals(200, $twitter->getLastHttpCode());
|
||||||
|
return $accessToken;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @depends testOauth2BearerToken
|
||||||
|
* @vcr testOauth2TokenInvalidate.json
|
||||||
|
*/
|
||||||
|
public function testOauth2TokenInvalidate($accessToken)
|
||||||
|
{
|
||||||
|
$twitter = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET);
|
||||||
|
// HACK: access_token is already urlencoded but gets urlencoded again breaking the invalidate request.
|
||||||
|
$result = $twitter->oauth2('oauth2/invalidate_token', [
|
||||||
|
'access_token' => urldecode($accessToken->access_token),
|
||||||
|
]);
|
||||||
|
$this->assertEquals(200, $twitter->getLastHttpCode());
|
||||||
|
$this->assertObjectHasAttribute('access_token', $result);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testOauthRequestToken.json
|
||||||
|
*/
|
||||||
|
public function testOauthRequestToken()
|
||||||
|
{
|
||||||
|
$twitter = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET);
|
||||||
|
$result = $twitter->oauth('oauth/request_token', [
|
||||||
|
'oauth_callback' => OAUTH_CALLBACK,
|
||||||
|
]);
|
||||||
|
$this->assertEquals(200, $twitter->getLastHttpCode());
|
||||||
|
$this->assertArrayHasKey('oauth_token', $result);
|
||||||
|
$this->assertArrayHasKey('oauth_token_secret', $result);
|
||||||
|
$this->assertArrayHasKey('oauth_callback_confirmed', $result);
|
||||||
|
$this->assertEquals('true', $result['oauth_callback_confirmed']);
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testOauthRequestTokenException.json
|
||||||
|
*/
|
||||||
|
public function testOauthRequestTokenException()
|
||||||
|
{
|
||||||
|
$this->expectException(
|
||||||
|
\Abraham\TwitterOAuth\TwitterOAuthException::class
|
||||||
|
);
|
||||||
|
$this->expectErrorMessage('Could not authenticate you');
|
||||||
|
$twitter = new TwitterOAuth('CONSUMER_KEY', 'CONSUMER_SECRET');
|
||||||
|
$result = $twitter->oauth('oauth/request_token', [
|
||||||
|
'oauth_callback' => OAUTH_CALLBACK,
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @depends testOauthRequestToken
|
||||||
|
* @vcr testOauthAccessTokenTokenException.json
|
||||||
|
*/
|
||||||
|
public function testOauthAccessTokenTokenException(array $requestToken)
|
||||||
|
{
|
||||||
|
// Can't test this without a browser logging into Twitter so check for the correct error instead.
|
||||||
|
$this->expectException(
|
||||||
|
\Abraham\TwitterOAuth\TwitterOAuthException::class
|
||||||
|
);
|
||||||
|
$this->expectErrorMessage('Invalid oauth_verifier parameter');
|
||||||
|
$twitter = new TwitterOAuth(
|
||||||
|
CONSUMER_KEY,
|
||||||
|
CONSUMER_SECRET,
|
||||||
|
$requestToken['oauth_token'],
|
||||||
|
$requestToken['oauth_token_secret']
|
||||||
|
);
|
||||||
|
$twitter->oauth('oauth/access_token', [
|
||||||
|
'oauth_verifier' => 'fake_oauth_verifier',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testUrl()
|
||||||
|
{
|
||||||
|
$url = $this->twitter->url('oauth/authorize', [
|
||||||
|
'foo' => 'bar',
|
||||||
|
'baz' => 'qux',
|
||||||
|
]);
|
||||||
|
$this->assertEquals(
|
||||||
|
'https://api.twitter.com/oauth/authorize?foo=bar&baz=qux',
|
||||||
|
$url
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testGetAccountVerifyCredentials.json
|
||||||
|
*/
|
||||||
|
public function testGetAccountVerifyCredentials()
|
||||||
|
{
|
||||||
|
$user = $this->twitter->get('account/verify_credentials', [
|
||||||
|
'include_entities' => false,
|
||||||
|
'include_email' => true,
|
||||||
|
]);
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
$this->assertObjectHasAttribute('email', $user);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testSetProxy.json
|
||||||
|
*/
|
||||||
|
public function testSetProxy()
|
||||||
|
{
|
||||||
|
$this->twitter->setProxy([
|
||||||
|
'CURLOPT_PROXY' => PROXY,
|
||||||
|
'CURLOPT_PROXYUSERPWD' => PROXYUSERPWD,
|
||||||
|
'CURLOPT_PROXYPORT' => PROXYPORT,
|
||||||
|
]);
|
||||||
|
$this->twitter->setTimeouts(60, 60);
|
||||||
|
$result = $this->twitter->get('account/verify_credentials');
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
$this->assertObjectHasAttribute('id', $result);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testGetStatusesMentionsTimeline.json
|
||||||
|
*/
|
||||||
|
public function testGetStatusesMentionsTimeline()
|
||||||
|
{
|
||||||
|
$this->twitter->get('statuses/mentions_timeline');
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testGetSearchTweets.json
|
||||||
|
*/
|
||||||
|
public function testGetSearchTweets()
|
||||||
|
{
|
||||||
|
$result = $this->twitter->get('search/tweets', ['q' => 'twitter']);
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
return $result->statuses;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @depends testGetSearchTweets
|
||||||
|
* @vcr testGetSearchTweetsWithMaxId.json
|
||||||
|
*/
|
||||||
|
public function testGetSearchTweetsWithMaxId($statuses)
|
||||||
|
{
|
||||||
|
$maxId = array_pop($statuses)->id_str;
|
||||||
|
$this->twitter->get('search/tweets', [
|
||||||
|
'q' => 'twitter',
|
||||||
|
'max_id' => $maxId,
|
||||||
|
]);
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testPostFavoritesCreate.json
|
||||||
|
*/
|
||||||
|
public function testPostFavoritesCreate()
|
||||||
|
{
|
||||||
|
$result = $this->twitter->post('favorites/create', [
|
||||||
|
'id' => '6242973112',
|
||||||
|
]);
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @depends testPostFavoritesCreate
|
||||||
|
* @vcr testPostFavoritesDestroy.json
|
||||||
|
*/
|
||||||
|
public function testPostFavoritesDestroy()
|
||||||
|
{
|
||||||
|
$this->twitter->post('favorites/destroy', ['id' => '6242973112']);
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testPostDirectMessagesEventsNew.json
|
||||||
|
*/
|
||||||
|
public function testPostDirectMessagesEventsNew()
|
||||||
|
{
|
||||||
|
$data = [
|
||||||
|
'event' => [
|
||||||
|
'type' => 'message_create',
|
||||||
|
'message_create' => [
|
||||||
|
'target' => [
|
||||||
|
'recipient_id' => $this->userId,
|
||||||
|
],
|
||||||
|
'message_data' => [
|
||||||
|
'text' => 'Hello World!',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
],
|
||||||
|
];
|
||||||
|
$result = $this->twitter->post(
|
||||||
|
'direct_messages/events/new',
|
||||||
|
$data,
|
||||||
|
true
|
||||||
|
);
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @depends testPostDirectMessagesEventsNew
|
||||||
|
* @vcr testDeleteDirectMessagesEventsDestroy.json
|
||||||
|
*/
|
||||||
|
public function testDeleteDirectMessagesEventsDestroy($message)
|
||||||
|
{
|
||||||
|
$this->twitter->delete('direct_messages/events/destroy', [
|
||||||
|
'id' => $message->event->id,
|
||||||
|
]);
|
||||||
|
$this->assertEquals(204, $this->twitter->getLastHttpCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testPostStatusesUpdateWithMedia.json
|
||||||
|
*/
|
||||||
|
public function testPostStatusesUpdateWithMedia()
|
||||||
|
{
|
||||||
|
$this->twitter->setTimeouts(60, 60);
|
||||||
|
// Image source https://www.flickr.com/photos/titrans/8548825587/
|
||||||
|
$file_path = __DIR__ . '/kitten.jpg';
|
||||||
|
$result = $this->twitter->upload('media/upload', [
|
||||||
|
'media' => $file_path,
|
||||||
|
]);
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
$this->assertObjectHasAttribute('media_id_string', $result);
|
||||||
|
$parameters = [
|
||||||
|
'status' => 'Hello World ' . MOCK_TIME,
|
||||||
|
'media_ids' => $result->media_id_string,
|
||||||
|
];
|
||||||
|
$result = $this->twitter->post('statuses/update', $parameters);
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
$result = $this->twitter->post('statuses/destroy/' . $result->id_str);
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testPostStatusUpdateWithInvalidMediaThrowsException.json
|
||||||
|
*/
|
||||||
|
public function testPostStatusUpdateWithInvalidMediaThrowsException()
|
||||||
|
{
|
||||||
|
$this->expectException(\InvalidArgumentException::class);
|
||||||
|
$file_path = __DIR__ . '/12345678900987654321.jpg';
|
||||||
|
$this->assertFalse(\is_readable($file_path));
|
||||||
|
$result = $this->twitter->upload('media/upload', [
|
||||||
|
'media' => $file_path,
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testPostStatusesUpdateWithMediaChunked.json
|
||||||
|
*/
|
||||||
|
public function testPostStatusesUpdateWithMediaChunked()
|
||||||
|
{
|
||||||
|
$this->twitter->setTimeouts(60, 30);
|
||||||
|
// Video source http://www.sample-videos.com/
|
||||||
|
$file_path = __DIR__ . '/video.mp4';
|
||||||
|
$result = $this->twitter->upload(
|
||||||
|
'media/upload',
|
||||||
|
['media' => $file_path, 'media_type' => 'video/mp4'],
|
||||||
|
true
|
||||||
|
);
|
||||||
|
$this->assertEquals(201, $this->twitter->getLastHttpCode());
|
||||||
|
$this->assertObjectHasAttribute('media_id_string', $result);
|
||||||
|
$parameters = [
|
||||||
|
'status' => 'Hello World ' . MOCK_TIME,
|
||||||
|
'media_ids' => $result->media_id_string,
|
||||||
|
];
|
||||||
|
$result = $this->twitter->post('statuses/update', $parameters);
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
$result = $this->twitter->post('statuses/destroy/' . $result->id_str);
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testPostStatusesUpdateUtf8.json
|
||||||
|
*/
|
||||||
|
public function testPostStatusesUpdateUtf8()
|
||||||
|
{
|
||||||
|
$result = $this->twitter->post('statuses/update', [
|
||||||
|
'status' => 'xこんにちは世界 ' . MOCK_TIME,
|
||||||
|
]);
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @depends testPostStatusesUpdateUtf8
|
||||||
|
* @vcr testPostStatusesDestroy.json
|
||||||
|
*/
|
||||||
|
public function testPostStatusesDestroy($status)
|
||||||
|
{
|
||||||
|
$this->twitter->post('statuses/destroy/' . $status->id_str);
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @vcr testLastResult.json
|
||||||
|
*/
|
||||||
|
public function testLastResult()
|
||||||
|
{
|
||||||
|
$this->twitter->get('search/tweets', ['q' => 'twitter']);
|
||||||
|
$this->assertEquals('search/tweets', $this->twitter->getLastApiPath());
|
||||||
|
$this->assertEquals(200, $this->twitter->getLastHttpCode());
|
||||||
|
$this->assertObjectHasAttribute(
|
||||||
|
'statuses',
|
||||||
|
$this->twitter->getLastBody()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @depends testLastResult
|
||||||
|
* @vcr testResetLastResponse.json
|
||||||
|
*/
|
||||||
|
public function testResetLastResponse()
|
||||||
|
{
|
||||||
|
$this->twitter->resetLastResponse();
|
||||||
|
$this->assertEquals('', $this->twitter->getLastApiPath());
|
||||||
|
$this->assertEquals(0, $this->twitter->getLastHttpCode());
|
||||||
|
$this->assertEquals([], $this->twitter->getLastBody());
|
||||||
|
}
|
||||||
|
}
|
54
x-twitter/vendor/abraham/twitteroauth/tests/Util/JsonDecoderTest.php
vendored
Normal file
54
x-twitter/vendor/abraham/twitteroauth/tests/Util/JsonDecoderTest.php
vendored
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Abraham\TwitterOAuth\Tests;
|
||||||
|
|
||||||
|
use PHPUnit\Framework\TestCase;
|
||||||
|
use Abraham\TwitterOAuth\Util\JsonDecoder;
|
||||||
|
|
||||||
|
class JsonDecoderTest extends TestCase
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @dataProvider jsonProvider
|
||||||
|
*/
|
||||||
|
public function testDecode($input, $asArray, $expected)
|
||||||
|
{
|
||||||
|
$this->assertEquals($expected, JsonDecoder::decode($input, $asArray));
|
||||||
|
}
|
||||||
|
|
||||||
|
public function jsonProvider()
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
['[]', true, []],
|
||||||
|
['[1,2,3]', true, [1, 2, 3]],
|
||||||
|
[
|
||||||
|
'[{"id": 556179961825226750}]',
|
||||||
|
true,
|
||||||
|
[['id' => 556179961825226750]],
|
||||||
|
],
|
||||||
|
['[]', false, []],
|
||||||
|
['[1,2,3]', false, [1, 2, 3]],
|
||||||
|
[
|
||||||
|
'[{"id": 556179961825226750}]',
|
||||||
|
false,
|
||||||
|
[
|
||||||
|
$this->getClass(function ($object) {
|
||||||
|
$object->id = 556179961825226750;
|
||||||
|
return $object;
|
||||||
|
}),
|
||||||
|
],
|
||||||
|
],
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param callable $callable
|
||||||
|
*
|
||||||
|
* @return stdClass
|
||||||
|
*/
|
||||||
|
private function getClass(\Closure $callable)
|
||||||
|
{
|
||||||
|
$object = new \stdClass();
|
||||||
|
|
||||||
|
return $callable($object);
|
||||||
|
}
|
||||||
|
}
|
10
x-twitter/vendor/abraham/twitteroauth/tests/bootstrap.php
vendored
Normal file
10
x-twitter/vendor/abraham/twitteroauth/tests/bootstrap.php
vendored
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
require __DIR__ . '/../vendor/autoload.php';
|
||||||
|
require 'vars.php';
|
||||||
|
require 'mocks.php';
|
||||||
|
|
||||||
|
\VCR\VCR::configure()->setStorage('json');
|
||||||
|
\VCR\VCR::turnOn();
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue