summaryrefslogtreecommitdiffstats
path: root/l10n/ko.js
diff options
context:
space:
mode:
authorJenkins for ownCloud <owncloud-bot@tmit.eu>2015-01-18 01:01:15 -0500
committerJenkins for ownCloud <owncloud-bot@tmit.eu>2015-01-18 01:01:15 -0500
commitf741d1fd502687aafede499ab55c0803ad469df3 (patch)
treee030680664a11874852e41a099c6ac14f75b044a /l10n/ko.js
parent0c7360be1d27df3b4fc279da27bf9675130f449f (diff)
[tx-robot] updated from transifex
Diffstat (limited to 'l10n/ko.js')
-rw-r--r--l10n/ko.js103
1 files changed, 103 insertions, 0 deletions
diff --git a/l10n/ko.js b/l10n/ko.js
new file mode 100644
index 000000000..f6d66fdd5
--- /dev/null
+++ b/l10n/ko.js
@@ -0,0 +1,103 @@
+OC.L10N.register(
+ "news",
+ {
+ "Feed contains invalid XML" : "피드에 올바르지 않은 XML이 포함되어 있음",
+ "Could not find a feed" : "피드를 찾을 수 없음",
+ "Detected feed format is not supported" : "감지한 피드 포맷을 지원하지 않음",
+ "SSL Certificate is invalid" : "SSL 인증서가 잘못됨",
+ "Website not found" : "웹 사이트를 찾을 수 없음",
+ "More redirects than allowed, aborting" : "허용된 것보다 더 많은 넘겨주기 요청이 들어옴, 중단함",
+ "Bigger than maximum allowed size" : "최대 허용 크기보다 큼",
+ "Request timed out" : "요청 시간 초과됨",
+ "Can not add feed: Exists already" : "피드를 추가할 수 없음: 이미 존재함",
+ "Articles without feed" : "피드가 없는 글",
+ "Can not add folder: Exists already" : "폴더를 추가할 수 없음: 이미 존재함",
+ "Use ownCloud cron for updates" : "ownCloud cron으로 업데이트",
+ "Disable this if you run a custom updater such as the Python updater included in the app" : "앱에 포함된 파이썬 업데이터 등 외부 업데이터를 사용하면 비활성화하십시오.",
+ "Purge interval" : "비우기 주기",
+ "Minimum amount of seconds after deleted feeds and folders are removed from the database; values below 60 seconds are ignored" : "삭제된 피드와 폴더를 데이터베이스에서 삭제할 초 단위의 시간을 입력하십시오. 60 이하의 값은 무시됩니다.",
+ "Maximum read count per feed" : "피드당 최대 읽은 글 개수",
+ "Defines the maximum amount of articles that can be read per feed which won't be deleted by the cleanup job; if old articles reappear after being read, increase this value; negative values such as -1 will turn this feature off completely" : "비우기 작업 실행 후에도 남겨 둘 피드당 최대 글 개수를 지정하십시오. 오래 전에 읽었던 글이 다시 나타나면 이 값을 증가시키십시오. -1와 같은 음수를 입력하면 이 기능을 비활성화합니다",
+ "Maximum redirects" : "최대 넘겨주기 수",
+ "How many redirects the feed fetcher should follow" : "피드를 가져올 때 따라갈 최대 넘겨주기 수",
+ "Maximum feed page size" : "최대 피드 페이지 크기",
+ "Maximum feed size in bytes. If the RSS/Atom page is bigger than this value, the update will be aborted" : "바이트 단위의 최대 피드 크기입니다. RSS/Atom 페이지가 이 크기보다 크면 업데이트 작업을 중단합니다",
+ "Feed fetcher timeout" : "피드 가져오기 시간 제한",
+ "Maximum number of seconds to wait for an RSS or Atom feed to load; if it takes longer the update will be aborted" : "RSS/Atom 피드를 가져올 때 기다릴 최대 시간입니다. 작업이 이 시간보다 더 오래 걸리면 중지됩니다",
+ "Explore Service URL" : "탐색 서비스 URL",
+ "If given, this service's URL will be queried for displaying the feeds in the explore feed section. To fall back to the built in explore service, leave this input empty" : "여기에 URL을 입력하면 피드 탐색 목록에 표시할 피드를 이 URL에서 가져옵니다. 내장 탐색 서비스를 사용하려면 이 항목을 비워 두십시오",
+ "Saved" : "저장됨",
+ "Ajax cron mode detected! Your feeds will not be updated correctly. It is recommended to either use the operating system cron or a custom updater." : "AJAX cron 모드를 감지하였습니다! 피드 업데이트가 올바르게 진행되지 않을 수도 있습니다. 운영 체제의 cron이나 사용자 정의 업데이터를 사용하십시오.",
+ "How to set up the operating system cron" : "운영 체제 cron 설정 방법",
+ "How to set up a custom updater (faster and no possible deadlock) " : "사용자 정의 업데이터 설정 방법(더 빠르고 데드록을 줄일 수 있음)",
+ "Subscribe" : "구독",
+ "Refresh" : "새로 고침",
+ "No articles available" : "글 없음",
+ "No unread articles available" : "읽지 않은 글 없음",
+ "Open website" : "웹 사이트 열기",
+ "Star article" : "글에 별표 붙이기",
+ "Unstar article" : "글에서 별표 떼기",
+ "Keep article unread" : "읽지 않은 상태로 유지",
+ "Remove keep article unread" : "읽지 않은 상태로 유지하지 않음",
+ "by" : "작성:",
+ "from" : "원본 사이트:",
+ "Browser can not play media type" : "브라우저에서 미디어 형식을 재생할 수 없음",
+ "Download" : "다운로드",
+ "Keyboard shortcut" : "키보드 단축키",
+ "Description" : "설명",
+ "right" : "오른쪽",
+ "Jump to next article" : "다음 글로 이동",
+ "left" : "왼쪽",
+ "Jump to previous article" : "이전 글로 이동",
+ "Toggle star article" : "글 별표 전환",
+ "Star article and jump to next one" : "글에 별표를 붙이고 다음 항목으로 이동",
+ "Toggle keep current article unread" : "현재 글 읽지 않은 상태로 유지 전환",
+ "Open article in new tab" : "새 탭으로 글 열기",
+ "Toggle expand article in compact view" : "작은 보기에서 글 확장 전환",
+ "Load next feed" : "다음 피드 불러오기",
+ "Load previous feed" : "이전 피드 불러오기",
+ "Load next folder" : "다음 폴더 불러오기",
+ "Load previous folder" : "이전 폴더 불러오기",
+ "Scroll to active navigation entry" : "활성 탐색 항목으로 스크롤",
+ "Web address" : "웹 주소",
+ "Feed exists already!" : "피드가 이미 존재합니다!",
+ "Folder" : "폴더",
+ "No folder" : "폴더 없음",
+ "New folder" : "새 폴더",
+ "Folder name" : "폴더 이름",
+ "Go back" : "뒤로 가기",
+ "Folder exists already!" : "폴더가 이미 존재합니다!",
+ "New Folder" : "새 폴더",
+ "Create" : "만들기",
+ "Explore" : "탐색",
+ "Deleted feed" : "삭제된 피드",
+ "Undo delete feed" : "피드 삭제 취소",
+ "Rename" : "이름 바꾸기",
+ "Menu" : "메뉴",
+ "Rename feed" : "피드 이름 바꾸기",
+ "Delete feed" : "피드 삭제",
+ "Mark all articles read" : "모두 읽은 것으로 표시",
+ "Dismiss" : "닫기",
+ "Collapse" : "접기",
+ "Deleted folder" : "삭제된 폴더",
+ "Undo delete folder" : "폴더 삭제 실행 취소",
+ "Rename folder" : "폴더 이름 바꾸기",
+ "Delete folder" : "폴더 삭제",
+ "Starred" : "별표",
+ "Unread articles" : "읽지 않은 글",
+ "All articles" : "모든 글",
+ "Settings" : "설정",
+ "Keyboard shortcuts" : "키보드 단축키",
+ "Compact view" : "축소된 보기",
+ "Expand articles in compact view when navigating with keyboard shortcuts" : "키보드 단축키로 탐색할 때 축소된 보기에서 글 확장",
+ "Show all articles" : "모든 글 보기",
+ "Reverse ordering (oldest on top)" : "순서 뒤집기(오래된 항목 먼저)",
+ "Disable mark read through scrolling" : "스크롤 시 읽은 상태로 표시 비활성화",
+ "Subscriptions (OPML)" : "구독(OPML)",
+ "Import" : "가져오기",
+ "Export" : "내보내기",
+ "Error when importing: file does not contain valid OPML" : "가져오기 오류: 파일이 올바른 OPML을 포함하지 않음",
+ "Unread/Starred Articles" : "읽지 않은/별표한 글",
+ "Error when importing: file does not contain valid JSON" : "가져오기 오류: 파일이 올바른 JSON을 포함하지 않음"
+},
+"nplurals=1; plural=0;");
ref='#n405'>405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520
###

ownCloud - News

@author Bernhard Posselt
@copyright 2012 Bernhard Posselt dev@bernhard-posselt.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/>.

###

angular.module('News').factory 'Persistence',
['Request', 'FeedLoading', 'AutoPageLoading', 'NewLoading', 'Config',
'ActiveFeed', '$rootScope', '$q'
(Request, FeedLoading, AutoPageLoading, NewLoading, Config, ActiveFeed,
$rootScope, $q) ->

	class Persistence

		constructor: (@_request, @_feedLoading, @_autoPageLoading, @_newLoading,
		              @_config, @_activeFeed, @_$rootScope) ->
			@_preventUselessAutoPageRequest = false
			@_lastFeedChange = new Date().getTime()

		init: ->
			###
			Loads the initial data from the server
			###

			@deferred = $q.defer()


			@getAllFolders()

			successCallback = =>
				@deferred.resolve()

			@getAllFeeds(successCallback)
			@userSettingsRead()
			@userSettingsLanguage()
			@userSettingsIsCompact()

			# items can only be loaded after the active feed is known
			@getActiveFeed =>
				@getItems(@_activeFeed.getType(), @_activeFeed.getId())
				
			@deferred.promise

		###
			ITEM CONTROLLER
		###
		getItems: (type, id, offset=0, onSuccess=null) ->
			onSuccess or= ->

			# show different loading signs
			if offset == 0
				loading = @_feedLoading
				# every change of the feed should inevitably reset the
				# autopage prevention
				@_lastFeedChange = new Date().getTime()
				@_preventUselessAutoPageRequest = false
				console.log 'free'
			else
				loading = @_autoPageLoading

			# loading sign handling
			loading.increase()


			successCallbackWrapper = ->
			lastChange = @_lastFeedChange
			# back up last change value in closure so we can compare it properly
			do (lastChange, offset, loading) =>
				successCallbackWrapper = (data) =>
					if data.data.items.length == 0 &&
					lastChange == @_lastFeedChange &&
					offset != 0
						@_preventUselessAutoPageRequest = true
						console.log 'lock'
					onSuccess(data)
					loading.decrease()
			failureCallbackWrapper = (data) ->
				loading.decrease()

			params =
				data:
					limit: @_config.itemBatchSize
					offset: offset
					id: id
					type: type
				onSuccess: successCallbackWrapper
				onFailure: failureCallbackWrapper

			if not @_preventUselessAutoPageRequest
				@_request.get 'news_items', params


		getNewItems: (type, id, lastModified, onSuccess) ->
			onSuccess or= ->
			params =
				data:
					type: type
					id: id
					lastModified: lastModified
				onSuccess: onSuccess
				onFailure: onSuccess

			@_request.get 'news_items_new', params


		starItem: (feedId, guidHash) ->
			###
			Stars an item
			###
			params =
				routeParams:
					feedId: feedId
					guidHash: guidHash

			@_request.post 'news_items_star', params


		unstarItem: (feedId, guidHash) ->
			###
			Unstars an item
			###
			params =
				routeParams:
					feedId: feedId
					guidHash: guidHash

			@_request.post 'news_items_unstar', params


		readItem: (itemId) ->
			###
			Sets an item as read
			###
			params =
				routeParams:
					itemId: itemId

			@_request.post 'news_items_read', params



		unreadItem: (itemId) ->
			###
			Sets an item as unread
			###
			params =
				routeParams:
					itemId: itemId

			@_request.post 'news_items_unread', params


		setAllRead: (highestItemId) ->
			###
			sets all items as read
			###
			params =
				data:
					highestItemId: highestItemId

			@_request.post 'news_items_all_read', params


		###
			FEED CONTROLLER
		###
		getAllFeeds: (onSuccess, showLoading=true) ->
			onSuccess or= ->

			# loading sign handling
			if showLoading
				@_feedLoading.increase()
				successCallbackWrapper = (data) =>
					onSuccess()
					@_feedLoading.decrease()
				failureCallbackWrapper = (data) =>
					@_feedLoading.decrease()
			else
				successCallbackWrapper = (data) ->
					onSuccess()
				failureCallbackWrapper = (data) ->

			params =
				onSuccess: successCallbackWrapper
				onFailure: failureCallbackWrapper

			@_request.get 'news_feeds', params


		getActiveFeed: (onSuccess) ->
			# loading sign handling
			@_feedLoading.increase()
			successCallbackWrapper = (data) =>
				onSuccess()
				@_feedLoading.decrease()
			failureCallbackWrapper = (data) =>
				@_feedLoading.decrease()

			params =
				onSuccess: successCallbackWrapper
				onFailure: failureCallbackWrapper

			@_request.get 'news_feeds_active', params


		createFeed: (url, parentFolderId, onSuccess=null, onFailure=null) ->
			onSuccess or= ->
			onFailure or= ->
			params =
				data:
					parentFolderId: parentFolderId
					url: url
				onSuccess: onSuccess
				onFailure: onFailure

			@_request.post 'news_feeds_create', params


		deleteFeed: (feedId) ->
			params =
				routeParams:
					feedId: feedId

			@_request.delete 'news_feeds_delete', params


		restoreFeed: (feedId, onSuccess=null) ->
			onSuccess or= ->
			params =
				onSuccess: onSuccess
				routeParams:
					feedId: feedId

			@_request.post 'news_feeds_restore', params


		moveFeed: (feedId, folderId) ->
			###
			moves a feed to a new folder
			###
			params =
				routeParams:
					feedId: feedId
				data:
					parentFolderId: folderId

			@_request.post 'news_feeds_move', params


		renameFeed: (feedId, feedTitle) ->
			###
			rename a feed
			###
			params =
				routeParams:
					feedId: feedId
				data:
					feedTitle: feedTitle

			@_request.post 'news_feeds_rename', params


		setFeedRead: (feedId, highestItemId) ->
			###
			sets all items of a feed as read
			###
			params =
				routeParams:
					feedId: feedId
				data:
					highestItemId: highestItemId

			@_request.post 'news_feeds_read', params


		updateFeed: (feedId) ->
			###
			moves a feed to a new folder
			###
			params =
				routeParams:
					feedId: feedId

			@_request.post 'news_feeds_update', params


		importArticles: (json, onSuccess) ->
			params =
				data:
					json: json
				onSuccess: =>
					@getAllFeeds()
					onSuccess()

			@_request.post 'news_feeds_import_articles', params


		###
			FOLDER CONTROLLER
		###
		getAllFolders: (onSuccess, showLoading=true) ->
			onSuccess or= ->


			# loading sign handling
			if showLoading
				@_feedLoading.increase()
				successCallbackWrapper = (data) =>
					onSuccess()
					@_feedLoading.decrease()
				failureCallbackWrapper = (data) =>
					@_feedLoading.decrease()
			else
				successCallbackWrapper = (data) ->
					onSuccess()
				failureCallbackWrapper = (data) ->
			

			params =
				onSuccess: successCallbackWrapper
				onFailure: failureCallbackWrapper

			@_request.get 'news_folders', params

	
		openFolder: (folderId) ->
			###
			Save if a folder was opened
			###
			params =
				routeParams:
					folderId: folderId

			@_request.post 'news_folders_open', params


		collapseFolder: (folderId) ->
			###
			Save if a folder was collapsed
			###
			params =
				routeParams:
					folderId: folderId

			@_request.post 'news_folders_collapse', params


		createFolder: (folderName, parentFolderId=0, onSuccess=null,
						onFailure=null) ->
			onSuccess or= ->
			onFailure or= ->

			params =
				data:
					folderName: folderName</