Merge branch 'master' into calendar
This commit is contained in:
commit
86f6d2fc25
48
.tx/config
48
.tx/config
|
@ -6,26 +6,74 @@ file_filter = l10n/<lang>/core.po
|
|||
host = http://www.transifex.net
|
||||
source_file = l10n/templates/core.pot
|
||||
source_lang = en
|
||||
trans.bg_BG = l10n/bg_BG/core.po
|
||||
trans.ca = l10n/ca/core.po
|
||||
trans.da = l10n/da/core.po
|
||||
trans.de = l10n/de/core.po
|
||||
trans.el = l10n/el/core.po
|
||||
trans.es = l10n/es/core.po
|
||||
trans.fr = l10n/fr/core.po
|
||||
trans.id = l10n/id/core.po
|
||||
trans.it = l10n/it/core.po
|
||||
trans.nl = l10n/nl/core.po
|
||||
trans.pl = l10n/pl/core.po
|
||||
trans.pt_BR = l10n/pt_BR/core.po
|
||||
trans.sv = l10n/sv/core.po
|
||||
|
||||
[owncloud.settings]
|
||||
file_filter = l10n/<lang>/settings.po
|
||||
host = http://www.transifex.net
|
||||
source_file = l10n/templates/settings.pot
|
||||
source_lang = en
|
||||
trans.bg_BG = l10n/bg_BG/settings.po
|
||||
trans.ca = l10n/ca/settings.po
|
||||
trans.da = l10n/da/settings.po
|
||||
trans.de = l10n/de/settings.po
|
||||
trans.el = l10n/el/settings.po
|
||||
trans.es = l10n/es/settings.po
|
||||
trans.fr = l10n/fr/settings.po
|
||||
trans.id = l10n/id/settings.po
|
||||
trans.it = l10n/it/settings.po
|
||||
trans.nl = l10n/nl/settings.po
|
||||
trans.pl = l10n/pl/settings.po
|
||||
trans.pt_BR = l10n/pt_BR/settings.po
|
||||
trans.sv = l10n/sv/settings.po
|
||||
|
||||
[owncloud.files]
|
||||
file_filter = translations/owncloud.files/<lang>.po
|
||||
host = http://www.transifex.net
|
||||
source_file = l10n/templates/files.pot
|
||||
source_lang = en
|
||||
trans.bg_BG = l10n/bg_BG/files.po
|
||||
trans.ca = l10n/ca/files.po
|
||||
trans.da = l10n/da/files.po
|
||||
trans.de = l10n/de/files.po
|
||||
trans.el = l10n/el/files.po
|
||||
trans.es = l10n/es/files.po
|
||||
trans.fr = l10n/fr/files.po
|
||||
trans.id = l10n/id/files.po
|
||||
trans.it = l10n/it/files.po
|
||||
trans.nl = l10n/nl/files.po
|
||||
trans.pl = l10n/pl/files.po
|
||||
trans.pt_BR = l10n/pt_BR/files.po
|
||||
trans.sv = l10n/sv/files.po
|
||||
|
||||
[owncloud.media]
|
||||
file_filter = translations/owncloud.media/<lang>.po
|
||||
host = http://www.transifex.net
|
||||
source_file = l10n/templates/media.pot
|
||||
source_lang = en
|
||||
trans.bg_BG = l10n/bg_BG/media.po
|
||||
trans.ca = l10n/ca/media.po
|
||||
trans.da = l10n/da/media.po
|
||||
trans.de = l10n/de/media.po
|
||||
trans.el = l10n/el/media.po
|
||||
trans.es = l10n/es/media.po
|
||||
trans.fr = l10n/fr/media.po
|
||||
trans.id = l10n/id/media.po
|
||||
trans.it = l10n/it/media.po
|
||||
trans.nl = l10n/nl/media.po
|
||||
trans.pl = l10n/pl/media.po
|
||||
trans.pt_BR = l10n/pt_BR/media.po
|
||||
trans.sv = l10n/sv/media.po
|
||||
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 742 B |
|
@ -0,0 +1,340 @@
|
|||
/* @group Base */
|
||||
select.chzn-select {
|
||||
visibility: hidden;
|
||||
height: 28px !important;
|
||||
min-height: 28px !important;
|
||||
}
|
||||
.chzn-container {
|
||||
font-size: 13px;
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
zoom: 1;
|
||||
*display: inline;
|
||||
}
|
||||
.chzn-container .chzn-drop {
|
||||
background: #fff;
|
||||
border: 1px solid #aaa;
|
||||
border-top: 0;
|
||||
position: absolute;
|
||||
top: 29px;
|
||||
left: 0;
|
||||
-webkit-box-shadow: 0 4px 5px rgba(0,0,0,.15);
|
||||
-moz-box-shadow : 0 4px 5px rgba(0,0,0,.15);
|
||||
-o-box-shadow : 0 4px 5px rgba(0,0,0,.15);
|
||||
box-shadow : 0 4px 5px rgba(0,0,0,.15);
|
||||
z-index: 999;
|
||||
}
|
||||
/* @end */
|
||||
|
||||
/* @group Single Chosen */
|
||||
.chzn-container-single .chzn-single {
|
||||
background-color: #fff;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eeeeee), color-stop(0.5, white));
|
||||
background-image: -webkit-linear-gradient(center bottom, #eeeeee 0%, white 50%);
|
||||
background-image: -moz-linear-gradient(center bottom, #eeeeee 0%, white 50%);
|
||||
background-image: -o-linear-gradient(top, #eeeeee 0%,#ffffff 50%);
|
||||
background-image: -ms-linear-gradient(top, #eeeeee 0%,#ffffff 50%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#ffffff',GradientType=0 );
|
||||
background-image: linear-gradient(top, #eeeeee 0%,#ffffff 50%);
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius : 4px;
|
||||
border-radius : 4px;
|
||||
-moz-background-clip : padding;
|
||||
-webkit-background-clip: padding-box;
|
||||
background-clip : padding-box;
|
||||
border: 1px solid #aaa;
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
position: relative;
|
||||
height: 26px;
|
||||
line-height: 26px;
|
||||
padding: 0 0 0 8px;
|
||||
color: #444;
|
||||
text-decoration: none;
|
||||
}
|
||||
.chzn-container-single .chzn-single span {
|
||||
margin-right: 26px;
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
-o-text-overflow: ellipsis;
|
||||
-ms-text-overflow: ellipsis;
|
||||
-moz-binding: url('/xml/ellipsis.xml#ellipsis');
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
.chzn-container-single .chzn-single div {
|
||||
-webkit-border-radius: 0 4px 4px 0;
|
||||
-moz-border-radius : 0 4px 4px 0;
|
||||
border-radius : 0 4px 4px 0;
|
||||
-moz-background-clip : padding;
|
||||
-webkit-background-clip: padding-box;
|
||||
background-clip : padding-box;
|
||||
background: #ccc;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ccc), color-stop(0.6, #eee));
|
||||
background-image: -webkit-linear-gradient(center bottom, #ccc 0%, #eee 60%);
|
||||
background-image: -moz-linear-gradient(center bottom, #ccc 0%, #eee 60%);
|
||||
background-image: -o-linear-gradient(bottom, #ccc 0%, #eee 60%);
|
||||
background-image: -ms-linear-gradient(top, #cccccc 0%,#eeeeee 60%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cccccc', endColorstr='#eeeeee',GradientType=0 );
|
||||
background-image: linear-gradient(top, #cccccc 0%,#eeeeee 60%);
|
||||
border-left: 1px solid #aaa;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
display: block;
|
||||
height: 100%;
|
||||
width: 18px;
|
||||
}
|
||||
.chzn-container-single .chzn-single div b {
|
||||
background: url('chosen-sprite.png') no-repeat 0 1px;
|
||||
display: block;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
.chzn-container-single .chzn-search {
|
||||
padding: 3px 4px;
|
||||
margin: 0;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.chzn-container-single .chzn-search input {
|
||||
background: #fff url('chosen-sprite.png') no-repeat 100% -20px;
|
||||
background: url('chosen-sprite.png') no-repeat 100% -20px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
|
||||
background: url('chosen-sprite.png') no-repeat 100% -20px, -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
||||
background: url('chosen-sprite.png') no-repeat 100% -20px, -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
||||
background: url('chosen-sprite.png') no-repeat 100% -20px, -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
|
||||
background: url('chosen-sprite.png') no-repeat 100% -20px, -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
|
||||
background: url('chosen-sprite.png') no-repeat 100% -20px, -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
|
||||
background: url('chosen-sprite.png') no-repeat 100% -20px, linear-gradient(top, #ffffff 85%,#eeeeee 99%);
|
||||
margin: 1px 0;
|
||||
padding: 4px 20px 4px 5px;
|
||||
outline: 0;
|
||||
border: 1px solid #aaa;
|
||||
font-family: sans-serif;
|
||||
font-size: 1em;
|
||||
}
|
||||
.chzn-container-single .chzn-drop {
|
||||
-webkit-border-radius: 0 0 4px 4px;
|
||||
-moz-border-radius : 0 0 4px 4px;
|
||||
border-radius : 0 0 4px 4px;
|
||||
-moz-background-clip : padding;
|
||||
-webkit-background-clip: padding-box;
|
||||
background-clip : padding-box;
|
||||
}
|
||||
/* @end */
|
||||
|
||||
/* @group Multi Chosen */
|
||||
.chzn-container-multi .chzn-choices {
|
||||
background-color: #fff;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
|
||||
background-image: -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
||||
background-image: -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
||||
background-image: -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
|
||||
background-image: -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
|
||||
background-image: linear-gradient(top, #ffffff 85%,#eeeeee 99%);
|
||||
border: 1px solid #aaa;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
cursor: text;
|
||||
overflow: hidden;
|
||||
height: auto !important;
|
||||
height: 1%;
|
||||
position: relative;
|
||||
}
|
||||
.chzn-container-multi .chzn-choices li {
|
||||
float: left;
|
||||
list-style: none;
|
||||
}
|
||||
.chzn-container-multi .chzn-choices .search-field {
|
||||
white-space: nowrap;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
.chzn-container-multi .chzn-choices .search-field input {
|
||||
color: #666;
|
||||
background: transparent !important;
|
||||
border: 0 !important;
|
||||
padding: 5px;
|
||||
margin: 1px 0;
|
||||
outline: 0;
|
||||
-webkit-box-shadow: none;
|
||||
-moz-box-shadow : none;
|
||||
-o-box-shadow : none;
|
||||
box-shadow : none;
|
||||
}
|
||||
.chzn-container-multi .chzn-choices .search-field .default {
|
||||
color: #999;
|
||||
}
|
||||
.chzn-container-multi .chzn-choices .search-choice {
|
||||
-webkit-border-radius: 3px;
|
||||
-moz-border-radius : 3px;
|
||||
border-radius : 3px;
|
||||
-moz-background-clip : padding;
|
||||
-webkit-background-clip: padding-box;
|
||||
background-clip : padding-box;
|
||||
background-color: #e4e4e4;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #e4e4e4), color-stop(0.7, #eeeeee));
|
||||
background-image: -webkit-linear-gradient(center bottom, #e4e4e4 0%, #eeeeee 70%);
|
||||
background-image: -moz-linear-gradient(center bottom, #e4e4e4 0%, #eeeeee 70%);
|
||||
background-image: -o-linear-gradient(bottom, #e4e4e4 0%, #eeeeee 70%);
|
||||
background-image: -ms-linear-gradient(top, #e4e4e4 0%,#eeeeee 70%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e4e4e4', endColorstr='#eeeeee',GradientType=0 );
|
||||
background-image: linear-gradient(top, #e4e4e4 0%,#eeeeee 70%);
|
||||
color: #333;
|
||||
border: 1px solid #b4b4b4;
|
||||
line-height: 13px;
|
||||
padding: 3px 19px 3px 6px;
|
||||
margin: 3px 0 3px 5px;
|
||||
position: relative;
|
||||
}
|
||||
.chzn-container-multi .chzn-choices .search-choice span {
|
||||
cursor: default;
|
||||
}
|
||||
.chzn-container-multi .chzn-choices .search-choice-focus {
|
||||
background: #d4d4d4;
|
||||
}
|
||||
.chzn-container-multi .chzn-choices .search-choice .search-choice-close {
|
||||
display: block;
|
||||
position: absolute;
|
||||
right: 5px;
|
||||
top: 6px;
|
||||
width: 8px;
|
||||
height: 9px;
|
||||
font-size: 1px;
|
||||
background: url(chosen-sprite.png) right top no-repeat;
|
||||
}
|
||||
.chzn-container-multi .chzn-choices .search-choice .search-choice-close:hover {
|
||||
background-position: right -9px;
|
||||
}
|
||||
.chzn-container-multi .chzn-choices .search-choice-focus .search-choice-close {
|
||||
background-position: right -9px;
|
||||
}
|
||||
/* @end */
|
||||
|
||||
/* @group Results */
|
||||
.chzn-container .chzn-results {
|
||||
margin: 0 4px 4px 0;
|
||||
max-height: 190px;
|
||||
padding: 0 0 0 4px;
|
||||
position: relative;
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.chzn-container-multi .chzn-results {
|
||||
margin: -1px 0 0;
|
||||
padding: 0;
|
||||
}
|
||||
.chzn-container .chzn-results li {
|
||||
line-height: 80%;
|
||||
padding: 7px 7px 8px;
|
||||
margin: 0;
|
||||
list-style: none;
|
||||
}
|
||||
.chzn-container .chzn-results .active-result {
|
||||
cursor: pointer;
|
||||
}
|
||||
.chzn-container .chzn-results .highlighted {
|
||||
background: #3875d7;
|
||||
color: #fff;
|
||||
}
|
||||
.chzn-container .chzn-results li em {
|
||||
background: #feffde;
|
||||
font-style: normal;
|
||||
}
|
||||
.chzn-container .chzn-results .highlighted em {
|
||||
background: transparent;
|
||||
}
|
||||
.chzn-container .chzn-results .no-results {
|
||||
background: #f4f4f4;
|
||||
}
|
||||
.chzn-container .chzn-results .group-result {
|
||||
cursor: default;
|
||||
color: #999;
|
||||
font-weight: bold;
|
||||
}
|
||||
.chzn-container .chzn-results .group-option {
|
||||
padding-left: 20px;
|
||||
}
|
||||
.chzn-container-multi .chzn-drop .result-selected {
|
||||
display: none;
|
||||
}
|
||||
/* @end */
|
||||
|
||||
/* @group Active */
|
||||
.chzn-container-active .chzn-single {
|
||||
-webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
|
||||
-moz-box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
-o-box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
border: 1px solid #5897fb;
|
||||
}
|
||||
.chzn-container-active .chzn-single-with-drop {
|
||||
border: 1px solid #aaa;
|
||||
-webkit-box-shadow: 0 1px 0 #fff inset;
|
||||
-moz-box-shadow : 0 1px 0 #fff inset;
|
||||
-o-box-shadow : 0 1px 0 #fff inset;
|
||||
box-shadow : 0 1px 0 #fff inset;
|
||||
background-color: #eee;
|
||||
background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, white), color-stop(0.5, #eeeeee));
|
||||
background-image: -webkit-linear-gradient(center bottom, white 0%, #eeeeee 50%);
|
||||
background-image: -moz-linear-gradient(center bottom, white 0%, #eeeeee 50%);
|
||||
background-image: -o-linear-gradient(bottom, white 0%, #eeeeee 50%);
|
||||
background-image: -ms-linear-gradient(top, #ffffff 0%,#eeeeee 50%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
|
||||
background-image: linear-gradient(top, #ffffff 0%,#eeeeee 50%);
|
||||
-webkit-border-bottom-left-radius : 0;
|
||||
-webkit-border-bottom-right-radius: 0;
|
||||
-moz-border-radius-bottomleft : 0;
|
||||
-moz-border-radius-bottomright: 0;
|
||||
border-bottom-left-radius : 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
.chzn-container-active .chzn-single-with-drop div {
|
||||
background: transparent;
|
||||
border-left: none;
|
||||
}
|
||||
.chzn-container-active .chzn-single-with-drop div b {
|
||||
background-position: -18px 1px;
|
||||
}
|
||||
.chzn-container-active .chzn-choices {
|
||||
-webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
|
||||
-moz-box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
-o-box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
box-shadow : 0 0 5px rgba(0,0,0,.3);
|
||||
border: 1px solid #5897fb;
|
||||
}
|
||||
.chzn-container-active .chzn-choices .search-field input {
|
||||
color: #111 !important;
|
||||
}
|
||||
/* @end */
|
||||
|
||||
/* @group Right to Left */
|
||||
.chzn-rtl { direction:rtl;text-align: right; }
|
||||
.chzn-rtl .chzn-single { padding-left: 0; padding-right: 8px; }
|
||||
.chzn-rtl .chzn-single span { margin-left: 26px; margin-right: 0; }
|
||||
.chzn-rtl .chzn-single div {
|
||||
left: 0; right: auto;
|
||||
border-left: none; border-right: 1px solid #aaaaaa;
|
||||
-webkit-border-radius: 4px 0 0 4px;
|
||||
-moz-border-radius : 4px 0 0 4px;
|
||||
border-radius : 4px 0 0 4px;
|
||||
}
|
||||
.chzn-rtl .chzn-choices li { float: right; }
|
||||
.chzn-rtl .chzn-choices .search-choice { padding: 3px 6px 3px 19px; margin: 3px 5px 3px 0; }
|
||||
.chzn-rtl .chzn-choices .search-choice .search-choice-close { left: 5px; right: auto; background-position: right top;}
|
||||
.chzn-rtl.chzn-container-single .chzn-results { margin-left: 4px; margin-right: 0; padding-left: 0; padding-right: 4px; }
|
||||
.chzn-rtl .chzn-results .group-option { padding-left: 0; padding-right: 20px; }
|
||||
.chzn-rtl.chzn-container-active .chzn-single-with-drop div { border-right: none; }
|
||||
.chzn-rtl .chzn-search input {
|
||||
background: url('chosen-sprite.png') no-repeat -38px -20px, #ffffff;
|
||||
background: url('chosen-sprite.png') no-repeat -38px -20px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
|
||||
background: url('chosen-sprite.png') no-repeat -38px -20px, -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
||||
background: url('chosen-sprite.png') no-repeat -38px -20px, -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
|
||||
background: url('chosen-sprite.png') no-repeat -38px -20px, -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
|
||||
background: url('chosen-sprite.png') no-repeat -38px -20px, -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
|
||||
background: url('chosen-sprite.png') no-repeat -38px -20px, -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
|
||||
background: url('chosen-sprite.png') no-repeat -38px -20px, linear-gradient(top, #ffffff 85%,#eeeeee 99%);
|
||||
padding: 4px 5px 4px 20px;
|
||||
}
|
||||
/* @end */
|
|
@ -35,12 +35,21 @@ if( !OC_User::isLoggedIn()){
|
|||
exit();
|
||||
}
|
||||
|
||||
$CONFIG_DBTYPE = OC_Config::getValue( "dbtype", "sqlite" );
|
||||
if( $CONFIG_DBTYPE == 'sqlite' or $CONFIG_DBTYPE == 'sqlite3' ){
|
||||
$_ut = "strftime('%s','now')";
|
||||
} else {
|
||||
$_ut = "UNIX_TIMESTAMP()";
|
||||
}
|
||||
|
||||
//FIXME: Detect when user adds a known URL
|
||||
$query = OC_DB::prepare("
|
||||
INSERT IGNORE INTO *PREFIX*bookmarks
|
||||
INSERT INTO *PREFIX*bookmarks
|
||||
(url, title, description, user_id, public, added, lastmodified)
|
||||
VALUES (?, ?, ?, ?, 0, UNIX_TIMESTAMP(), UNIX_TIMESTAMP())
|
||||
VALUES (?, ?, ?, ?, 0, $_ut, $_ut)
|
||||
");
|
||||
|
||||
|
||||
$params=array(
|
||||
urldecode($_GET["url"]),
|
||||
urldecode($_GET["title"]),
|
||||
|
@ -50,6 +59,7 @@ $params=array(
|
|||
$query->execute($params);
|
||||
$b_id = OC_DB::insertid();
|
||||
|
||||
|
||||
if($b_id !== false) {
|
||||
$query = OC_DB::prepare("
|
||||
INSERT INTO *PREFIX*bookmarks_tags
|
||||
|
|
|
@ -49,9 +49,16 @@ if($filterTag){
|
|||
$offset = isset($_GET["page"]) ? intval($_GET["page"]) * 10 : 0;
|
||||
$params[] = $offset;
|
||||
|
||||
$CONFIG_DBTYPE = OC_Config::getValue( "dbtype", "sqlite" );
|
||||
if( $CONFIG_DBTYPE == 'sqlite' or $CONFIG_DBTYPE == 'sqlite3' ){
|
||||
$_gc_separator = ", ' '";
|
||||
} else {
|
||||
$_gc_separator = "SEPARATOR ' '";
|
||||
}
|
||||
|
||||
//FIXME: bookmarks without tags are not being retrieved
|
||||
$query = OC_DB::prepare("
|
||||
SELECT url, title, description, GROUP_CONCAT( tag SEPARATOR ' ' ) AS tags
|
||||
SELECT url, title, description, GROUP_CONCAT( tag $_gc_separator ) AS tags
|
||||
FROM *PREFIX*bookmarks, *PREFIX*bookmarks_tags
|
||||
WHERE *PREFIX*bookmarks.id = *PREFIX*bookmarks_tags.bookmark_id
|
||||
AND *PREFIX*bookmarks.user_id = ?
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
<autoincrement>1</autoincrement>
|
||||
<default>0</default>
|
||||
<notnull>true</notnull>
|
||||
<length>64</length>
|
||||
<length>4</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>url</name>
|
||||
|
|
|
@ -20,7 +20,7 @@ function getBookmarks() {
|
|||
}
|
||||
$.ajax({
|
||||
url: 'ajax/updateList.php',
|
||||
data: "tag=" + encodeURI($('#bookmarkFilterTag').val()) + "&page=" + bookmarks_page,
|
||||
data: 'tag=' + encodeURI($('#bookmarkFilterTag').val()) + '&page=' + bookmarks_page,
|
||||
success: function(bookmarks){
|
||||
bookmarks_page += 1;
|
||||
$('.bookmark_link').unbind('click', recordClick);
|
||||
|
@ -37,35 +37,57 @@ function getBookmarks() {
|
|||
}
|
||||
|
||||
function addBookmark(event) {
|
||||
var url = encodeEntities($('#bookmark_add_url').val())
|
||||
var title = encodeEntities($('#bookmark_add_title').val())
|
||||
var description = encodeEntities($('#bookmark_add_description').val())
|
||||
var tags = encodeEntities($('#bookmark_add_tags').val())
|
||||
var taglist = tags.split(' ')
|
||||
var tagshtml = '';
|
||||
for ( var i=0, len=taglist.length; i<len; ++i ){
|
||||
tagshtml += '<a class="bookmark_tags" href="?tag=' + encodeURI(taglist[i]) + '">' + taglist[i] + '</a> ';
|
||||
}
|
||||
$.ajax({
|
||||
url: 'ajax/addBookmark.php',
|
||||
data: "url=" + encodeURI($('#bookmark_add_url').val()) + "&title=" + encodeURI($('#bookmark_add_title').val()) + "&description=" + encodeURI($('#bookmark_add_description').val()) + "&tags=" + encodeURI($('#bookmark_add_tags').val()),
|
||||
success: function(data){ $('.bookmarks_add').slideToggle(); $('.bookmarks_add').children('p').children('.bookmarks_input').val(''); }
|
||||
data: 'url=' + encodeURI(url) + '&title=' + encodeURI(title) + '&description=' + encodeURI(description) + '&tags=' + encodeURI(tags),
|
||||
success: function(data){
|
||||
$('.bookmarks_add').slideToggle();
|
||||
$('.bookmarks_add').children('p').children('.bookmarks_input').val('');
|
||||
$('.bookmarks_list').prepend(
|
||||
'<div class="bookmark_single">' +
|
||||
'<p class="bookmark_title"><a href="' + url + '" target="_new" class="bookmark_link">' + title + '</a></p>' +
|
||||
'<p class="bookmark_url">' + url + '</p>' +
|
||||
'<p class="bookmark_description">' + description + '</p>' +
|
||||
'<p>' + tagshtml + '</p>' +
|
||||
'<p class="bookmark_actions"><span class="bookmark_delete">Delete</span></p>' +
|
||||
'</div>'
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function delBookmark(event) {
|
||||
var record = $(this).parent().parent()
|
||||
$.ajax({
|
||||
url: 'ajax/delBookmark.php',
|
||||
data: "url=" + encodeURI($(this).parent().parent().children('.bookmark_url:first').text()),
|
||||
success: function(data){ alert('deleted!'); }
|
||||
data: 'url=' + encodeURI($(this).parent().parent().children('.bookmark_url:first').text()),
|
||||
success: function(data){ record.animate({ opacity: 'hide' }, 'fast'); }
|
||||
});
|
||||
}
|
||||
|
||||
function updateBookmarksList(bookmark) {
|
||||
var tags = encodeEntities(bookmark.tags).split(" ");
|
||||
var taglist = "";
|
||||
var tags = encodeEntities(bookmark.tags).split(' ');
|
||||
var taglist = '';
|
||||
for ( var i=0, len=tags.length; i<len; ++i ){
|
||||
taglist = taglist + "<a class=\"bookmark_tags\" href=\"?tag=" + encodeURI(tags[i]) + "\">" + tags[i] + "</a> ";
|
||||
taglist = taglist + '<a class="bookmark_tags" href="?tag=' + encodeURI(tags[i]) + '">' + tags[i] + '</a> ';
|
||||
}
|
||||
$('.bookmarks_list').append(
|
||||
"<div class=\"bookmark_single\">" +
|
||||
"<p class=\"bookmark_title\"><a href=\"" + encodeEntities(bookmark.url) + "\" target=\"_new\" class=\"bookmark_link\">" + encodeEntities(bookmark.title) + "</a></p>" +
|
||||
"<p class=\"bookmark_url\">" + encodeEntities(bookmark.url) + "</p>" +
|
||||
"<p class=\"bookmark_description\">" + encodeEntities(bookmark.description) + "</p>" +
|
||||
"<p>" + taglist + "</p>" +
|
||||
"<p class=\"bookmark_actions\"><span class=\"bookmark_delete\">Delete</span></p>" +
|
||||
"</div>"
|
||||
'<div class="bookmark_single">' +
|
||||
'<p class="bookmark_title"><a href="' + encodeEntities(bookmark.url) + '" target="_new" class="bookmark_link">' + encodeEntities(bookmark.title) + '</a></p>' +
|
||||
'<p class="bookmark_url">' + encodeEntities(bookmark.url) + '</p>' +
|
||||
'<p class="bookmark_description">' + encodeEntities(bookmark.description) + '</p>' +
|
||||
'<p>' + taglist + '</p>' +
|
||||
'<p class="bookmark_actions"><span class="bookmark_delete">Delete</span></p>' +
|
||||
'</div>'
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -79,14 +101,13 @@ function updateOnBottom() {
|
|||
function recordClick(event) {
|
||||
$.ajax({
|
||||
url: 'ajax/recordClick.php',
|
||||
data: "url=" + encodeURI($(this).attr('href')),
|
||||
data: 'url=' + encodeURI($(this).attr('href')),
|
||||
});
|
||||
return false;
|
||||
}
|
||||
|
||||
function encodeEntities(s){
|
||||
try {
|
||||
return $("<div/>").text(s).html();
|
||||
return $('<div/>').text(s).html();
|
||||
|
||||
} catch (ex) {
|
||||
return "";
|
||||
|
|
|
@ -4,10 +4,11 @@
|
|||
<input type="button" class="bookmarks_addBtn" value="Add Bookmark" />
|
||||
</div>
|
||||
<div class="bookmarks_add">
|
||||
<p><label class="bookmarks_label">URL: </label><input type="text" id="bookmark_add_url" class="bookmarks_input" /></p>
|
||||
<p><label class="bookmarks_label">Title: </label><input type="text" id="bookmark_add_title" class="bookmarks_input" /></p>
|
||||
<p><label class="bookmarks_label">Description: </label><input type="text" id="bookmark_add_description" class="bookmarks_input" /></p>
|
||||
<p><label class="bookmarks_label">Tags:</label><input type="text" id="bookmark_add_tags" class="bookmarks_input" /></p>
|
||||
<p><label class="bookmarks_label">Address</label><input type="text" id="bookmark_add_url" class="bookmarks_input" /></p>
|
||||
<p><label class="bookmarks_label">Title</label><input type="text" id="bookmark_add_title" class="bookmarks_input" /></p>
|
||||
<p><label class="bookmarks_label">Description</label><input type="text" id="bookmark_add_description" class="bookmarks_input" /></p>
|
||||
<p><label class="bookmarks_label">Tags</label><input type="text" id="bookmark_add_tags" class="bookmarks_input" /></p>
|
||||
<p><label class="bookmarks_label"> </label><label class="bookmarks_hint">Hint: Use space to separate tags.</label></p>
|
||||
<p><label class="bookmarks_label"></label><input type="submit" id="bookmark_add_submit" /></p>
|
||||
</div>
|
||||
<div class="bookmarks_list">
|
||||
|
@ -15,4 +16,4 @@
|
|||
JavaScript is needed to display your Bookmarks
|
||||
</noscript>
|
||||
You have no bookmarks
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
<?php
|
||||
$RUNTIME_NOAPPS = true;
|
||||
|
||||
require_once('../../../lib/base.php');
|
||||
require_once('../lib_public.php');
|
||||
|
||||
$path = $_GET['path'];
|
||||
echo json_encode(OC_PublicLink::getLink($path));
|
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
|
||||
OC_App::addNavigationEntry(array( "id" => "files_publiclink_administration", "order" => 2, "href" => OC_Helper::linkTo( "files_publiclink", "admin.php" ), "name" => "Public Links"));
|
||||
// OC_App::addNavigationEntry(array( "id" => "files_publiclink_administration", "order" => 2, "href" => OC_Helper::linkTo( "files_publiclink", "admin.php" ), "name" => "Public Links"));
|
||||
|
||||
|
||||
?>
|
||||
|
|
|
@ -49,7 +49,15 @@ class OC_PublicLink{
|
|||
public function getToken(){
|
||||
return $this->token;
|
||||
}
|
||||
|
||||
|
||||
public static function getLink($path) {
|
||||
$query=OC_DB::prepare("SELECT token FROM *PREFIX*publiclink WHERE user=? AND path=? LIMIT 1");
|
||||
$result=$query->execute(array(OC_User::getUser(),$path))->fetchAll();
|
||||
if(count($result)>0){
|
||||
return $result[0]['token'];
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* gets all public links
|
||||
* @return array
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
<?php
|
||||
$RUNTIME_NOAPPS = true;
|
||||
|
||||
require_once('../../../lib/base.php');
|
||||
require_once('../lib_share.php');
|
||||
|
||||
$userDirectory = "/".OC_User::getUser()."/files";
|
||||
$source = $userDirectory.$_GET['source'];
|
||||
$users = OC_Share::getMySharedItem($source);
|
||||
$path = $source;
|
||||
for ($i = 0; $i < count($users); $i++) {
|
||||
if ($users[$i]['uid_shared_with'] == OC_Share::PUBLICLINK) {
|
||||
$users[$i]['token'] = OC_Share::getTokenFromSource($source);
|
||||
}
|
||||
}
|
||||
$source = dirname($source);
|
||||
while ($source != "" && $source != "/" && $source != "." && $source != $userDirectory) {
|
||||
$values = array_values(OC_Share::getMySharedItem($source));
|
||||
if (count($values) > 0) {
|
||||
$parentUsers = array();
|
||||
for ($i = 0; $i < count($values); $i++) {
|
||||
if ($values[$i]['uid_shared_with'] == OC_Share::PUBLICLINK) {
|
||||
$values[$i]['token'] = OC_Share::getTokenFromSource($source)."&path=".substr($path, strlen($source));
|
||||
}
|
||||
$parentUsers[basename($source)."-".$i] = $values[$i];
|
||||
}
|
||||
$users = array_merge($users, $parentUsers);
|
||||
}
|
||||
$source = dirname($source);
|
||||
}
|
||||
if (!empty($users)) {
|
||||
echo json_encode($users);
|
||||
}
|
||||
|
||||
?>
|
|
@ -0,0 +1,12 @@
|
|||
<?php
|
||||
$RUNTIME_NOAPPS = true;
|
||||
|
||||
require_once('../../../lib/base.php');
|
||||
require_once('../lib_share.php');
|
||||
|
||||
$source = "/".OC_User::getUser()."/files".$_GET['source'];
|
||||
$uid_shared_with = $_GET['uid_shared_with'];
|
||||
$permissions = $_GET['permissions'];
|
||||
OC_Share::setPermissions($source, $uid_shared_with, $permissions);
|
||||
|
||||
?>
|
|
@ -0,0 +1,24 @@
|
|||
<?php
|
||||
$RUNTIME_NOAPPS = true;
|
||||
|
||||
require_once('../../../lib/base.php');
|
||||
require_once('../lib_share.php');
|
||||
|
||||
$sources = explode(";", $_POST['sources']);
|
||||
$uid_shared_with = $_POST['uid_shared_with'];
|
||||
$permissions = $_POST['permissions'];
|
||||
foreach ($sources as $source) {
|
||||
if ($source && OC_FILESYSTEM::file_exists($source) && OC_FILESYSTEM::is_readable($source)) {
|
||||
$source = "/".OC_User::getUser()."/files".$source;
|
||||
try {
|
||||
$shared = new OC_Share($source, $uid_shared_with, $permissions);
|
||||
if ($uid_shared_with == OC_Share::PUBLICLINK) {
|
||||
echo $shared->getToken();
|
||||
}
|
||||
} catch (Exception $exception) {
|
||||
echo "false";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
|
@ -0,0 +1,11 @@
|
|||
<?php
|
||||
$RUNTIME_NOAPPS = true;
|
||||
|
||||
require_once('../../../lib/base.php');
|
||||
require_once('../lib_share.php');
|
||||
|
||||
$source = "/".OC_User::getUser()."/files".$_GET['source'];
|
||||
$uid_shared_with = $_GET['uid_shared_with'];
|
||||
OC_Share::unshare($source, $uid_shared_with);
|
||||
|
||||
?>
|
|
@ -0,0 +1,28 @@
|
|||
<?php
|
||||
$RUNTIME_NOAPPS = true;
|
||||
|
||||
require_once('../../../lib/base.php');
|
||||
|
||||
if (!OC_User::isLoggedIn()) {
|
||||
echo json_encode(array("status" => "error", "data" => array("message" => "Authentication error")));
|
||||
exit();
|
||||
}
|
||||
$users = array();
|
||||
$ocusers = OC_User::getUsers();
|
||||
$self = OC_User::getUser();
|
||||
$groups = OC_Group::getUserGroups($self);
|
||||
$users[] = "<optgroup label='Users'>";
|
||||
foreach ($ocusers as $user) {
|
||||
if ($user != $self) {
|
||||
$users[] = "<option value='".$user."'>".$user."</option>";
|
||||
}
|
||||
}
|
||||
$users[] = "</optgroup>";
|
||||
$users[] = "<optgroup label='Groups'>";
|
||||
foreach ($groups as $group) {
|
||||
$users[] = "<option value='".$group."'>".$group."</option>";
|
||||
}
|
||||
$users[] = "</optgroup>";
|
||||
echo json_encode($users);
|
||||
|
||||
?>
|
|
@ -0,0 +1,12 @@
|
|||
<?php
|
||||
|
||||
require_once('apps/files_sharing/lib_share.php');
|
||||
require_once('apps/files_sharing/sharedstorage.php');
|
||||
|
||||
OC_Filesystem::registerStorageType("shared", "OC_Filestorage_Shared", array("datadir"=>"string"));
|
||||
OC_Util::addScript("files_sharing", "share");
|
||||
OC_Util::addScript("3rdparty", "chosen/chosen.jquery.min");
|
||||
OC_Util::addStyle( 'files_sharing', 'sharing' );
|
||||
OC_Util::addStyle("3rdparty", "chosen/chosen");
|
||||
|
||||
?>
|
|
@ -0,0 +1,42 @@
|
|||
<?xml version="1.0" encoding="ISO-8859-1" ?>
|
||||
<database>
|
||||
<name>*dbname*</name>
|
||||
<create>true</create>
|
||||
<overwrite>false</overwrite>
|
||||
<charset>latin1</charset>
|
||||
<table>
|
||||
<name>*dbprefix*sharing</name>
|
||||
<declaration>
|
||||
<field>
|
||||
<name>uid_owner</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>64</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>uid_shared_with</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>64</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>source</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>128</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>target</name>
|
||||
<type>text</type>
|
||||
<notnull>true</notnull>
|
||||
<length>128</length>
|
||||
</field>
|
||||
<field>
|
||||
<name>permissions</name>
|
||||
<type>integer</type>
|
||||
<notnull>true</notnull>
|
||||
<length>1</length>
|
||||
</field>
|
||||
</declaration>
|
||||
</table>
|
||||
</database>
|
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0"?>
|
||||
<info>
|
||||
<id>files_sharing</id>
|
||||
<name>Share Files</name>
|
||||
<description>File sharing between users</description>
|
||||
<version>0.1</version>
|
||||
<licence>AGPL</licence>
|
||||
<author>Michael Gapczynski</author>
|
||||
<require>2</require>
|
||||
</info>
|
|
@ -0,0 +1,8 @@
|
|||
#dropdown { display:block; position:absolute; z-index:100; width:16em; right:0; margin-right:7em; background:#eee; padding:1em;
|
||||
-moz-box-shadow:0 1px 1px #777; -webkit-box-shadow:0 1px 1px #777; box-shadow:0 1px 1px #777;
|
||||
-moz-border-radius-bottomleft:1em; -webkit-border-bottom-left-radius:1em; border-bottom-left-radius:1em;
|
||||
-moz-border-radius-bottomright:1em; -webkit-border-bottom-right-radius:1em; border-bottom-right-radius:1em; }
|
||||
#shared_list { padding:0.5em; list-style-type: none; }
|
||||
#public { border-top:1px solid #ddd; padding-top:0.5em; }
|
||||
a.unshare { float:right; display:inline; margin:0 .5em; padding:.3em .3em 0 .3em !important; opacity:.5; }
|
||||
a.unshare:hover { opacity:1; }
|
|
@ -0,0 +1,83 @@
|
|||
<?php
|
||||
$RUNTIME_NOAPPS=true; //no need to load the apps
|
||||
$RUNTIME_NOSETUPFS=true; //don't setup the fs yet
|
||||
|
||||
require_once '../../lib/base.php';
|
||||
require_once 'lib_share.php';
|
||||
|
||||
//get the path of the shared file
|
||||
$token = $_GET['token'];
|
||||
$source = OC_Share::getSource($token);
|
||||
if ($source !== false) {
|
||||
// TODO Manipulating the string may not be the best choice. Is there an alternative?
|
||||
$user = substr($source, 1, strpos($source, "/", 1) - 1);
|
||||
OC_Util::setupFS($user);
|
||||
$source = substr($source, strlen("/".$user."/files"));
|
||||
$subPath = isset( $_GET['path'] ) ? $_GET['path'] : '';
|
||||
$root = $source;
|
||||
$source .= $subPath;
|
||||
if (!OC_Filesystem::file_exists($source)) {
|
||||
header("HTTP/1.0 404 Not Found");
|
||||
$tmpl = new OC_Template("", "404", "guest");
|
||||
$tmpl->assign("file", $subPath);
|
||||
$tmpl->printPage();
|
||||
exit;
|
||||
}
|
||||
if (OC_Filesystem::is_dir($source)) {
|
||||
$files = array();
|
||||
$rootLength = strlen($root);
|
||||
foreach (OC_Files::getdirectorycontent($source) as $i) {
|
||||
$i['date'] = OC_Util::formatDate($i['mtime'] );
|
||||
if ($i['type'] == 'file') {
|
||||
$i['extention'] = substr($i['name'], strrpos($i['name'], "."));
|
||||
$i['basename'] = substr($i['name'], 0, strrpos($i['name'], "."));
|
||||
}
|
||||
$i['directory'] = substr($i['directory'], $rootLength);
|
||||
if ($i['directory'] == "/") {
|
||||
$i['directory'] = "";
|
||||
}
|
||||
$files[] = $i;
|
||||
}
|
||||
// Make breadcrumb
|
||||
$breadcrumb = array();
|
||||
$pathtohere = "";
|
||||
foreach (explode("/", $subPath) as $i) {
|
||||
if ($i != "") {
|
||||
$pathtohere .= "/$i";
|
||||
$breadcrumb[] = array("dir" => $pathtohere, "name" => $i);
|
||||
}
|
||||
}
|
||||
// Load the files we need
|
||||
OC_Util::addStyle("files", "files");
|
||||
$breadcrumbNav = new OC_Template("files", "part.breadcrumb", "");
|
||||
$breadcrumbNav->assign("breadcrumb", $breadcrumb);
|
||||
$breadcrumbNav->assign("baseURL", OC_Helper::linkTo("files_sharing", "get.php")."?token=".$token."&path=");
|
||||
$list = new OC_Template("files", "part.list", "");
|
||||
$list->assign("files", $files);
|
||||
$list->assign("baseURL", OC_Helper::linkTo("files_sharing", "get.php")."?token=".$token."&path=");
|
||||
$list->assign("downloadURL", OC_Helper::linkTo("files_sharing", "get.php")."?token=".$token."&path=");
|
||||
$tmpl = new OC_Template("files", "index", "user");
|
||||
$tmpl->assign("fileList", $list->fetchPage());
|
||||
$tmpl->assign("breadcrumb", $breadcrumbNav->fetchPage());
|
||||
$tmpl->printPage();
|
||||
} else {
|
||||
//get time mimetype and set the headers
|
||||
$mimetype = OC_Filesystem::getMimeType($source);
|
||||
header("Content-Transfer-Encoding: binary");
|
||||
header("Expires: 0");
|
||||
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
|
||||
header("Pragma: public");
|
||||
header("Content-Disposition: filename='".basename($source)."'");
|
||||
header("Content-Type: " . $mimetype);
|
||||
header("Content-Length: " . OC_Filesystem::filesize($source));
|
||||
//download the file
|
||||
@ob_clean();
|
||||
OC_Filesystem::readfile($source);
|
||||
}
|
||||
} else {
|
||||
header("HTTP/1.0 404 Not Found");
|
||||
$tmpl = new OC_Template("", "404", "guest");
|
||||
$tmpl->printPage();
|
||||
die();
|
||||
}
|
||||
?>
|
|
@ -0,0 +1,54 @@
|
|||
$(document).ready(function() {
|
||||
$( "#source" ).autocomplete({
|
||||
source: "../../files/ajax/autocomplete.php",
|
||||
minLength: 1
|
||||
});
|
||||
$( "#uid_shared_with" ).autocomplete({
|
||||
source: "ajax/userautocomplete.php",
|
||||
minLength: 1
|
||||
});
|
||||
$("button.delete").live('click', function( event ) {
|
||||
event.preventDefault();
|
||||
// var row=$(this);
|
||||
var source=$(this).attr('data-source');
|
||||
var uid_shared_with=$(this).attr('data-uid_shared_with');
|
||||
var data='source='+encodeURIComponent(source)+'&uid_shared_with='+encodeURIComponent(uid_shared_with);
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: 'ajax/unshare.php',
|
||||
cache: false,
|
||||
data: data
|
||||
// success: function(){
|
||||
// row.remove();
|
||||
// }
|
||||
});
|
||||
});
|
||||
$('#share_item').submit(function( event ){
|
||||
event.preventDefault();
|
||||
var source=$('#source').val();
|
||||
var uid_shared_with=$('#uid_shared_with').val();
|
||||
var permissions=$('#permissions').val()||0;
|
||||
var data='source='+source+'&uid_shared_with='+uid_shared_with+'&permissions='+permissions;
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: 'ajax/share.php',
|
||||
cache: false,
|
||||
data: data,
|
||||
// success: function(token){
|
||||
// if(token){
|
||||
// var html="<tr class='link' id='"+token+"'>";
|
||||
// html+="<td class='path'>"+path+"</td>";
|
||||
// var expire=($('#expire').val())?$('#expire').val():'Never'
|
||||
// html+="<td class='expire'>"+expire+"</td>"
|
||||
// html+="<td class='link'><a href='get.php?token="+token+"'>"+$('#baseUrl').val()+"?token="+token+"</a></td>"
|
||||
// html+="<td><button class='delete fancybutton' data-token='"+token+"'>Delete</button></td>"
|
||||
// html+="</tr>"
|
||||
// $(html).insertBefore($('#newlink_row'));
|
||||
// $('#expire').val('');
|
||||
// $('#expire_time').val('');
|
||||
// $('#path').val('');
|
||||
// }
|
||||
// }
|
||||
});
|
||||
});
|
||||
});
|
|
@ -0,0 +1,232 @@
|
|||
$(document).ready(function() {
|
||||
if (typeof FileActions !== 'undefined') {
|
||||
FileActions.register('all', 'Share', function(filename) {
|
||||
var icon;
|
||||
var file = $('#dir').val()+'/'+filename;
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: OC.linkTo('files_sharing', 'ajax/getitem.php'),
|
||||
dataType: 'json',
|
||||
data: 'source='+file,
|
||||
async: false,
|
||||
success: function(users) {
|
||||
if (users) {
|
||||
icon = OC.imagePath('core', 'actions/shared');
|
||||
$.each(users, function(index, row) {
|
||||
if (row.uid_shared_with == 'public') {
|
||||
icon = OC.imagePath('core', 'actions/public');
|
||||
}
|
||||
});
|
||||
} else {
|
||||
icon = OC.imagePath('core', 'actions/share');
|
||||
}
|
||||
}
|
||||
});
|
||||
return icon;
|
||||
}, function(filename) {
|
||||
if (($('#dropdown').length > 0)) {
|
||||
$('#dropdown').hide('blind', function() {
|
||||
var dropdownFile = $('#dropdown').data('file')
|
||||
var file = $('#dir').val()+'/'+filename;
|
||||
$('#dropdown').remove();
|
||||
$('tr').removeClass('mouseOver');
|
||||
if (dropdownFile != file) {
|
||||
createDropdown(filename, file);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
createDropdown(filename, $('#dir').val()+'/'+filename);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
$('.share').click(function(event) {
|
||||
event.preventDefault();
|
||||
var filenames = getSelectedFiles('name');
|
||||
var length = filenames.length;
|
||||
var files = '';
|
||||
for (var i = 0; i < length; i++) {
|
||||
files += $('#dir').val()+'/'+filenames[i]+';';
|
||||
}
|
||||
createDropdown(false, files);
|
||||
});
|
||||
|
||||
$(this).click(function(event) {
|
||||
if (!($(event.target).hasClass('drop')) && $(event.target).parents().index($('#dropdown')) == -1) {
|
||||
if ($('#dropdown').is(':visible')) {
|
||||
$('#dropdown').hide('blind', function() {
|
||||
$('#dropdown').remove();
|
||||
$('tr').removeClass('mouseOver');
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
$('#share_with').live('change', function() {
|
||||
var source = $('#dropdown').data('file');
|
||||
var uid_shared_with = $(this).val();
|
||||
var permissions = 0;
|
||||
var data = 'sources='+encodeURIComponent(source)+'&uid_shared_with='+encodeURIComponent(uid_shared_with)+'&permissions='+encodeURIComponent(permissions);
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: OC.linkTo('files_sharing','ajax/share.php'),
|
||||
cache: false,
|
||||
data: data,
|
||||
success: function(result) {
|
||||
if (result !== 'false') {
|
||||
addUser(uid_shared_with, permissions, false);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('#shared_list > li').live('mouseenter', function(event) {
|
||||
$(':hidden', this).show();
|
||||
});
|
||||
|
||||
$('#shared_list > li').live('mouseleave', function(event) {
|
||||
$('a', this).hide();
|
||||
if (!$('input:[type=checkbox]', this).is(':checked')) {
|
||||
$('input:[type=checkbox]', this).hide();
|
||||
$('label', this).hide();
|
||||
}
|
||||
});
|
||||
|
||||
$('.permissions').live('change', function() {
|
||||
var permissions = (this.checked) ? 1 : 0;
|
||||
var source = $('#dropdown').data('file');
|
||||
var uid_shared_with = $(this).parent().data('uid_shared_with');
|
||||
var data = 'source='+encodeURIComponent(source)+'&uid_shared_with='+encodeURIComponent(uid_shared_with)+'&permissions='+encodeURIComponent(permissions);
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: OC.linkTo('files_sharing','ajax/setpermissions.php'),
|
||||
cache: false,
|
||||
data: data
|
||||
});
|
||||
});
|
||||
|
||||
$('.unshare').live('click', function(event) {
|
||||
event.preventDefault();
|
||||
var user = $(this).parent();
|
||||
var source = $('#dropdown').data('file');
|
||||
var uid_shared_with = user.data('uid_shared_with');
|
||||
var data = 'source='+encodeURIComponent(source)+'&uid_shared_with='+encodeURIComponent(uid_shared_with);
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: OC.linkTo('files_sharing','ajax/unshare.php'),
|
||||
cache: false,
|
||||
data: data,
|
||||
success: function() {
|
||||
var option = "<option value='"+uid_shared_with+"'>"+uid_shared_with+"</option>";
|
||||
$(user).remove();
|
||||
$(option).appendTo('#share_with');
|
||||
$('#share_with').trigger('liszt:updated');
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('#makelink').live('change', function() {
|
||||
if (this.checked) {
|
||||
var source = $('#dropdown').data('file');
|
||||
var uid_shared_with = "public";
|
||||
var permissions = 0;
|
||||
var data = 'sources='+encodeURIComponent(source)+'&uid_shared_with='+encodeURIComponent(uid_shared_with)+'&permissions='+encodeURIComponent(permissions);
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: OC.linkTo('files_sharing','ajax/share.php'),
|
||||
cache: false,
|
||||
data: data,
|
||||
success: function(token) {
|
||||
if (token) {
|
||||
showPublicLink(token);
|
||||
}
|
||||
}
|
||||
});
|
||||
} else {
|
||||
var source = $('#dropdown').data('file');
|
||||
var uid_shared_with = "public";
|
||||
var data = 'source='+encodeURIComponent(source)+'&uid_shared_with='+encodeURIComponent(uid_shared_with);
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: OC.linkTo('files_sharing','ajax/unshare.php'),
|
||||
cache: false,
|
||||
data: data,
|
||||
success: function(){
|
||||
$('#link').hide('blind');
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
$('#link').live('click', function() {
|
||||
$(this).focus();
|
||||
$(this).select();
|
||||
});
|
||||
});
|
||||
|
||||
function createDropdown(filename, files) {
|
||||
var html = "<div id='dropdown' class='drop' data-file='"+files+"'>";
|
||||
html += "<div id='private'>";
|
||||
html += "<select data-placeholder='User or Group' style='width:220px;' id='share_with' class='chzen-select'>";
|
||||
html += "<option value=''></option>";
|
||||
html += "</select>";
|
||||
html += "<ul id='shared_list'></ul>";
|
||||
html += "</div>";
|
||||
html += "<div id='public'>";
|
||||
html += "<input type='checkbox' name='makelink' id='makelink' value='1' /><label for='makelink'>make public</label>";
|
||||
//html += "<input type='checkbox' name='public_link_write' id='public_link_write' value='1' /><label for='public_link_write'>allow upload</label>";
|
||||
html += "<br />";
|
||||
html += "<input id='link' style='display:none; width:90%;' />";
|
||||
html += "</div>";
|
||||
if (filename) {
|
||||
$('tr[data-file="'+filename+'"]').addClass('mouseOver');
|
||||
$(html).appendTo($('tr[data-file="'+filename+'"] td.filename'));
|
||||
} else {
|
||||
$(html).appendTo($('thead .share'));
|
||||
}
|
||||
$.getJSON(OC.linkTo('files_sharing', 'ajax/userautocomplete.php'), function(users) {
|
||||
if (users) {
|
||||
$.each(users, function(index, row) {
|
||||
$(row).appendTo('#share_with');
|
||||
});
|
||||
$('#share_with').trigger('liszt:updated');
|
||||
}
|
||||
});
|
||||
$.getJSON(OC.linkTo('files_sharing', 'ajax/getitem.php'), { source: files }, function(users) {
|
||||
if (users) {
|
||||
$.each(users, function(index, row) {
|
||||
if (row.uid_shared_with == 'public') {
|
||||
showPublicLink(row.token);
|
||||
} else if (isNaN(index)) {
|
||||
addUser(row.uid_shared_with, row.permissions, index.substr(0, index.lastIndexOf('-')));
|
||||
} else {
|
||||
addUser(row.uid_shared_with, row.permissions, false);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
$('#dropdown').show('blind');
|
||||
$('#share_with').chosen();
|
||||
}
|
||||
|
||||
function addUser(uid_shared_with, permissions, parentFolder) {
|
||||
if (parentFolder) {
|
||||
var user = "<li>Parent folder "+parentFolder+" shared with "+uid_shared_with+"</li>";
|
||||
} else {
|
||||
var checked = ((permissions > 0) ? "checked='checked'" : "style='display:none;'");
|
||||
var style = ((permissions == 0) ? "style='display:none;'" : "");
|
||||
var user = "<li data-uid_shared_with='"+uid_shared_with+"'>"+uid_shared_with;
|
||||
user += "<input type='checkbox' name='permissions' id='"+uid_shared_with+"' class='permissions' "+checked+"/><label for='"+uid_shared_with+"' "+style+">can edit</label>";
|
||||
user += "<a href='' title='Unshare' class='unshare' style='display:none;'><img class='svg' src='"+OC.imagePath('core','actions/delete')+"'/></a></li>";
|
||||
}
|
||||
$('#share_with option[value="'+uid_shared_with+'"]').remove();
|
||||
$('#share_with').trigger('liszt:updated');
|
||||
$(user).appendTo('#shared_list');
|
||||
}
|
||||
|
||||
function showPublicLink(token) {
|
||||
$('#makelink').attr('checked', true);
|
||||
$('#link').data('token', token);
|
||||
$('#link').val(parent.location.protocol+"//"+location.host+OC.linkTo('files_sharing','get.php')+'?token='+token);
|
||||
$('#link').show('blind');
|
||||
}
|
|
@ -0,0 +1,403 @@
|
|||
<?php
|
||||
/**
|
||||
* ownCloud
|
||||
*
|
||||
* @author Michael Gapczynski
|
||||
* @copyright 2011 Michael Gapczynski GapczynskiM@gmail.com
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 3 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public
|
||||
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
OC_Hook::connect("OC_FILESYSTEM","post_delete", "OC_Share", "deleteItem");
|
||||
OC_Hook::connect("OC_FILESYSTEM","post_rename", "OC_Share", "renameItem");
|
||||
|
||||
/**
|
||||
* This class manages shared items within the database.
|
||||
*/
|
||||
class OC_Share {
|
||||
|
||||
const WRITE = 1;
|
||||
const DELETE = 2;
|
||||
const UNSHARED = -1;
|
||||
const PUBLICLINK = "public";
|
||||
|
||||
private $token;
|
||||
|
||||
/**
|
||||
* Share an item, adds an entry into the database
|
||||
* @param $source The source location of the item
|
||||
* @param $uid_shared_with The user or group to share the item with
|
||||
* @param $permissions The permissions, use the constants WRITE and DELETE
|
||||
*/
|
||||
public function __construct($source, $uid_shared_with, $permissions) {
|
||||
$uid_owner = OC_User::getUser();
|
||||
$query = OC_DB::prepare("INSERT INTO *PREFIX*sharing VALUES(?,?,?,?,?)");
|
||||
if ($uid_shared_with == self::PUBLICLINK) {
|
||||
$token = sha1("$uid_shared_with-$source");
|
||||
$query->execute(array($uid_owner, self::PUBLICLINK, $source, $token, $permissions));
|
||||
$this->token = $token;
|
||||
} else {
|
||||
if (OC_Group::groupExists($uid_shared_with)) {
|
||||
$gid = $uid_shared_with;
|
||||
$uid_shared_with = OC_Group::usersInGroup($gid);
|
||||
// Remove the owner from the list of users in the group
|
||||
$uid_shared_with = array_diff($uid_shared_with, array($uid_owner));
|
||||
} else if (OC_User::userExists($uid_shared_with)) {
|
||||
$gid = null;
|
||||
$uid_shared_with = array($uid_shared_with);
|
||||
} else {
|
||||
throw new Exception($uid_shared_with." is not a user");
|
||||
}
|
||||
foreach ($uid_shared_with as $uid) {
|
||||
// Check if this item is already shared with the user
|
||||
$checkSource = OC_DB::prepare("SELECT source FROM *PREFIX*sharing WHERE source = ? AND uid_shared_with ".self::getUsersAndGroups($uid));
|
||||
$resultCheckSource = $checkSource->execute(array($source, $uid))->fetchAll();
|
||||
// TODO Check if the source is inside a folder
|
||||
if (count($resultCheckSource) > 0 && !isset($gid)) {
|
||||
throw new Exception("This item is already shared with ".$uid);
|
||||
}
|
||||
// Check if the target already exists for the user, if it does append a number to the name
|
||||
$target = "/".$uid."/files/Shared/".basename($source);
|
||||
if (self::getSource($target)) {
|
||||
if ($pos = strrpos($target, ".")) {
|
||||
$name = substr($target, 0, $pos);
|
||||
$ext = substr($target, $pos);
|
||||
} else {
|
||||
$name = $target;
|
||||
$ext = "";
|
||||
}
|
||||
$counter = 1;
|
||||
while ($checkTarget !== false) {
|
||||
$newTarget = $name."_".$counter.$ext;
|
||||
$checkTarget = self::getSource($newTarget);
|
||||
$counter++;
|
||||
}
|
||||
$target = $newTarget;
|
||||
}
|
||||
if (isset($gid)) {
|
||||
$uid = $uid."@".$gid;
|
||||
}
|
||||
$query->execute(array($uid_owner, $uid, $source, $target, $permissions));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove any duplicate or trailing '/' from the path
|
||||
* @return A clean path
|
||||
*/
|
||||
private static function cleanPath($path) {
|
||||
$path = rtrim($path, "/");
|
||||
return preg_replace('{(/)\1+}', "/", $path);
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a string to be used for searching for uid_shared_with that handles both users and groups
|
||||
* @param $uid (Optional) The uid to get the user groups for, a gid to get the users in a group, or if not set the current user
|
||||
* @return An IN operator as a string
|
||||
*/
|
||||
private static function getUsersAndGroups($uid = null) {
|
||||
$in = " IN(";
|
||||
if (isset($uid) && OC_Group::groupExists($uid)) {
|
||||
$users = OC_Group::usersInGroup($uid);
|
||||
foreach ($users as $user) {
|
||||
// Add a comma only if the the current element isn't the last
|
||||
if ($user !== end($users)) {
|
||||
$in .= "'".$user."@".$uid."', ";
|
||||
} else {
|
||||
$in .= "'".$user."@".$uid."'";
|
||||
}
|
||||
}
|
||||
} else if (isset($uid)) {
|
||||
// TODO Check if this is necessary, only constructor needs it as IN. It would be better for other queries to just return =$uid
|
||||
$in .= "'".$uid."'";
|
||||
$groups = OC_Group::getUserGroups($uid);
|
||||
foreach ($groups as $group) {
|
||||
$in .= ", '".$uid."@".$group."'";
|
||||
}
|
||||
} else {
|
||||
$uid = OC_User::getUser();
|
||||
$in .= "'".$uid."'";
|
||||
$groups = OC_Group::getUserGroups($uid);
|
||||
foreach ($groups as $group) {
|
||||
$in .= ", '".$uid."@".$group."'";
|
||||
}
|
||||
}
|
||||
$in .= ", '".self::PUBLICLINK."'";
|
||||
$in .= ")";
|
||||
return $in;
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new entry in the database for a file inside a shared folder
|
||||
*
|
||||
* $oldTarget and $newTarget may be the same value. $oldTarget exists in case the file is being moved outside of the folder
|
||||
*
|
||||
* @param $oldTarget The current target location
|
||||
* @param $newTarget The new target location
|
||||
*/
|
||||
public static function pullOutOfFolder($oldTarget, $newTarget) {
|
||||
$folders = self::getParentFolders($oldTarget);
|
||||
$source = $folders['source'].substr($oldTarget, strlen($folders['target']));
|
||||
$item = self::getItem($folders['target']);
|
||||
$query = OC_DB::prepare("INSERT INTO *PREFIX*sharing VALUES(?,?,?,?,?)");
|
||||
$query->execute(array($item[0]['uid_owner'], OC_User::getUser(), $source, $newTarget, $item[0]['permissions']));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the item with the specified target location
|
||||
* @param $target The target location of the item
|
||||
* @return An array with the item
|
||||
*/
|
||||
public static function getItem($target) {
|
||||
$target = self::cleanPath($target);
|
||||
$query = OC_DB::prepare("SELECT uid_owner, source, permissions FROM *PREFIX*sharing WHERE target = ? AND uid_shared_with = ? LIMIT 1");
|
||||
return $query->execute(array($target, OC_User::getUser()))->fetchAll();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the item with the specified source location
|
||||
* @param $source The source location of the item
|
||||
* @return An array with the users and permissions the item is shared with
|
||||
*/
|
||||
public static function getMySharedItem($source) {
|
||||
$source = self::cleanPath($source);
|
||||
$query = OC_DB::prepare("SELECT uid_shared_with, permissions FROM *PREFIX*sharing WHERE source = ? AND uid_owner = ?");
|
||||
return $query->execute(array($source, OC_User::getUser()))->fetchAll();
|
||||
}
|
||||
/**
|
||||
* Get all items the current user is sharing
|
||||
* @return An array with all items the user is sharing
|
||||
*/
|
||||
public static function getMySharedItems() {
|
||||
$query = OC_DB::prepare("SELECT uid_shared_with, source, permissions FROM *PREFIX*sharing WHERE uid_owner = ?");
|
||||
return $query->execute(array(OC_User::getUser()))->fetchAll();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the items within a shared folder that have their own entry for the purpose of name, location, or permissions that differ from the folder itself
|
||||
*
|
||||
* Works for both target and source folders. Can be used for getting all items shared with you e.g. pass '/MTGap/files'
|
||||
*
|
||||
* @param $folder The folder of the items to look for
|
||||
* @return An array with all items in the database that are in the folder
|
||||
*/
|
||||
public static function getItemsInFolder($folder) {
|
||||
$folder = self::cleanPath($folder);
|
||||
// Append '/' in order to filter out the folder itself if not already there
|
||||
if (substr($folder, -1) !== "/") {
|
||||
$folder .= "/";
|
||||
}
|
||||
$length = strlen($folder);
|
||||
$query = OC_DB::prepare("SELECT uid_owner, source, target, permissions FROM *PREFIX*sharing WHERE SUBSTR(source, 1, ?) = ? OR SUBSTR(target, 1, ?) = ? AND uid_shared_with ".self::getUsersAndGroups());
|
||||
return $query->execute(array($length, $folder, $length, $folder))->fetchAll();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the source and target parent folders of the specified target location
|
||||
* @param $target The target location of the item
|
||||
* @return An array with the keys 'source' and 'target' with the values of the source and target parent folders
|
||||
*/
|
||||
public static function getParentFolders($target) {
|
||||
$target = self::cleanPath($target);
|
||||
$query = OC_DB::prepare("SELECT source FROM *PREFIX*sharing WHERE target = ? AND uid_shared_with".self::getUsersAndGroups()." LIMIT 1");
|
||||
// Prevent searching for user directory e.g. '/MTGap/files'
|
||||
$userDirectory = substr($target, 0, strpos($target, "files") + 5);
|
||||
$target = dirname($target);
|
||||
$result = array();
|
||||
while ($target != "" && $target != "/" && $target != "." && $target != $userDirectory) {
|
||||
// Check if the parent directory of this target location is shared
|
||||
$result = $query->execute(array($target))->fetchAll();
|
||||
if (count($result) > 0) {
|
||||
break;
|
||||
}
|
||||
$target = dirname($target);
|
||||
}
|
||||
if (count($result) > 0) {
|
||||
// Return both the source folder and the target folder
|
||||
return array("source" => $result[0]['source'], "target" => $target);
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the source location of the item at the specified target location
|
||||
* @param $target The target location of the item
|
||||
* @return Source location or false if target location is not valid
|
||||
*/
|
||||
public static function getSource($target) {
|
||||
$target = self::cleanPath($target);
|
||||
$query = OC_DB::prepare("SELECT source FROM *PREFIX*sharing WHERE target = ? AND uid_shared_with ".self::getUsersAndGroups()." LIMIT 1");
|
||||
$result = $query->execute(array($target))->fetchAll();
|
||||
if (count($result) > 0) {
|
||||
return $result[0]['source'];
|
||||
} else {
|
||||
$folders = self::getParentFolders($target);
|
||||
if ($folders == true) {
|
||||
return $folders['source'].substr($target, strlen($folders['target']));
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the user's permissions for the item at the specified target location
|
||||
* @param $target The target location of the item
|
||||
* @return The permissions, use bitwise operators to check against the constants WRITE and DELETE
|
||||
*/
|
||||
public static function getPermissions($target) {
|
||||
$target = self::cleanPath($target);
|
||||
$query = OC_DB::prepare("SELECT permissions FROM *PREFIX*sharing WHERE target = ? AND uid_shared_with ".self::getUsersAndGroups()." LIMIT 1");
|
||||
$result = $query->execute(array($target))->fetchAll();
|
||||
if (count($result) > 0) {
|
||||
return $result[0]['permissions'];
|
||||
} else {
|
||||
$folders = self::getParentFolders($target);
|
||||
if ($folders == true) {
|
||||
$result = $query->execute(array($folders['target']))->fetchAll();
|
||||
if (count($result) > 0) {
|
||||
return $result[0]['permissions'];
|
||||
}
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the token for a public link
|
||||
* @return The token of the public link, a sha1 hash
|
||||
*/
|
||||
public function getToken() {
|
||||
return $this->token;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the token for a public link
|
||||
* @param $source The source location of the item
|
||||
* @return The token of the public link, a sha1 hash
|
||||
*/
|
||||
public static function getTokenFromSource($source) {
|
||||
$query = OC_DB::prepare("SELECT target FROM *PREFIX*sharing WHERE source = ? AND uid_shared_with = ? AND uid_owner = ? LIMIT 1");
|
||||
$result = $query->execute(array($source, self::PUBLICLINK, OC_User::getUser()))->fetchAll();
|
||||
if (count($result) > 0) {
|
||||
return $result[0]['target'];
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the source location to a new value
|
||||
* @param $oldSource The current source location
|
||||
* @param $newTarget The new source location
|
||||
*/
|
||||
public static function setSource($oldSource, $newSource) {
|
||||
$oldSource = self::cleanPath($oldSource);
|
||||
$newSource = self::cleanPath($newSource);
|
||||
$query = OC_DB::prepare("UPDATE *PREFIX*sharing SET source = REPLACE(source, ?, ?) WHERE uid_owner = ?");
|
||||
$query->execute(array($oldSource, $newSource, OC_User::getUser()));
|
||||
}
|
||||
|
||||
/**
|
||||
* Set the target location to a new value
|
||||
*
|
||||
* You must use the pullOutOfFolder() function to change the target location of a file inside a shared folder if the target location differs from the folder
|
||||
*
|
||||
* @param $oldTarget The current target location
|
||||
* @param $newTarget The new target location
|
||||
*/
|
||||
public static function setTarget($oldTarget, $newTarget) {
|
||||
$oldTarget = self::cleanPath($oldTarget);
|
||||
$newTarget = self::cleanPath($newTarget);
|
||||
$query = OC_DB::prepare("UPDATE *PREFIX*sharing SET target = REPLACE(target, ?, ?) WHERE uid_shared_with ".self::getUsersAndGroups());
|
||||
$query->execute(array($oldTarget, $newTarget));
|
||||
}
|
||||
|
||||
/**
|
||||
* Change the permissions for the specified item and user
|
||||
*
|
||||
* You must construct a new shared item to change the permissions of a file inside a shared folder if the permissions differ from the folder
|
||||
*
|
||||
* @param $source The source location of the item
|
||||
* @param $uid_shared_with The user to change the permissions for
|
||||
* @param $permissions The permissions, use the constants WRITE and DELETE
|
||||
*/
|
||||
public static function setPermissions($source, $uid_shared_with, $permissions) {
|
||||
$source = self::cleanPath($source);
|
||||
$query = OC_DB::prepare("UPDATE *PREFIX*sharing SET permissions = ? WHERE SUBSTR(source, 1, ?) = ? AND uid_owner = ? AND uid_shared_with ".self::getUsersAndGroups($uid_shared_with));
|
||||
$query->execute(array($permissions, strlen($source), $source, OC_User::getUser()));
|
||||
}
|
||||
|
||||
/**
|
||||
* Unshare the item, removes it from all specified users
|
||||
*
|
||||
* You must use the pullOutOfFolder() function to unshare a file inside a shared folder and set $newTarget to nothing
|
||||
*
|
||||
* @param $source The source location of the item
|
||||
* @param $uid_shared_with Array of users to unshare the item from
|
||||
*/
|
||||
public static function unshare($source, $uid_shared_with) {
|
||||
$source = self::cleanPath($source);
|
||||
$query = OC_DB::prepare("DELETE FROM *PREFIX*sharing WHERE SUBSTR(source, 1, ?) = ? AND uid_owner = ? AND uid_shared_with ".self::getUsersAndGroups($uid_shared_with));
|
||||
$query->execute(array(strlen($source), $source, OC_User::getUser()));
|
||||
}
|
||||
|
||||
/**
|
||||
* Unshare the item from the current user, removes it only from the database and doesn't touch the source file
|
||||
*
|
||||
* You must use the pullOutOfFolder() function to unshare a file inside a shared folder and set $newTarget to nothing
|
||||
*
|
||||
* @param $target The target location of the item
|
||||
*/
|
||||
public static function unshareFromMySelf($target, $delete = true) {
|
||||
$target = self::cleanPath($target);
|
||||
if ($delete) {
|
||||
$query = OC_DB::prepare("DELETE FROM *PREFIX*sharing WHERE SUBSTR(target, 1, ?) = ? AND uid_shared_with ".self::getUsersAndGroups());
|
||||
$query->execute(array(strlen($target), $target));
|
||||
} else {
|
||||
$query = OC_DB::prepare("UPDATE *PREFIX*sharing SET permissions = ? WHERE SUBSTR(target, 1, ?) = ? AND uid_shared_with ".self::getUsersAndGroups());
|
||||
$query->execute(array(self::UNSHARED, strlen($target), $target));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the item from the database, the owner deleted the file
|
||||
* @param $arguments Array of arguments passed from OC_HOOK
|
||||
*/
|
||||
public static function deleteItem($arguments) {
|
||||
$source = "/".OC_User::getUser()."/files".$arguments['path'];
|
||||
$source = self::cleanPath($source);
|
||||
$query = OC_DB::prepare("DELETE FROM *PREFIX*sharing WHERE SUBSTR(source, 1, ?) = ? AND uid_owner = ?");
|
||||
$query->execute(array(strlen($source), $source, OC_User::getUser()));
|
||||
}
|
||||
|
||||
/**
|
||||
* Rename the item in the database, the owner renamed the file
|
||||
* @param $arguments Array of arguments passed from OC_HOOK
|
||||
*/
|
||||
public static function renameItem($arguments) {
|
||||
$oldSource = "/".OC_User::getUser()."/files".$arguments['oldpath'];
|
||||
$oldSource = self::cleanPath($oldSource);
|
||||
$newSource = "/".OC_User::getUser()."/files".$arguments['newpath'];
|
||||
$newSource = self::cleanPath($newSource);
|
||||
self::setSource($oldSource, $newSource);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?>
|
|
@ -0,0 +1,39 @@
|
|||
<?php
|
||||
/**
|
||||
* ownCloud
|
||||
*
|
||||
* @author Michael Gapczynski
|
||||
* @copyright 2011 Michael Gapczynski GapczynskiM@gmail.com
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 3 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public
|
||||
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
require_once('../../lib/base.php');
|
||||
require_once('lib_share.php');
|
||||
|
||||
if (!OC_User::isLoggedIn()){
|
||||
header( "Location: ".OC_HELPER::linkTo( "index.php" ));
|
||||
exit();
|
||||
}
|
||||
|
||||
OC_App::setActiveNavigationEntry("files_sharing_list");
|
||||
|
||||
OC_Util::addScript("files_sharing", "list");
|
||||
|
||||
$tmpl = new OC_Template("files_sharing", "list", "user");
|
||||
$tmpl->assign("shared_items", OC_Share::getMySharedItems());
|
||||
$tmpl->printPage();
|
||||
|
||||
?>
|
|
@ -0,0 +1,580 @@
|
|||
<?php
|
||||
/**
|
||||
* ownCloud
|
||||
*
|
||||
* @author Michael Gapczynski
|
||||
* @copyright 2011 Michael Gapczynski GapczynskiM@gmail.com
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 3 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public
|
||||
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
require_once( 'lib_share.php' );
|
||||
|
||||
/**
|
||||
* Convert target path to source path and pass the function call to the correct storage provider
|
||||
*/
|
||||
class OC_Filestorage_Shared extends OC_Filestorage {
|
||||
|
||||
private $datadir;
|
||||
private $sourcePaths = array();
|
||||
|
||||
public function __construct($arguments) {
|
||||
$this->datadir = $arguments['datadir'];
|
||||
if (OC_Share::getItemsInFolder($this->datadir)) {
|
||||
if (!OC_Filesystem::is_dir($this->datadir)) {
|
||||
OC_Filesystem::mkdir($this->datadir);
|
||||
}
|
||||
} else if (OC_Filesystem::is_dir($this->datadir)) {
|
||||
OC_Filesystem::rmdir($this->datadir);
|
||||
}
|
||||
$this->datadir .= "/";
|
||||
}
|
||||
|
||||
public function getInternalPath($path) {
|
||||
$mountPoint = OC_Filesystem::getMountPoint($path);
|
||||
$internalPath = substr($path, strlen($mountPoint));
|
||||
return $internalPath;
|
||||
}
|
||||
|
||||
public function getSource($target) {
|
||||
$target = $this->datadir.$target;
|
||||
if (array_key_exists($target, $this->sourcePaths)) {
|
||||
return $this->sourcePaths[$target];
|
||||
} else {
|
||||
$source = OC_Share::getSource($target);
|
||||
$this->sourcePaths[$target] = $source;
|
||||
return $source;
|
||||
}
|
||||
}
|
||||
|
||||
public function mkdir($path) {
|
||||
if ($path == "" || $path == "/" || !$this->is_writeable($path)) {
|
||||
return false;
|
||||
} else {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->mkdir($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function rmdir($path) {
|
||||
// The folder will be removed from the database, but won't be deleted from the owner's filesystem
|
||||
OC_Share::unshareFromMySelf($this->datadir.$path);
|
||||
$this->clearFolderSizeCache($path);
|
||||
}
|
||||
|
||||
public function opendir($path) {
|
||||
if ($path == "" || $path == "/") {
|
||||
global $FAKEDIRS;
|
||||
$path = $this->datadir.$path;
|
||||
$sharedItems = OC_Share::getItemsInFolder($path);
|
||||
if (empty($sharedItems)) {
|
||||
return false;
|
||||
}
|
||||
$files = array();
|
||||
foreach ($sharedItems as $item) {
|
||||
// If item is in the root of the shared storage provider add it to the fakedirs
|
||||
if (dirname($item['target'])."/" == $path) {
|
||||
$files[] = basename($item['target']);
|
||||
}
|
||||
}
|
||||
$FAKEDIRS['shared'] = $files;
|
||||
return opendir('fakedir://shared');
|
||||
} else {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
$dh = $storage->opendir($this->getInternalPath($source));
|
||||
// Remove any duplicate or trailing '/'
|
||||
$path = rtrim($this->datadir.$path, "/");
|
||||
$path = preg_replace('{(/)\1+}', "/", $path);
|
||||
$modifiedItems = OC_Share::getItemsInFolder($source);
|
||||
if ($modifiedItems && $dh) {
|
||||
global $FAKEDIRS;
|
||||
$sources = array();
|
||||
$targets = array();
|
||||
foreach ($modifiedItems as $item) {
|
||||
// If the item is in the current directory and has a different name than the source, add it to the arrays
|
||||
if (dirname($item['target']) == $path) {
|
||||
// If the item was unshared from self, add it it to the arrays
|
||||
if ($item['permissions'] == OC_Share::UNSHARED) {
|
||||
$sources[] = basename($item['source']);
|
||||
$targets[] = "";
|
||||
} else {
|
||||
$sources[] = basename($item['source']);
|
||||
$targets[] = basename($item['target']);
|
||||
}
|
||||
}
|
||||
}
|
||||
// Don't waste time if there aren't any modified items in the current directory
|
||||
if (empty($sources)) {
|
||||
return $dh;
|
||||
} else {
|
||||
$files = array();
|
||||
while (($filename = readdir($dh)) !== false) {
|
||||
if ($filename != "." && $filename != "..") {
|
||||
// If the file isn't in the sources array it isn't modified and can be added as is
|
||||
if (!in_array($filename, $sources)) {
|
||||
$files[] = $filename;
|
||||
// The file has a different name than the source and is added to the fakedirs
|
||||
} else {
|
||||
$target = $targets[array_search($filename, $sources)];
|
||||
// Don't add the file if it was unshared from self by the user
|
||||
if ($target != "") {
|
||||
$files[] = $target;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
$FAKEDIRS['shared'] = $files;
|
||||
return opendir('fakedir://shared');
|
||||
}
|
||||
} else {
|
||||
return $dh;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function is_dir($path) {
|
||||
if ($path == "" || $path == "/") {
|
||||
return true;
|
||||
} else {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->is_dir($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function is_file($path) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->is_file($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
|
||||
// TODO fill in other components of array
|
||||
public function stat($path) {
|
||||
if ($path == "" || $path == "/") {
|
||||
$stat["dev"] = "";
|
||||
$stat["ino"] = "";
|
||||
$stat["mode"] = "";
|
||||
$stat["nlink"] = "";
|
||||
$stat["uid"] = "";
|
||||
$stat["gid"] = "";
|
||||
$stat["rdev"] = "";
|
||||
$stat["size"] = $this->filesize($path);
|
||||
$stat["atime"] = $this->fileatime($path);
|
||||
$stat["mtime"] = $this->filemtime($path);
|
||||
$stat["ctime"] = $this->filectime($path);
|
||||
$stat["blksize"] = "";
|
||||
$stat["blocks"] = "";
|
||||
return $stat;
|
||||
} else {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->stat($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function filetype($path) {
|
||||
if ($path == "" || $path == "/") {
|
||||
return "dir";
|
||||
} else {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->filetype($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function filesize($path) {
|
||||
|
||||
if ($path == "" || $path == "/" || $this->is_dir($path)) {
|
||||
return $this->getFolderSize($path);
|
||||
} else {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->filesize($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function getFolderSize($path) {
|
||||
$dbpath = OC_User::getUser()."/files/Share/".$path."/";
|
||||
$query = OC_DB::prepare("SELECT size FROM *PREFIX*foldersize WHERE path=?");
|
||||
$size = $query->execute(array($dbpath))->fetchAll();
|
||||
if (count($size) > 0) {
|
||||
return $size[0]['size'];
|
||||
} else {
|
||||
return $this->calculateFolderSize($path);
|
||||
}
|
||||
}
|
||||
|
||||
public function calculateFolderSize($path) {
|
||||
if ($this->is_file($path)) {
|
||||
$path = dirname($path);
|
||||
}
|
||||
$path = str_replace("//", "/", $path);
|
||||
if ($this->is_dir($path) && substr($path, -1) != "/") {
|
||||
$path .= "/";
|
||||
}
|
||||
$size = 0;
|
||||
if ($dh = $this->opendir($path)) {
|
||||
while (($filename = readdir($dh)) !== false) {
|
||||
if ($filename != "." && $filename != "..") {
|
||||
$subFile = $path.$filename;
|
||||
if ($this->is_file($subFile)) {
|
||||
$size += $this->filesize($subFile);
|
||||
} else {
|
||||
$size += $this->getFolderSize($subFile);
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($size > 0) {
|
||||
$dbpath = OC_User::getUser()."/files/Share/".$path;
|
||||
$query = OC_DB::prepare("INSERT INTO *PREFIX*foldersize VALUES(?,?)");
|
||||
$result = $query->execute(array($dbpath, $size));
|
||||
}
|
||||
}
|
||||
return $size;
|
||||
}
|
||||
|
||||
public function clearFolderSizeCache($path){
|
||||
if ($this->is_file($path)) {
|
||||
$path = dirname($path);
|
||||
}
|
||||
$path = str_replace("//", "/", $path);
|
||||
if ($this->is_dir($path) && substr($path, -1) != "/") {
|
||||
$path .= "/";
|
||||
}
|
||||
$query = OC_DB::prepare("DELETE FROM *PREFIX*foldersize WHERE path = ?");
|
||||
$result = $query->execute(array($path));
|
||||
if ($path != "/" && $path != "") {
|
||||
$parts = explode("/", $path);
|
||||
$part = array_pop($parts);
|
||||
if (empty($part)) {
|
||||
array_pop($parts);
|
||||
}
|
||||
$parent = implode("/", $parts);
|
||||
$this->clearFolderSizeCache($parent);
|
||||
}
|
||||
}
|
||||
|
||||
public function is_readable($path) {
|
||||
return true;
|
||||
}
|
||||
|
||||
public function is_writeable($path) {
|
||||
if ($path == "" || $path == "/" || OC_Share::getPermissions($this->datadir.$path) & OC_Share::WRITE) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public function file_exists($path) {
|
||||
if ($path == "" || $path == "/") {
|
||||
return true;
|
||||
} else {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->file_exists($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function readfile($path) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->readfile($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
|
||||
public function filectime($path) {
|
||||
if ($path == "" || $path == "/") {
|
||||
$ctime = 0;
|
||||
if ($dh = $this->opendir($path)) {
|
||||
while (($filename = readdir($dh)) !== false) {
|
||||
$tempctime = $this->filectime($filename);
|
||||
if ($tempctime < $ctime) {
|
||||
$ctime = $tempctime;
|
||||
}
|
||||
}
|
||||
return $ctime;
|
||||
}
|
||||
} else {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->filectime($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function filemtime($path) {
|
||||
if ($path == "" || $path == "/") {
|
||||
$mtime = 0;
|
||||
if ($dh = $this->opendir($path)) {
|
||||
while (($filename = readdir($dh)) !== false) {
|
||||
$tempmtime = $this->filemtime($filename);
|
||||
if ($tempmtime > $mtime) {
|
||||
$mtime = $tempmtime;
|
||||
}
|
||||
}
|
||||
return $mtime;
|
||||
}
|
||||
} else {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->filemtime($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function fileatime($path) {
|
||||
if ($path == "" || $path == "/") {
|
||||
$atime = 0;
|
||||
if ($dh = $this->opendir($path)) {
|
||||
while (($filename = readdir($dh)) !== false) {
|
||||
$tempatime = $this->fileatime($filename);
|
||||
if ($tempatime > $atime) {
|
||||
$atime = $tempatime;
|
||||
}
|
||||
}
|
||||
return $atime;
|
||||
}
|
||||
} else {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->fileatime($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function file_get_contents($path) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->file_get_contents($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
|
||||
public function file_put_contents($path, $data) {
|
||||
if ($this->is_writeable($path)) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->file_put_contents($this->getInternalPath($source), $data);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function unlink($path) {
|
||||
// The item will be removed from the database, but won't be touched on the owner's filesystem
|
||||
$target = $this->datadir.$path;
|
||||
// Check if the item is inside a shared folder
|
||||
if (OC_Share::getParentFolders($target)) {
|
||||
// If entry for item already exists
|
||||
if (OC_Share::getItem($target)) {
|
||||
OC_Share::unshareFromMySelf($target, false);
|
||||
} else {
|
||||
OC_Share::pullOutOfFolder($target, $target);
|
||||
OC_Share::unshareFromMySelf($target, false);
|
||||
}
|
||||
// Delete the database entry
|
||||
} else {
|
||||
OC_Share::unshareFromMySelf($target);
|
||||
}
|
||||
$this->clearFolderSizeCache($this->getInternalPath($target));
|
||||
return true;
|
||||
}
|
||||
|
||||
public function rename($path1, $path2) {
|
||||
$oldTarget = $this->datadir.$path1;
|
||||
$newTarget = $this->datadir.$path2;
|
||||
// Check if the item is inside a shared folder
|
||||
if ($folders = OC_Share::getParentFolders($oldTarget)) {
|
||||
$root1 = substr($path1, 0, strpos($path1, "/"));
|
||||
$root2 = substr($path1, 0, strpos($path2, "/"));
|
||||
// Prevent items from being moved into different shared folders until versioning (cut and paste) and prevent items going into 'Shared'
|
||||
if ($root1 !== $root2) {
|
||||
return false;
|
||||
// Check if both paths have write permission
|
||||
} else if ($this->is_writeable($path1) && $this->is_writeable($path2)) {
|
||||
$oldSource = $this->getSource($path1);
|
||||
$newSource = $folders['source'].substr($newTarget, strlen($folders['target']));
|
||||
if ($oldSource) {
|
||||
$storage = OC_Filesystem::getStorage($oldSource);
|
||||
return $storage->rename($this->getInternalPath($oldSource), $this->getInternalPath($newSource));
|
||||
}
|
||||
// If the user doesn't have write permission, items can only be renamed and not moved
|
||||
} else if (dirname($path1) !== dirname($path2)) {
|
||||
return false;
|
||||
// The item will be renamed in the database, but won't be touched on the owner's filesystem
|
||||
} else {
|
||||
OC_Share::pullOutOfFolder($oldTarget, $newTarget);
|
||||
// If this is a folder being renamed, call setTarget in case there are any database entries inside the folder
|
||||
if (self::is_dir($path1)) {
|
||||
OC_Share::setTarget($oldTarget, $newTarget);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
OC_Share::setTarget($oldTarget, $newTarget);
|
||||
}
|
||||
$this->clearFolderSizeCache($this->getInternalPath($oldTarget));
|
||||
$this->clearFolderSizeCache($this->getInternalPath($newTarget));
|
||||
return true;
|
||||
}
|
||||
|
||||
public function copy($path1, $path2) {
|
||||
if ($path2 == "" || $path2 == "/") {
|
||||
// TODO Construct new shared item or should this not be allowed?
|
||||
} else {
|
||||
if ($this->is_writeable($path2)) {
|
||||
$tmpFile = $this->toTmpFile($path1);
|
||||
return $this->fromTmpFile($tmpFile, $path2);
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function fopen($path, $mode) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->fopen($this->getInternalPath($source), $mode);
|
||||
}
|
||||
}
|
||||
|
||||
public function toTmpFile($path) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->toTmpFile($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
|
||||
public function fromTmpFile($tmpFile, $path) {
|
||||
if ($this->is_writeable($path)) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->fromTmpFile($tmpFile, $this->getInternalPath($source));
|
||||
}
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public function fromUploadedFile($tmpPath, $path) {
|
||||
$source = $this->getSource($tmpPath);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->fromUploadedFile($this->getInternalPath($source), $path);
|
||||
}
|
||||
}
|
||||
|
||||
public function getMimeType($path) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->getMimeType($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
|
||||
public function delTree($path) {
|
||||
$target = $this->datadir.$path;
|
||||
if (OC_Share::getPermissions($target) & OC_Share::DELETE) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->delTree($this->getInternalPath($source));
|
||||
}
|
||||
} else {
|
||||
// Check if the folder is inside a shared folder
|
||||
if (OC_Share::getParentFolders($target)) {
|
||||
// If entry for folder already exists
|
||||
if (OC_Share::getItem($target)) {
|
||||
OC_Share::setTarget($target, "/");
|
||||
} else {
|
||||
OC_Share::pullOutOfFolder($target, "/");
|
||||
// Call setTarget in case there are any database entries for items inside this folder
|
||||
OC_Share::setTarget($target, "/");
|
||||
}
|
||||
// Delete the database entry
|
||||
} else {
|
||||
OC_Share::unshareFromMySelf($target);
|
||||
}
|
||||
$this->clearFolderSizeCache($this->getInternalPath($target));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
public function find($path) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->find($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
|
||||
public function getTree($path) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->getTree($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
|
||||
public function hash($type, $path, $raw) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->hash($type, $this->getInternalPath($source), $raw);
|
||||
}
|
||||
}
|
||||
|
||||
public function free_space($path) {
|
||||
$source = $this->getSource($path);
|
||||
if ($source) {
|
||||
$storage = OC_Filesystem::getStorage($source);
|
||||
return $storage->free_space($this->getInternalPath($source));
|
||||
}
|
||||
}
|
||||
|
||||
// TODO query all shared files?
|
||||
public function search($query) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?>
|
|
@ -0,0 +1,30 @@
|
|||
<fieldset>
|
||||
<legend>Your Shared Files</legend>
|
||||
<table id="itemlist">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Item</th>
|
||||
<th>Shared With</th>
|
||||
<th>Permissions</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<?php foreach($_['shared_items'] as $item):?>
|
||||
<tr class="item">
|
||||
<td class="source"><?php echo substr($item['source'], strlen("/".$_SESSION['user_id']."/files/"));?></td>
|
||||
<td class="uid_shared_with"><?php echo $item['uid_shared_with'];?></td>
|
||||
<td class="permissions"><?php echo "Read"; echo($item['permissions'] & OC_SHARE::WRITE ? ", Edit" : ""); echo($item['permissions'] & OC_SHARE::DELETE ? ", Delete" : "");?></td>
|
||||
<td><button class="delete" data-source="<?php echo $item['source'];?>" data-uid_shared_with="<?php echo $item['uid_shared_with'];?>">Delete</button></td>
|
||||
</tr>
|
||||
<?php endforeach;?>
|
||||
<tr id="share_item_row">
|
||||
<form action="#" id="share_item">
|
||||
<td class="source"><input placeholder="Item" id="source" /></td>
|
||||
<td class="uid_shared_with"><input placeholder="Share With" id="uid_shared_with" /></td>
|
||||
<td class="permissions"><input placeholder="Permissions" id="permissions" /></td>
|
||||
<td><input type="submit" value="Share" /></td>
|
||||
</form>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</fieldset>
|
|
@ -129,8 +129,7 @@ if($arguments['action']){
|
|||
// calc the string in GMT not localtime and add the offset
|
||||
$expire = "Expires: " . gmdate("D, d M Y H:i:s", time() + $offset) . " GMT";
|
||||
//output the HTTP header
|
||||
Header($expire);
|
||||
header('Expires: 0');
|
||||
header($expire);
|
||||
header('Cache-Control: max-age=3600, must-revalidate');
|
||||
header('Pragma: public');
|
||||
header('Accept-Ranges: bytes');
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Music" => "Música",
|
||||
"Songs scanned" => "Cançons escanejades",
|
||||
"Rescan Collection" => "Escaneja de nou la col·lecció",
|
||||
"Pause" => "Pausa",
|
||||
"Artist" => "Artista",
|
||||
"Album" => "Àlbum",
|
||||
"Title" => "Títol"
|
||||
);
|
|
@ -0,0 +1,9 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Music" => "Musik",
|
||||
"Songs scanned" => "Sange skannet",
|
||||
"Rescan Collection" => "Genskan Samling",
|
||||
"Pause" => "Pause",
|
||||
"Artist" => "Kunstner",
|
||||
"Album" => "Album",
|
||||
"Title" => "Titel"
|
||||
);
|
|
@ -0,0 +1,9 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Music" => "Μουσική",
|
||||
"Songs scanned" => "Σαρωμένα τραγούγια",
|
||||
"Rescan Collection" => "Επανασάρωση συλλογής",
|
||||
"Pause" => "Παύση",
|
||||
"Artist" => "Καλλιτέχνης",
|
||||
"Album" => "Άλμπουμ",
|
||||
"Title" => "Τίτλος"
|
||||
);
|
|
@ -0,0 +1,9 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Music" => "Música",
|
||||
"Songs scanned" => "Canciones encontradas",
|
||||
"Rescan Collection" => "Buscar música nueva",
|
||||
"Pause" => "Pausa",
|
||||
"Artist" => "Artista",
|
||||
"Album" => "Álbum",
|
||||
"Title" => "Título"
|
||||
);
|
|
@ -0,0 +1,7 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Music" => "Musica",
|
||||
"Pause" => "Pausa",
|
||||
"Artist" => "Artista",
|
||||
"Album" => "Album",
|
||||
"Title" => "Titolo"
|
||||
);
|
|
@ -0,0 +1,9 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Music" => "Muziek",
|
||||
"Songs scanned" => "nummers gescanned",
|
||||
"Rescan Collection" => "Collectie opnieuw scannen",
|
||||
"Pause" => "Pauze",
|
||||
"Artist" => "Artiest",
|
||||
"Album" => "Album",
|
||||
"Title" => "Titel"
|
||||
);
|
|
@ -0,0 +1,9 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Music" => "Música",
|
||||
"Songs scanned" => "Músicas encontradas",
|
||||
"Rescan Collection" => "Atualizar a Coleção",
|
||||
"Pause" => "Pausa",
|
||||
"Artist" => "Artista",
|
||||
"Album" => "Álbum",
|
||||
"Title" => "Título"
|
||||
);
|
|
@ -0,0 +1,9 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Music" => "Musik",
|
||||
"Songs scanned" => "Skannade låtar",
|
||||
"Rescan Collection" => "Sök igenom samlingen",
|
||||
"Pause" => "Paus",
|
||||
"Artist" => "Artist",
|
||||
"Album" => "Album",
|
||||
"Title" => "Titel"
|
||||
);
|
|
@ -201,6 +201,7 @@ class OC_MEDIA_AMPACHE{
|
|||
$filter=isset($params['filter'])?$params['filter']:'';
|
||||
$exact=isset($params['exact'])?($params['exact']=='true'):false;
|
||||
$artists=OC_MEDIA_COLLECTION::getArtists($filter,$exact);
|
||||
error_log('artists found: '.print_r($artists,true));
|
||||
echo('<root>');
|
||||
foreach($artists as $artist){
|
||||
self::printArtist($artist);
|
||||
|
@ -215,8 +216,7 @@ class OC_MEDIA_AMPACHE{
|
|||
</root>");
|
||||
return;
|
||||
}
|
||||
global $SITEROOT;
|
||||
$filter=$params['filter'];
|
||||
$filter=isset($params['filter'])?$params['filter']:'';
|
||||
$songs=OC_MEDIA_COLLECTION::getSongs($filter);
|
||||
$artist=OC_MEDIA_COLLECTION::getArtistName($filter);
|
||||
echo('<root>');
|
||||
|
|
|
@ -123,10 +123,12 @@ class OC_MEDIA_COLLECTION{
|
|||
static public function getArtists($search='%',$exact=false){
|
||||
if(!$exact and $search!='%'){
|
||||
$search="%$search%";
|
||||
}elseif($search==''){
|
||||
$search='%';
|
||||
}
|
||||
$query=OC_DB::prepare("SELECT DISTINCT *PREFIX*media_artists.artist_name AS artist_name , *PREFIX*media_artists.artist_id AS artist_id FROM *PREFIX*media_artists
|
||||
INNER JOIN *PREFIX*media_songs ON *PREFIX*media_artists.artist_id=*PREFIX*media_songs.song_artist WHERE artist_name LIKE ? AND *PREFIX*media_songs.song_user=?");
|
||||
return $query->execute(array($search,OC_User::getUser()))->fetchAll();
|
||||
return $query->execute(array($search,self::$uid))->fetchAll();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -159,7 +161,7 @@ class OC_MEDIA_COLLECTION{
|
|||
static public function getAlbums($artist=0,$search='%',$exact=false){
|
||||
$cmd="SELECT DISTINCT *PREFIX*media_albums.album_name AS album_name , *PREFIX*media_albums.album_artist AS album_artist , *PREFIX*media_albums.album_id AS album_id
|
||||
FROM *PREFIX*media_albums INNER JOIN *PREFIX*media_songs ON *PREFIX*media_albums.album_id=*PREFIX*media_songs.song_album WHERE *PREFIX*media_songs.song_user=? ";
|
||||
$params=array(OC_User::getUser());
|
||||
$params=array(self::$uid);
|
||||
if($artist!=0){
|
||||
$cmd.="AND *PREFIX*media_albums.album_artist = ? ";
|
||||
array_push($params,$artist);
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<form id="openidform">
|
||||
<fieldset class="personalblock">
|
||||
<label for="openid"><strong>OpenID</strong></label>
|
||||
<input type="text" id="openid" value="<?php echo ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].OC::$WEBROOT.'/?'; echo OC_User::getUser(); ?>" title="you can authenticate to other sites with this address" />
|
||||
<label for="identity">Authorized</label>
|
||||
<input type="text" name="identity" id="identity" value="<?php echo $_['identity']; ?>" placeholder="OpenID provider" title="Wordpress, Identi.ca, Launchpad, …" />
|
||||
<input type="text" id="openid" value="<?php echo ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 'https' : 'http').'://'.$_SERVER['HTTP_HOST'].OC::$WEBROOT.'/?'; echo OC_User::getUser(); ?>" title="<?php echo $l->t('you can authenticate to other sites with this address');?>" />
|
||||
<label for="identity"><?php echo $l->t('Authorized');?></label>
|
||||
<input type="text" name="identity" id="identity" value="<?php echo $_['identity']; ?>" placeholder="OpenID <?php echo $l->t('provider');?>" title="<?php echo $l->t('Wordpress, Identi.ca, Launchpad, …');?>" />
|
||||
</fieldset>
|
||||
</form>
|
||||
|
|
|
@ -21,25 +21,31 @@
|
|||
*
|
||||
*/
|
||||
|
||||
|
||||
// We send json data
|
||||
header( "Content-Type: application/jsonrequest" );
|
||||
|
||||
$RUNTIME_NOAPPS = TRUE; //no apps, yet
|
||||
require_once('../../lib/base.php');
|
||||
|
||||
if(isset($_GET["user"]) && isset($_GET["password"]))
|
||||
{
|
||||
if(!OC_User::checkPassword($_GET["user"], $_GET["password"]))
|
||||
exit();
|
||||
|
||||
$groups = array();
|
||||
|
||||
foreach( OC_Group::getGroups() as $i ){
|
||||
// Do some more work here soon
|
||||
$groups[] = array( "groupname" => $i );
|
||||
if(!OC_User::isLoggedIn()){
|
||||
if(!isset($_SERVER['PHP_AUTH_USER'])){
|
||||
header('WWW-Authenticate: Basic realm="ownCloud Server"');
|
||||
header('HTTP/1.0 401 Unauthorized');
|
||||
echo 'Valid credentials must be supplied';
|
||||
exit();
|
||||
} else {
|
||||
if(!OC_User::checkPassword($_SERVER["PHP_AUTH_USER"], $_SERVER["PHP_AUTH_PW"])){
|
||||
exit();
|
||||
}
|
||||
}
|
||||
|
||||
echo json_encode($groups);
|
||||
}
|
||||
|
||||
$groups = array();
|
||||
|
||||
foreach( OC_Group::getGroups() as $i ){
|
||||
// Do some more work here soon
|
||||
$groups[] = array( "groupname" => $i );
|
||||
}
|
||||
|
||||
// We send json data
|
||||
header( "Content-Type: application/jsonrequest" );
|
||||
echo json_encode($groups);
|
||||
|
||||
?>
|
||||
|
|
|
@ -21,27 +21,30 @@
|
|||
*
|
||||
*/
|
||||
|
||||
|
||||
// We send json data
|
||||
header( "Content-Type: application/jsonrequest" );
|
||||
|
||||
$RUNTIME_NOAPPS = TRUE; //no apps, yet
|
||||
require_once('../../lib/base.php');
|
||||
|
||||
if(isset($_GET["user"]) && isset($_GET["password"]))
|
||||
{
|
||||
if(!OC_User::checkPassword($_GET["user"], $_GET["password"]))
|
||||
if(!OC_User::isLoggedIn()){
|
||||
if(!isset($_SERVER['PHP_AUTH_USER'])){
|
||||
header('WWW-Authenticate: Basic realm="ownCloud Server"');
|
||||
header('HTTP/1.0 401 Unauthorized');
|
||||
echo 'Valid credentials must be supplied';
|
||||
exit();
|
||||
|
||||
$users = array();
|
||||
|
||||
foreach( OC_User::getUsers() as $i ){
|
||||
$users[] = array( "username" => $i, "groups" => join( ", ", OC_Group::getUserGroups( $i ) ));
|
||||
}
|
||||
|
||||
echo json_encode($users);
|
||||
|
||||
|
||||
} else {
|
||||
if(!OC_User::checkPassword($_SERVER["PHP_AUTH_USER"], $_SERVER["PHP_AUTH_PW"])){
|
||||
exit();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$users = array();
|
||||
|
||||
foreach( OC_User::getUsers() as $i ){
|
||||
$users[] = array( "username" => $i, "groups" => join( ", ", OC_Group::getUserGroups( $i ) ));
|
||||
}
|
||||
|
||||
// We send json data
|
||||
header( "Content-Type: application/jsonrequest" );
|
||||
echo json_encode($users);
|
||||
|
||||
?>
|
||||
|
|
|
@ -21,37 +21,21 @@
|
|||
*
|
||||
*/
|
||||
|
||||
header("Content-Type: application/jsonrequest");
|
||||
|
||||
$RUNTIME_NOAPPS = TRUE; //no apps, yet
|
||||
|
||||
require_once('../../lib/base.php');
|
||||
|
||||
$not_installed = !OC_Config::getValue('installed', false);
|
||||
|
||||
// First step : check if the server is correctly configured for ownCloud :
|
||||
$errors = OC_Util::checkServer();
|
||||
if(count($errors) > 0) {
|
||||
echo json_encode(array("user_valid" => "false", "comment" => $errors));
|
||||
}
|
||||
|
||||
// Setup required :
|
||||
elseif($not_installed) {
|
||||
echo json_encode(array("user_valid" => "false", "comment" => "not_installed"));
|
||||
|
||||
}
|
||||
|
||||
// Someone wants to check a user:
|
||||
elseif(isset($_GET["user"]) and isset($_GET["password"])) {
|
||||
if(OC_User::checkPassword($_GET["user"], $_GET["password"]))
|
||||
echo json_encode(array("user_valid" => "true", "comment" => ""));
|
||||
else
|
||||
echo json_encode(array("user_valid" => "false", "comment" => ""));
|
||||
}
|
||||
|
||||
// For all others cases:
|
||||
else {
|
||||
echo json_encode(array("user_valid" => "false", "comment" => "unknown"));
|
||||
if(!isset($_SERVER['PHP_AUTH_USER'])){
|
||||
header('WWW-Authenticate: Basic realm="ownCloud Server"');
|
||||
header('HTTP/1.0 401 Unauthorized');
|
||||
echo 'Valid credentials must be supplied';
|
||||
exit();
|
||||
} else {
|
||||
header("Content-Type: application/jsonrequest");
|
||||
if(OC_User::checkPassword($_SERVER["PHP_AUTH_USER"], $_SERVER["PHP_AUTH_PW"])){
|
||||
echo json_encode(array("username" => $_SERVER["PHP_AUTH_USER"], "user_valid" => "true"));
|
||||
} else {
|
||||
echo json_encode(array("username" => $_SERVER["PHP_AUTH_USER"], "user_valid" => "false"));
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
|
|
|
@ -34,11 +34,11 @@ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#35537a', end
|
|||
input[type="text"], input[type="password"] { cursor:text; }
|
||||
input, select, .button, #quota, div.jp-progress { font-size:1em; width:10em; margin:.3em; padding:.6em .5em .4em; background:#fff; color:#333; border:1px solid #ddd; -moz-box-shadow:0 1px 1px #fff, 0 2px 0 #bbb inset; -webkit-box-shadow:0 1px 1px #fff, 0 1px 0 #bbb inset; box-shadow:0 1px 1px #fff, 0 1px 0 #bbb inset; -moz-border-radius:.5em; -webkit-border-radius:.5em; border-radius:.5em; }
|
||||
input[type="text"], input[type="password"] { background:#f8f8f8; color:#555; cursor:text; }
|
||||
input[type="text"]:hover, input[type="text"]:focus, input[type="password"]:hover, input[type="password"]:focus { background:#fff; color:#333; }
|
||||
input[type="text"]:hover, input[type="text"]:focus, input[type="password"]:hover, input[type="password"]:focus { background:#fff; color:#333; outline: none;}
|
||||
|
||||
input[type="submit"], input[type="button"], .button, #quota, div.jp-progress { width:auto; padding:.4em; border:1px solid #ddd; font-weight:bold; cursor:pointer; background:#f8f8f8; color:#555; text-shadow:#fff 0 1px 0; -moz-box-shadow:0 1px 1px #fff, 0 1px 1px #fff inset; -webkit-box-shadow:0 1px 1px #fff, 0 1px 1px #fff inset; -moz-border-radius:.5em; -webkit-border-radius:.5em; border-radius:.5em; }
|
||||
input[type="submit"]:hover, input[type="submit"]:focus, input[type="button"]:hover, input[type="button"]:focus, .button:hover { background:#fff; color:#333; }
|
||||
input[type="checkbox"] { width:auto; }
|
||||
input[type="submit"]:hover, input[type="submit"]:focus, input[type="button"]:hover, input[type="button"]:focus, .button:hover { background:#fff; color:#333; outline: none;}
|
||||
input[type="checkbox"] { width:auto; outline: none;}
|
||||
|
||||
#body-login input { font-size:1.5em; }
|
||||
#body-login input[type="submit"] { float:right; margin-right:.8em; }
|
||||
|
@ -51,7 +51,7 @@ input[type="submit"].highlight{ background:#ffc100; border:1px solid #db0; text-
|
|||
|
||||
/* CONTENT ------------------------------------------------------------------ */
|
||||
#controls { width:100%; top:3.5em; height:2.8em; margin:0; background:#f7f7f7; border-bottom:1px solid #eee; position:fixed; z-index:50; -moz-box-shadow:0 -3px 7px #000; -webkit-box-shadow:0 -3px 7px #000; box-shadow:0 -3px 7px #000; }
|
||||
#content { margin:3.5em 0 0 12.5em; padding-bottom:10em; }
|
||||
#content { margin:3.5em 0 0 12.5em; }
|
||||
#leftcontent { position:absolute; top:6.4em; width:20em; background:#f8f8f8; height:100%; border-right:1px solid #ddd; }
|
||||
#leftcontent li { padding:.3em .8em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; -webkit-transition:background-color 500ms; -moz-transition:background-color 500ms; -o-transition:background-color 500ms; transition:background-color 500ms; }
|
||||
#leftcontent li:hover, #leftcontent li:active { background:#eee; }
|
||||
|
@ -93,7 +93,7 @@ input[type="submit"].highlight{ background:#ffc100; border:1px solid #db0; text-
|
|||
/* VARIOUS REUSABLE SELECTORS */
|
||||
.hidden { display:none; }
|
||||
|
||||
#notification { z-index:101; cursor:pointer; background-color:#fc4; border:0; padding:0 .7em .3em; display:block; position:fixed; left:50%; top:0; -moz-border-radius-bottomleft:1em; -webkit-border-bottom-left-radius:1em; border-bottom-left-radius:1em; -moz-border-radius-bottomright:1em; -webkit-border-bottom-right-radius:1em; border-bottom-right-radius:1em; }
|
||||
#notification { z-index:101; cursor:pointer; background-color:#fc4; border:0; padding:0 .7em .3em; display:none; position:fixed; left:50%; top:0; -moz-border-radius-bottomleft:1em; -webkit-border-bottom-left-radius:1em; border-bottom-left-radius:1em; -moz-border-radius-bottomright:1em; -webkit-border-bottom-right-radius:1em; border-bottom-right-radius:1em; }
|
||||
|
||||
.action, .selectedActions a, #logout { opacity:.3; -webkit-transition:opacity 500ms; -moz-transition:opacity 500ms; -o-transition:opacity 500ms; transition:opacity 500ms; }
|
||||
.action:hover, .selectedActions a:hover, #logout:hover { opacity:1; }
|
||||
|
@ -101,10 +101,10 @@ input[type="submit"].highlight{ background:#ffc100; border:1px solid #db0; text-
|
|||
table tr { -webkit-transition:background-color 500ms; -moz-transition:background-color 500ms; -o-transition:background-color 500ms; transition:background-color 500ms; }
|
||||
tbody tr:hover, tr:active { background-color:#f8f8f8; }
|
||||
|
||||
#body-settings .personalblock { padding:.5em 1em; margin:1em; background:#f8f8f8; color:#555; text-shadow:#fff 0 1px 0; -moz-border-radius:.5em; -webkit-border-radius:.5em; border-radius:.5em;}
|
||||
#body-settings div.personalblock:first-child { position:relative; margin-top:4.5em; padding:0; }
|
||||
#body-settings .personalblock { padding:.5em 1em; margin:1em; background:#f8f8f8; color:#555; text-shadow:#fff 0 1px 0; -moz-border-radius:.5em; -webkit-border-radius:.5em; border-radius:.5em; }
|
||||
#body-settings .personalblock#quota { position:relative; margin-top:4.5em; padding:0; }
|
||||
|
||||
#quota div, div.jp-play-bar, div.jp-seek-bar { padding:.6em 1em; background:#e6e6e6; font-weight:normal; white-space:nowrap; }
|
||||
#quota div, div.jp-play-bar, div.jp-seek-bar { padding:.6em 1em; background:#e6e6e6; font-weight:normal; white-space:nowrap; -moz-border-radius-bottomleft:.4em; -webkit-border-bottom-left-radius:.4em; border-bottom-left-radius:.4em; -moz-border-radius-topleft:.4em; -webkit-border-top-left-radius:.4em; border-top-left-radius:.4em; }
|
||||
div.jp-play-bar, div.jp-seek-bar { padding:0; }
|
||||
|
||||
li.error { width:640px; margin:4em auto; padding:1em 1em 1em 4em; background:#ffe .8em .8em no-repeat; border:1px solid #ccc; -moz-border-radius:10px; -webkit-border-radius:10px; border-radius:10px; }
|
||||
|
|
|
@ -180,7 +180,7 @@ if (!Array.prototype.indexOf){
|
|||
* check if the browser support svg images
|
||||
*/
|
||||
function SVGSupport() {
|
||||
return document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure", "1.1") || document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#Shape", "1.0");
|
||||
return !!document.createElementNS && !!document.createElementNS('http://www.w3.org/2000/svg', "svg").createSVGRect;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -302,9 +302,7 @@ $(document).ready(function(){
|
|||
// all the tipsy stuff needs to be here (in reverse order) to work
|
||||
$('.jp-controls .jp-previous').tipsy({gravity:'nw', fade:true, live:true});
|
||||
$('.jp-controls .jp-next').tipsy({gravity:'n', fade:true, live:true});
|
||||
$('.remove .action').tipsy({gravity:'se', fade:true, live:true});
|
||||
$('.date .action').tipsy({gravity:'se', fade:true, live:true});
|
||||
$('.action').tipsy({gravity:'s', fade:true, live:true});
|
||||
$('.password .action').tipsy({gravity:'se', fade:true, live:true});
|
||||
$('.selectedActions a.delete').tipsy({gravity: 'ne', fade:true, live:true});
|
||||
$('.selectedActions a').tipsy({gravity:'n', fade:true, live:true});
|
||||
$('.file_upload_button_wrapper').tipsy({gravity:'e', fade:true});
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
"Data folder" => "Директория за данни",
|
||||
"Finish setup" => "Завършване на настройките",
|
||||
"Cloud not found" => "обклакът не намерен",
|
||||
"is a personal cloud which runs on your own server" => "е персонален облак който работи от Ваш собствен сървър",
|
||||
"prev" => "пред.",
|
||||
"next" => "следващо",
|
||||
"You are logged out." => "Вие излязохте."
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Users" => "Usuaris",
|
||||
"Apps" => "Aplicacions",
|
||||
"Help" => "Ajuda",
|
||||
"Personal" => "Personal",
|
||||
"Login failed!" => "L'inici de sessió ha fallat!",
|
||||
"remember" => "recorda'm",
|
||||
"Create an <strong>admin account</strong>" => "Crea un <strong>compte d'administrador</strong>",
|
||||
"Username" => "Nom d'usuari",
|
||||
"Password" => "Contrasenya",
|
||||
"Configure the database" => "Configura la base de dades",
|
||||
"will be used" => "s'usarà",
|
||||
"Database user" => "Usuari de la base de dades",
|
||||
"Database password" => "Contrasenya de la base de dades",
|
||||
"Database name" => "Nom de la base de dades",
|
||||
"Advanced" => "Avançat",
|
||||
"Host" => "Host",
|
||||
"Table prefix" => "Prefix de les taules",
|
||||
"Data folder" => "Carpeta de dades",
|
||||
"Finish setup" => "Acaba la configuració",
|
||||
"Cloud not found" => "No s'ha trobat el núvol",
|
||||
"gives you the freedom to control your own data on the internet" => "us dóna la llibertat per controlar les vostres dades a internet",
|
||||
"prev" => "anterior",
|
||||
"next" => "següent",
|
||||
"You are logged out." => "Heu tancat la sessió.",
|
||||
"Settings" => "Arranjament"
|
||||
);
|
|
@ -1,8 +1,22 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Login failed!" => "Login mislykkedes",
|
||||
"Login failed!" => "Login mislykkedes!",
|
||||
"remember" => "husk",
|
||||
"Create an <strong>admin account</strong>" => "Lav en <strong>administrator konto</strong>",
|
||||
"Username" => "Brugernavn",
|
||||
"Password" => "Kodeord",
|
||||
"Configure the database" => "Konfigurer databasen",
|
||||
"will be used" => "vil blive brugt",
|
||||
"Database user" => "Database-bruger",
|
||||
"Database password" => "Database-kodeord",
|
||||
"Database name" => "Database-navn",
|
||||
"Advanced" => "Avanceret",
|
||||
"Host" => "Vært",
|
||||
"Table prefix" => "Tabel præfiks",
|
||||
"Data folder" => "Data mappe",
|
||||
"Finish setup" => "Afslut installation",
|
||||
"Cloud not found" => "Sky ikke fundet",
|
||||
"prev" => "forrige",
|
||||
"next" => "næste",
|
||||
"You are logged out." => "Du er nu logget ud"
|
||||
"You are logged out." => "Du er nu logget ud",
|
||||
"Settings" => "Indstillinger"
|
||||
);
|
||||
|
|
|
@ -1,4 +1,8 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Users" => "Nutzer",
|
||||
"Apps" => "Anwendungen",
|
||||
"Help" => "Hilfe",
|
||||
"Personal" => "Persönlich",
|
||||
"Login failed!" => "Anmeldung fehlgeschlagen!",
|
||||
"remember" => "merken",
|
||||
"Create an <strong>admin account</strong>" => "<strong>Admin-Konto</strong> anlegen",
|
||||
|
@ -15,10 +19,9 @@
|
|||
"Data folder" => "Datenverzeichnis",
|
||||
"Finish setup" => "Installation abschließen",
|
||||
"Cloud not found" => "Cloud nicht verfügbar",
|
||||
"is a personal cloud which runs on your own server" => "ist ein persönlicher Online-Speicher für deinen eigenen Server",
|
||||
"gives you the freedom to control your own data on the internet" => "gibt dir die Freiheit, deine eigenen Daten im Internet zu kontrollieren.",
|
||||
"prev" => "Zurück",
|
||||
"next" => "Weiter",
|
||||
"You are logged out." => "Erfolgreich abgemeldet.",
|
||||
"Log out" => "Abmelden",
|
||||
"Settings" => "Einstellungen"
|
||||
);
|
||||
|
|
|
@ -0,0 +1,23 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Login failed!" => "Η σύνδεση απέτυχε!",
|
||||
"remember" => "να με θυμάσαι",
|
||||
"Create an <strong>admin account</strong>" => "Δημιουργήστε έναν <strong>λογαριασμό διαχειριστή</strong>",
|
||||
"Username" => "Όνομα Χρήστη",
|
||||
"Password" => "Κωδικός",
|
||||
"Configure the database" => "Διαμόρφωση της βάσης δεδομένων",
|
||||
"will be used" => "θα χρησιμοποιηθούν",
|
||||
"Database user" => "Χρήστης της βάσης δεδομένων",
|
||||
"Database password" => "Κωδικός πρόσβασης βάσης δεδομένων",
|
||||
"Database name" => "Όνομα βάσης δεδομένων",
|
||||
"Advanced" => "Για προχωρημένους",
|
||||
"Host" => "Εξυπηρετητής",
|
||||
"Table prefix" => "Πρόθεμα πίνακα",
|
||||
"Data folder" => "Φάκελος δεδομένων",
|
||||
"Finish setup" => "Ολοκλήρωση εγκατάστασης",
|
||||
"Cloud not found" => "Δεν βρέθηκε σύννεφο",
|
||||
"gives you the freedom to control your own data on the internet" => "σας δίνει την ελευθερία να ελέγχετε τα δικά σας δεδομένα στο διαδίκτυο",
|
||||
"prev" => "προηγούμενο",
|
||||
"next" => "επόμενο",
|
||||
"You are logged out." => "Έχετε αποσυνδεθεί.",
|
||||
"Settings" => "Ρυθμίσεις"
|
||||
);
|
|
@ -1,10 +1,22 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Login failed!" => "¡No se pudo iniciar sesión!",
|
||||
"remember" => "recuérdame",
|
||||
"Create an <strong>admin account</strong>" => "Crear una <strong>cuenta de administrador</strong>",
|
||||
"Username" => "Nombre de usuario",
|
||||
"Password" => "Contraseña",
|
||||
"Configure the database" => "Configurar la base de datos",
|
||||
"will be used" => "serán utilizados",
|
||||
"Database user" => "Usuario de la base de datos",
|
||||
"Database password" => "Contraseña de la base de datos",
|
||||
"Database name" => "Nombre de la base de datos",
|
||||
"Advanced" => "Avanzado",
|
||||
"Host" => "Host",
|
||||
"Table prefix" => "Prefijo de la tabla",
|
||||
"Data folder" => "Directorio de almacenamiento",
|
||||
"Finish setup" => "Completar la instalación",
|
||||
"Cloud not found" => "No se encontró la nube",
|
||||
"prev" => "anterior",
|
||||
"next" => "siguiente",
|
||||
"You are logged out." => "Has cerrado sesión."
|
||||
"You are logged out." => "Has cerrado sesión.",
|
||||
"Settings" => "Ajustes"
|
||||
);
|
||||
|
|
|
@ -15,10 +15,9 @@
|
|||
"Data folder" => "Répertoire des données",
|
||||
"Finish setup" => "Terminer l'installation",
|
||||
"Cloud not found" => "Introuvable",
|
||||
"is a personal cloud which runs on your own server" => "est un service de cloud personnel propulsé par votre propre serveur",
|
||||
"gives you the freedom to control your own data on the internet" => "vous rend libre de contrôler vos propres données sur internet",
|
||||
"prev" => "précédent",
|
||||
"next" => "suivant",
|
||||
"You are logged out." => "Vous êtes désormais déconnecté.",
|
||||
"Log out" => "Se déconnecter",
|
||||
"Settings" => "Paramètres"
|
||||
);
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Login failed!" => "Gagal masuk!",
|
||||
"Username" => "Username",
|
||||
"Password" => "Password",
|
||||
"Advanced" => "Tingkat Lanjut",
|
||||
"Finish setup" => "Selesaikan instalasi",
|
||||
"prev" => "sebelum",
|
||||
"next" => "selanjutnya",
|
||||
"You are logged out." => "Anda telah keluar."
|
||||
);
|
|
@ -0,0 +1,21 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Login failed!" => "Login fallito!",
|
||||
"remember" => "ricorda",
|
||||
"Create an <strong>admin account</strong>" => "Crea un <strong>account amministratore</strong>",
|
||||
"Username" => "Nome utente",
|
||||
"Password" => "Password",
|
||||
"Configure the database" => "Configura il database",
|
||||
"will be used" => "sarà usato",
|
||||
"Database user" => "Utente database",
|
||||
"Database password" => "Password database",
|
||||
"Database name" => "Nome database",
|
||||
"Advanced" => "Opzioni avanzate",
|
||||
"Host" => "Host",
|
||||
"Table prefix" => "Prefisso tabella",
|
||||
"Data folder" => "Cartella dati",
|
||||
"Finish setup" => "Termina",
|
||||
"prev" => "precedente",
|
||||
"next" => "successivo",
|
||||
"You are logged out." => "Sei uscito.",
|
||||
"Settings" => "Impostazioni"
|
||||
);
|
|
@ -1,8 +1,23 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Login failed!" => "Aanmelden mislukt.",
|
||||
"remember" => "onthoud gegevens",
|
||||
"Create an <strong>admin account</strong>" => "Maak een <strong>admin-account</strong>",
|
||||
"Username" => "Gebruikersnaam",
|
||||
"Password" => "Wachtwoord",
|
||||
"Configure the database" => "Configureren van de database",
|
||||
"will be used" => "zal gebruikt woorden",
|
||||
"Database user" => "Database gebruiker",
|
||||
"Database password" => "Database wachtwoord",
|
||||
"Database name" => "Database naam",
|
||||
"Advanced" => "Geavanceerd",
|
||||
"Host" => "Host",
|
||||
"Table prefix" => "Tabelnaam voorvoegsel",
|
||||
"Data folder" => "Gegevens folder",
|
||||
"Finish setup" => "Installatie afronden",
|
||||
"Cloud not found" => "Cloud niet gevonden",
|
||||
"gives you the freedom to control your own data on the internet" => "geeft je de vrijheid om je eigen data te controleren op het internet",
|
||||
"prev" => "vorige",
|
||||
"next" => "volgende",
|
||||
"You are logged out." => "U bent afgemeld."
|
||||
"You are logged out." => "U bent afgemeld.",
|
||||
"Settings" => "Instellingen"
|
||||
);
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Login failed!" => "Login sem sucesso",
|
||||
"remember" => "lembrete",
|
||||
"Create an <strong>admin account</strong>" => "Criar uma <strong>conta</strong> de <strong>administrador</strong>",
|
||||
"Username" => "Nome de Usuário",
|
||||
"Password" => "Senha",
|
||||
"Configure the database" => "Configurar o banco de dados",
|
||||
"will be used" => "será usado",
|
||||
"Database user" => "Usuário de banco de dados",
|
||||
"Database password" => "Senha do banco de dados",
|
||||
"Database name" => "Nome do banco de dados",
|
||||
"Advanced" => "Avançado",
|
||||
"Host" => "Host 'servidor'",
|
||||
"Table prefix" => "Prefixo da tabela",
|
||||
"Data folder" => "Pasta de dados",
|
||||
"Finish setup" => "Concluir configuração",
|
||||
"Cloud not found" => "Cloud não encontrado",
|
||||
"prev" => "anterior",
|
||||
"next" => "próximo",
|
||||
"You are logged out." => "Você está desconectado.",
|
||||
"Settings" => "Configurações"
|
||||
);
|
|
@ -0,0 +1,26 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Users" => "Användare",
|
||||
"Apps" => "Program",
|
||||
"Help" => "Hjälp",
|
||||
"Login failed!" => "Inloggning misslyckades!",
|
||||
"remember" => "kom ihåg",
|
||||
"Create an <strong>admin account</strong>" => "Skapa ett <strong>administratörskonto</strong>",
|
||||
"Username" => "Användarnamn",
|
||||
"Password" => "Lösenord",
|
||||
"Configure the database" => "Konfigurera databasen",
|
||||
"will be used" => "kommer att användas",
|
||||
"Database user" => "Databas-användare",
|
||||
"Database password" => "Databas-lösenord",
|
||||
"Database name" => "Databasnamn",
|
||||
"Advanced" => "Avancerat",
|
||||
"Host" => "Värd",
|
||||
"Table prefix" => "Tabellprefix",
|
||||
"Data folder" => "Datamapp",
|
||||
"Finish setup" => "Avsluta installation",
|
||||
"Cloud not found" => "Hittade inget moln",
|
||||
"gives you the freedom to control your own data on the internet" => "ger dig friheten att hantera ditt eget data på internet",
|
||||
"prev" => "föregående",
|
||||
"next" => "nästa",
|
||||
"You are logged out." => "Du är utloggad",
|
||||
"Settings" => "Inställningar"
|
||||
);
|
|
@ -1,8 +1,10 @@
|
|||
../strings.php
|
||||
../templates/404.php
|
||||
../templates/error.php
|
||||
../templates/installation.php
|
||||
../templates/layout.guest.php
|
||||
../templates/layout.user.php
|
||||
../templates/login.php
|
||||
../templates/logout.php
|
||||
../templates/part.pagenavi.php
|
||||
../templates/part.searchbox.php
|
||||
../../lib/app.php
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
<?php
|
||||
|
||||
//some strings that are used in /lib but wont be translatable unless they are in /core to
|
||||
$l=new OC_L10N('core');
|
||||
$l->t("Users");
|
||||
$l->t("Apps");
|
||||
$l->t("Help");
|
||||
$l->t("Personal");
|
||||
?>
|
|
@ -4,13 +4,13 @@
|
|||
<title>ownCloud</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<link rel="shortcut icon" href="<?php echo image_path('', 'favicon.png'); ?>" /><link rel="apple-touch-icon-precomposed" href="<?php echo image_path('', 'favicon-touch.png'); ?>" />
|
||||
<?php if(isset($_['cssfiles'])) foreach($_['cssfiles'] as $cssfile): ?>
|
||||
<?php foreach($_['cssfiles'] as $cssfile): ?>
|
||||
<link rel="stylesheet" href="<?php echo $cssfile; ?>" type="text/css" media="screen" />
|
||||
<?php endforeach; ?>
|
||||
<script type="text/javascript">
|
||||
var oc_webroot = '<?php global $WEBROOT; echo $WEBROOT; ?>';
|
||||
// </script>
|
||||
<?php if(isset($_['jsfiles'])) foreach($_['jsfiles'] as $jsfile): ?>
|
||||
</script>
|
||||
<?php foreach($_['jsfiles'] as $jsfile): ?>
|
||||
<script type="text/javascript" src="<?php echo $jsfile; ?>"></script>
|
||||
<?php endforeach; ?>
|
||||
|
||||
|
@ -20,11 +20,8 @@
|
|||
foreach($header['attributes'] as $name=>$value){
|
||||
echo "$name='$value' ";
|
||||
};
|
||||
echo '>';
|
||||
echo $header['text'];
|
||||
echo '</'.$header['tag'].'>';
|
||||
echo '/>';
|
||||
?>
|
||||
<script type="text/javascript" src="<?php echo $jsfile; ?>"></script>
|
||||
<?php endforeach; ?>
|
||||
</head>
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
<script type="text/javascript">
|
||||
var oc_webroot = '<?php global $WEBROOT; echo $WEBROOT; ?>';
|
||||
var oc_current_user = '<?php echo OC_User::getUser() ?>';
|
||||
// </script>
|
||||
</script>
|
||||
<?php foreach($_['jsfiles'] as $jsfile): ?>
|
||||
<script type="text/javascript" src="<?php echo $jsfile; ?>"></script>
|
||||
<?php endforeach; ?>
|
||||
|
@ -20,9 +20,7 @@
|
|||
foreach($header['attributes'] as $name=>$value){
|
||||
echo "$name='$value' ";
|
||||
};
|
||||
echo '>';
|
||||
echo $header['text'];
|
||||
echo '</'.$header['tag'].'>';
|
||||
echo '/>';
|
||||
?>
|
||||
<?php endforeach; ?>
|
||||
</head>
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
<center>
|
||||
<table class="pager" cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<tr><td width="50%"></td>
|
||||
<td width="1">
|
||||
<?php if($_['page']>0):?>
|
||||
<span class="pagerbutton1"><a href="<?php echo $_['url'].($_['page']-1);?>"><?php echo $l->t( 'prev' ); ?></a> </span>
|
||||
<?php endif; ?>
|
||||
</td>
|
||||
<td>
|
||||
<td width="1">
|
||||
<?php if ($_['pagestart']>0):?>
|
||||
...
|
||||
<?php endif;?>
|
||||
|
@ -26,6 +26,6 @@
|
|||
<span class="pagerbutton2"><a href="<?php echo $_['url'].($_['page']+1);?>"><?php echo $l->t( 'next' ); ?></a></span>
|
||||
<?php endif; ?>
|
||||
</td>
|
||||
</tr>
|
||||
<td width="50%"></td></tr>
|
||||
</table>
|
||||
</center>
|
||||
</center>
|
||||
|
|
|
@ -53,11 +53,10 @@ table td.filename .nametext { width:60%; }
|
|||
table td.filename form { float:left; font-size:.85em; }
|
||||
table thead.fixed tr{ position:fixed; top:6.3em; z-index:49; -moz-box-shadow:0 -3px 7px #000; -webkit-box-shadow:0 -3px 7px #000; box-shadow:0 -3px 7px #000; }
|
||||
table thead.fixed { height:2em; }
|
||||
#fileList tr input[type=checkbox] { opacity:0; float:left; margin:.7em 0 0 1em; /* bigger clickable area doesn’t work in FF width:2.8em; height:2.4em;*/ -webkit-transition:opacity 500ms; -moz-transition:opacity 500ms; -o-transition:opacity 500ms; transition:opacity 500ms; }
|
||||
#fileList tr:hover input[type="checkbox"] { opacity:.5; }
|
||||
#fileList tr input[type="checkbox"]:checked { opacity:1; }
|
||||
#fileList tr td.filename>input[type=checkbox]:first-child { opacity:0; float:left; margin:.7em 0 0 1em; /* bigger clickable area doesn’t work in FF width:2.8em; height:2.4em;*/ -webkit-transition:opacity 500ms; -moz-transition:opacity 500ms; -o-transition:opacity 500ms; transition:opacity 500ms; }
|
||||
#fileList tr:hover td.filename>input[type="checkbox"]:first-child { opacity:.8; }
|
||||
#fileList tr td.filename>input[type="checkbox"]:checked:first-child { opacity:1; }
|
||||
#fileList tr td.filename { -webkit-transition:background-image 500ms; -moz-transition:background-image 500ms; -o-transition:background-image 500ms; transition:background-image 500ms; }
|
||||
#fileList tr.selected td.filename, #fileList tr:hover td.filename { background-image:url('') !important; }
|
||||
#select_all { float:left; margin:.2em; margin-left:.6em; }
|
||||
#uploadsize-message,#delete-confirm { display:none; }
|
||||
.selectedActions a, a.action { float:right; display:inline; margin:0 .5em; padding:.3em .3em 0 .3em !important; }
|
||||
|
|
|
@ -69,8 +69,11 @@ foreach( explode( "/", $dir ) as $i ){
|
|||
// make breadcrumb und filelist markup
|
||||
$list = new OC_Template( "files", "part.list", "" );
|
||||
$list->assign( "files", $files );
|
||||
$list->assign( "baseURL", OC_Helper::linkTo("files", "index.php?dir="));
|
||||
$list->assign( "downloadURL", OC_Helper::linkTo("files", "download.php?file="));
|
||||
$breadcrumbNav = new OC_Template( "files", "part.breadcrumb", "" );
|
||||
$breadcrumbNav->assign( "breadcrumb", $breadcrumb );
|
||||
$breadcrumbNav->assign( "baseURL", OC_Helper::linkTo("files", "index.php?dir="));
|
||||
|
||||
$maxUploadFilesize = OC_Helper::computerFileSize(ini_get('upload_max_filesize'));
|
||||
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Files" => "Fitxers",
|
||||
"Maximum upload size" => "Mida màxima de pujada",
|
||||
"Nothing in here. Upload something!" => "Res per aquí. Pugeu alguna cosa!",
|
||||
"Upload" => "Puja",
|
||||
"New Folder" => "Carpeta nova",
|
||||
"Name" => "Nom",
|
||||
"Download" => "Descarrega",
|
||||
"Size" => "Mida",
|
||||
"Modified" => "Modificat",
|
||||
"Delete" => "Esborra",
|
||||
"Upload too large" => "La pujada és massa gran",
|
||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Els fitxers que esteu intentant pujar excedeixen la mida màxima de pujada d'aquest servidor"
|
||||
);
|
|
@ -0,0 +1,14 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Files" => "Filer",
|
||||
"Maximum upload size" => "Maksimal upload-størrelse",
|
||||
"Nothing in here. Upload something!" => "Her er tomt. Upload noget!",
|
||||
"Upload" => "Upload",
|
||||
"New Folder" => "Ny Mappe",
|
||||
"Name" => "Navn",
|
||||
"Download" => "Download",
|
||||
"Size" => "Størrelse",
|
||||
"Modified" => "Ændret",
|
||||
"Delete" => "Slet",
|
||||
"Upload too large" => "Upload for stor",
|
||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filerne du prøver at uploade er større end den maksimale størrelse for fil-upload på denne server."
|
||||
);
|
|
@ -0,0 +1,14 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Files" => "Αρχεία",
|
||||
"Maximum upload size" => "Μέγιστο μέγεθος μεταφόρτωσης",
|
||||
"Nothing in here. Upload something!" => "Δεν υπάρχει τίποτα εδώ. Ανέβασε κάτι!",
|
||||
"Upload" => "Μεταφόρτωση",
|
||||
"New Folder" => "Νέος φάκελος",
|
||||
"Name" => "Όνομα",
|
||||
"Download" => "Λήψη",
|
||||
"Size" => "Μέγεθος",
|
||||
"Modified" => "Τροποποιήθηκε",
|
||||
"Delete" => "Διαγραφή",
|
||||
"Upload too large" => "Πολύ μεγάλο το αρχείο προς μεταφόρτωση",
|
||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Τα αρχεία που προσπαθείτε να ανεβάσετε υπερβαίνουν το μέγιστο μέγεθος μεταφόρτωσης αρχείων σε αυτόν το διακομιστή."
|
||||
);
|
|
@ -0,0 +1,14 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Files" => "Archivos",
|
||||
"Maximum upload size" => "Tamaño máximo de subida",
|
||||
"Nothing in here. Upload something!" => "Aquí no hay nada. ¡Sube algo!",
|
||||
"Upload" => "Subir",
|
||||
"New Folder" => "Crear Carpeta",
|
||||
"Name" => "Nombre",
|
||||
"Download" => "Descargar",
|
||||
"Size" => "Tamaño",
|
||||
"Modified" => "Modificado",
|
||||
"Delete" => "Eliminado",
|
||||
"Upload too large" => "El archivo es demasiado grande",
|
||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Los archivos que estás intentando subir sobrepasan el tamaño máximo permitido por este servidor."
|
||||
);
|
|
@ -0,0 +1,14 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Files" => "Berkas",
|
||||
"Maximum upload size" => "Ukuran unggah maksimum",
|
||||
"Nothing in here. Upload something!" => "Tidak ada apa-apa di sini. Unggah sesuatu!",
|
||||
"Upload" => "Unggah",
|
||||
"New Folder" => "Folder Baru",
|
||||
"Name" => "Nama",
|
||||
"Download" => "Unduh",
|
||||
"Size" => "Ukuran",
|
||||
"Modified" => "Dimodifikasi",
|
||||
"Delete" => "Hapus",
|
||||
"Upload too large" => "Unggahan terlalu besar",
|
||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Berkas yang anda coba unggah melebihi ukuran maksimum untuk pengunggahan berkas di server ini."
|
||||
);
|
|
@ -0,0 +1,14 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Files" => "File",
|
||||
"Maximum upload size" => "Dimensione massima upload",
|
||||
"Nothing in here. Upload something!" => "Non c'è niente qui. Carica qualcosa!",
|
||||
"Upload" => "Carica",
|
||||
"New Folder" => "Nuova Cartella",
|
||||
"Name" => "Nome",
|
||||
"Download" => "Scarica",
|
||||
"Size" => "Dimensione",
|
||||
"Modified" => "Modificato",
|
||||
"Delete" => "Cancella",
|
||||
"Upload too large" => "Il file caricato è troppo grande",
|
||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "I file che stai provando a caricare superano la dimensione massima consentita su questo server."
|
||||
);
|
|
@ -0,0 +1,14 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Files" => "Bestanden",
|
||||
"Maximum upload size" => "Maximaale bestands groote voor uploads",
|
||||
"Nothing in here. Upload something!" => "Er bevind zich hier niks, upload een bestand.",
|
||||
"Upload" => "Uploaden",
|
||||
"New Folder" => "Nieuwe Map",
|
||||
"Name" => "Naam",
|
||||
"Download" => "Download",
|
||||
"Size" => "Bestandsgroote",
|
||||
"Modified" => "Laatst aangepast",
|
||||
"Delete" => "Verwijderen",
|
||||
"Upload too large" => "Bestanden te groot",
|
||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "De bestanden die U probeert up te loaden zijn grooter dan de maximaal toegstane groote voor deze server."
|
||||
);
|
|
@ -0,0 +1,14 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Files" => "Arquivos",
|
||||
"Maximum upload size" => "Tamanho máximo para carregar",
|
||||
"Nothing in here. Upload something!" => "Nada aqui.Carregar alguma coisa!",
|
||||
"Upload" => "Carregar",
|
||||
"New Folder" => "Nova Pasta",
|
||||
"Name" => "Nome",
|
||||
"Download" => "Baixar",
|
||||
"Size" => "Tamanho",
|
||||
"Modified" => "Modificado",
|
||||
"Delete" => "Excluir",
|
||||
"Upload too large" => "Arquivo muito grande",
|
||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Os arquivos que você está tentando carregar excedeu o tamanho máximo para arquivos no servidor."
|
||||
);
|
|
@ -0,0 +1,14 @@
|
|||
<?php $TRANSLATIONS = array(
|
||||
"Files" => "Filer",
|
||||
"Maximum upload size" => "Maximal storlek att lägga upp",
|
||||
"Nothing in here. Upload something!" => "Ingenting här. Lägg upp något!",
|
||||
"Upload" => "Lägg upp",
|
||||
"New Folder" => "Ny katalog",
|
||||
"Name" => "Namn",
|
||||
"Download" => "Ladda ned",
|
||||
"Size" => "Storlek",
|
||||
"Modified" => "Ändrad",
|
||||
"Delete" => "Ta bort",
|
||||
"Upload too large" => "För stor överföring",
|
||||
"The files you are trying to upload exceed the maximum size for file uploads on this server." => "Filerna du försöker lägga upp överstiger den maximala storleken för filöverföringar på servern."
|
||||
);
|
|
@ -29,7 +29,7 @@
|
|||
<span class='name'><?php echo $l->t( 'Name' ); ?></span>
|
||||
<span class='selectedActions'>
|
||||
<a href="" title="<?php echo $l->t('Download')?>" class="download"><img class='svg' alt="Download" src="../core/img/actions/download.svg" /></a>
|
||||
<!--<a href="" title="" class="share">Share</a>-->
|
||||
<a href="" title="Share" class="share"><img class='svg' alt="Share" src="../core/img/actions/share.svg" /></a>
|
||||
</span>
|
||||
</th>
|
||||
<th id="headerSize"><?php echo $l->t( 'Size' ); ?></th>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?php foreach($_["breadcrumb"] as $crumb): ?>
|
||||
<div class="crumb svg" data-dir='<?php echo $crumb["dir"];?>' style='background-image:url("<?php echo image_path('core','breadcrumb.png');?>")'>
|
||||
<a href="<?php echo link_to("files", "index.php?dir=".$crumb["dir"]); ?>"><?php echo htmlspecialchars($crumb["name"]); ?></a>
|
||||
<a href="<?php echo $_['baseURL'].$crumb["dir"]; ?>"><?php echo htmlspecialchars($crumb["name"]); ?></a>
|
||||
</div>
|
||||
<?php endforeach; ?>
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<tr data-file="<?php echo $file['name'];?>" data-type="<?php echo ($file['type'] == 'dir')?'dir':'file'?>" data-mime="<?php echo $file['mime']?>" data-size='<?php echo $file['size'];?>'>
|
||||
<td class="filename svg" style="background-image:url(<?php if($file['type'] == 'dir') echo mimetype_icon('dir'); else echo mimetype_icon($file['mime']); ?>)">
|
||||
<input type="checkbox" />
|
||||
<a class="name" href="<?php if($file['type'] == 'dir') echo link_to('files', 'index.php?dir='.$file['directory'].'/'.$file['name']); else echo link_to('files', 'download.php?file='.$file['directory'].'/'.$file['name']); ?>" title="">
|
||||
<a class="name" href="<?php if($file['type'] == 'dir') echo $_['baseURL'].$file['directory'].'/'.$file['name']; else echo $_['downloadURL'].$file['directory'].'/'.$file['name']; ?>" title="">
|
||||
<span class="nametext">
|
||||
<?php if($file['type'] == 'dir'):?>
|
||||
<?php echo htmlspecialchars($file['name']);?>
|
||||
|
|
|
@ -8,8 +8,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 04:33+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 03:02+0000\n"
|
||||
"POT-Creation-Date: 2011-08-18 21:07+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 19:08+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Bulgarian (Bulgaria) (http://www.transifex.net/projects/p/owncloud/team/bg_BG/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -18,6 +18,22 @@ msgstr ""
|
|||
"Language: bg_BG\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: strings.php:5
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:6
|
||||
msgid "Apps"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:7
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:8
|
||||
msgid "Personal"
|
||||
msgstr ""
|
||||
|
||||
#: templates/login.php:4
|
||||
msgid "Login failed!"
|
||||
msgstr "Входа пропадна!"
|
||||
|
@ -84,8 +100,8 @@ msgid "Cloud not found"
|
|||
msgstr "обклакът не намерен"
|
||||
|
||||
#: templates/layout.guest.php:38
|
||||
msgid "is a personal cloud which runs on your own server"
|
||||
msgstr "е персонален облак който работи от Ваш собствен сървър"
|
||||
msgid "gives you the freedom to control your own data on the internet"
|
||||
msgstr ""
|
||||
|
||||
#: templates/part.pagenavi.php:6
|
||||
msgid "prev"
|
||||
|
@ -99,11 +115,7 @@ msgstr "следващо"
|
|||
msgid "You are logged out."
|
||||
msgstr "Вие излязохте."
|
||||
|
||||
#: templates/layout.user.php:36
|
||||
msgid "Log out"
|
||||
msgstr ""
|
||||
|
||||
#: templates/layout.user.php:56
|
||||
#: templates/layout.user.php:49
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -0,0 +1,69 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 12:41+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 02:25+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Bulgarian (Bulgaria) (http://www.transifex.net/projects/p/owncloud/team/bg_BG/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: bg_BG\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: appinfo/app.php:7
|
||||
msgid "Files"
|
||||
msgstr ""
|
||||
|
||||
#: templates/admin.php:5
|
||||
msgid "Maximum upload size"
|
||||
msgstr ""
|
||||
|
||||
#: templates/part.list.php:1
|
||||
msgid "Nothing in here. Upload something!"
|
||||
msgstr ""
|
||||
|
||||
#: templates/index.php:9
|
||||
msgid "Upload"
|
||||
msgstr ""
|
||||
|
||||
#: templates/index.php:16
|
||||
msgid "New Folder"
|
||||
msgstr ""
|
||||
|
||||
#: templates/index.php:29
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#: templates/index.php:31
|
||||
msgid "Download"
|
||||
msgstr ""
|
||||
|
||||
#: templates/index.php:35
|
||||
msgid "Size"
|
||||
msgstr ""
|
||||
|
||||
#: templates/index.php:36
|
||||
msgid "Modified"
|
||||
msgstr ""
|
||||
|
||||
#: templates/index.php:36
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: templates/index.php:44
|
||||
msgid "Upload too large"
|
||||
msgstr ""
|
||||
|
||||
#: templates/index.php:46
|
||||
msgid ""
|
||||
"The files you are trying to upload exceed the maximum size for file uploads "
|
||||
"on this server."
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 12:41+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 02:19+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Bulgarian (Bulgaria) (http://www.transifex.net/projects/p/owncloud/team/bg_BG/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: bg_BG\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: appinfo/app.php:31
|
||||
msgid "Music"
|
||||
msgstr ""
|
||||
|
||||
#: templates/music.php:27
|
||||
msgid "Songs scanned"
|
||||
msgstr ""
|
||||
|
||||
#: templates/music.php:28
|
||||
msgid "Rescan Collection"
|
||||
msgstr ""
|
||||
|
||||
#: templates/music.php:29
|
||||
msgid "Pause"
|
||||
msgstr ""
|
||||
|
||||
#: templates/music.php:35
|
||||
msgid "Artist"
|
||||
msgstr ""
|
||||
|
||||
#: templates/music.php:36
|
||||
msgid "Album"
|
||||
msgstr ""
|
||||
|
||||
#: templates/music.php:37
|
||||
msgid "Title"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -7,8 +7,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 04:33+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 02:19+0000\n"
|
||||
"POT-Creation-Date: 2011-08-18 18:58+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 16:59+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Bulgarian (Bulgaria) (http://www.transifex.net/projects/p/owncloud/team/bg_BG/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -33,7 +33,19 @@ msgstr "Невалидна заявка"
|
|||
msgid "Language changed"
|
||||
msgstr "Езика е сменен"
|
||||
|
||||
#: templates/help.php:21
|
||||
#: templates/help.php:2
|
||||
msgid "Problems connecting to help database."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:3
|
||||
msgid "Go there manually."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:11
|
||||
msgid "Answer"
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:17
|
||||
msgid "Ask a question"
|
||||
msgstr ""
|
||||
|
||||
|
@ -49,46 +61,46 @@ msgstr ""
|
|||
msgid "by"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:3
|
||||
msgid "Account information"
|
||||
msgstr "Информация за профила"
|
||||
#: templates/personal.php:2
|
||||
msgid "You use"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "You're currently using"
|
||||
msgstr "Вие ползвате"
|
||||
#: templates/personal.php:2
|
||||
msgid "of the available"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "of your"
|
||||
msgstr "на Вашето"
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "space"
|
||||
msgstr "място"
|
||||
|
||||
#: templates/personal.php:11 templates/personal.php:17
|
||||
msgid "Change Password"
|
||||
msgstr "Промяна на парола"
|
||||
|
||||
#: templates/personal.php:12
|
||||
#: templates/personal.php:7
|
||||
msgid "Your password got changed"
|
||||
msgstr "Вашата парола е сменена"
|
||||
|
||||
#: templates/personal.php:14
|
||||
msgid "Old password"
|
||||
#: templates/personal.php:9
|
||||
msgid "Current password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:15
|
||||
#: templates/personal.php:10
|
||||
msgid "New password"
|
||||
msgstr "Нова парола"
|
||||
|
||||
#: templates/personal.php:16
|
||||
#: templates/personal.php:11
|
||||
msgid "show"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:23
|
||||
#: templates/personal.php:12
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:18
|
||||
msgid "Language"
|
||||
msgstr "Език"
|
||||
|
||||
#: templates/personal.php:24
|
||||
msgid "Help translating"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:30
|
||||
msgid "use this address to connect to your ownCloud in your file manager"
|
||||
msgstr ""
|
||||
|
||||
#: templates/users.php:11
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
@ -105,8 +117,8 @@ msgstr ""
|
|||
msgid "Create"
|
||||
msgstr ""
|
||||
|
||||
#: templates/users.php:36
|
||||
msgid "Remove"
|
||||
#: templates/users.php:40
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,121 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# <rcalvoi@yahoo.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-19 13:10+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 20:01+0000\n"
|
||||
"Last-Translator: rogerc <rcalvoi@yahoo.com>\n"
|
||||
"Language-Team: Catalan (http://www.transifex.net/projects/p/owncloud/team/ca/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: ca\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: strings.php:5
|
||||
msgid "Users"
|
||||
msgstr "Usuaris"
|
||||
|
||||
#: strings.php:6
|
||||
msgid "Apps"
|
||||
msgstr "Aplicacions"
|
||||
|
||||
#: strings.php:7
|
||||
msgid "Help"
|
||||
msgstr "Ajuda"
|
||||
|
||||
#: strings.php:8
|
||||
msgid "Personal"
|
||||
msgstr "Personal"
|
||||
|
||||
#: templates/login.php:4
|
||||
msgid "Login failed!"
|
||||
msgstr "L'inici de sessió ha fallat!"
|
||||
|
||||
#: templates/login.php:9 templates/login.php:13
|
||||
msgid "remember"
|
||||
msgstr "recorda'm"
|
||||
|
||||
#: templates/installation.php:20
|
||||
msgid "Create an <strong>admin account</strong>"
|
||||
msgstr "Crea un <strong>compte d'administrador</strong>"
|
||||
|
||||
#: templates/installation.php:21
|
||||
msgid "Username"
|
||||
msgstr "Nom d'usuari"
|
||||
|
||||
#: templates/installation.php:22
|
||||
msgid "Password"
|
||||
msgstr "Contrasenya"
|
||||
|
||||
#: templates/installation.php:27
|
||||
msgid "Configure the database"
|
||||
msgstr "Configura la base de dades"
|
||||
|
||||
#: templates/installation.php:32 templates/installation.php:43
|
||||
#: templates/installation.php:53
|
||||
msgid "will be used"
|
||||
msgstr "s'usarà"
|
||||
|
||||
#: templates/installation.php:64
|
||||
msgid "Database user"
|
||||
msgstr "Usuari de la base de dades"
|
||||
|
||||
#: templates/installation.php:65
|
||||
msgid "Database password"
|
||||
msgstr "Contrasenya de la base de dades"
|
||||
|
||||
#: templates/installation.php:66
|
||||
msgid "Database name"
|
||||
msgstr "Nom de la base de dades"
|
||||
|
||||
#: templates/installation.php:74
|
||||
msgid "Advanced"
|
||||
msgstr "Avançat"
|
||||
|
||||
#: templates/installation.php:77
|
||||
msgid "Host"
|
||||
msgstr "Host"
|
||||
|
||||
#: templates/installation.php:78
|
||||
msgid "Table prefix"
|
||||
msgstr "Prefix de les taules"
|
||||
|
||||
#: templates/installation.php:80
|
||||
msgid "Data folder"
|
||||
msgstr "Carpeta de dades"
|
||||
|
||||
#: templates/installation.php:83
|
||||
msgid "Finish setup"
|
||||
msgstr "Acaba la configuració"
|
||||
|
||||
#: templates/404.php:12
|
||||
msgid "Cloud not found"
|
||||
msgstr "No s'ha trobat el núvol"
|
||||
|
||||
#: templates/layout.guest.php:38
|
||||
msgid "gives you the freedom to control your own data on the internet"
|
||||
msgstr "us dóna la llibertat per controlar les vostres dades a internet"
|
||||
|
||||
#: templates/part.pagenavi.php:6
|
||||
msgid "prev"
|
||||
msgstr "anterior"
|
||||
|
||||
#: templates/part.pagenavi.php:26
|
||||
msgid "next"
|
||||
msgstr "següent"
|
||||
|
||||
#: templates/logout.php:1
|
||||
msgid "You are logged out."
|
||||
msgstr "Heu tancat la sessió."
|
||||
|
||||
#: templates/layout.user.php:49
|
||||
msgid "Settings"
|
||||
msgstr "Arranjament"
|
||||
|
||||
|
|
@ -0,0 +1,72 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# <rcalvoi@yahoo.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 12:41+0200\n"
|
||||
"PO-Revision-Date: 2011-08-16 18:04+0000\n"
|
||||
"Last-Translator: rogerc <rcalvoi@yahoo.com>\n"
|
||||
"Language-Team: Catalan (http://www.transifex.net/projects/p/owncloud/team/ca/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: ca\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: appinfo/app.php:7
|
||||
msgid "Files"
|
||||
msgstr "Fitxers"
|
||||
|
||||
#: templates/admin.php:5
|
||||
msgid "Maximum upload size"
|
||||
msgstr "Mida màxima de pujada"
|
||||
|
||||
#: templates/part.list.php:1
|
||||
msgid "Nothing in here. Upload something!"
|
||||
msgstr "Res per aquí. Pugeu alguna cosa!"
|
||||
|
||||
#: templates/index.php:9
|
||||
msgid "Upload"
|
||||
msgstr "Puja"
|
||||
|
||||
#: templates/index.php:16
|
||||
msgid "New Folder"
|
||||
msgstr "Carpeta nova"
|
||||
|
||||
#: templates/index.php:29
|
||||
msgid "Name"
|
||||
msgstr "Nom"
|
||||
|
||||
#: templates/index.php:31
|
||||
msgid "Download"
|
||||
msgstr "Descarrega"
|
||||
|
||||
#: templates/index.php:35
|
||||
msgid "Size"
|
||||
msgstr "Mida"
|
||||
|
||||
#: templates/index.php:36
|
||||
msgid "Modified"
|
||||
msgstr "Modificat"
|
||||
|
||||
#: templates/index.php:36
|
||||
msgid "Delete"
|
||||
msgstr "Esborra"
|
||||
|
||||
#: templates/index.php:44
|
||||
msgid "Upload too large"
|
||||
msgstr "La pujada és massa gran"
|
||||
|
||||
#: templates/index.php:46
|
||||
msgid ""
|
||||
"The files you are trying to upload exceed the maximum size for file uploads "
|
||||
"on this server."
|
||||
msgstr ""
|
||||
"Els fitxers que esteu intentant pujar excedeixen la mida màxima de pujada "
|
||||
"d'aquest servidor"
|
||||
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# <rcalvoi@yahoo.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 12:41+0200\n"
|
||||
"PO-Revision-Date: 2011-08-16 06:18+0000\n"
|
||||
"Last-Translator: rogerc <rcalvoi@yahoo.com>\n"
|
||||
"Language-Team: Catalan (http://www.transifex.net/projects/p/owncloud/team/ca/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: ca\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: appinfo/app.php:31
|
||||
msgid "Music"
|
||||
msgstr "Música"
|
||||
|
||||
#: templates/music.php:27
|
||||
msgid "Songs scanned"
|
||||
msgstr "Cançons escanejades"
|
||||
|
||||
#: templates/music.php:28
|
||||
msgid "Rescan Collection"
|
||||
msgstr "Escaneja de nou la col·lecció"
|
||||
|
||||
#: templates/music.php:29
|
||||
msgid "Pause"
|
||||
msgstr "Pausa"
|
||||
|
||||
#: templates/music.php:35
|
||||
msgid "Artist"
|
||||
msgstr "Artista"
|
||||
|
||||
#: templates/music.php:36
|
||||
msgid "Album"
|
||||
msgstr "Àlbum"
|
||||
|
||||
#: templates/music.php:37
|
||||
msgid "Title"
|
||||
msgstr "Títol"
|
||||
|
||||
|
|
@ -0,0 +1,124 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# <rcalvoi@yahoo.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-18 18:58+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 16:59+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Catalan (http://www.transifex.net/projects/p/owncloud/team/ca/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: ca\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: ajax/openid.php:13 ajax/setlanguage.php:13
|
||||
msgid "Authentication error"
|
||||
msgstr "Error d'autenticació"
|
||||
|
||||
#: ajax/openid.php:21
|
||||
msgid "OpenID Changed"
|
||||
msgstr "OpenID ha canviat"
|
||||
|
||||
#: ajax/openid.php:23 ajax/setlanguage.php:23
|
||||
msgid "Invalid request"
|
||||
msgstr "Sol.licitud no vàlida"
|
||||
|
||||
#: ajax/setlanguage.php:21
|
||||
msgid "Language changed"
|
||||
msgstr "S'ha canviat l'idioma"
|
||||
|
||||
#: templates/help.php:2
|
||||
msgid "Problems connecting to help database."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:3
|
||||
msgid "Go there manually."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:11
|
||||
msgid "Answer"
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:17
|
||||
msgid "Ask a question"
|
||||
msgstr "Feu una pregunta"
|
||||
|
||||
#: templates/apps.php:12
|
||||
msgid "Select an App"
|
||||
msgstr "Sel·leccioneu una aplicació"
|
||||
|
||||
#: templates/apps.php:14
|
||||
msgid "-licensed"
|
||||
msgstr "- amb llicència"
|
||||
|
||||
#: templates/apps.php:14
|
||||
msgid "by"
|
||||
msgstr "per"
|
||||
|
||||
#: templates/personal.php:2
|
||||
msgid "You use"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:2
|
||||
msgid "of the available"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:7
|
||||
msgid "Your password got changed"
|
||||
msgstr "La contrasenya ha canviat"
|
||||
|
||||
#: templates/personal.php:9
|
||||
msgid "Current password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:10
|
||||
msgid "New password"
|
||||
msgstr "Contrasenya nova"
|
||||
|
||||
#: templates/personal.php:11
|
||||
msgid "show"
|
||||
msgstr "mostra"
|
||||
|
||||
#: templates/personal.php:12
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:18
|
||||
msgid "Language"
|
||||
msgstr "Idioma"
|
||||
|
||||
#: templates/personal.php:24
|
||||
msgid "Help translating"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:30
|
||||
msgid "use this address to connect to your ownCloud in your file manager"
|
||||
msgstr ""
|
||||
|
||||
#: templates/users.php:11
|
||||
msgid "Name"
|
||||
msgstr "Nom"
|
||||
|
||||
#: templates/users.php:12
|
||||
msgid "Password"
|
||||
msgstr "Contrasenya"
|
||||
|
||||
#: templates/users.php:13 templates/users.php:28
|
||||
msgid "Groups"
|
||||
msgstr "Grups"
|
||||
|
||||
#: templates/users.php:18
|
||||
msgid "Create"
|
||||
msgstr "Crea"
|
||||
|
||||
#: templates/users.php:40
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -2,12 +2,13 @@
|
|||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Pascal d'Hermilly <pascal@dhermilly.dk>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 04:33+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 02:33+0000\n"
|
||||
"POT-Creation-Date: 2011-08-18 21:07+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 19:08+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Danish (http://www.transifex.net/projects/p/owncloud/team/da/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -16,46 +17,62 @@ msgstr ""
|
|||
"Language: da\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: strings.php:5
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:6
|
||||
msgid "Apps"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:7
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:8
|
||||
msgid "Personal"
|
||||
msgstr ""
|
||||
|
||||
#: templates/login.php:4
|
||||
msgid "Login failed!"
|
||||
msgstr "Login mislykkedes"
|
||||
msgstr "Login mislykkedes!"
|
||||
|
||||
#: templates/login.php:9 templates/login.php:13
|
||||
msgid "remember"
|
||||
msgstr ""
|
||||
msgstr "husk"
|
||||
|
||||
#: templates/installation.php:20
|
||||
msgid "Create an <strong>admin account</strong>"
|
||||
msgstr ""
|
||||
msgstr "Lav en <strong>administrator konto</strong>"
|
||||
|
||||
#: templates/installation.php:21
|
||||
msgid "Username"
|
||||
msgstr ""
|
||||
msgstr "Brugernavn"
|
||||
|
||||
#: templates/installation.php:22
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
msgstr "Kodeord"
|
||||
|
||||
#: templates/installation.php:27
|
||||
msgid "Configure the database"
|
||||
msgstr ""
|
||||
msgstr "Konfigurer databasen"
|
||||
|
||||
#: templates/installation.php:32 templates/installation.php:43
|
||||
#: templates/installation.php:53
|
||||
msgid "will be used"
|
||||
msgstr ""
|
||||
msgstr "vil blive brugt"
|
||||
|
||||
#: templates/installation.php:64
|
||||
msgid "Database user"
|
||||
msgstr ""
|
||||
msgstr "Database-bruger"
|
||||
|
||||
#: templates/installation.php:65
|
||||
msgid "Database password"
|
||||
msgstr ""
|
||||
msgstr "Database-kodeord"
|
||||
|
||||
#: templates/installation.php:66
|
||||
msgid "Database name"
|
||||
msgstr ""
|
||||
msgstr "Database-navn"
|
||||
|
||||
#: templates/installation.php:74
|
||||
msgid "Advanced"
|
||||
|
@ -63,15 +80,15 @@ msgstr "Avanceret"
|
|||
|
||||
#: templates/installation.php:77
|
||||
msgid "Host"
|
||||
msgstr ""
|
||||
msgstr "Vært"
|
||||
|
||||
#: templates/installation.php:78
|
||||
msgid "Table prefix"
|
||||
msgstr ""
|
||||
msgstr "Tabel præfiks"
|
||||
|
||||
#: templates/installation.php:80
|
||||
msgid "Data folder"
|
||||
msgstr ""
|
||||
msgstr "Data mappe"
|
||||
|
||||
#: templates/installation.php:83
|
||||
msgid "Finish setup"
|
||||
|
@ -79,10 +96,10 @@ msgstr "Afslut installation"
|
|||
|
||||
#: templates/404.php:12
|
||||
msgid "Cloud not found"
|
||||
msgstr ""
|
||||
msgstr "Sky ikke fundet"
|
||||
|
||||
#: templates/layout.guest.php:38
|
||||
msgid "is a personal cloud which runs on your own server"
|
||||
msgid "gives you the freedom to control your own data on the internet"
|
||||
msgstr ""
|
||||
|
||||
#: templates/part.pagenavi.php:6
|
||||
|
@ -97,12 +114,8 @@ msgstr "næste"
|
|||
msgid "You are logged out."
|
||||
msgstr "Du er nu logget ud"
|
||||
|
||||
#: templates/layout.user.php:36
|
||||
msgid "Log out"
|
||||
msgstr ""
|
||||
|
||||
#: templates/layout.user.php:56
|
||||
#: templates/layout.user.php:49
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
msgstr "Indstillinger"
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,72 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Pascal d'Hermilly <pascal@dhermilly.dk>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 12:41+0200\n"
|
||||
"PO-Revision-Date: 2011-08-17 17:24+0000\n"
|
||||
"Last-Translator: pascal_a <pascal@dhermilly.dk>\n"
|
||||
"Language-Team: Danish (http://www.transifex.net/projects/p/owncloud/team/da/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: da\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: appinfo/app.php:7
|
||||
msgid "Files"
|
||||
msgstr "Filer"
|
||||
|
||||
#: templates/admin.php:5
|
||||
msgid "Maximum upload size"
|
||||
msgstr "Maksimal upload-størrelse"
|
||||
|
||||
#: templates/part.list.php:1
|
||||
msgid "Nothing in here. Upload something!"
|
||||
msgstr "Her er tomt. Upload noget!"
|
||||
|
||||
#: templates/index.php:9
|
||||
msgid "Upload"
|
||||
msgstr "Upload"
|
||||
|
||||
#: templates/index.php:16
|
||||
msgid "New Folder"
|
||||
msgstr "Ny Mappe"
|
||||
|
||||
#: templates/index.php:29
|
||||
msgid "Name"
|
||||
msgstr "Navn"
|
||||
|
||||
#: templates/index.php:31
|
||||
msgid "Download"
|
||||
msgstr "Download"
|
||||
|
||||
#: templates/index.php:35
|
||||
msgid "Size"
|
||||
msgstr "Størrelse"
|
||||
|
||||
#: templates/index.php:36
|
||||
msgid "Modified"
|
||||
msgstr "Ændret"
|
||||
|
||||
#: templates/index.php:36
|
||||
msgid "Delete"
|
||||
msgstr "Slet"
|
||||
|
||||
#: templates/index.php:44
|
||||
msgid "Upload too large"
|
||||
msgstr "Upload for stor"
|
||||
|
||||
#: templates/index.php:46
|
||||
msgid ""
|
||||
"The files you are trying to upload exceed the maximum size for file uploads "
|
||||
"on this server."
|
||||
msgstr ""
|
||||
"Filerne du prøver at uploade er større end den maksimale størrelse for fil-"
|
||||
"upload på denne server."
|
||||
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Pascal d'Hermilly <pascal@dhermilly.dk>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 12:41+0200\n"
|
||||
"PO-Revision-Date: 2011-08-17 17:19+0000\n"
|
||||
"Last-Translator: pascal_a <pascal@dhermilly.dk>\n"
|
||||
"Language-Team: Danish (http://www.transifex.net/projects/p/owncloud/team/da/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: da\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: appinfo/app.php:31
|
||||
msgid "Music"
|
||||
msgstr "Musik"
|
||||
|
||||
#: templates/music.php:27
|
||||
msgid "Songs scanned"
|
||||
msgstr "Sange skannet"
|
||||
|
||||
#: templates/music.php:28
|
||||
msgid "Rescan Collection"
|
||||
msgstr "Genskan Samling"
|
||||
|
||||
#: templates/music.php:29
|
||||
msgid "Pause"
|
||||
msgstr "Pause"
|
||||
|
||||
#: templates/music.php:35
|
||||
msgid "Artist"
|
||||
msgstr "Kunstner"
|
||||
|
||||
#: templates/music.php:36
|
||||
msgid "Album"
|
||||
msgstr "Album"
|
||||
|
||||
#: templates/music.php:37
|
||||
msgid "Title"
|
||||
msgstr "Titel"
|
||||
|
||||
|
|
@ -2,12 +2,13 @@
|
|||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Pascal d'Hermilly <pascal@dhermilly.dk>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 04:33+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 02:19+0000\n"
|
||||
"POT-Creation-Date: 2011-08-18 18:58+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 16:59+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Danish (http://www.transifex.net/projects/p/owncloud/team/da/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -22,90 +23,102 @@ msgstr "Godkendelsesfejl"
|
|||
|
||||
#: ajax/openid.php:21
|
||||
msgid "OpenID Changed"
|
||||
msgstr ""
|
||||
msgstr "OpenID ændret"
|
||||
|
||||
#: ajax/openid.php:23 ajax/setlanguage.php:23
|
||||
msgid "Invalid request"
|
||||
msgstr "Invalid forespørgsel"
|
||||
msgstr "Ugyldig forespørgsel"
|
||||
|
||||
#: ajax/setlanguage.php:21
|
||||
msgid "Language changed"
|
||||
msgstr "Sprog ændret"
|
||||
|
||||
#: templates/help.php:21
|
||||
msgid "Ask a question"
|
||||
#: templates/help.php:2
|
||||
msgid "Problems connecting to help database."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:3
|
||||
msgid "Go there manually."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:11
|
||||
msgid "Answer"
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:17
|
||||
msgid "Ask a question"
|
||||
msgstr "Stil et spørgsmål"
|
||||
|
||||
#: templates/apps.php:12
|
||||
msgid "Select an App"
|
||||
msgstr ""
|
||||
msgstr "Vælg en App"
|
||||
|
||||
#: templates/apps.php:14
|
||||
msgid "-licensed"
|
||||
msgstr ""
|
||||
msgstr "-licenseret"
|
||||
|
||||
#: templates/apps.php:14
|
||||
msgid "by"
|
||||
msgstr "af"
|
||||
|
||||
#: templates/personal.php:2
|
||||
msgid "You use"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:3
|
||||
msgid "Account information"
|
||||
msgstr "Konto information"
|
||||
#: templates/personal.php:2
|
||||
msgid "of the available"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "You're currently using"
|
||||
msgstr "Du udnytter i øjeblikket"
|
||||
#: templates/personal.php:7
|
||||
msgid "Your password got changed"
|
||||
msgstr "Din adgangskode er blevet ændret"
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "of your"
|
||||
msgstr "af din"
|
||||
#: templates/personal.php:9
|
||||
msgid "Current password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "space"
|
||||
msgstr "plads"
|
||||
#: templates/personal.php:10
|
||||
msgid "New password"
|
||||
msgstr "Ny adgangskode"
|
||||
|
||||
#: templates/personal.php:11 templates/personal.php:17
|
||||
msgid "Change Password"
|
||||
msgstr "Ændre adgangskode"
|
||||
#: templates/personal.php:11
|
||||
msgid "show"
|
||||
msgstr "vis"
|
||||
|
||||
#: templates/personal.php:12
|
||||
msgid "Your password got changed"
|
||||
msgstr "Din adgangskode er ændret"
|
||||
|
||||
#: templates/personal.php:14
|
||||
msgid "Old password"
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:15
|
||||
msgid "New password"
|
||||
msgstr "Nye adgangskode"
|
||||
|
||||
#: templates/personal.php:16
|
||||
msgid "show"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:23
|
||||
#: templates/personal.php:18
|
||||
msgid "Language"
|
||||
msgstr "Sprog"
|
||||
|
||||
#: templates/personal.php:24
|
||||
msgid "Help translating"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:30
|
||||
msgid "use this address to connect to your ownCloud in your file manager"
|
||||
msgstr ""
|
||||
|
||||
#: templates/users.php:11
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
msgstr "Navn"
|
||||
|
||||
#: templates/users.php:12
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
msgstr "Kodeord"
|
||||
|
||||
#: templates/users.php:13 templates/users.php:28
|
||||
msgid "Groups"
|
||||
msgstr ""
|
||||
msgstr "Grupper"
|
||||
|
||||
#: templates/users.php:18
|
||||
msgid "Create"
|
||||
msgstr ""
|
||||
msgstr "Ny"
|
||||
|
||||
#: templates/users.php:36
|
||||
msgid "Remove"
|
||||
#: templates/users.php:40
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
|
||||
|
|
|
@ -8,8 +8,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 04:33+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 02:35+0000\n"
|
||||
"POT-Creation-Date: 2011-08-19 13:10+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 19:25+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: German (http://www.transifex.net/projects/p/owncloud/team/de/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -18,6 +18,22 @@ msgstr ""
|
|||
"Language: de\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: strings.php:5
|
||||
msgid "Users"
|
||||
msgstr "Nutzer"
|
||||
|
||||
#: strings.php:6
|
||||
msgid "Apps"
|
||||
msgstr "Anwendungen"
|
||||
|
||||
#: strings.php:7
|
||||
msgid "Help"
|
||||
msgstr "Hilfe"
|
||||
|
||||
#: strings.php:8
|
||||
msgid "Personal"
|
||||
msgstr "Persönlich"
|
||||
|
||||
#: templates/login.php:4
|
||||
msgid "Login failed!"
|
||||
msgstr "Anmeldung fehlgeschlagen!"
|
||||
|
@ -84,8 +100,9 @@ msgid "Cloud not found"
|
|||
msgstr "Cloud nicht verfügbar"
|
||||
|
||||
#: templates/layout.guest.php:38
|
||||
msgid "is a personal cloud which runs on your own server"
|
||||
msgstr "ist ein persönlicher Online-Speicher für deinen eigenen Server"
|
||||
msgid "gives you the freedom to control your own data on the internet"
|
||||
msgstr ""
|
||||
"gibt dir die Freiheit, deine eigenen Daten im Internet zu kontrollieren."
|
||||
|
||||
#: templates/part.pagenavi.php:6
|
||||
msgid "prev"
|
||||
|
@ -99,11 +116,7 @@ msgstr "Weiter"
|
|||
msgid "You are logged out."
|
||||
msgstr "Erfolgreich abgemeldet."
|
||||
|
||||
#: templates/layout.user.php:36
|
||||
msgid "Log out"
|
||||
msgstr "Abmelden"
|
||||
|
||||
#: templates/layout.user.php:56
|
||||
#: templates/layout.user.php:49
|
||||
msgid "Settings"
|
||||
msgstr "Einstellungen"
|
||||
|
||||
|
|
|
@ -7,8 +7,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 04:33+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 02:37+0000\n"
|
||||
"POT-Creation-Date: 2011-08-18 21:07+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 17:25+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: German (http://www.transifex.net/projects/p/owncloud/team/de/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -33,7 +33,19 @@ msgstr "Ungültige Anfrage"
|
|||
msgid "Language changed"
|
||||
msgstr "Sprache geändert"
|
||||
|
||||
#: templates/help.php:21
|
||||
#: templates/help.php:3
|
||||
msgid "Problems connecting to help database."
|
||||
msgstr "Probleme bei der Verbindung zur Hilfe-Datenbank."
|
||||
|
||||
#: templates/help.php:4
|
||||
msgid "Go there manually."
|
||||
msgstr "Datenbank direkt besuchen."
|
||||
|
||||
#: templates/help.php:12
|
||||
msgid "Answer"
|
||||
msgstr "Antwort"
|
||||
|
||||
#: templates/help.php:16
|
||||
msgid "Ask a question"
|
||||
msgstr "Stell eine Frage"
|
||||
|
||||
|
@ -49,46 +61,48 @@ msgstr "-lizenziert"
|
|||
msgid "by"
|
||||
msgstr "von"
|
||||
|
||||
#: templates/personal.php:3
|
||||
msgid "Account information"
|
||||
msgstr "Konto-Information"
|
||||
#: templates/personal.php:2
|
||||
msgid "You use"
|
||||
msgstr "Du nutzt"
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "You're currently using"
|
||||
msgstr "Du benutzt gerade"
|
||||
#: templates/personal.php:2
|
||||
msgid "of the available"
|
||||
msgstr "der verfügbaren"
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "of your"
|
||||
msgstr "von deinem"
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "space"
|
||||
msgstr "Speicherplatz"
|
||||
|
||||
#: templates/personal.php:11 templates/personal.php:17
|
||||
msgid "Change Password"
|
||||
msgstr "Passwort ändern"
|
||||
|
||||
#: templates/personal.php:12
|
||||
#: templates/personal.php:7
|
||||
msgid "Your password got changed"
|
||||
msgstr "Dein Passwort wurde geändert"
|
||||
|
||||
#: templates/personal.php:14
|
||||
msgid "Old password"
|
||||
msgstr "Altes Passwort"
|
||||
#: templates/personal.php:9
|
||||
msgid "Current password"
|
||||
msgstr "Aktuelles Passwort"
|
||||
|
||||
#: templates/personal.php:15
|
||||
#: templates/personal.php:10
|
||||
msgid "New password"
|
||||
msgstr "Neues Passwort"
|
||||
|
||||
#: templates/personal.php:16
|
||||
#: templates/personal.php:11
|
||||
msgid "show"
|
||||
msgstr "zeigen"
|
||||
|
||||
#: templates/personal.php:23
|
||||
#: templates/personal.php:12
|
||||
msgid "Change password"
|
||||
msgstr "Passwort ändern"
|
||||
|
||||
#: templates/personal.php:18
|
||||
msgid "Language"
|
||||
msgstr "Sprache"
|
||||
|
||||
#: templates/personal.php:24
|
||||
msgid "Help translating"
|
||||
msgstr "Hilf bei der Übersetzung"
|
||||
|
||||
#: templates/personal.php:30
|
||||
msgid "use this address to connect to your ownCloud in your file manager"
|
||||
msgstr ""
|
||||
"benutze diese Adresse, um deine ownCloud mit deinem Dateiverwalter zu "
|
||||
"verbinden"
|
||||
|
||||
#: templates/users.php:11
|
||||
msgid "Name"
|
||||
msgstr "Name"
|
||||
|
@ -105,8 +119,8 @@ msgstr "Gruppen"
|
|||
msgid "Create"
|
||||
msgstr "Anlegen"
|
||||
|
||||
#: templates/users.php:36
|
||||
msgid "Remove"
|
||||
msgstr "Entfernen"
|
||||
#: templates/users.php:40
|
||||
msgid "Delete"
|
||||
msgstr "Löschen"
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,123 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# <petros.kyladitis@gmail.com>, 2011.
|
||||
# Petros Kyladitis <petros.kyladitis@gmail.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-18 21:07+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 19:08+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Greek (http://www.transifex.net/projects/p/owncloud/team/el/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: el\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: strings.php:5
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:6
|
||||
msgid "Apps"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:7
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:8
|
||||
msgid "Personal"
|
||||
msgstr ""
|
||||
|
||||
#: templates/login.php:4
|
||||
msgid "Login failed!"
|
||||
msgstr "Η σύνδεση απέτυχε!"
|
||||
|
||||
#: templates/login.php:9 templates/login.php:13
|
||||
msgid "remember"
|
||||
msgstr "να με θυμάσαι"
|
||||
|
||||
#: templates/installation.php:20
|
||||
msgid "Create an <strong>admin account</strong>"
|
||||
msgstr "Δημιουργήστε έναν <strong>λογαριασμό διαχειριστή</strong>"
|
||||
|
||||
#: templates/installation.php:21
|
||||
msgid "Username"
|
||||
msgstr "Όνομα Χρήστη"
|
||||
|
||||
#: templates/installation.php:22
|
||||
msgid "Password"
|
||||
msgstr "Κωδικός"
|
||||
|
||||
#: templates/installation.php:27
|
||||
msgid "Configure the database"
|
||||
msgstr "Διαμόρφωση της βάσης δεδομένων"
|
||||
|
||||
#: templates/installation.php:32 templates/installation.php:43
|
||||
#: templates/installation.php:53
|
||||
msgid "will be used"
|
||||
msgstr "θα χρησιμοποιηθούν"
|
||||
|
||||
#: templates/installation.php:64
|
||||
msgid "Database user"
|
||||
msgstr "Χρήστης της βάσης δεδομένων"
|
||||
|
||||
#: templates/installation.php:65
|
||||
msgid "Database password"
|
||||
msgstr "Κωδικός πρόσβασης βάσης δεδομένων"
|
||||
|
||||
#: templates/installation.php:66
|
||||
msgid "Database name"
|
||||
msgstr "Όνομα βάσης δεδομένων"
|
||||
|
||||
#: templates/installation.php:74
|
||||
msgid "Advanced"
|
||||
msgstr "Για προχωρημένους"
|
||||
|
||||
#: templates/installation.php:77
|
||||
msgid "Host"
|
||||
msgstr "Εξυπηρετητής"
|
||||
|
||||
#: templates/installation.php:78
|
||||
msgid "Table prefix"
|
||||
msgstr "Πρόθεμα πίνακα"
|
||||
|
||||
#: templates/installation.php:80
|
||||
msgid "Data folder"
|
||||
msgstr "Φάκελος δεδομένων"
|
||||
|
||||
#: templates/installation.php:83
|
||||
msgid "Finish setup"
|
||||
msgstr "Ολοκλήρωση εγκατάστασης"
|
||||
|
||||
#: templates/404.php:12
|
||||
msgid "Cloud not found"
|
||||
msgstr "Δεν βρέθηκε σύννεφο"
|
||||
|
||||
#: templates/layout.guest.php:38
|
||||
msgid "gives you the freedom to control your own data on the internet"
|
||||
msgstr ""
|
||||
"σας δίνει την ελευθερία να ελέγχετε τα δικά σας δεδομένα στο διαδίκτυο"
|
||||
|
||||
#: templates/part.pagenavi.php:6
|
||||
msgid "prev"
|
||||
msgstr "προηγούμενο"
|
||||
|
||||
#: templates/part.pagenavi.php:26
|
||||
msgid "next"
|
||||
msgstr "επόμενο"
|
||||
|
||||
#: templates/logout.php:1
|
||||
msgid "You are logged out."
|
||||
msgstr "Έχετε αποσυνδεθεί."
|
||||
|
||||
#: templates/layout.user.php:49
|
||||
msgid "Settings"
|
||||
msgstr "Ρυθμίσεις"
|
||||
|
||||
|
|
@ -0,0 +1,72 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Petros Kyladitis <petros.kyladitis@gmail.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 12:41+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 17:44+0000\n"
|
||||
"Last-Translator: multipetros <petros.kyladitis@gmail.com>\n"
|
||||
"Language-Team: Greek (http://www.transifex.net/projects/p/owncloud/team/el/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: el\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: appinfo/app.php:7
|
||||
msgid "Files"
|
||||
msgstr "Αρχεία"
|
||||
|
||||
#: templates/admin.php:5
|
||||
msgid "Maximum upload size"
|
||||
msgstr "Μέγιστο μέγεθος μεταφόρτωσης"
|
||||
|
||||
#: templates/part.list.php:1
|
||||
msgid "Nothing in here. Upload something!"
|
||||
msgstr "Δεν υπάρχει τίποτα εδώ. Ανέβασε κάτι!"
|
||||
|
||||
#: templates/index.php:9
|
||||
msgid "Upload"
|
||||
msgstr "Μεταφόρτωση"
|
||||
|
||||
#: templates/index.php:16
|
||||
msgid "New Folder"
|
||||
msgstr "Νέος φάκελος"
|
||||
|
||||
#: templates/index.php:29
|
||||
msgid "Name"
|
||||
msgstr "Όνομα"
|
||||
|
||||
#: templates/index.php:31
|
||||
msgid "Download"
|
||||
msgstr "Λήψη"
|
||||
|
||||
#: templates/index.php:35
|
||||
msgid "Size"
|
||||
msgstr "Μέγεθος"
|
||||
|
||||
#: templates/index.php:36
|
||||
msgid "Modified"
|
||||
msgstr "Τροποποιήθηκε"
|
||||
|
||||
#: templates/index.php:36
|
||||
msgid "Delete"
|
||||
msgstr "Διαγραφή"
|
||||
|
||||
#: templates/index.php:44
|
||||
msgid "Upload too large"
|
||||
msgstr "Πολύ μεγάλο το αρχείο προς μεταφόρτωση"
|
||||
|
||||
#: templates/index.php:46
|
||||
msgid ""
|
||||
"The files you are trying to upload exceed the maximum size for file uploads "
|
||||
"on this server."
|
||||
msgstr ""
|
||||
"Τα αρχεία που προσπαθείτε να ανεβάσετε υπερβαίνουν το μέγιστο μέγεθος "
|
||||
"μεταφόρτωσης αρχείων σε αυτόν το διακομιστή."
|
||||
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Petros Kyladitis <petros.kyladitis@gmail.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 12:41+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 17:45+0000\n"
|
||||
"Last-Translator: multipetros <petros.kyladitis@gmail.com>\n"
|
||||
"Language-Team: Greek (http://www.transifex.net/projects/p/owncloud/team/el/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: el\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: appinfo/app.php:31
|
||||
msgid "Music"
|
||||
msgstr "Μουσική"
|
||||
|
||||
#: templates/music.php:27
|
||||
msgid "Songs scanned"
|
||||
msgstr "Σαρωμένα τραγούγια"
|
||||
|
||||
#: templates/music.php:28
|
||||
msgid "Rescan Collection"
|
||||
msgstr "Επανασάρωση συλλογής"
|
||||
|
||||
#: templates/music.php:29
|
||||
msgid "Pause"
|
||||
msgstr "Παύση"
|
||||
|
||||
#: templates/music.php:35
|
||||
msgid "Artist"
|
||||
msgstr "Καλλιτέχνης"
|
||||
|
||||
#: templates/music.php:36
|
||||
msgid "Album"
|
||||
msgstr "Άλμπουμ"
|
||||
|
||||
#: templates/music.php:37
|
||||
msgid "Title"
|
||||
msgstr "Τίτλος"
|
||||
|
||||
|
|
@ -0,0 +1,125 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# <petros.kyladitis@gmail.com>, 2011.
|
||||
# Petros Kyladitis <petros.kyladitis@gmail.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-18 18:58+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 16:59+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Greek (http://www.transifex.net/projects/p/owncloud/team/el/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: el\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: ajax/openid.php:13 ajax/setlanguage.php:13
|
||||
msgid "Authentication error"
|
||||
msgstr "Σφάλμα ταυτοποίησης"
|
||||
|
||||
#: ajax/openid.php:21
|
||||
msgid "OpenID Changed"
|
||||
msgstr "Το OpenID άλλαξε"
|
||||
|
||||
#: ajax/openid.php:23 ajax/setlanguage.php:23
|
||||
msgid "Invalid request"
|
||||
msgstr "Άκυρα αίτημα"
|
||||
|
||||
#: ajax/setlanguage.php:21
|
||||
msgid "Language changed"
|
||||
msgstr "Η γλώσσα άλλαξε"
|
||||
|
||||
#: templates/help.php:2
|
||||
msgid "Problems connecting to help database."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:3
|
||||
msgid "Go there manually."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:11
|
||||
msgid "Answer"
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:17
|
||||
msgid "Ask a question"
|
||||
msgstr "Κάντε μια ερώτηση"
|
||||
|
||||
#: templates/apps.php:12
|
||||
msgid "Select an App"
|
||||
msgstr "Επιλέξτε μια εφαρμογή"
|
||||
|
||||
#: templates/apps.php:14
|
||||
msgid "-licensed"
|
||||
msgstr "-με άδεια"
|
||||
|
||||
#: templates/apps.php:14
|
||||
msgid "by"
|
||||
msgstr "με"
|
||||
|
||||
#: templates/personal.php:2
|
||||
msgid "You use"
|
||||
msgstr "Χρησιμοποιείτε"
|
||||
|
||||
#: templates/personal.php:2
|
||||
msgid "of the available"
|
||||
msgstr "από τα διαθέσιμα"
|
||||
|
||||
#: templates/personal.php:7
|
||||
msgid "Your password got changed"
|
||||
msgstr "Ο κωδικός πρόσβασής σας άλαλαξε"
|
||||
|
||||
#: templates/personal.php:9
|
||||
msgid "Current password"
|
||||
msgstr "Τρέχοντα κωδικό πρόσβασης"
|
||||
|
||||
#: templates/personal.php:10
|
||||
msgid "New password"
|
||||
msgstr "Νέος κωδικός"
|
||||
|
||||
#: templates/personal.php:11
|
||||
msgid "show"
|
||||
msgstr "Εμφάνιση"
|
||||
|
||||
#: templates/personal.php:12
|
||||
msgid "Change password"
|
||||
msgstr "Αλλαγή κωδικού πρόσβασης"
|
||||
|
||||
#: templates/personal.php:18
|
||||
msgid "Language"
|
||||
msgstr "Γλώσσα"
|
||||
|
||||
#: templates/personal.php:24
|
||||
msgid "Help translating"
|
||||
msgstr "Βοηθήστε στη μετάφραση"
|
||||
|
||||
#: templates/personal.php:30
|
||||
msgid "use this address to connect to your ownCloud in your file manager"
|
||||
msgstr ""
|
||||
|
||||
#: templates/users.php:11
|
||||
msgid "Name"
|
||||
msgstr "Όνομα"
|
||||
|
||||
#: templates/users.php:12
|
||||
msgid "Password"
|
||||
msgstr "Κωδικός"
|
||||
|
||||
#: templates/users.php:13 templates/users.php:28
|
||||
msgid "Groups"
|
||||
msgstr "Ομάδες"
|
||||
|
||||
#: templates/users.php:18
|
||||
msgid "Create"
|
||||
msgstr "Δημιουργία"
|
||||
|
||||
#: templates/users.php:40
|
||||
msgid "Delete"
|
||||
msgstr "Διαγραφή"
|
||||
|
||||
|
|
@ -2,13 +2,14 @@
|
|||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# <sergioballesterossolanas@gmail.com>, 2011.
|
||||
# <rom1dep@gmail.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 04:33+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 02:33+0000\n"
|
||||
"POT-Creation-Date: 2011-08-18 21:07+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 19:08+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Spanish (Castilian) (http://www.transifex.net/projects/p/owncloud/team/es/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -17,17 +18,33 @@ msgstr ""
|
|||
"Language: es\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: strings.php:5
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:6
|
||||
msgid "Apps"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:7
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:8
|
||||
msgid "Personal"
|
||||
msgstr ""
|
||||
|
||||
#: templates/login.php:4
|
||||
msgid "Login failed!"
|
||||
msgstr "¡No se pudo iniciar sesión!"
|
||||
|
||||
#: templates/login.php:9 templates/login.php:13
|
||||
msgid "remember"
|
||||
msgstr ""
|
||||
msgstr "recuérdame"
|
||||
|
||||
#: templates/installation.php:20
|
||||
msgid "Create an <strong>admin account</strong>"
|
||||
msgstr ""
|
||||
msgstr "Crear una <strong>cuenta de administrador</strong>"
|
||||
|
||||
#: templates/installation.php:21
|
||||
msgid "Username"
|
||||
|
@ -39,24 +56,24 @@ msgstr "Contraseña"
|
|||
|
||||
#: templates/installation.php:27
|
||||
msgid "Configure the database"
|
||||
msgstr ""
|
||||
msgstr "Configurar la base de datos"
|
||||
|
||||
#: templates/installation.php:32 templates/installation.php:43
|
||||
#: templates/installation.php:53
|
||||
msgid "will be used"
|
||||
msgstr ""
|
||||
msgstr "serán utilizados"
|
||||
|
||||
#: templates/installation.php:64
|
||||
msgid "Database user"
|
||||
msgstr ""
|
||||
msgstr "Usuario de la base de datos"
|
||||
|
||||
#: templates/installation.php:65
|
||||
msgid "Database password"
|
||||
msgstr ""
|
||||
msgstr "Contraseña de la base de datos"
|
||||
|
||||
#: templates/installation.php:66
|
||||
msgid "Database name"
|
||||
msgstr ""
|
||||
msgstr "Nombre de la base de datos"
|
||||
|
||||
#: templates/installation.php:74
|
||||
msgid "Advanced"
|
||||
|
@ -64,15 +81,15 @@ msgstr "Avanzado"
|
|||
|
||||
#: templates/installation.php:77
|
||||
msgid "Host"
|
||||
msgstr ""
|
||||
msgstr "Host"
|
||||
|
||||
#: templates/installation.php:78
|
||||
msgid "Table prefix"
|
||||
msgstr ""
|
||||
msgstr "Prefijo de la tabla"
|
||||
|
||||
#: templates/installation.php:80
|
||||
msgid "Data folder"
|
||||
msgstr ""
|
||||
msgstr "Directorio de almacenamiento"
|
||||
|
||||
#: templates/installation.php:83
|
||||
msgid "Finish setup"
|
||||
|
@ -80,10 +97,10 @@ msgstr "Completar la instalación"
|
|||
|
||||
#: templates/404.php:12
|
||||
msgid "Cloud not found"
|
||||
msgstr ""
|
||||
msgstr "No se encontró la nube"
|
||||
|
||||
#: templates/layout.guest.php:38
|
||||
msgid "is a personal cloud which runs on your own server"
|
||||
msgid "gives you the freedom to control your own data on the internet"
|
||||
msgstr ""
|
||||
|
||||
#: templates/part.pagenavi.php:6
|
||||
|
@ -98,12 +115,8 @@ msgstr "siguiente"
|
|||
msgid "You are logged out."
|
||||
msgstr "Has cerrado sesión."
|
||||
|
||||
#: templates/layout.user.php:36
|
||||
msgid "Log out"
|
||||
msgstr ""
|
||||
|
||||
#: templates/layout.user.php:56
|
||||
#: templates/layout.user.php:49
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
msgstr "Ajustes"
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,72 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# <sergioballesterossolanas@gmail.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 12:41+0200\n"
|
||||
"PO-Revision-Date: 2011-08-17 07:24+0000\n"
|
||||
"Last-Translator: xsergiolpx <sergioballesterossolanas@gmail.com>\n"
|
||||
"Language-Team: Spanish (Castilian) (http://www.transifex.net/projects/p/owncloud/team/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"
|
||||
|
||||
#: appinfo/app.php:7
|
||||
msgid "Files"
|
||||
msgstr "Archivos"
|
||||
|
||||
#: templates/admin.php:5
|
||||
msgid "Maximum upload size"
|
||||
msgstr "Tamaño máximo de subida"
|
||||
|
||||
#: templates/part.list.php:1
|
||||
msgid "Nothing in here. Upload something!"
|
||||
msgstr "Aquí no hay nada. ¡Sube algo!"
|
||||
|
||||
#: templates/index.php:9
|
||||
msgid "Upload"
|
||||
msgstr "Subir"
|
||||
|
||||
#: templates/index.php:16
|
||||
msgid "New Folder"
|
||||
msgstr "Crear Carpeta"
|
||||
|
||||
#: templates/index.php:29
|
||||
msgid "Name"
|
||||
msgstr "Nombre"
|
||||
|
||||
#: templates/index.php:31
|
||||
msgid "Download"
|
||||
msgstr "Descargar"
|
||||
|
||||
#: templates/index.php:35
|
||||
msgid "Size"
|
||||
msgstr "Tamaño"
|
||||
|
||||
#: templates/index.php:36
|
||||
msgid "Modified"
|
||||
msgstr "Modificado"
|
||||
|
||||
#: templates/index.php:36
|
||||
msgid "Delete"
|
||||
msgstr "Eliminado"
|
||||
|
||||
#: templates/index.php:44
|
||||
msgid "Upload too large"
|
||||
msgstr "El archivo es demasiado grande"
|
||||
|
||||
#: templates/index.php:46
|
||||
msgid ""
|
||||
"The files you are trying to upload exceed the maximum size for file uploads "
|
||||
"on this server."
|
||||
msgstr ""
|
||||
"Los archivos que estás intentando subir sobrepasan el tamaño máximo "
|
||||
"permitido por este servidor."
|
||||
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# <sergioballesterossolanas@gmail.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 12:41+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 21:47+0000\n"
|
||||
"Last-Translator: xsergiolpx <sergioballesterossolanas@gmail.com>\n"
|
||||
"Language-Team: Spanish (Castilian) (http://www.transifex.net/projects/p/owncloud/team/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"
|
||||
|
||||
#: appinfo/app.php:31
|
||||
msgid "Music"
|
||||
msgstr "Música"
|
||||
|
||||
#: templates/music.php:27
|
||||
msgid "Songs scanned"
|
||||
msgstr "Canciones encontradas"
|
||||
|
||||
#: templates/music.php:28
|
||||
msgid "Rescan Collection"
|
||||
msgstr "Buscar música nueva"
|
||||
|
||||
#: templates/music.php:29
|
||||
msgid "Pause"
|
||||
msgstr "Pausa"
|
||||
|
||||
#: templates/music.php:35
|
||||
msgid "Artist"
|
||||
msgstr "Artista"
|
||||
|
||||
#: templates/music.php:36
|
||||
msgid "Album"
|
||||
msgstr "Álbum"
|
||||
|
||||
#: templates/music.php:37
|
||||
msgid "Title"
|
||||
msgstr "Título"
|
||||
|
||||
|
|
@ -2,13 +2,14 @@
|
|||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# <sergioballesterossolanas@gmail.com>, 2011.
|
||||
# <rom1dep@gmail.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 04:33+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 02:19+0000\n"
|
||||
"POT-Creation-Date: 2011-08-18 18:58+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 16:59+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Spanish (Castilian) (http://www.transifex.net/projects/p/owncloud/team/es/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -23,7 +24,7 @@ msgstr "Error de autentificación"
|
|||
|
||||
#: ajax/openid.php:21
|
||||
msgid "OpenID Changed"
|
||||
msgstr ""
|
||||
msgstr "OpenID Cambiado"
|
||||
|
||||
#: ajax/openid.php:23 ajax/setlanguage.php:23
|
||||
msgid "Invalid request"
|
||||
|
@ -33,80 +34,92 @@ msgstr "Solicitud no válida"
|
|||
msgid "Language changed"
|
||||
msgstr "Idioma cambiado"
|
||||
|
||||
#: templates/help.php:21
|
||||
msgid "Ask a question"
|
||||
#: templates/help.php:2
|
||||
msgid "Problems connecting to help database."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:3
|
||||
msgid "Go there manually."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:11
|
||||
msgid "Answer"
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:17
|
||||
msgid "Ask a question"
|
||||
msgstr "Hacer una pregunta"
|
||||
|
||||
#: templates/apps.php:12
|
||||
msgid "Select an App"
|
||||
msgstr ""
|
||||
msgstr "Seleccionar una aplicación"
|
||||
|
||||
#: templates/apps.php:14
|
||||
msgid "-licensed"
|
||||
msgstr ""
|
||||
msgstr "-autorizado"
|
||||
|
||||
#: templates/apps.php:14
|
||||
msgid "by"
|
||||
msgstr "por"
|
||||
|
||||
#: templates/personal.php:2
|
||||
msgid "You use"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:3
|
||||
msgid "Account information"
|
||||
msgstr "Información de la cuenta"
|
||||
#: templates/personal.php:2
|
||||
msgid "of the available"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "You're currently using"
|
||||
msgstr "Estás utilizando"
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "of your"
|
||||
msgstr "de tus"
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "space"
|
||||
msgstr "de espacio total"
|
||||
|
||||
#: templates/personal.php:11 templates/personal.php:17
|
||||
msgid "Change Password"
|
||||
msgstr "Cambiar contraseña"
|
||||
|
||||
#: templates/personal.php:12
|
||||
#: templates/personal.php:7
|
||||
msgid "Your password got changed"
|
||||
msgstr "Tu contraseña ha sido cambiada"
|
||||
|
||||
#: templates/personal.php:14
|
||||
msgid "Old password"
|
||||
#: templates/personal.php:9
|
||||
msgid "Current password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:15
|
||||
#: templates/personal.php:10
|
||||
msgid "New password"
|
||||
msgstr "Nueva contraseña:"
|
||||
|
||||
#: templates/personal.php:16
|
||||
#: templates/personal.php:11
|
||||
msgid "show"
|
||||
msgstr "mostrar"
|
||||
|
||||
#: templates/personal.php:12
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:23
|
||||
#: templates/personal.php:18
|
||||
msgid "Language"
|
||||
msgstr "Idioma"
|
||||
|
||||
#: templates/personal.php:24
|
||||
msgid "Help translating"
|
||||
msgstr ""
|
||||
|
||||
#: templates/personal.php:30
|
||||
msgid "use this address to connect to your ownCloud in your file manager"
|
||||
msgstr ""
|
||||
|
||||
#: templates/users.php:11
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
msgstr "Nombre"
|
||||
|
||||
#: templates/users.php:12
|
||||
msgid "Password"
|
||||
msgstr ""
|
||||
msgstr "Contraseña"
|
||||
|
||||
#: templates/users.php:13 templates/users.php:28
|
||||
msgid "Groups"
|
||||
msgstr ""
|
||||
msgstr "Grupos"
|
||||
|
||||
#: templates/users.php:18
|
||||
msgid "Create"
|
||||
msgstr ""
|
||||
msgstr "Crear"
|
||||
|
||||
#: templates/users.php:36
|
||||
msgid "Remove"
|
||||
#: templates/users.php:40
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
|
||||
|
|
|
@ -7,9 +7,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 05:10+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 09:09+0000\n"
|
||||
"Last-Translator: rom1dep <rom1dep@gmail.com>\n"
|
||||
"POT-Creation-Date: 2011-08-18 21:07+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 19:08+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: French (http://www.transifex.net/projects/p/owncloud/team/fr/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -17,6 +17,22 @@ msgstr ""
|
|||
"Language: fr\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1)\n"
|
||||
|
||||
#: strings.php:5
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:6
|
||||
msgid "Apps"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:7
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:8
|
||||
msgid "Personal"
|
||||
msgstr ""
|
||||
|
||||
#: templates/login.php:4
|
||||
msgid "Login failed!"
|
||||
msgstr "Échec de la connexion !"
|
||||
|
@ -83,8 +99,8 @@ msgid "Cloud not found"
|
|||
msgstr "Introuvable"
|
||||
|
||||
#: templates/layout.guest.php:38
|
||||
msgid "is a personal cloud which runs on your own server"
|
||||
msgstr "est un service de cloud personnel propulsé par votre propre serveur"
|
||||
msgid "gives you the freedom to control your own data on the internet"
|
||||
msgstr "vous rend libre de contrôler vos propres données sur internet"
|
||||
|
||||
#: templates/part.pagenavi.php:6
|
||||
msgid "prev"
|
||||
|
@ -98,11 +114,7 @@ msgstr "suivant"
|
|||
msgid "You are logged out."
|
||||
msgstr "Vous êtes désormais déconnecté."
|
||||
|
||||
#: templates/layout.user.php:36
|
||||
msgid "Log out"
|
||||
msgstr "Se déconnecter"
|
||||
|
||||
#: templates/layout.user.php:56
|
||||
#: templates/layout.user.php:49
|
||||
msgid "Settings"
|
||||
msgstr "Paramètres"
|
||||
|
||||
|
|
|
@ -3,13 +3,14 @@
|
|||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# <rom1dep@gmail.com>, 2011.
|
||||
# Jan-Christoph Borchardt <JanCBorchardt@fsfe.org>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-13 05:10+0200\n"
|
||||
"PO-Revision-Date: 2011-08-13 09:12+0000\n"
|
||||
"Last-Translator: rom1dep <rom1dep@gmail.com>\n"
|
||||
"POT-Creation-Date: 2011-08-18 18:58+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 16:59+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: French (http://www.transifex.net/projects/p/owncloud/team/fr/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -23,7 +24,7 @@ msgstr "Erreur d'authentification"
|
|||
|
||||
#: ajax/openid.php:21
|
||||
msgid "OpenID Changed"
|
||||
msgstr "Identifiant OpenID changé avec succès"
|
||||
msgstr "Identifiant OpenID changé"
|
||||
|
||||
#: ajax/openid.php:23 ajax/setlanguage.php:23
|
||||
msgid "Invalid request"
|
||||
|
@ -31,9 +32,21 @@ msgstr "Requète invalide"
|
|||
|
||||
#: ajax/setlanguage.php:21
|
||||
msgid "Language changed"
|
||||
msgstr "Langue changée avec succès"
|
||||
msgstr "Langue changée"
|
||||
|
||||
#: templates/help.php:21
|
||||
#: templates/help.php:2
|
||||
msgid "Problems connecting to help database."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:3
|
||||
msgid "Go there manually."
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:11
|
||||
msgid "Answer"
|
||||
msgstr ""
|
||||
|
||||
#: templates/help.php:17
|
||||
msgid "Ask a question"
|
||||
msgstr "Poser une question"
|
||||
|
||||
|
@ -49,46 +62,46 @@ msgstr "sous licence"
|
|||
msgid "by"
|
||||
msgstr "par"
|
||||
|
||||
#: templates/personal.php:3
|
||||
msgid "Account information"
|
||||
msgstr "Informations sur le compte"
|
||||
#: templates/personal.php:2
|
||||
msgid "You use"
|
||||
msgstr "Vous utilisez"
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "You're currently using"
|
||||
msgstr "Vous utilisez actuellement"
|
||||
#: templates/personal.php:2
|
||||
msgid "of the available"
|
||||
msgstr "sur un total de"
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "of your"
|
||||
msgstr "de votre espace de stockage de"
|
||||
|
||||
#: templates/personal.php:5
|
||||
msgid "space"
|
||||
msgstr " "
|
||||
|
||||
#: templates/personal.php:11 templates/personal.php:17
|
||||
msgid "Change Password"
|
||||
msgstr "Changer votre mot de passe"
|
||||
|
||||
#: templates/personal.php:12
|
||||
#: templates/personal.php:7
|
||||
msgid "Your password got changed"
|
||||
msgstr "Votre mot de passe a été changé"
|
||||
|
||||
#: templates/personal.php:14
|
||||
msgid "Old password"
|
||||
msgstr "Ancien mot de passe"
|
||||
#: templates/personal.php:9
|
||||
msgid "Current password"
|
||||
msgstr "Mot de passe actuel"
|
||||
|
||||
#: templates/personal.php:15
|
||||
#: templates/personal.php:10
|
||||
msgid "New password"
|
||||
msgstr "Nouveau mot de passe :"
|
||||
msgstr "Nouveau mot de passe"
|
||||
|
||||
#: templates/personal.php:16
|
||||
#: templates/personal.php:11
|
||||
msgid "show"
|
||||
msgstr "Afficher"
|
||||
|
||||
#: templates/personal.php:23
|
||||
#: templates/personal.php:12
|
||||
msgid "Change password"
|
||||
msgstr "Changer de mot de passe"
|
||||
|
||||
#: templates/personal.php:18
|
||||
msgid "Language"
|
||||
msgstr "Langue"
|
||||
|
||||
#: templates/personal.php:24
|
||||
msgid "Help translating"
|
||||
msgstr "Aider à traduire"
|
||||
|
||||
#: templates/personal.php:30
|
||||
msgid "use this address to connect to your ownCloud in your file manager"
|
||||
msgstr ""
|
||||
|
||||
#: templates/users.php:11
|
||||
msgid "Name"
|
||||
msgstr "Nom"
|
||||
|
@ -105,8 +118,8 @@ msgstr "Groupes"
|
|||
msgid "Create"
|
||||
msgstr "Créer"
|
||||
|
||||
#: templates/users.php:36
|
||||
msgid "Remove"
|
||||
#: templates/users.php:40
|
||||
msgid "Delete"
|
||||
msgstr "Supprimer"
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,121 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Muhammad Radifar <m_radifar05@yahoo.com>, 2011.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: ownCloud\n"
|
||||
"Report-Msgid-Bugs-To: http://bugs.kde.org/buglist.cgi?product=owncloud\n"
|
||||
"POT-Creation-Date: 2011-08-18 21:07+0200\n"
|
||||
"PO-Revision-Date: 2011-08-18 19:08+0000\n"
|
||||
"Last-Translator: JanCBorchardt <JanCBorchardt@fsfe.org>\n"
|
||||
"Language-Team: Indonesian (http://www.transifex.net/projects/p/owncloud/team/id/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: id\n"
|
||||
"Plural-Forms: nplurals=1; plural=0\n"
|
||||
|
||||
#: strings.php:5
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:6
|
||||
msgid "Apps"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:7
|
||||
msgid "Help"
|
||||
msgstr ""
|
||||
|
||||
#: strings.php:8
|
||||
msgid "Personal"
|
||||
msgstr ""
|
||||
|
||||
#: templates/login.php:4
|
||||
msgid "Login failed!"
|
||||
msgstr "Gagal masuk!"
|
||||
|
||||
#: templates/login.php:9 templates/login.php:13
|
||||
msgid "remember"
|
||||
msgstr ""
|
||||
|
||||
#: templates/installation.php:20
|
||||
msgid "Create an <strong>admin account</strong>"
|
||||
msgstr ""
|
||||
|
||||
#: templates/installation.php:21
|
||||
msgid "Username"
|
||||
msgstr "Username"
|
||||
|
||||
#: templates/installation.php:22
|
||||
msgid "Password"
|
||||
msgstr "Password"
|
||||
|
||||
#: templates/installation.php:27
|
||||
msgid "Configure the database"
|
||||
msgstr ""
|
||||
|
||||
#: templates/installation.php:32 templates/installation.php:43
|
||||
#: templates/installation.php:53
|
||||
msgid "will be used"
|
||||
msgstr ""
|
||||
|
||||
#: templates/installation.php:64
|
||||
msgid "Database user"
|
||||
msgstr ""
|
||||
|
||||
#: templates/installation.php:65
|
||||
msgid "Database password"
|
||||
msgstr ""
|
||||
|
||||
#: templates/installation.php:66
|
||||
msgid "Database name"
|
||||
msgstr ""
|
||||
|
||||
#: templates/installation.php:74
|
||||
msgid "Advanced"
|
||||
msgstr "Tingkat Lanjut"
|
||||
|
||||
#: templates/installation.php:77
|
||||
msgid "Host"
|
||||
msgstr ""
|
||||
|
||||
#: templates/installation.php:78
|
||||
msgid "Table prefix"
|
||||
msgstr ""
|
||||
|
||||
#: templates/installation.php:80
|
||||
msgid "Data folder"
|
||||
msgstr ""
|
||||
|
||||
#: templates/installation.php:83
|
||||
msgid "Finish setup"
|
||||
msgstr "Selesaikan instalasi"
|
||||
|
||||
#: templates/404.php:12
|
||||
msgid "Cloud not found"
|
||||
msgstr ""
|
||||
|
||||
#: templates/layout.guest.php:38
|
||||
msgid "gives you the freedom to control your own data on the internet"
|
||||
msgstr ""
|
||||
|
||||
#: templates/part.pagenavi.php:6
|
||||
msgid "prev"
|
||||
msgstr "sebelum"
|
||||
|
||||
#: templates/part.pagenavi.php:26
|
||||
msgid "next"
|
||||
msgstr "selanjutnya"
|
||||
|
||||
#: templates/logout.php:1
|
||||
msgid "You are logged out."
|
||||
msgstr "Anda telah keluar."
|
||||
|
||||
#: templates/layout.user.php:49
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue