Removed all of the old web files

This commit is contained in:
Kyle Johnson 2013-05-01 06:52:43 -04:00
parent e37a49b511
commit 1ed6462354
291 changed files with 0 additions and 77109 deletions

View File

@ -1,35 +0,0 @@
AUTOMAKE_OPTIONS = gnu
# This should be set to your web directory
webdir = @WEB_PREFIX@
# And these to the user and group of your webserver
webuser = @WEB_USER@
webgroup = @WEB_GROUP@
SUBDIRS = \
ajax \
css \
graphics \
includes \
js \
lang \
skins \
tools \
views
dist_web_DATA = \
index.php
# Yes, you are correct. This is a HACK!
install-data-hook:
( cd $(DESTDIR)$(webdir); chown $(webuser):$(webgroup) $(dist_web_DATA) )
( cd $(DESTDIR)$(webdir); chown -R $(webuser):$(webgroup) $(SUBDIRS) )
@-( cd $(DESTDIR)$(webdir); if ! test -e events; then mkdir events; fi; chown $(webuser):$(webgroup) events; chmod u+w events )
@-( cd $(DESTDIR)$(webdir); if ! test -e images; then mkdir images; fi; chown $(webuser):$(webgroup) images; chmod u+w images )
@-( cd $(DESTDIR)$(webdir); if ! test -e sounds; then mkdir sounds; fi; chown $(webuser):$(webgroup) sounds; chmod u+w sounds )
@-( cd $(DESTDIR)$(webdir); if ! test -e tools; then mkdir tools; fi; chown $(webuser):$(webgroup) tools; chmod u+w tools )
@-( cd $(DESTDIR)$(webdir); if ! test -e temp; then mkdir temp; fi; chown $(webuser):$(webgroup) temp; chmod u+w temp )
uninstall-hook:
@-( cd $(DESTDIR)$(webdir); rm -rf $(SUBDIRS) )
@-( cd $(DESTDIR)$(webdir); rm -rf events images sounds tools temp )

View File

@ -1,654 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-dvi-recursive install-exec-recursive \
install-html-recursive install-info-recursive \
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
distdir
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
# This should be set to your web directory
webdir = @WEB_PREFIX@
# And these to the user and group of your webserver
webuser = @WEB_USER@
webgroup = @WEB_GROUP@
SUBDIRS = \
ajax \
css \
graphics \
includes \
js \
lang \
skins \
tools \
views
dist_web_DATA = \
index.php
all: all-recursive
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
$(RECURSIVE_CLEAN_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-recursive
all-am: Makefile $(DATA)
installdirs: installdirs-recursive
installdirs-am:
for dir in "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean-am: clean-generic mostlyclean-am
distclean: distclean-recursive
-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-tags
dvi: dvi-recursive
dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
install-data-am: install-dist_webDATA
@$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) install-data-hook
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic
pdf: pdf-recursive
pdf-am:
ps: ps-recursive
ps-am:
uninstall-am: uninstall-dist_webDATA
@$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
install-am install-data-am install-strip tags-recursive \
uninstall-am
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am check check-am clean clean-generic ctags \
ctags-recursive distclean distclean-generic distclean-tags \
distdir dvi dvi-am html html-am info info-am install \
install-am install-data install-data-am install-data-hook \
install-dist_webDATA install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs installdirs-am maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
uninstall-dist_webDATA uninstall-hook
# Yes, you are correct. This is a HACK!
install-data-hook:
( cd $(DESTDIR)$(webdir); chown $(webuser):$(webgroup) $(dist_web_DATA) )
( cd $(DESTDIR)$(webdir); chown -R $(webuser):$(webgroup) $(SUBDIRS) )
@-( cd $(DESTDIR)$(webdir); if ! test -e events; then mkdir events; fi; chown $(webuser):$(webgroup) events; chmod u+w events )
@-( cd $(DESTDIR)$(webdir); if ! test -e images; then mkdir images; fi; chown $(webuser):$(webgroup) images; chmod u+w images )
@-( cd $(DESTDIR)$(webdir); if ! test -e sounds; then mkdir sounds; fi; chown $(webuser):$(webgroup) sounds; chmod u+w sounds )
@-( cd $(DESTDIR)$(webdir); if ! test -e tools; then mkdir tools; fi; chown $(webuser):$(webgroup) tools; chmod u+w tools )
@-( cd $(DESTDIR)$(webdir); if ! test -e temp; then mkdir temp; fi; chown $(webuser):$(webgroup) temp; chmod u+w temp )
uninstall-hook:
@-( cd $(DESTDIR)$(webdir); rm -rf $(SUBDIRS) )
@-( cd $(DESTDIR)$(webdir); rm -rf events images sounds tools temp )
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,12 +0,0 @@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/ajax
dist_web_DATA = \
alarm.php \
control.php \
event.php \
log.php \
status.php \
stream.php \
zone.php

View File

@ -1,425 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/ajax
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/ajax
dist_web_DATA = \
alarm.php \
control.php \
event.php \
log.php \
status.php \
stream.php \
zone.php
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/ajax/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/ajax/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-dist_webDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-dist_webDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
install-dist_webDATA install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am uninstall uninstall-am uninstall-dist_webDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,42 +0,0 @@
<?php
define( "MSG_TIMEOUT", 2.0 );
define( "MSG_DATA_SIZE", 4+256 );
if ( canEdit( 'Monitors' ) )
{
$zmuCommand = getZmuCommand( " -m ".validInt($_REQUEST['id']) );
switch ( validJsStr($_REQUEST['command']) )
{
case "disableAlarms" :
{
$zmuCommand .= " -n";
break;
}
case "enableAlarms" :
{
$zmuCommand .= " -c";
break;
}
case "forceAlarm" :
{
$zmuCommand .= " -a";
break;
}
case "cancelForcedAlarm" :
{
$zmuCommand .= " -c";
break;
}
default :
{
ajaxError( "Unexpected command '".validJsStr($_REQUEST['command'])."'" );
}
}
ajaxResponse( exec( escapeshellcmd( $zmuCommand ) ) );
}
ajaxError( 'Unrecognised action or insufficient permissions' );
?>

View File

@ -1,64 +0,0 @@
<?php
require_once( 'includes/control_functions.php' );
// Monitor control actions, require a monitor id and control view permissions for that monitor
if ( empty($_REQUEST['id']) )
ajaxError( "No monitor id supplied" );
if ( canView( 'Control', $_REQUEST['id'] ) )
{
$monitor = dbFetchOne( "select C.*,M.* from Monitors as M inner join Controls as C on (M.ControlId = C.Id ) where M.Id = '".dbEscape($_REQUEST['id'])."'" );
$ctrlCommand = buildControlCommand( $monitor );
if ( $ctrlCommand )
{
$socket = socket_create( AF_UNIX, SOCK_STREAM, 0 );
if ( !$socket )
ajaxError( "socket_create() failed: ".socket_strerror(socket_last_error()) );
$sock_file = ZM_PATH_SOCKS.'/zmcontrol-'.$monitor['Id'].'.sock';
if ( @socket_connect( $socket, $sock_file ) )
{
$options = array();
foreach ( explode( " ", $ctrlCommand ) as $option )
{
if ( preg_match( '/--([^=]+)(?:=(.+))?/', $option, $matches ) )
{
$options[$matches[1]] = !empty($matches[2])?$matches[2]:1;
}
}
$option_string = jsonEncode( $options );
if ( !socket_write( $socket, $option_string ) )
ajaxError( "socket_write() failed: ".socket_strerror(socket_last_error()) );
ajaxResponse( 'Used socket' );
//socket_close( $socket );
}
else
{
$ctrlCommand .= " --id=".$monitor['Id'];
// Can't connect so use script
$ctrlStatus = '';
$ctrlOutput = array();
exec( escapeshellcmd( $ctrlCommand ), $ctrlOutput, $ctrlStatus );
if ( $ctrlStatus )
ajaxError( $ctrlCommand.'=>'.join( ' // ', $ctrlOutput ) );
ajaxResponse( 'Used script' );
}
}
else
{
ajaxError( "No command received" );
}
}
ajaxError( 'Unrecognised action or insufficient permissions' );
function ajaxCleanup()
{
global $socket;
if ( !empty( $socket ) )
@socket_close( $socket );
}
?>

View File

@ -1,124 +0,0 @@
<?php
if ( empty($_REQUEST['id']) && empty($_REQUEST['eids']) )
{
ajaxError( "No event id(s) supplied" );
}
if ( canView( 'Events' ) )
{
switch ( $_REQUEST['action'] )
{
case "video" :
{
if ( empty($_REQUEST['videoFormat']) )
{
ajaxError( "Video Generation Failure, no format given" );
}
elseif ( empty($_REQUEST['rate']) )
{
ajaxError( "Video Generation Failure, no rate given" );
}
elseif ( empty($_REQUEST['scale']) )
{
ajaxError( "Video Generation Failure, no scale given" );
}
else
{
$sql = "select E.*,M.Name as MonitorName,M.DefaultRate,M.DefaultScale from Events as E inner join Monitors as M on E.MonitorId = M.Id where E.Id = ".dbEscape($_REQUEST['id']).monitorLimitSql();
if ( !($event = dbFetchOne( $sql )) )
ajaxError( "Video Generation Failure, can't load event" );
else
if ( $videoFile = createVideo( $event, $_REQUEST['videoFormat'], $_REQUEST['rate'], $_REQUEST['scale'], !empty($_REQUEST['overwrite']) ) )
ajaxResponse( array( 'response'=>$videoFile ) );
else
ajaxError( "Video Generation Failed" );
}
$ok = true;
break;
}
case 'deleteVideo' :
{
unlink( $videoFiles[$_REQUEST['id']] );
unset( $videoFiles[$_REQUEST['id']] );
ajaxResponse();
break;
}
case "export" :
{
require_once( ZM_SKIN_PATH.'/includes/export_functions.php' );
if ( !empty($_REQUEST['exportDetail']) )
$exportDetail = $_SESSION['export']['detail'] = $_REQUEST['exportDetail'];
else
$exportDetail = false;
if ( !empty($_REQUEST['exportFrames']) )
$exportFrames = $_SESSION['export']['frames'] = $_REQUEST['exportFrames'];
else
$exportFrames = false;
if ( !empty($_REQUEST['exportImages']) )
$exportImages = $_SESSION['export']['images'] = $_REQUEST['exportImages'];
else
$exportImages = false;
if ( !empty($_REQUEST['exportVideo']) )
$exportVideo = $_SESSION['export']['video'] = $_REQUEST['exportVideo'];
else
$exportVideo = false;
if ( !empty($_REQUEST['exportMisc']) )
$exportMisc = $_SESSION['export']['misc'] = $_REQUEST['exportMisc'];
else
$exportMisc = false;
if ( !empty($_REQUEST['exportFormat']) )
$exportFormat = $_SESSION['export']['format'] = $_REQUEST['exportFormat'];
else
$exportFormat = '';
$exportIds = !empty($_REQUEST['eids'])?$_REQUEST['eids']:$_REQUEST['id'];
if ( $exportFile = exportEvents( $exportIds, $exportDetail, $exportFrames, $exportImages, $exportVideo, $exportMisc, $exportFormat ) )
ajaxResponse( array( 'exportFile'=>$exportFile ) );
else
ajaxError( "Export Failed" );
break;
}
}
}
if ( canEdit( 'Events' ) )
{
switch ( $_REQUEST['action'] )
{
case "rename" :
{
if ( !empty($_REQUEST['eventName']) )
dbQuery( "update Events set Name = '".dbEscape($_REQUEST['eventName'])."' where Id = '".dbEscape($_REQUEST['id'])."'" );
else
ajaxError( "No new event name supplied" );
ajaxResponse( array( 'refreshEvent'=>true, 'refreshParent'=>true ) );
break;
}
case "eventdetail" :
{
dbQuery( "update Events set Cause = '".dbEscape($_REQUEST['newEvent']['Cause'])."', Notes = '".dbEscape($_REQUEST['newEvent']['Notes'])."' where Id = '".dbEscape($_REQUEST['id'])."'" );
ajaxResponse( array( 'refreshEvent'=>true, 'refreshParent'=>true ) );
break;
}
case "archive" :
case "unarchive" :
{
$archiveVal = ($_REQUEST['action'] == "archive")?1:0;
dbQuery( "update Events set Archived = ".$archiveVal." where Id = '".dbEscape($_REQUEST['id'])."'" );
ajaxResponse( array( 'refreshEvent'=>true, 'refreshParent'=>false ) );
break;
}
case "delete" :
{
deleteEvent( dbEscape($_REQUEST['id']) );
ajaxResponse( array( 'refreshEvent'=>false, 'refreshParent'=>true ) );
break;
}
}
}
ajaxError( 'Unrecognised action or insufficient permissions' );
?>

View File

@ -1,363 +0,0 @@
<?php
switch ( $_REQUEST['task'] )
{
case 'create' :
{
// Silently ignore bogus requests
if ( !empty($_POST['level']) && !empty($_POST['message']) )
{
logInit( array( 'id' => "web_js" ) );
$string = $_POST['message'];
$file = preg_replace( '/\w+:\/\/\w+\//', '', $_POST['file'] );
if ( !empty( $_POST['line'] ) )
$line = $_POST['line'];
else
$line = NULL;
$levels = array_flip(Logger::$codes);
if ( !isset($levels[$_POST['level']]) )
Panic( "Unexpected logger level '".$_POST['level']."'" );
$level = $levels[$_POST['level']];
Logger::fetch()->logPrint( $level, $string, $file, $line );
}
ajaxResponse();
break;
}
case 'query' :
{
if ( !canView( 'System' ) )
ajaxError( 'Insufficient permissions to view log entries' );
$minTime = isset($_POST['minTime'])?$_POST['minTime']:NULL;
$maxTime = isset($_POST['maxTime'])?$_POST['maxTime']:NULL;
$limit = isset($_POST['limit'])?$_POST['limit']:1000;
$filter = isset($_POST['filter'])?$_POST['filter']:array();
$sortField = isset($_POST['sortField'])?$_POST['sortField']:'TimeKey';
$sortOrder = isset($_POST['sortOrder'])?$_POST['sortOrder']:'desc';
$filterFields = array( 'Component', 'Pid', 'Level', 'File', 'Line' );
//$filterSql = $filter?' where
$countSql = "select count(*) as Total from Logs";
$total = dbFetchOne( $countSql, 'Total' );
$sql = "select * from Logs";
$where = array();
if ( $minTime )
$where[] = "TimeKey > ".dbEscape($minTime);
elseif ( $maxTime )
$where[] = "TimeKey < ".dbEscape($maxTime);
foreach ( $filter as $field=>$value )
if ( $field == 'Level' )
$where[] = dbEscape($field)." <= ".dbEscape($value);
else
$where[] = dbEscape($field)." = '".dbEscape($value)."'";
if ( count($where) )
$sql.= " where ".join( " and ", $where );
$sql .= " order by ".dbEscape($sortField)." ".dbEscape($sortOrder)." limit ".dbEscape($limit);
$logs = array();
foreach ( dbFetchAll( $sql ) as $log )
{
$log['DateTime'] = preg_replace( '/^\d+/', strftime( "%Y-%m-%d %H:%M:%S", intval($log['TimeKey']) ), $log['TimeKey'] );
$logs[] = $log;
}
$options = array();
$where = array();
foreach( $filter as $field=>$value )
if ( $field == 'Level' )
$where[$field] = dbEscape($field)." <= ".dbEscape($value);
else
$where[$field] = dbEscape($field)." = '".dbEscape($value)."'";
foreach( $filterFields as $field )
{
$sql = "select distinct $field from Logs where not isnull($field)";
$fieldWhere = array_diff_key( $where, array( $field=>true ) );
if ( count($fieldWhere) )
$sql.= " and ".join( " and ", $fieldWhere );
$sql.= " order by $field asc";
if ( $field == 'Level' )
{
foreach( dbFetchAll( $sql, $field ) as $value )
if ( $value <= Logger::INFO )
$options[$field][$value] = Logger::$codes[$value];
else
$options[$field][$value] = "DB".$value;
}
else
{
foreach( dbFetchAll( $sql, $field ) as $value )
if ( $value != '' )
$options[$field][] = $value;
}
}
if ( count($filter) )
{
$sql = "select count(*) as Available from Logs where ".join( " and ", $where );
$available = dbFetchOne( $sql, 'Available' );
}
ajaxResponse( array(
'updated' => preg_match( '/%/', DATE_FMT_CONSOLE_LONG )?strftime( DATE_FMT_CONSOLE_LONG ):date( DATE_FMT_CONSOLE_LONG ),
'total' => $total,
'available' => isset($available)?$available:$total,
'logs' => $logs,
'state' => logState(),
'options' => $options
) );
break;
}
case 'export' :
{
if ( !canView( 'System' ) )
ajaxError( 'Insufficient permissions to export logs' );
$minTime = isset($_POST['minTime'])?$_POST['minTime']:NULL;
$maxTime = isset($_POST['maxTime'])?$_POST['maxTime']:NULL;
if ( !is_null($minTime) && !is_null($maxTime) && $minTime > $maxTime )
{
$tempTime = $minTime;
$minTime = $maxTime;
$maxTime = $tempTime;
}
//$limit = isset($_POST['limit'])?$_POST['limit']:1000;
$filter = isset($_POST['filter'])?$_POST['filter']:array();
$sortField = isset($_POST['sortField'])?$_POST['sortField']:'TimeKey';
$sortOrder = isset($_POST['sortOrder'])?$_POST['sortOrder']:'asc';
$sql = "select * from Logs";
$where = array();
if ( $minTime )
{
preg_match( '/(.+)(\.\d+)/', $minTime, $matches );
$minTime = strtotime($matches[1]).$matches[2];
$where[] = "TimeKey >= ".$minTime;
}
if ( $maxTime )
{
preg_match( '/(.+)(\.\d+)/', $maxTime, $matches );
$maxTime = strtotime($matches[1]).$matches[2];
$where[] = "TimeKey <= ".$maxTime;
}
foreach ( $filter as $field=>$value )
if ( $value != '' )
if ( $field == 'Level' )
$where[] = dbEscape($field)." <= ".dbEscape($value);
else
$where[] = dbEscape($field)." = '".dbEscape($value)."'";
if ( count($where) )
$sql.= " where ".join( " and ", $where );
$sql .= " order by ".dbEscape($sortField)." ".dbEscape($sortOrder);
//$sql .= " limit ".dbEscape($limit);
$format = isset($_POST['format'])?$_POST['format']:'text';
switch( $format )
{
case 'text' :
$exportExt = "txt";
break;
case 'tsv' :
$exportExt = "tsv";
break;
case 'html' :
$exportExt = "html";
break;
case 'xml' :
$exportExt = "xml";
break;
default :
Fatal( "Unrecognised log export format '$format'" );
}
$exportKey = substr(md5(rand()),0,8);
$exportFile = "zm-log.$exportExt";
$exportPath = "temp/zm-log-$exportKey.$exportExt";
if ( !($exportFP = fopen( $exportPath, "w" )) )
Fatal( "Unable to open log export file $exportFile" );
$logs = array();
foreach ( dbFetchAll( $sql ) as $log )
{
$log['DateTime'] = preg_replace( '/^\d+/', strftime( "%Y-%m-%d %H:%M:%S", intval($log['TimeKey']) ), $log['TimeKey'] );
$logs[] = $log;
}
switch( $format )
{
case 'text' :
{
foreach ( $logs as $log )
{
if ( $log['Line'] )
fprintf( $exportFP, "%s %s[%d].%s-%s/%d [%s]\n", $log['DateTime'], $log['Component'], $log['Pid'], $log['Code'], $log['File'], $log['Line'], $log['Message'] );
else
fprintf( $exportFP, "%s %s[%d].%s-%s [%s]\n", $log['DateTime'], $log['Component'], $log['Pid'], $log['Code'], $log['File'], $log['Message'] );
}
break;
}
case 'tsv' :
{
fprintf( $exportFP, $SLANG['DateTime']."\t".$SLANG['Component']."\t".$SLANG['Pid']."\t".$SLANG['Level']."\t".$SLANG['Message']."\t".$SLANG['File']."\t".$SLANG['Line']."\n" );
foreach ( $logs as $log )
{
fprintf( $exportFP, "%s\t%s\t%d\t%s\t%s\t%s\t%s\n", $log['DateTime'], $log['Component'], $log['Pid'], $log['Code'], $log['Message'], $log['File'], $log['Line'] );
}
break;
}
case 'html' :
{
fwrite( $exportFP,
'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>'.$SLANG['ZoneMinderLog'].'</title>
<style type="text/css">
body, h3, p, table, td {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
}
table {
border-collapse: collapse;
width: 100%;
}
th {
font-weight: bold;
}
th, td {
border: 1px solid #888888;
padding: 1px 2px;
}
tr.log-fat td {
background-color:#ffcccc;
font-weight: bold;
font-style: italic;
}
tr.log-err td {
background-color:#ffcccc;
}
tr.log-war td {
background-color: #ffe4b5;
}
tr.log-dbg td {
color: #666666;
font-style: italic;
}
</style>
</head>
<body>
<h3>'.$SLANG['ZoneMinderLog'].'</h3>
<p>'.htmlspecialchars(preg_match( '/%/', DATE_FMT_CONSOLE_LONG )?strftime( DATE_FMT_CONSOLE_LONG ):date( DATE_FMT_CONSOLE_LONG )).'</p>
<p>'.count($logs).' '.$SLANG['Logs'].'</p>
<table>
<tbody>
<tr><th>'.$SLANG['DateTime'].'</th><th>'.$SLANG['Component'].'</th><th>'.$SLANG['Pid'].'</th><th>'.$SLANG['Level'].'</th><th>'.$SLANG['Message'].'</th><th>'.$SLANG['File'].'</th><th>'.$SLANG['Line'].'</th></tr>
' );
foreach ( $logs as $log )
{
$classLevel = $log['Level'];
if ( $classLevel < Logger::FATAL )
$classLevel = Logger::FATAL;
elseif ( $classLevel > Logger::DEBUG )
$classLevel = Logger::DEBUG;
$logClass = 'log-'.strtolower(Logger::$codes[$classLevel]);
fprintf( $exportFP, " <tr class=\"%s\"><td>%s</td><td>%s</td><td>%d</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td></tr>\n", $logClass, $log['DateTime'], $log['Component'], $log['Pid'], $log['Code'], $log['Message'], $log['File'], $log['Line'] );
}
fwrite( $exportFP,
' </tbody>
</table>
</body>
</html>' );
break;
}
case 'xml' :
{
fwrite( $exportFP,
'<?xml version="1.0" encoding="utf-8"?>
<logexport title="'.$SLANG['ZoneMinderLog'].'" date="'.htmlspecialchars(preg_match( '/%/', DATE_FMT_CONSOLE_LONG )?strftime( DATE_FMT_CONSOLE_LONG ):date( DATE_FMT_CONSOLE_LONG )).'">
<selector>'.$_POST['selector'].'</selector>' );
foreach ( $filter as $field=>$value )
if ( $value != '' )
fwrite( $exportFP,
' <filter>
<'.strtolower($field).'>'.htmlspecialchars($value).'</'.strtolower($field).'>
</filter>' );
fwrite( $exportFP,
' <columns>
<column field="datetime">'.$SLANG['DateTime'].'</column><column field="component">'.$SLANG['Component'].'</column><column field="pid">'.$SLANG['Pid'].'</column><column field="level">'.$SLANG['Level'].'</column><column field="message">'.$SLANG['Message'].'</column><column field="file">'.$SLANG['File'].'</column><column field="line">'.$SLANG['Line'].'</column>
</columns>
<logs count="'.count($logs).'">
' );
foreach ( $logs as $log )
{
fprintf( $exportFP,
" <log>
<datetime>%s</datetime>
<component>%s</component>
<pid>%d</pid>
<level>%s</level>
<message><![CDATA[%s]]></message>
<file>%s</file>
<line>%d</line>
</log>\n", $log['DateTime'], $log['Component'], $log['Pid'], $log['Code'], utf8_decode( $log['Message'] ), $log['File'], $log['Line'] );
}
fwrite( $exportFP,
' </logs>
</logexport>' );
break;
}
$exportExt = "xml";
break;
}
fclose( $exportFP );
ajaxResponse( array(
'key' => $exportKey,
'format' => $format,
) );
break;
}
case 'download' :
{
if ( !canView( 'System' ) )
ajaxError( 'Insufficient permissions to download logs' );
if ( empty($_REQUEST['key']) )
Fatal( "No log export key given" );
$exportKey = $_REQUEST['key'];
if ( empty($_REQUEST['format']) )
Fatal( "No log export format given" );
$format = $_REQUEST['format'];
switch( $format )
{
case 'text' :
$exportExt = "txt";
break;
case 'tsv' :
$exportExt = "tsv";
break;
case 'html' :
$exportExt = "html";
break;
case 'xml' :
$exportExt = "xml";
break;
default :
Fatal( "Unrecognised log export format '$format'" );
}
$exportFile = "zm-log.$exportExt";
$exportPath = "temp/zm-log-$exportKey.$exportExt";
header( "Pragma: public" );
header( "Expires: 0" );
header( "Cache-Control: must-revalidate, post-check=0, pre-check=0" );
header( "Cache-Control: private", false ); // required by certain browsers
header( "Content-Description: File Transfer" );
header( 'Content-Disposition: attachment; filename="'.$exportFile.'"' );
header( "Content-Transfer-Encoding: binary" );
header( "Content-Type: application/force-download" );
header( "Content-Length: ".filesize($exportPath) );
readfile( $exportPath );
exit( 0 );
break;
}
}
ajaxError( 'Unrecognised action or insufficient permissions' );
?>

View File

@ -1,413 +0,0 @@
<?php
$statusData = array(
"system" => array(
"permission" => "System",
"table" => "Monitors",
"limit" => 1,
"elements" => array(
"MonitorCount" => array( "sql" => "count(*)" ),
"ActiveMonitorCount" => array( "sql" => "count(if(Function != 'None',1,NULL))" ),
"State" => array( "func" => "daemonCheck()?".$SLANG['Running'].":".$SLANG['Stopped'] ),
"Load" => array( "func" => "getLoad()" ),
"Disk" => array( "func" => "getDiskPercent()" ),
),
),
"monitor" => array(
"permission" => "Monitors",
"table" => "Monitors",
"limit" => 1,
"selector" => "Monitors.Id",
"elements" => array(
"Id" => array( "sql" => "Monitors.Id" ),
"Name" => array( "sql" => "Monitors.Name" ),
"Type" => true,
"Function" => true,
"Enabled" => true,
"LinkedMonitors" => true,
"Triggers" => true,
"Device" => true,
"Channel" => true,
"Format" => true,
"Host" => true,
"Port" => true,
"Path" => true,
"Width" => array( "sql" => "Monitors.Width" ),
"Height" => array( "sql" => "Monitors.Height" ),
"Palette" => true,
"Orientation" => true,
"Brightness" => true,
"Contrast" => true,
"Hue" => true,
"Colour" => true,
"EventPrefix" => true,
"LabelFormat" => true,
"LabelX" => true,
"LabelY" => true,
"ImageBufferCount" => true,
"WarmupCount" => true,
"PreEventCount" => true,
"PostEventCount" => true,
"AlarmFrameCount" => true,
"SectionLength" => true,
"FrameSkip" => true,
"MaxFPS" => true,
"AlarmMaxFPS" => true,
"FPSReportInterval" => true,
"RefBlendPerc" => true,
"Controllable" => true,
"ControlId" => true,
"ControlDevice" => true,
"ControlAddress" => true,
"AutoStopTimeout" => true,
"TrackMotion" => true,
"TrackDelay" => true,
"ReturnLocation" => true,
"ReturnDelay" => true,
"DefaultView" => true,
"DefaultRate" => true,
"DefaultScale" => true,
"WebColour" => true,
"Sequence" => true,
"MinEventId" => array( "sql" => "min(Events.Id)", "table" => "Events", "join" => "Events.MonitorId = Monitors.Id", "group" => "Events.MonitorId" ),
"MaxEventId" => array( "sql" => "max(Events.Id)", "table" => "Events", "join" => "Events.MonitorId = Monitors.Id", "group" => "Events.MonitorId" ),
"TotalEvents" => array( "sql" => "count(Events.Id)", "table" => "Events", "join" => "Events.MonitorId = Monitors.Id", "group" => "Events.MonitorId" ),
"Status" => array( "zmu" => "-m ".escapeshellarg($_REQUEST['id'][0])." -s" ),
"FrameRate" => array( "zmu" => "-m ".escapeshellarg($_REQUEST['id'][0])." -f" ),
),
),
"events" => array(
"permission" => "Events",
"table" => "Events",
"selector" => "Events.MonitorId",
"elements" => array(
"Id" => true,
"Name" => true,
"Cause" => true,
"Notes" => true,
"StartTime" => true,
"StartTimeShort" => array( "sql" => "date_format( StartTime, '".MYSQL_FMT_DATETIME_SHORT."' )" ),
"EndTime" => true,
"Width" => true,
"Height" => true,
"Length" => true,
"Frames" => true,
"AlarmFrames" => true,
"TotScore" => true,
"AvgScore" => true,
"MaxScore" => true,
),
),
"event" => array(
"permission" => "Events",
"table" => "Events",
"limit" => 1,
"selector" => "Events.Id",
"elements" => array(
"Id" => array( "sql" => "Events.Id" ),
"MonitorId" => true,
"Name" => true,
"Cause" => true,
"StartTime" => true,
"StartTimeShort" => array( "sql" => "date_format( StartTime, '".MYSQL_FMT_DATETIME_SHORT."' )" ),
"EndTime" => true,
"Width" => true,
"Height" => true,
"Length" => true,
"Frames" => true,
"AlarmFrames" => true,
"TotScore" => true,
"AvgScore" => true,
"MaxScore" => true,
"Archived" => true,
"Videoed" => true,
"Uploaded" => true,
"Emailed" => true,
"Messaged" => true,
"Executed" => true,
"Notes" => true,
"MinFrameId" => array( "sql" => "min(Frames.FrameId)", "table" => "Frames", "join" => "Events.Id = Frames.EventId", "group" => "Frames.EventId" ),
"MaxFrameId" => array( "sql" => "max(Frames.FrameId)", "table" => "Frames", "join" => "Events.Id = Frames.EventId", "group" => "Frames.EventId" ),
"MinFrameDelta" => array( "sql" => "min(Frames.Delta)", "table" => "Frames", "join" => "Events.Id = Frames.EventId", "group" => "Frames.EventId" ),
"MaxFrameDelta" => array( "sql" => "max(Frames.Delta)", "table" => "Frames", "join" => "Events.Id = Frames.EventId", "group" => "Frames.EventId" ),
//"Path" => array( "postFunc" => "getEventPath" ),
),
),
"frame" => array(
"permission" => "Events",
"table" => "Frames",
"limit" => 1,
"selector" => array( array( "table" => "Events", "join" => "Events.Id = Frames.EventId", "selector"=>"Events.Id" ), "Frames.FrameId" ),
"elements" => array(
//"Id" => array( "sql" => "Frames.FrameId" ),
"FrameId" => true,
"EventId" => true,
"Type" => true,
"TimeStamp" => true,
"TimeStampShort" => array( "sql" => "date_format( StartTime, '".MYSQL_FMT_DATETIME_SHORT."' )" ),
"Delta" => true,
"Score" => true,
//"Image" => array( "postFunc" => "getFrameImage" ),
),
),
"frameimage" => array(
"permission" => "Events",
"func" => "getFrameImage()"
),
"nearframe" => array(
"permission" => "Events",
"func" => "getNearFrame()"
),
"nearevents" => array(
"permission" => "Events",
"func" => "getNearEvents()"
)
);
function collectData()
{
global $statusData;
$entitySpec = &$statusData[strtolower(validJsStr($_REQUEST['entity']))];
#print_r( $entitySpec );
if ( !canView( $entitySpec['permission'] ) )
ajaxError( 'Unrecognised action or insufficient permissions' );
if ( !empty($entitySpec['func']) )
{
$data = eval( "return( ".$entitySpec['func']." );" );
}
else
{
$data = array();
$postFuncs = array();
$fieldSql = array();
$joinSql = array();
$groupSql = array();
$elements = &$entitySpec['elements'];
$lc_elements = array_change_key_case( $elements );
$id = false;
if ( isset($_REQUEST['id']) )
if ( !is_array($_REQUEST['id']) )
$id = array( validJsStr($_REQUEST['id']) );
else
$id = array_values( $_REQUEST['id'] );
if ( !isset($_REQUEST['element']) )
$_REQUEST['element'] = array_keys( $elements );
else if ( !is_array($_REQUEST['element']) )
$_REQUEST['element'] = array( validJsStr($_REQUEST['element']) );
if ( isset($entitySpec['selector']) )
{
if ( !is_array($entitySpec['selector']) )
$entitySpec['selector'] = array( $entitySpec['selector'] );
foreach( $entitySpec['selector'] as $selector )
if ( is_array( $selector ) && isset($selector['table']) && isset($selector['join']) )
$joinSql[] = "left join ".$selector['table']." on ".$selector['join'];
}
foreach ( $_REQUEST['element'] as $element )
{
if ( !($elementData = $lc_elements[strtolower($element)]) )
ajaxError( "Bad ".validJsStr($_REQUEST['entity'])." element ".$element );
if ( isset($elementData['func']) )
$data[$element] = eval( "return( ".$elementData['func']." );" );
else if ( isset($elementData['postFunc']) )
$postFuncs[$element] = $elementData['postFunc'];
else if ( isset($elementData['zmu']) )
$data[$element] = exec( escapeshellcmd( getZmuCommand( " ".$elementData['zmu'] ) ) );
else
{
if ( isset($elementData['sql']) )
$fieldSql[] = $elementData['sql']." as ".$element;
else
$fieldSql[] = $element;
if ( isset($elementData['table']) && isset($elementData['join']) )
{
$joinSql[] = "left join ".$elementData['table']." on ".$elementData['join'];
}
if ( isset($elementData['group']) )
{
$groupSql[] = $elementData['group'];
}
}
}
if ( count($fieldSql) )
{
$sql = "select ".join( ", ", $fieldSql )." from ".$entitySpec['table'];
if ( $joinSql )
$sql .= " ".join( " ", array_unique( $joinSql ) );
if ( $id && !empty($entitySpec['selector']) )
{
$index = 0;
$where = array();
foreach( $entitySpec['selector'] as $selector )
{
if ( is_array( $selector ) )
$where[] = $selector['selector']." = ".dbEscape($id[$index]);
else
$where[] = $selector." = ".dbEscape($id[$index]);
$index++;
}
$sql .= " where ".join( " and ", $where );
}
if ( $groupSql )
$sql .= " group by ".join( ",", array_unique( $groupSql ) );
if ( !empty($_REQUEST['sort']) )
$sql .= " order by ".dbEscape($_REQUEST['sort']);
if ( !empty($entitySpec['limit']) )
$limit = $entitySpec['limit'];
elseif ( !empty($_REQUEST['count']) )
$limit = dbEscape($_REQUEST['count']);
if ( !empty( $limit ) )
$sql .= " limit ".$limit;
if ( isset($limit) && $limit == 1 )
{
if ( $sqlData = dbFetchOne( $sql ) )
{
foreach ( $postFuncs as $element=>$func )
$sqlData[$element] = eval( 'return( '.$func.'( $sqlData ) );' );
$data = array_merge( $data, $sqlData );
}
}
else
{
$count = 0;
foreach( dbFetchAll( $sql ) as $sqlData )
{
foreach ( $postFuncs as $element=>$func )
$sqlData[$element] = eval( 'return( '.$func.'( $sqlData ) );' );
$data[] = $sqlData;
if ( isset($limi) && ++$count >= $limit )
break;
}
}
}
}
#print_r( $data );
return( $data );
}
$data = collectData();
if ( !isset($_REQUEST['layout']) )
{
$_REQUEST['layout'] = "json";
}
switch( $_REQUEST['layout'] )
{
case 'xml NOT CURRENTLY SUPPORTED' :
{
header("Content-type: application/xml" );
echo( '<?xml version="1.0" encoding="iso-8859-1"?>'."\n" );
echo "<".strtolower($_REQUEST['entity']).">\n";
foreach ( $data as $key=>$value )
{
$key = strtolower( $key );
echo "<$key>".htmlentities($value)."</$key>\n";
}
echo "</".strtolower($_REQUEST['entity']).">\n";
break;
}
case 'json' :
{
$response = array( strtolower(validJsStr($_REQUEST['entity'])) => $data );
if ( isset($_REQUEST['loopback']) )
$response['loopback'] = validJsStr($_REQUEST['loopback']);
ajaxResponse( $response );
break;
}
case 'text' :
{
header("Content-type: text/plain" );
echo join( " ", array_values( $data ) );
break;
}
}
function getFrameImage()
{
$eventId = dbEscape($_REQUEST['id'][0]);
$frameId = dbEscape($_REQUEST['id'][1]);
$sql = "select * from Frames where EventId = '".$eventId."' and FrameId = '".$frameId."'";
if ( !($frame = dbFetchOne( $sql )) )
{
$frame = array();
$frame['EventId'] = $eventId;
$frame['FrameId'] = $frameId;
$frame['Type'] = "Virtual";
}
$event = dbFetchOne( "select * from Events where Id = '".$frame['EventId']."'" );
$frame['Image'] = getImageSrc( $event, $frame, SCALE_BASE );
return( $frame );
}
function getNearFrame()
{
$eventId = dbEscape($_REQUEST['id'][0]);
$frameId = dbEscape($_REQUEST['id'][1]);
$sql = "select FrameId from Frames where EventId = '".$eventId."' and FrameId <= '".$frameId."' order by FrameId desc limit 1";
if ( !$nearFrameId = dbFetchOne( $sql, 'FrameId' ) )
{
$sql = "select * from Frames where EventId = '".$eventId."' and FrameId > '".$frameId."' order by FrameId asc limit 1";
if ( !$nearFrameId = dbFetchOne( $sql, 'FrameId' ) )
{
return( array() );
}
}
$_REQUEST['entity'] = "frame";
$_REQUEST['id'][1] = $nearFrameId;
return( collectData() );
}
function getNearEvents()
{
global $user, $sortColumn, $sortOrder;
$eventId = dbEscape($_REQUEST['id']);
$event = dbFetchOne( "select * from Events where Id = '".$eventId."'" );
parseFilter( $_REQUEST['filter'] );
parseSort();
if ( $user['MonitorIds'] )
$midSql = " and MonitorId in (".join( ",", preg_split( '/["\'\s]*,["\'\s]*/', $user['MonitorIds'] ) ).")";
else
$midSql = '';
$sql = "select E.Id as Id from Events as E inner join Monitors as M on E.MonitorId = M.Id where ".dbEscape($sortColumn)." ".($sortOrder=='asc'?'<=':'>=')." '".$event[$_REQUEST['sort_field']]."'".$_REQUEST['filter']['sql'].$midSql." order by $sortColumn ".($sortOrder=='asc'?'desc':'asc');
$result = dbQuery( $sql );
while ( $id = dbFetchNext( $result, 'Id' ) )
{
if ( $id == $eventId )
{
$prevId = dbFetchNext( $result, 'Id' );
break;
}
}
$sql = "select E.Id as Id from Events as E inner join Monitors as M on E.MonitorId = M.Id where $sortColumn ".($sortOrder=='asc'?'>=':'<=')." '".$event[$_REQUEST['sort_field']]."'".$_REQUEST['filter']['sql'].$midSql." order by $sortColumn $sortOrder";
$result = dbQuery( $sql );
while ( $id = dbFetchNext( $result, 'Id' ) )
{
if ( $id == $eventId )
{
$nextId = dbFetchNext( $result, 'Id' );
break;
}
}
$result = array( 'EventId'=>$eventId );
$result['PrevEventId'] = empty($prevId)?0:$prevId;
$result['NextEventId'] = empty($nextId)?0:$nextId;
return( $result );
}
?>

View File

@ -1,135 +0,0 @@
<?php
define( "MSG_TIMEOUT", ZM_WEB_AJAX_TIMEOUT );
define( "MSG_DATA_SIZE", 4+256 );
if ( !($_REQUEST['connkey'] && $_REQUEST['command']) )
{
ajaxError( "Unexpected received message type '$type'" );
}
if ( !($socket = @socket_create( AF_UNIX, SOCK_DGRAM, 0 )) )
{
ajaxError( "socket_create() failed: ".socket_strerror(socket_last_error()) );
}
$locSockFile = ZM_PATH_SOCKS.'/zms-'.sprintf("%06d",$_REQUEST['connkey']).'w.sock';
if ( !@socket_bind( $socket, $locSockFile ) )
{
ajaxError( "socket_bind( $locSockFile ) failed: ".socket_strerror(socket_last_error()) );
}
switch ( $_REQUEST['command'] )
{
case CMD_VARPLAY :
Debug( "Varplaying to ".$_REQUEST['rate'] );
$msg = pack( "lcn", MSG_CMD, $_REQUEST['command'], $_REQUEST['rate']+32768 );
break;
case CMD_ZOOMIN :
Debug( "Zooming to ".$_REQUEST['x'].",".$_REQUEST['y'] );
$msg = pack( "lcnn", MSG_CMD, $_REQUEST['command'], $_REQUEST['x'], $_REQUEST['y'] );
break;
case CMD_PAN :
Debug( "Panning to ".$_REQUEST['x'].",".$_REQUEST['y'] );
$msg = pack( "lcnn", MSG_CMD, $_REQUEST['command'], $_REQUEST['x'], $_REQUEST['y'] );
break;
case CMD_SCALE :
Debug( "Scaling to ".$_REQUEST['scale'] );
$msg = pack( "lcn", MSG_CMD, $_REQUEST['command'], $_REQUEST['scale'] );
break;
case CMD_SEEK :
Debug( "Seeking to ".$_REQUEST['offset'] );
$msg = pack( "lcN", MSG_CMD, $_REQUEST['command'], $_REQUEST['offset'] );
break;
default :
$msg = pack( "lc", MSG_CMD, $_REQUEST['command'] );
break;
}
$remSockFile = ZM_PATH_SOCKS.'/zms-'.sprintf("%06d",$_REQUEST['connkey']).'s.sock';
$max_socket_tries = 3;
while ( !file_exists($remSockFile) && $max_socket_tries-- ) //sometimes we are too fast for our own good, if it hasn't been setup yet give it a second.
sleep(1);
if ( !@socket_sendto( $socket, $msg, strlen($msg), 0, $remSockFile ) )
{
ajaxError( "socket_sendto( $remSockFile ) failed: ".socket_strerror(socket_last_error()) );
}
$rSockets = array( $socket );
$wSockets = NULL;
$eSockets = NULL;
$numSockets = @socket_select( $rSockets, $wSockets, $eSockets, intval(MSG_TIMEOUT/1000), (MSG_TIMEOUT%1000)*1000 );
if ( $numSockets === false )
{
ajaxError( "socket_select failed: ".socket_strerror(socket_last_error()) );
}
else if ( $numSockets == 0 )
{
ajaxError( "Timed out waiting for msg" );
}
else if ( $numSockets > 0 )
{
if ( count($rSockets) != 1 )
ajaxError( "Bogus return from select, ".count($rSockets)." sockets available" );
}
switch( $nbytes = @socket_recvfrom( $socket, $msg, MSG_DATA_SIZE, 0, $remSockFile ) )
{
case -1 :
{
ajaxError( "socket_recvfrom( $remSockFile ) failed: ".socket_strerror(socket_last_error()) );
break;
}
case 0 :
{
ajaxError( "No data to read from socket" );
break;
}
default :
{
if ( $nbytes != MSG_DATA_SIZE )
ajaxError( "Got unexpected message size, got $nbytes, expected ".MSG_DATA_SIZE );
break;
}
}
$data = unpack( "ltype", $msg );
switch ( $data['type'] )
{
case MSG_DATA_WATCH :
{
$data = unpack( "ltype/imonitor/istate/dfps/ilevel/irate/ddelay/izoom/Cdelayed/Cpaused/Cenabled/Cforced", $msg );
$data['fps'] = sprintf( "%.2f", $data['fps'] );
$data['rate'] /= RATE_BASE;
$data['delay'] = sprintf( "%.2f", $data['delay'] );
$data['zoom'] = sprintf( "%.1f", $data['zoom']/SCALE_BASE );
ajaxResponse( array( 'status'=>$data ) );
break;
}
case MSG_DATA_EVENT :
{
$data = unpack( "ltype/ievent/iprogress/irate/izoom/Cpaused", $msg );
//$data['progress'] = sprintf( "%.2f", $data['progress'] );
$data['rate'] /= RATE_BASE;
$data['zoom'] = sprintf( "%.1f", $data['zoom']/SCALE_BASE );
ajaxResponse( array( 'status'=>$data ) );
break;
}
default :
{
ajaxError( "Unexpected received message type '$type'" );
}
}
ajaxError( 'Unrecognised action or insufficient permissions' );
function ajaxCleanup()
{
global $socket, $locSockFile;
if ( !empty( $socket ) )
@socket_close( $socket );
if ( !empty( $locSockFile ) )
@unlink( $locSockFile );
}
?>

View File

@ -1,45 +0,0 @@
<?php
if ( empty($_REQUEST['mid']) )
{
ajaxError( 'No monitor id supplied' );
}
elseif ( !isset($_REQUEST['zid']) )
{
ajaxError( 'No zone id(s) supplied' );
}
if ( canView( 'Monitors' ) )
{
switch ( $_REQUEST['action'] )
{
case "zoneImage" :
{
$wd = getcwd();
chdir( ZM_DIR_IMAGES );
$hiColor = "0x00ff00";
$command = getZmuCommand( " -m ".$_REQUEST['mid']." -z" );
if ( !isset($_REQUEST['zid']) )
$_REQUEST['zid'] = 0;
$command .= "'".$_REQUEST['zid'].' '.$hiColor.' '.$_REQUEST['coords']."'";
$status = exec( escapeshellcmd($command) );
chdir( $wd );
$monitor = dbFetchOne( "select * from Monitors where Id = '".dbEscape($_REQUEST['mid'])."'" );
$points = coordsToPoints( $_REQUEST['coords'] );
ajaxResponse( array(
'zoneImage' => ZM_DIR_IMAGES.'/Zones'.$monitor['Id'].'.jpg?'.time(),
'selfIntersecting' => isSelfIntersecting( $points ),
'area' => getPolyArea( $points )
) );
break;
}
}
}
ajaxError( 'Unrecognised action or insufficient permissions' );
?>

View File

@ -1,8 +0,0 @@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/css
dist_web_DATA = \
reset.css \
spinner.css \
overlay.css

View File

@ -1,421 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/css
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/css
dist_web_DATA = \
reset.css \
spinner.css \
overlay.css
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/css/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/css/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-dist_webDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-dist_webDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
install-dist_webDATA install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am uninstall uninstall-am uninstall-dist_webDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,49 +0,0 @@
.overlayMask {
position: absolute;
opacity: 0.6;
filter: alpha(opacity=60);
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
z-index: 999;
background: #aaaaaa;
}
.overlay {
display: none;
position: absolute;
background-color: #f0f0f0;
border: 2px solid #555555;
-moz-border-radius: 4px;
z-index: 1000;
overflow: hidden;
}
.overlayHeader {
float: left;
background-color: #dddddd;
width: 100%;
border-bottom: 1px solid #666666;
color: black;
}
.overlayTitle {
float: left;
padding: 10px 6px;
font-weight: bold;
width: auto;
}
.overlayToolbar {
float: right;
font-weight: bold;
padding: 6px 4px;
width: auto;
}
.overlayBody {
float: left;
width: 100%;
}
.overlayContent {
padding: 4px 4px 6px;
}

View File

@ -1,77 +0,0 @@
/*
* ZoneMinder Reset Stylesheet, $Date$, $Revision$
* Copyright (C) 2001-2008 Philip Coombes
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
/*
* Based on Reset Reloaded by Eric Meyer at http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
input, textarea, select,
table, caption, tbody, tfoot, thead, tr, th, td {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
/* remember to define focus styles! */
:focus {
outline: 0;
}
body {
line-height: 1;
color: black;
background: white;
}
ol, ul {
list-style: none;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
border-collapse: separate;
border-spacing: 0;
}
caption, th, td {
text-align: left;
font-weight: normal;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: "";
}
blockquote, q {
quotes: "" "";
}

View File

@ -1,19 +0,0 @@
.spinner {
position: absolute;
opacity: 0.9;
filter: alpha(opacity=90);
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=90);
z-index: 1001;
background: #fff;
}
.spinner-msg {
text-align: center;
font-weight: bold;
}
.spinner-img {
background: url(/graphics/spinner.gif) no-repeat;
width: 24px;
height: 24px;
margin: 0 auto;
}

View File

@ -1,8 +0,0 @@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/graphics
dist_web_DATA = \
favicon.ico \
spinner.gif \
transparent.gif

View File

@ -1,421 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/graphics
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/graphics
dist_web_DATA = \
favicon.ico \
spinner.gif \
transparent.gif
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/graphics/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/graphics/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-dist_webDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-dist_webDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
install-dist_webDATA install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am uninstall uninstall-am uninstall-dist_webDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 B

View File

@ -1,17 +0,0 @@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/includes
web_DATA = \
config.php
dist_web_DATA = \
actions.php \
database.php \
functions.php \
control_functions.php \
lang.php \
logger.php
EXTRA_DIST = \
config.php.in

View File

@ -1,453 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/includes
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(srcdir)/config.php.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = config.php
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)" "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA) $(web_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/includes
web_DATA = \
config.php
dist_web_DATA = \
actions.php \
database.php \
functions.php \
control_functions.php \
lang.php \
logger.php
EXTRA_DIST = \
config.php.in
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/includes/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/includes/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
config.php: $(top_builddir)/config.status $(srcdir)/config.php.in
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
install-webDATA: $(web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-webDATA:
@$(NORMAL_UNINSTALL)
@list='$(web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(webdir)" "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-dist_webDATA install-webDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-dist_webDATA uninstall-webDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
install-dist_webDATA install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip install-webDATA \
installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am uninstall uninstall-am uninstall-dist_webDATA \
uninstall-webDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,903 +0,0 @@
<?php
//
// ZoneMinder web action file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
function getAffectedIds( $name )
{
$names = $name."s";
$ids = array();
if ( isset($_REQUEST[$names]) || isset($_REQUEST[$name]) )
{
if ( isset($_REQUEST[$names]) )
$ids = validInt($_REQUEST[$names]);
else if ( isset($_REQUEST[$name]) )
$ids[] = validInt($_REQUEST[$name]);
}
return( $ids );
}
if ( ZM_OPT_USE_AUTH && ZM_AUTH_HASH_LOGINS && empty($user) && !empty($_REQUEST['auth']) )
{
if ( $authUser = getAuthUser( $_REQUEST['auth'] ) )
{
userLogin( $authUser['Username'], $authUser['Password'], true );
}
}
if ( !empty($action) )
{
// General scope actions
if ( $action == "login" && isset($_REQUEST['username']) && ( ZM_AUTH_TYPE == "remote" || isset($_REQUEST['password']) ) )
{
$username = validStr( $_REQUEST['username'] );
$password = isset($_REQUEST['password'])?validStr($_REQUEST['password']):'';
userLogin( $username, $password );
}
elseif ( $action == "logout" )
{
userLogout();
$refreshParent = true;
$view = 'none';
}
elseif ( $action == "bandwidth" && isset($_REQUEST['newBandwidth']) )
{
$_COOKIE['zmBandwidth'] = validStr($_REQUEST['newBandwidth']);
setcookie( "zmBandwidth", validStr($_REQUEST['newBandwidth']), time()+3600*24*30*12*10 );
$refreshParent = true;
}
// Event scope actions, view permissions only required
if ( canView( 'Events' ) )
{
if ( $action == "filter" )
{
if ( !empty($_REQUEST['subaction']) )
{
if ( $_REQUEST['subaction'] == "addterm" )
$_REQUEST['filter'] = addFilterTerm( $_REQUEST['filter'], $_REQUEST['line'] );
elseif ( $_REQUEST['subaction'] == "delterm" )
$_REQUEST['filter'] = delFilterTerm( $_REQUEST['filter'], $_REQUEST['line'] );
}
elseif ( canEdit( 'Events' ) )
{
if ( !empty($_REQUEST['execute']) )
$tempFilterName = "_TempFilter".time();
if ( isset($tempFilterName) )
$filterName = $tempFilterName;
elseif ( !empty($_REQUEST['newFilterName']) )
$filterName = $_REQUEST['newFilterName'];
if ( !empty($filterName) )
{
$_REQUEST['filter']['sort_field'] = validStr($_REQUEST['sort_field']);
$_REQUEST['filter']['sort_asc'] = validStr($_REQUEST['sort_asc']);
$_REQUEST['filter']['limit'] = validInt($_REQUEST['limit']);
$sql = "replace into Filters set Name = '".dbEscape($filterName)."', Query = '".dbEscape(jsonEncode($_REQUEST['filter']))."'";
if ( !empty($_REQUEST['autoArchive']) )
$sql .= ", AutoArchive = '".dbEscape($_REQUEST['autoArchive'])."'";
if ( !empty($_REQUEST['autoVideo']) )
$sql .= ", AutoVideo = '".dbEscape($_REQUEST['autoVideo'])."'";
if ( !empty($_REQUEST['autoUpload']) )
$sql .= ", AutoUpload = '".dbEscape($_REQUEST['autoUpload'])."'";
if ( !empty($_REQUEST['autoEmail']) )
$sql .= ", AutoEmail = '".dbEscape($_REQUEST['autoEmail'])."'";
if ( !empty($_REQUEST['autoMessage']) )
$sql .= ", AutoMessage = '".dbEscape($_REQUEST['autoMessage'])."'";
if ( !empty($_REQUEST['autoExecute']) && !empty($_REQUEST['autoExecuteCmd']) )
$sql .= ", AutoExecute = '".dbEscape($_REQUEST['autoExecute'])."', AutoExecuteCmd = '".dbEscape($_REQUEST['autoExecuteCmd'])."'";
if ( !empty($_REQUEST['autoDelete']) )
$sql .= ", AutoDelete = '".dbEscape($_REQUEST['autoDelete'])."'";
if ( !empty($_REQUEST['background']) )
$sql .= ", Background = '".dbEscape($_REQUEST['background'])."'";
dbQuery( $sql );
$refreshParent = true;
}
}
}
}
// Event scope actions, edit permissions required
if ( canEdit( 'Events' ) )
{
if ( $action == "rename" && isset($_REQUEST['eventName']) && !empty($_REQUEST['eid']) )
{
dbQuery( "update Events set Name = '".dbEscape($_REQUEST['eventName'])."' where Id = '".dbEscape($_REQUEST['eid'])."'" );
}
else if ( $action == "eventdetail" )
{
if ( !empty($_REQUEST['eid']) )
{
dbQuery( "update Events set Cause = '".dbEscape($_REQUEST['newEvent']['Cause'])."', Notes = '".dbEscape($_REQUEST['newEvent']['Notes'])."' where Id = '".dbEscape($_REQUEST['eid'])."'" );
$refreshParent = true;
}
else
{
foreach( getAffectedIds( 'markEid' ) as $markEid )
{
dbQuery( "update Events set Cause = '".dbEscape($_REQUEST['newEvent']['Cause'])."', Notes = '".dbEscape($_REQUEST['newEvent']['Notes'])."' where Id = '".dbEscape($markEid)."'" );
$refreshParent = true;
}
}
}
elseif ( $action == "archive" || $action == "unarchive" )
{
$archiveVal = ($action == "archive")?1:0;
if ( !empty($_REQUEST['eid']) )
{
dbQuery( "update Events set Archived = $archiveVal where Id = '".dbEscape($_REQUEST['eid'])."'" );
}
else
{
foreach( getAffectedIds( 'markEid' ) as $markEid )
{
dbQuery( "update Events set Archived = $archiveVal where Id = '".dbEscape($markEid)."'" );
$refreshParent = true;
}
}
}
elseif ( $action == "delete" )
{
foreach( getAffectedIds( 'markEid' ) as $markEid )
{
deleteEvent( $markEid );
$refreshParent = true;
}
if ( !empty($_REQUEST['fid']) )
{
dbQuery( "delete from Filters where Name = '".dbEscape($_REQUEST['fid'])."'" );
//$refreshParent = true;
}
}
}
// Monitor control actions, require a monitor id and control view permissions for that monitor
if ( !empty($_REQUEST['mid']) && canView( 'Control', $_REQUEST['mid'] ) )
{
require_once( 'control_functions.php' );
$mid = validInt($_REQUEST['mid']);
if ( $action == "control" )
{
$monitor = dbFetchOne( "select C.*,M.* from Monitors as M inner join Controls as C on (M.ControlId = C.Id) where M.Id = '".dbEscape($mid)."'" );
$ctrlCommand = buildControlCommand( $monitor );
if ( $ctrlCommand )
{
$socket = socket_create( AF_UNIX, SOCK_STREAM, 0 );
if ( $socket < 0 )
{
Fatal( "socket_create() failed: ".socket_strerror($socket) );
}
$sockFile = ZM_PATH_SOCKS.'/zmcontrol-'.$monitor['Id'].'.sock';
if ( @socket_connect( $socket, $sockFile ) )
{
$options = array();
foreach ( explode( " ", $ctrlCommand ) as $option )
{
if ( preg_match( '/--([^=]+)(?:=(.+))?/', $option, $matches ) )
{
$options[$matches[1]] = $matches[2]?$matches[2]:1;
}
}
$optionString = jsonEncode( $options );
if ( !socket_write( $socket, $optionString ) )
{
Fatal( "Can't write to control socket: ".socket_strerror(socket_last_error($socket)) );
}
socket_close( $socket );
}
else
{
$ctrlCommand .= " --id=".$monitor['Id'];
// Can't connect so use script
$ctrlOutput = exec( escapeshellcmd( $ctrlCommand ) );
}
}
}
elseif ( $action == "settings" )
{
$zmuCommand = getZmuCommand( " -m ".$mid." -B".$_REQUEST['newBrightness']." -C".$_REQUEST['newContrast']." -H".$_REQUEST['newHue']." -O".$_REQUEST['newColour'] );
$zmuOutput = exec( escapeshellcmd( $zmuCommand ) );
list( $brightness, $contrast, $hue, $colour ) = explode( ' ', $zmuOutput );
dbQuery( "update Monitors set Brightness = '".$brightness."', Contrast = '".$contrast."', Hue = '".$hue."', Colour = '".$colour."' where Id = '".$mid."'" );
}
}
// Control capability actions, require control edit permissions
if ( canEdit( 'Control' ) )
{
if ( $action == "controlcap" )
{
if ( !empty($_REQUEST['cid']) )
{
$control = dbFetchOne( "select * from Controls where Id = '".dbEscape($_REQUEST['cid'])."'" );
}
else
{
$control = array();
}
// Define a field type for anything that's not simple text equivalent
$types = array(
// Empty
);
$columns = getTableColumns( 'Controls' );
foreach ( $columns as $name=>$type )
{
if ( preg_match( '/^(Can|Has)/', $name ) )
{
$types[$name] = 'toggle';
}
}
$changes = getFormChanges( $control, $_REQUEST['newControl'], $types, $columns );
if ( count( $changes ) )
{
if ( !empty($_REQUEST['cid']) )
{
dbQuery( "update Controls set ".implode( ", ", $changes )." where Id = '".dbEscape($_REQUEST['cid'])."'" );
}
else
{
dbQuery( "insert into Controls set ".implode( ", ", $changes ) );
//$_REQUEST['cid'] = dbInsertId();
}
$refreshParent = true;
}
$view = 'none';
}
elseif ( $action == "delete" )
{
if ( isset($_REQUEST['markCids']) )
{
foreach( $_REQUEST['markCids'] as $markCid )
{
dbQuery( "delete from Controls where Id = '".dbEscape($markCid)."'" );
dbQuery( "update Monitors set Controllable = 0, ControlId = 0 where ControlId = '".dbEscape($markCid)."'" );
$refreshParent = true;
}
}
}
}
// Monitor edit actions, require a monitor id and edit permissions for that monitor
if ( !empty($_REQUEST['mid']) && canEdit( 'Monitors', $_REQUEST['mid'] ) )
{
$mid = validInt($_REQUEST['mid']);
if ( $action == "function" )
{
$monitor = dbFetchOne( "select * from Monitors where Id = '".$mid."'" );
$newFunction = validStr($_REQUEST['newFunction']);
$newEnabled = validStr($_REQUEST['newEnabled']);
$oldFunction = $monitor['Function'];
$oldEnabled = $monitor['Enabled'];
if ( $newFunction != $oldFunction || $newEnabled != $oldEnabled )
{
dbQuery( "update Monitors set Function = '".dbEscape($newFunction)."', Enabled = '".$newEnabled."' where Id = '".$mid."'" );
$monitor['Function'] = $newFunction;
$monitor['Enabled'] = $newEnabled;
//if ( $cookies ) session_write_close();
if ( daemonCheck() )
{
$restart = ($oldFunction == 'None') || ($newFunction == 'None') || ($newEnabled != $oldEnabled);
zmcControl( $monitor, $restart?"restart":"" );
zmaControl( $monitor, "reload" );
}
$refreshParent = true;
}
}
elseif ( $action == "zone" && isset( $_REQUEST['zid'] ) )
{
$zid = validInt($_REQUEST['zid']);
$monitor = dbFetchOne( "select * from Monitors where Id = '".dbEscape($mid)."'" );
if ( !empty($zid) )
{
$zone = dbFetchOne( "select * from Zones where MonitorId = '".dbEscape($mid)."' and Id = '".dbEscape($zid)."'" );
}
else
{
$zone = array();
}
if ( $_REQUEST['newZone']['Units'] == 'Percent' )
{
$_REQUEST['newZone']['MinAlarmPixels'] = intval(($_REQUEST['newZone']['MinAlarmPixels']*$_REQUEST['newZone']['Area'])/100);
$_REQUEST['newZone']['MaxAlarmPixels'] = intval(($_REQUEST['newZone']['MaxAlarmPixels']*$_REQUEST['newZone']['Area'])/100);
if ( isset($_REQUEST['newZone']['MinFilterPixels']) )
$_REQUEST['newZone']['MinFilterPixels'] = intval(($_REQUEST['newZone']['MinFilterPixels']*$_REQUEST['newZone']['Area'])/100);
if ( isset($_REQUEST['newZone']['MaxFilterPixels']) )
$_REQUEST['newZone']['MaxFilterPixels'] = intval(($_REQUEST['newZone']['MaxFilterPixels']*$_REQUEST['newZone']['Area'])/100);
if ( isset($_REQUEST['newZone']['MinBlobPixels']) )
$_REQUEST['newZone']['MinBlobPixels'] = intval(($_REQUEST['newZone']['MinBlobPixels']*$_REQUEST['newZone']['Area'])/100);
if ( isset($_REQUEST['newZone']['MaxBlobPixels']) )
$_REQUEST['newZone']['MaxBlobPixels'] = intval(($_REQUEST['newZone']['MaxBlobPixels']*$_REQUEST['newZone']['Area'])/100);
}
unset( $_REQUEST['newZone']['Points'] );
$types = array();
$changes = getFormChanges( $zone, $_REQUEST['newZone'], $types );
if ( count( $changes ) )
{
if ( $zid > 0 )
{
$sql = "update Zones set ".implode( ", ", $changes )." where MonitorId = '".dbEscape($mid)."' and Id = '".dbEscape($zid)."'";
}
else
{
$sql = "insert into Zones set MonitorId = '".dbEscape($mid)."', ".implode( ", ", $changes );
}
dbQuery( $sql );
//if ( $cookies ) session_write_close();
if ( daemonCheck() )
{
zmaControl( $mid, "restart" );
}
$refreshParent = true;
}
$view = 'none';
}
elseif ( $action == "sequence" && isset($_REQUEST['smid']) )
{
$smid = validInt($_REQUEST['smid']);
$monitor = dbFetchOne( "select * from Monitors where Id = '".dbEscape($mid)."'" );
$smonitor = dbFetchOne( "select * from Monitors where Id = '".dbEscape($smid)."'" );
dbQuery( "update Monitors set Sequence = '".$smonitor['Sequence']."' where Id = '".$monitor['Id']."'" );
dbQuery( "update Monitors set Sequence = '".$monitor['Sequence']."' where Id = '".$smonitor['Id']."'" );
$refreshParent = true;
fixSequences();
}
if ( $action == "delete" )
{
if ( isset($_REQUEST['markZids']) )
{
$deletedZid = 0;
foreach( $_REQUEST['markZids'] as $markZid )
{
dbQuery( "delete from Zones where MonitorId = '".dbEscape($mid)."' && Id = '".dbEscape($markZid)."'" );
$deletedZid = 1;
}
if ( $deletedZid )
{
//if ( $cookies )
//session_write_close();
if ( daemonCheck() )
zmaControl( $mid, "restart" );
$refreshParent = true;
}
}
}
}
// Monitor edit actions, monitor id derived, require edit permissions for that monitor
if ( canEdit( 'Monitors' ) )
{
if ( $action == "monitor" )
{
if ( !empty($_REQUEST['mid']) )
{
$mid = validInt($_REQUEST['mid']);
$monitor = dbFetchOne( "select * from Monitors where Id = '".dbEscape($mid)."'" );
if ( ZM_OPT_X10 )
{
$x10Monitor = dbFetchOne( "select * from TriggersX10 where MonitorId = '".dbEscape($mid)."'" );
if ( !$x10Monitor )
$x10Monitor = array();
}
}
else
{
$monitor = array();
if ( ZM_OPT_X10 )
{
$x10Monitor = array();
}
}
// Define a field type for anything that's not simple text equivalent
$types = array(
'Triggers' => 'set',
'Controllable' => 'toggle',
'TrackMotion' => 'toggle',
'Enabled' => 'toggle'
);
$columns = getTableColumns( 'Monitors' );
$changes = getFormChanges( $monitor, $_REQUEST['newMonitor'], $types, $columns );
if ( count( $changes ) )
{
if ( !empty($_REQUEST['mid']) )
{
$mid = validInt($_REQUEST['mid']);
$sql = "update Monitors set ".implode( ", ", $changes )." where Id = '".dbEscape($mid)."'";
dbQuery( $sql );
if ( isset($changes['Name']) )
{
exec( escapeshellcmd( "mv ".ZM_DIR_EVENTS."/".$monitor['Name']." ".ZM_DIR_EVENTS."/".$_REQUEST['newMonitor']['Name'] ) );
}
if ( isset($changes['Width']) || isset($changes['Height']) )
{
$newW = $_REQUEST['newMonitor']['Width'];
$newH = $_REQUEST['newMonitor']['Height'];
$newA = $newW * $newH;
$oldW = $monitor['Width'];
$oldH = $monitor['Height'];
$oldA = $oldW * $oldH;
$zones = dbFetchAll( "select * from Zones where MonitorId = '".dbEscape($mid)."'" );
foreach ( $zones as $zone )
{
$newZone = $zone;
$points = coordsToPoints( $zone['Coords'] );
for ( $i = 0; $i < count($points); $i++ )
{
$points[$i]['x'] = intval(($points[$i]['x']*($newW-1))/($oldW-1));
$points[$i]['y'] = intval(($points[$i]['y']*($newH-1))/($oldH-1));
}
$newZone['Coords'] = pointsToCoords( $points );
$newZone['Area'] = intval(round(($zone['Area']*$newA)/$oldA));
$newZone['MinAlarmPixels'] = intval(round(($newZone['MinAlarmPixels']*$newA)/$oldA));
$newZone['MaxAlarmPixels'] = intval(round(($newZone['MaxAlarmPixels']*$newA)/$oldA));
$newZone['MinFilterPixels'] = intval(round(($newZone['MinFilterPixels']*$newA)/$oldA));
$newZone['MaxFilterPixels'] = intval(round(($newZone['MaxFilterPixels']*$newA)/$oldA));
$newZone['MinBlobPixels'] = intval(round(($newZone['MinBlobPixels']*$newA)/$oldA));
$newZone['MaxBlobPixels'] = intval(round(($newZone['MaxBlobPixels']*$newA)/$oldA));
$changes = getFormChanges( $zone, $newZone, $types );
if ( count( $changes ) )
{
dbQuery( "update Zones set ".implode( ", ", $changes )." where MonitorId = '".dbEscape($mid)."' and Id = '".$zone['Id']."'" );
}
}
}
}
elseif ( !$user['MonitorIds'] )
{
$maxSeq = dbFetchOne( "select max(Sequence) as MaxSequence from Monitors", "MaxSequence" );
$changes[] = "Sequence = ".($maxSeq+1);
dbQuery( "insert into Monitors set ".implode( ", ", $changes ) );
$mid = dbInsertId();
$zoneArea = $_REQUEST['newMonitor']['Width'] * $_REQUEST['newMonitor']['Height'];
dbQuery( "insert into Zones set MonitorId = ".dbEscape($mid).", Name = 'All', Type = 'Active', Units = 'Percent', NumCoords = 4, Coords = '".sprintf( "%d,%d %d,%d %d,%d %d,%d", 0, 0, $_REQUEST['newMonitor']['Width']-1, 0, $_REQUEST['newMonitor']['Width']-1, $_REQUEST['newMonitor']['Height']-1, 0, $_REQUEST['newMonitor']['Height']-1 )."', Area = ".$zoneArea.", AlarmRGB = 0xff0000, CheckMethod = 'Blobs', MinPixelThreshold = 25, MinAlarmPixels = ".intval(($zoneArea*3)/100).", MaxAlarmPixels = ".intval(($zoneArea*75)/100).", FilterX = 3, FilterY = 3, MinFilterPixels = ".intval(($zoneArea*3)/100).", MaxFilterPixels = ".intval(($zoneArea*75)/100).", MinBlobPixels = ".intval(($zoneArea*2)/100).", MinBlobs = 1" );
//$view = 'none';
mkdir( ZM_DIR_EVENTS.'/'.$mid, 0755 );
symlink( $mid, ZM_DIR_EVENTS.'/'.$_REQUEST['newMonitor']['Name'] );
if ( isset($_COOKIE['zmGroup']) )
{
$sql = "update Groups set MonitorIds = concat(MonitorIds,',".$mid."') where Id = '".dbEscape($_COOKIE['zmGroup'])."'";
dbQuery( $sql );
}
}
$restart = true;
}
if ( ZM_OPT_X10 )
{
$x10Changes = getFormChanges( $x10Monitor, $_REQUEST['newX10Monitor'] );
if ( count( $x10Changes ) )
{
if ( $x10Monitor && isset($_REQUEST['newX10Monitor']) )
{
dbQuery( "update TriggersX10 set ".implode( ", ", $x10Changes )." where MonitorId = '".dbEscape($mid)."'" );
}
elseif ( !$user['MonitorIds'] )
{
if ( !$x10Monitor )
{
dbQuery( "insert into TriggersX10 set MonitorId = '".dbEscape($mid)."', ".implode( ", ", $x10Changes ) );
}
else
{
dbQuery( "delete from TriggersX10 where MonitorId = '".dbEscape($mid)."'" );
}
}
$restart = true;
}
}
if ( $restart )
{
$monitor = dbFetchOne( "select * from Monitors where Id = '".dbEscape($mid)."'" );
fixDevices();
//if ( $cookies )
//session_write_close();
if ( daemonCheck() )
{
zmcControl( $monitor, "restart" );
zmaControl( $monitor, "restart" );
}
//daemonControl( 'restart', 'zmwatch.pl' );
$refreshParent = true;
}
$view = 'none';
}
if ( $action == "delete" )
{
if ( isset($_REQUEST['markMids']) && !$user['MonitorIds'] )
{
foreach( $_REQUEST['markMids'] as $markMid )
{
if ( canEdit( 'Monitors', $markMid ) )
{
$sql = "select * from Monitors where Id = '".dbEscape($markMid)."'";
if ( $monitor = dbFetchOne( $sql ) )
{
if ( daemonCheck() )
{
zmaControl( $monitor, "stop" );
zmcControl( $monitor, "stop" );
}
// This is the important stuff
dbQuery( "delete from Monitors where Id = '".dbEscape($markMid)."'" );
dbQuery( "delete from Zones where MonitorId = '".dbEscape($markMid)."'" );
if ( ZM_OPT_X10 )
dbQuery( "delete from TriggersX10 where MonitorId = '".dbEscape($markMid)."'" );
fixSequences();
// If fast deletes are on, then zmaudit will clean everything else up later
// If fast deletes are off and there are lots of events then this step may
// well time out before completing, in which case zmaudit will still tidy up
if ( !ZM_OPT_FAST_DELETE )
{
$sql = "select Id from Events where MonitorId = '".dbEscape($markMid)."'";
$markEids = dbFetchAll( $sql, 'Id' );
foreach( $markEids as $markEid )
deleteEvent( $markEid );
deletePath( ZM_DIR_EVENTS."/".$monitor['Name'] );
deletePath( ZM_DIR_EVENTS."/".$monitor['Id'] );
}
}
}
}
}
}
}
// Device view actions
if ( canEdit( 'Devices' ) )
{
if ( $action == "device" )
{
if ( !empty($_REQUEST['command']) )
{
setDeviceStatusX10( $_REQUEST['key'], $_REQUEST['command'] );
}
elseif ( isset( $_REQUEST['newDevice'] ) )
{
if ( isset($_REQUEST['did']) )
{
dbQuery( "update Devices set Name = '".dbEscape($_REQUEST['newDevice']['Name'])."', KeyString = '".dbEscape($_REQUEST['newDevice']['KeyString'])."' where Id = '".dbEscape($_REQUEST['did'])."'" );
}
else
{
dbQuery( "insert into Devices set Name = '".dbEscape($_REQUEST['newDevice']['Name'])."', KeyString = '".dbEscape($_REQUEST['newDevice']['KeyString'])."'" );
}
$refreshParent = true;
$view = 'none';
}
}
elseif ( $action == "delete" )
{
if ( isset($_REQUEST['markDids']) )
{
foreach( $_REQUEST['markDids'] as $markDid )
{
dbQuery( "delete from Devices where Id = '".dbEscape($markDid)."'" );
$refreshParent = true;
}
}
}
}
// System view actions
if ( canView( 'System' ) )
{
if ( $action == "setgroup" )
{
if ( !empty($_REQUEST['gid']) )
{
setcookie( "zmGroup", validInt($_REQUEST['gid']), time()+3600*24*30*12*10 );
}
else
{
setcookie( "zmGroup", "", time()-3600*24*2 );
}
$refreshParent = true;
}
}
// System edit actions
if ( canEdit( 'System' ) )
{
if ( $action == "version" && isset($_REQUEST['option']) )
{
$option = $_REQUEST['option'];
switch( $option )
{
case 'go' :
{
// Ignore this, the caller will open the page itself
break;
}
case 'ignore' :
{
dbQuery( "update Config set Value = '".ZM_DYN_LAST_VERSION."' where Name = 'ZM_DYN_CURR_VERSION'" );
break;
}
case 'hour' :
case 'day' :
case 'week' :
{
$nextReminder = time();
if ( $option == 'hour' )
{
$nextReminder += 60*60;
}
elseif ( $option == 'day' )
{
$nextReminder += 24*60*60;
}
elseif ( $option == 'week' )
{
$nextReminder += 7*24*60*60;
}
dbQuery( "update Config set Value = '".$nextReminder."' where Name = 'ZM_DYN_NEXT_REMINDER'" );
break;
}
case 'never' :
{
dbQuery( "update Config set Value = '0' where Name = 'ZM_CHECK_FOR_UPDATES'" );
break;
}
}
}
if ( $action == "donate" && isset($_REQUEST['option']) )
{
$option = $_REQUEST['option'];
switch( $option )
{
case 'go' :
{
// Ignore this, the caller will open the page itself
break;
}
case 'hour' :
case 'day' :
case 'week' :
case 'month' :
{
$nextReminder = time();
if ( $option == 'hour' )
{
$nextReminder += 60*60;
}
elseif ( $option == 'day' )
{
$nextReminder += 24*60*60;
}
elseif ( $option == 'week' )
{
$nextReminder += 7*24*60*60;
}
elseif ( $option == 'month' )
{
$nextReminder += 30*24*60*60;
}
dbQuery( "update Config set Value = '".$nextReminder."' where Name = 'ZM_DYN_DONATE_REMINDER_TIME'" );
break;
}
case 'never' :
case 'already' :
{
dbQuery( "update Config set Value = '0' where Name = 'ZM_DYN_SHOW_DONATE_REMINDER'" );
break;
}
}
}
if ( $action == "options" && isset($_REQUEST['tab']) )
{
$configCat = $configCats[$_REQUEST['tab']];
$changed = false;
foreach ( $configCat as $name=>$value )
{
unset( $newValue );
if ( $value['Type'] == "boolean" && empty($_REQUEST['newConfig'][$name]) )
$newValue = 0;
elseif ( isset($_REQUEST['newConfig'][$name]) )
$newValue = preg_replace( "/\r\n/", "\n", stripslashes( $_REQUEST['newConfig'][$name] ) );
if ( isset($newValue) && ($newValue != $value['Value']) )
{
dbQuery( "update Config set Value = '".$newValue."' where Name = '".$name."'" );
$changed = true;
}
}
if ( $changed )
{
switch( $_REQUEST['tab'] )
{
case "system" :
case "config" :
case "paths" :
$restartWarning = true;
break;
case "web" :
case "tools" :
break;
case "logging" :
case "network" :
case "mail" :
case "upload" :
$restartWarning = true;
break;
case "highband" :
case "medband" :
case "lowband" :
case "phoneband" :
break;
}
}
loadConfig( false );
}
elseif ( $action == "user" )
{
if ( !empty($_REQUEST['uid']) )
$dbUser = dbFetchOne( "select * from Users where Id = '".dbEscape($_REQUEST['uid'])."'" );
else
$dbUser = array();
$types = array();
$changes = getFormChanges( $dbUser, $_REQUEST['newUser'], $types );
if ( $_REQUEST['newUser']['Password'] )
$changes['Password'] = "Password = password('".dbEscape($_REQUEST['newUser']['Password'])."')";
else
unset( $changes['Password'] );
if ( count( $changes ) )
{
if ( !empty($_REQUEST['uid']) )
{
$sql = "update Users set ".implode( ", ", $changes )." where Id = '".dbEscape($_REQUEST['uid'])."'";
}
else
{
$sql = "insert into Users set ".implode( ", ", $changes );
}
dbQuery( $sql );
$refreshParent = true;
if ( $dbUser['Username'] == $user['Username'] )
userLogin( $dbUser['Username'], $dbUser['Password'] );
}
$view = 'none';
}
elseif ( $action == "state" )
{
if ( !empty($_REQUEST['runState']) )
{
//if ( $cookies ) session_write_close();
packageControl( $_REQUEST['runState'] );
$refreshParent = true;
}
}
elseif ( $action == "save" )
{
if ( !empty($_REQUEST['runState']) || !empty($_REQUEST['newState']) )
{
$sql = "select Id,Function,Enabled from Monitors order by Id";
$definitions = array();
foreach( dbFetchAll( $sql ) as $monitor )
{
$definitions[] = $monitor['Id'].":".$monitor['Function'].":".$monitor['Enabled'];
}
$definition = join( ',', $definitions );
if ( $_REQUEST['newState'] )
$_REQUEST['runState'] = $_REQUEST['newState'];
dbQuery( "replace into States set Name = '".dbEscape($_REQUEST['runState'])."', Definition = '".dbEscape($definition)."'" );
}
}
elseif ( $action == "group" )
{
if ( !empty($_REQUEST['gid']) )
{
$sql = "update Groups set Name = '".dbEscape($_REQUEST['newGroup']['Name'])."', MonitorIds = '".dbEscape(join(',',$_REQUEST['newGroup']['MonitorIds']))."' where Id = '".dbEscape($_REQUEST['gid'])."'";
}
else
{
$sql = "insert into Groups set Name = '".dbEscape($_REQUEST['newGroup']['Name'])."', MonitorIds = '".dbEscape(join(',',$_REQUEST['newGroup']['MonitorIds']))."'";
}
dbQuery( $sql );
$refreshParent = true;
$view = 'none';
}
elseif ( $action == "delete" )
{
if ( isset($_REQUEST['runState']) )
dbQuery( "delete from States where Name = '".dbEscape($_REQUEST['runState'])."'" );
if ( isset($_REQUEST['markUids']) )
{
foreach( $_REQUEST['markUids'] as $markUid )
dbQuery( "delete from Users where Id = '".dbEscape($markUid)."'" );
if ( $markUid == $user['Id'] )
userLogout();
}
if ( !empty($_REQUEST['gid']) )
{
dbQuery( "delete from Groups where Id = '".dbEscape($_REQUEST['gid'])."'" );
if ( isset($_COOKIE['zmGroup']) )
{
if ( $_REQUEST['gid'] == $_COOKIE['zmGroup'] )
{
unset( $_COOKIE['zmGroup'] );
setcookie( "zmGroup", "", time()-3600*24*2 );
$refreshParent = true;
}
}
}
}
}
else
{
if ( ZM_USER_SELF_EDIT && $action == "user" )
{
$uid = $user['Id'];
$dbUser = dbFetchOne( "select Id, Password, Language from Users where Id = '".dbEscape($uid)."'" );
$types = array();
$changes = getFormChanges( $dbUser, $_REQUEST['newUser'], $types );
if ( !empty($_REQUEST['newUser']['Password']) )
$changes['Password'] = "Password = password('".dbEscape($_REQUEST['newUser']['Password'])."')";
else
unset( $changes['Password'] );
if ( count( $changes ) )
{
$sql = "update Users set ".implode( ", ", $changes )." where Id = '".dbEscape($uid)."'";
dbQuery( $sql );
$refreshParent = true;
}
$view = 'none';
}
}
if ( $action == "reset" )
{
$_SESSION['zmEventResetTime'] = strftime( STRF_FMT_DATETIME_DB );
setcookie( "zmEventResetTime", $_SESSION['zmEventResetTime'], time()+3600*24*30*12*10 );
//if ( $cookies ) session_write_close();
}
}
?>

View File

@ -1,173 +0,0 @@
<?php
//
// ZoneMinder web configuration file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
//
// This section contains options substituted by the zmconfig.pl utility, do not edit these directly
//
define( "ZM_CONFIG", "@ZM_CONFIG@" ); // Path to config file
$configFile = ZM_CONFIG;
$localConfigFile = basename($configFile);
if ( file_exists( $localConfigFile ) && filesize( $localConfigFile ) > 0 )
{
if ( php_sapi_name() == 'cli' && empty($_SERVER['REMOTE_ADDR']) )
print( "Warning, overriding installed $localConfigFile file with local copy\n" );
else
error_log( "Warning, overriding installed $localConfigFile file with local copy" );
$configFile = $localConfigFile;
}
$cfg = fopen( $configFile, "r") or die("Could not open config file.");
while ( !feof($cfg) )
{
$str = fgets( $cfg, 256 );
if ( preg_match( '/^\s*$/', $str ))
continue;
elseif ( preg_match( '/^\s*#/', $str ))
continue;
elseif ( preg_match( '/^\s*([^=\s]+)\s*=\s*(.+?)\s*$/', $str, $matches ))
define( $matches[1], $matches[2] );
}
fclose( $cfg );
//
// This section is options normally derived from other options or configuration
//
define( "ZMU_PATH", ZM_PATH_BIN."/zmu" ); // Local path to the ZoneMinder Utility
//
// If setup supports Video 4 Linux v2 and/or v1
//
define( "ZM_HAS_V4L2", "@ZM_HAS_V4L2@" ); // V4L2 support enabled
define( "ZM_HAS_V4L1", "@ZM_HAS_V4L1@" ); // V4L1 support enabled
define( "ZM_HAS_V4L", "@ZM_HAS_V4L@" ); // V4L support enabled
//
// If PCRE dev libraries are installed
//
define( "ZM_PCRE", "@ZM_PCRE@" ); // PCRE support enabled
//
// Alarm states
//
define( "STATE_IDLE", 0 );
define( "STATE_PREALARM", 1 );
define( "STATE_ALARM", 2 );
define( "STATE_ALERT", 3 );
define( "STATE_TAPE", 4 );
//
// DVR Control Commands
//
define( "MSG_CMD", 1 );
define( "MSG_DATA_WATCH", 2 );
define( "MSG_DATA_EVENT", 3 );
define( "CMD_NONE", 0 );
define( "CMD_PAUSE", 1 );
define( "CMD_PLAY", 2 );
define( "CMD_STOP", 3 );
define( "CMD_FASTFWD", 4 );
define( "CMD_SLOWFWD", 5 );
define( "CMD_SLOWREV", 6 );
define( "CMD_FASTREV", 7 );
define( "CMD_ZOOMIN", 8 );
define( "CMD_ZOOMOUT", 9 );
define( "CMD_PAN", 10 );
define( "CMD_SCALE", 11 );
define( "CMD_PREV", 12 );
define( "CMD_NEXT", 13 );
define( "CMD_SEEK", 14 );
define( "CMD_VARPLAY", 15 );
define( "CMD_QUERY", 99 );
//
// These are miscellaneous options you won't normally need to change
//
define( "MAX_EVENTS", 10 ); // The maximum number of events to show in the monitor event listing
define( "RATE_BASE", 100 ); // The additional scaling factor used to help get fractional rates in integer format
define( "SCALE_BASE", 100 ); // The additional scaling factor used to help get fractional scales in integer format
//
// Date and time formats, eventually some of these may end up in the language files
//
define( "DATE_FMT_CONSOLE_LONG", "D jS M, g:ia" ); // This is the main console date/time, date() or strftime() format
define( "DATE_FMT_CONSOLE_SHORT", "%H:%M" ); // This is the xHTML console date/time, date() or strftime() format
define( "STRF_FMT_DATETIME_DB", "%Y-%m-%d %H:%M:%S" ); // Strftime format for database queries, don't change
define( "STRF_FMT_DATETIME", "%c" ); // Strftime locale aware format for dates with times
define( "STRF_FMT_DATE", "%x" ); // Strftime locale aware format for dates without times
define( "STRF_FMT_TIME", "%X" ); // Strftime locale aware format for times without dates
define( "STRF_FMT_DATETIME_SHORT", "%y/%m/%d %H:%M:%S" ); // Strftime shorter format for dates with time, not locale aware
define( "STRF_FMT_DATETIME_SHORTER", "%m/%d %H:%M:%S" ); // Strftime shorter format for dates with time, not locale aware, used where space is tight
define( "MYSQL_FMT_DATETIME_SHORT", "%y/%m/%d %H:%i:%S" ); // MySQL date_format shorter format for dates with time
require_once( 'database.php' );
loadConfig();
$GLOBALS['defaultUser'] = array(
"Username" => "admin",
"Password" => "",
"Language" => "",
"Enabled" => 1,
"Stream" => 'View',
"Events" => 'Edit',
"Control" => 'Edit',
"Monitors" => 'Edit',
"Devices" => 'Edit',
"System" => 'Edit',
"MaxBandwidth" => "",
"MonitorIds" => false
);
function loadConfig( $defineConsts=true )
{
global $config;
global $configCats;
$config = array();
$configCat = array();
$sql = "select * from Config order by Id asc";
$result = mysql_query( $sql );
if ( !$result )
echo mysql_error();
$monitors = array();
while( $row = mysql_fetch_assoc( $result ) )
{
if ( $defineConsts )
define( $row['Name'], $row['Value'] );
$config[$row['Name']] = $row;
if ( !($configCat = &$configCats[$row['Category']]) )
{
$configCats[$row['Category']] = array();
$configCat = &$configCats[$row['Category']];
}
$configCat[$row['Name']] = $row;
}
//print_r( $config );
//print_r( $configCats );
}
?>

View File

@ -1,969 +0,0 @@
<?php
function buildControlCommand( $monitor )
{
$ctrlCommand = ZM_PATH_BIN."/zmcontrol.pl";
if ( isset($_REQUEST['xge']) || isset($_REQUEST['yge']) )
{
$slow = 0.9; // Threshold for slow speed/timeouts
$turbo = 0.9; // Threshold for turbo speed
if ( preg_match( '/^([a-z]+)([A-Z][a-z]+)([A-Z][a-z]+)+$/', $_REQUEST['control'], $matches ) )
{
$command = $matches[1];
$mode = $matches[2];
$dirn = $matches[3];
switch( $command )
{
case 'focus' :
{
$factor = $_REQUEST['yge']/100;
if ( $monitor['HasFocusSpeed'] )
{
$speed = intval(round($monitor['MinFocusSpeed']+(($monitor['MaxFocusSpeed']-$monitor['MinFocusSpeed'])*$factor)));
$ctrlCommand .= " --speed=".$speed;
}
switch( $mode )
{
case 'Abs' :
case 'Rel' :
{
$step = intval(round($monitor['MinFocusStep']+(($monitor['MaxFocusStep']-$monitor['MinFocusStep'])*$factor)));
$ctrlCommand .= " --step=".$step;
break;
}
case 'Con' :
{
if ( $monitor['AutoStopTimeout'] )
{
$slowSpeed = intval(round($monitor['MinFocusSpeed']+(($monitor['MaxFocusSpeed']-$monitor['MinFocusSpeed'])*$slow)));
if ( $speed < $slowSpeed )
{
$ctrlCommand .= " --autostop";
}
}
break;
}
}
break;
}
case 'zoom' :
{
$factor = $_REQUEST['yge']/100;
if ( $monitor['HasZoomSpeed'] )
{
$speed = intval(round($monitor['MinZoomSpeed']+(($monitor['MaxZoomSpeed']-$monitor['MinZoomSpeed'])*$factor)));
$ctrlCommand .= " --speed=".$speed;
}
switch( $mode )
{
case 'Abs' :
case 'Rel' :
{
$step = intval(round($monitor['MinZoomStep']+(($monitor['MaxZoomStep']-$monitor['MinZoomStep'])*$factor)));
$ctrlCommand .= " --step=".$step;
break;
}
case 'Con' :
{
if ( $monitor['AutoStopTimeout'] )
{
$slowSpeed = intval(round($monitor['MinZoomSpeed']+(($monitor['MaxZoomSpeed']-$monitor['MinZoomSpeed'])*$slow)));
if ( $speed < $slowSpeed )
{
$ctrlCommand .= " --autostop";
}
}
break;
}
}
break;
}
case 'iris' :
{
$factor = $_REQUEST['yge']/100;
if ( $monitor['HasIrisSpeed'] )
{
$speed = intval(round($monitor['MinIrisSpeed']+(($monitor['MaxIrisSpeed']-$monitor['MinIrisSpeed'])*$factor)));
$ctrlCommand .= " --speed=".$speed;
}
switch( $mode )
{
case 'Abs' :
case 'Rel' :
{
$step = intval(round($monitor['MinIrisStep']+(($monitor['MaxIrisStep']-$monitor['MinIrisStep'])*$factor)));
$ctrlCommand .= " --step=".$step;
break;
}
}
break;
}
case 'white' :
{
$factor = $_REQUEST['yge']/100;
if ( $monitor['HasWhiteSpeed'] )
{
$speed = intval(round($monitor['MinWhiteSpeed']+(($monitor['MaxWhiteSpeed']-$monitor['MinWhiteSpeed'])*$factor)));
$ctrlCommand .= " --speed=".$speed;
}
switch( $mode )
{
case 'Abs' :
case 'Rel' :
{
$step = intval(round($monitor['MinWhiteStep']+(($monitor['MaxWhiteStep']-$monitor['MinWhiteStep'])*$factor)));
$ctrlCommand .= " --step=".$step;
break;
}
}
break;
}
case 'gain' :
{
$factor = $_REQUEST['yge']/100;
if ( $monitor['HasGainSpeed'] )
{
$speed = intval(round($monitor['MinGainSpeed']+(($monitor['MaxGainSpeed']-$monitor['MinGainSpeed'])*$factor)));
$ctrlCommand .= " --speed=".$speed;
}
switch( $mode )
{
case 'Abs' :
case 'Rel' :
{
$step = intval(round($monitor['MinGainStep']+(($monitor['MaxGainStep']-$monitor['MinGainStep'])*$factor)));
$ctrlCommand .= " --step=".$step;
break;
}
}
break;
}
case 'move' :
{
$xFactor = empty($_REQUEST['xge'])?0:$_REQUEST['xge']/100;
$yFactor = empty($_REQUEST['yge'])?0:$_REQUEST['yge']/100;
if ( $monitor['Orientation'] != '0' )
{
$conversions = array(
'90' => array(
'Up' => 'Left',
'Down' => 'Right',
'Left' => 'Down',
'Right' => 'Up',
'UpLeft' => 'DownLeft',
'UpRight' => 'UpLeft',
'DownLeft' => 'DownRight',
'DownRight' => 'UpRight',
),
'180' => array(
'Up' => 'Down',
'Down' => 'Up',
'Left' => 'Right',
'Right' => 'Left',
'UpLeft' => 'DownRight',
'UpRight' => 'DownLeft',
'DownLeft' => 'UpRight',
'DownRight' => 'UpLeft',
),
'270' => array(
'Up' => 'Right',
'Down' => 'Left',
'Left' => 'Up',
'Right' => 'Down',
'UpLeft' => 'UpRight',
'UpRight' => 'DownRight',
'DownLeft' => 'UpLeft',
'DownRight' => 'DownLeft',
),
'hori' => array(
'Up' => 'Up',
'Down' => 'Down',
'Left' => 'Right',
'Right' => 'Left',
'UpLeft' => 'UpRight',
'UpRight' => 'UpLeft',
'DownLeft' => 'DownRight',
'DownRight' => 'DownLeft',
),
'vert' => array(
'Up' => 'Down',
'Down' => 'Up',
'Left' => 'Left',
'Right' => 'Right',
'UpLeft' => 'DownLeft',
'UpRight' => 'DownRight',
'DownLeft' => 'UpLeft',
'DownRight' => 'UpRight',
),
);
$new_dirn = $conversions[$monitor['Orientation']][$dirn];
$_REQUEST['control'] = preg_replace( "/_$dirn\$/", "_$new_dirn", $_REQUEST['control'] );
$dirn = $new_dirn;
}
if ( $monitor['HasPanSpeed'] && $xFactor )
{
if ( $monitor['HasTurboPan'] )
{
if ( $xFactor >= $turbo )
{
$panSpeed = $monitor['TurboPanSpeed'];
}
else
{
$xFactor = $xFactor/$turbo;
$panSpeed = intval(round($monitor['MinPanSpeed']+(($monitor['MaxPanSpeed']-$monitor['MinPanSpeed'])*$xFactor)));
}
}
else
{
$panSpeed = intval(round($monitor['MinPanSpeed']+(($monitor['MaxPanSpeed']-$monitor['MinPanSpeed'])*$xFactor)));
}
$ctrlCommand .= " --panspeed=".$panSpeed;
}
if ( $monitor['HasTiltSpeed'] && $yFactor )
{
if ( $monitor['HasTurboTilt'] )
{
if ( $yFactor >= $turbo )
{
$tiltSpeed = $monitor['TurboTiltSpeed'];
}
else
{
$yFactor = $yFactor/$turbo;
$tiltSpeed = intval(round($monitor['MinTiltSpeed']+(($monitor['MaxTiltSpeed']-$monitor['MinTiltSpeed'])*$yFactor)));
}
}
else
{
$tiltSpeed = intval(round($monitor['MinTiltSpeed']+(($monitor['MaxTiltSpeed']-$monitor['MinTiltSpeed'])*$yFactor)));
}
$ctrlCommand .= " --tiltspeed=".$tiltSpeed;
}
switch( $mode )
{
case 'Rel' :
case 'Abs' :
{
if ( preg_match( '/(Left|Right)$/', $dirn ) )
{
$panStep = intval(round($monitor['MinPanStep']+(($monitor['MaxPanStep']-$monitor['MinPanStep'])*$xFactor)));
$ctrlCommand .= " --panstep=".$panStep;
}
if ( preg_match( '/^(Up|Down)/', $dirn ) )
{
$tiltStep = intval(round($monitor['MinTiltStep']+(($monitor['MaxTiltStep']-$monitor['MinTiltStep'])*$yFactor)));
$ctrlCommand .= " --tiltstep=".$tiltStep;
}
break;
}
case 'Con' :
{
if ( $monitor['AutoStopTimeout'] )
{
$slowPanSpeed = intval(round($monitor['MinPanSpeed']+(($monitor['MaxPanSpeed']-$monitor['MinPanSpeed'])*$slow)));
$slowTiltSpeed = intval(round($monitor['MinTiltSpeed']+(($monitor['MaxTiltSpeed']-$monitor['MinTiltSpeed'])*$slow)));
if ( (!isset($panSpeed) || ($panSpeed < $slowPanSpeed)) && (!isset($tiltSpeed) || ($tiltSpeed < $slowTiltSpeed)) )
{
$ctrlCommand .= " --autostop";
}
}
break;
}
}
}
}
}
}
elseif ( isset($_REQUEST['x']) && isset($_REQUEST['y']) )
{
if ( $_REQUEST['control'] == "moveMap" )
{
$x = deScale( $_REQUEST['x'], $_REQUEST['scale'] );
$y = deScale( $_REQUEST['y'], $_REQUEST['scale'] );
switch ( $monitor['Orientation'] )
{
case '0' :
case '180' :
case 'hori' :
case 'vert' :
$width = $monitor['Width'];
$height = $monitor['Height'];
break;
case '90' :
case '270' :
$width = $monitor['Height'];
$height = $monitor['Width'];
break;
}
switch ( $monitor['Orientation'] )
{
case '90' :
$tempY = $y;
$y = $height - $x;
$x = $tempY;
break;
case '180' :
$x = $width - $x;
$y = $height - $y;
break;
case '270' :
$tempX = $x;
$x = $width - $y;
$y = $tempX;
break;
case 'hori' :
$x = $width - $x;
break;
case 'vert' :
$y = $height - $y;
break;
}
//$ctrlCommand .= " --xcoord=$x --ycoord=$y --width=$width --height=$height";
$ctrlCommand .= " --xcoord=$x --ycoord=$y";
}
elseif ( $_REQUEST['control'] == "movePseudoMap" )
{
$x = deScale( $_REQUEST['x'], $_REQUEST['scale'] );
$y = deScale( $_REQUEST['y'], $_REQUEST['scale'] );
$halfWidth = $monitor['Width'] / 2;
$halfHeight = $monitor['Height'] / 2;
$xFactor = ($x - $halfWidth)/$halfWidth;
$yFactor = ($y - $halfHeight)/$halfHeight;
switch ( $monitor['Orientation'] )
{
case '90' :
$tempYFactor = $y;
$yFactor = -$xFactor;
$xFactor = $tempYFactor;
break;
case '180' :
$xFactor = -$xFactor;
$yFactor = -$yFactor;
break;
case '270' :
$tempXFactor = $x;
$xFactor = -$yFactor;
$yFactor = $tempXFactor;
break;
case 'hori' :
$xFactor = -$xFactor;
break;
case 'vert' :
$yFactor = -$yFactor;
break;
}
$turbo = 0.9; // Threshold for turbo speed
$blind = 0.1; // Threshold for blind spot
$panControl = '';
$tiltControl = '';
if ( $xFactor > $blind )
{
$panControl = 'Right';
}
elseif ( $xFactor < -$blind )
{
$panControl = 'Left';
}
if ( $yFactor > $blind )
{
$tiltControl = 'Down';
}
elseif ( $yFactor < -$blind )
{
$tiltControl = 'Up';
}
$dirn = $tiltControl.$panControl;
if ( !$dirn )
{
// No command, probably in blind spot in middle
$_REQUEST['control'] = 'null';
return( false );
}
else
{
$_REQUEST['control'] = 'moveRel'.$dirn;
$xFactor = abs($xFactor);
$yFactor = abs($yFactor);
if ( $monitor['HasPanSpeed'] && $xFactor )
{
if ( $monitor['HasTurboPan'] )
{
if ( $xFactor >= $turbo )
{
$panSpeed = $monitor['TurboPanSpeed'];
}
else
{
$xFactor = $xFactor/$turbo;
$panSpeed = intval(round($monitor['MinPanSpeed']+(($monitor['MaxPanSpeed']-$monitor['MinPanSpeed'])*$xFactor)));
}
}
else
{
$panSpeed = intval(round($monitor['MinPanSpeed']+(($monitor['MaxPanSpeed']-$monitor['MinPanSpeed'])*$xFactor)));
}
}
if ( $monitor['HasTiltSpeed'] && $yFactor )
{
if ( $monitor['HasTurboTilt'] )
{
if ( $yFactor >= $turbo )
{
$tiltSpeed = $monitor['TurboTiltSpeed'];
}
else
{
$yFactor = $yFactor/$turbo;
$tiltSpeed = intval(round($monitor['MinTiltSpeed']+(($monitor['MaxTiltSpeed']-$monitor['MinTiltSpeed'])*$yFactor)));
}
}
else
{
$tiltSpeed = intval(round($monitor['MinTiltSpeed']+(($monitor['MaxTiltSpeed']-$monitor['MinTiltSpeed'])*$yFactor)));
}
}
if ( preg_match( '/(Left|Right)$/', $dirn ) )
{
$panStep = intval(round($monitor['MinPanStep']+(($monitor['MaxPanStep']-$monitor['MinPanStep'])*$xFactor)));
$ctrlCommand .= " --panstep=".$panStep." --panspeed=".$panSpeed;
}
if ( preg_match( '/^(Up|Down)/', $dirn ) )
{
$tiltStep = intval(round($monitor['MinTiltStep']+(($monitor['MaxTiltStep']-$monitor['MinTiltStep'])*$yFactor)));
$ctrlCommand .= " --tiltstep=".$tiltStep." --tiltspeed=".$tiltSpeed;
}
}
}
elseif ( $_REQUEST['control'] == "moveConMap" )
{
$x = deScale( $_REQUEST['x'], $_REQUEST['scale'] );
$y = deScale( $_REQUEST['y'], $_REQUEST['scale'] );
$halfWidth = $monitor['Width'] / 2;
$halfHeight = $monitor['Height'] / 2;
$xFactor = ($x - $halfWidth)/$halfWidth;
$yFactor = ($y - $halfHeight)/$halfHeight;
switch ( $monitor['Orientation'] )
{
case '90' :
$tempYFactor = $y;
$yFactor = -$xFactor;
$xFactor = $tempYFactor;
break;
case '180' :
$xFactor = -$xFactor;
$yFactor = -$yFactor;
break;
case '270' :
$tempXFactor = $x;
$xFactor = -$yFactor;
$yFactor = $tempXFactor;
break;
case 'hori' :
$xFactor = -$xFactor;
break;
case 'vert' :
$yFactor = -$yFactor;
break;
}
$slow = 0.9; // Threshold for slow speed/timeouts
$turbo = 0.9; // Threshold for turbo speed
$blind = 0.1; // Threshold for blind spot
$panControl = '';
$tiltControl = '';
if ( $xFactor > $blind )
{
$panControl = 'Right';
}
elseif ( $xFactor < -$blind )
{
$panControl = 'Left';
}
if ( $yFactor > $blind )
{
$tiltControl = 'Down';
}
elseif ( $yFactor < -$blind )
{
$tiltControl = 'Up';
}
$dirn = $tiltControl.$panControl;
if ( !$dirn )
{
// No command, probably in blind spot in middle
$_REQUEST['control'] = 'moveStop';
}
else
{
$_REQUEST['control'] = 'moveCon'.$dirn;
$xFactor = abs($xFactor);
$yFactor = abs($yFactor);
if ( $monitor['HasPanSpeed'] && $xFactor )
{
if ( $monitor['HasTurboPan'] )
{
if ( $xFactor >= $turbo )
{
$panSpeed = $monitor['TurboPanSpeed'];
}
else
{
$xFactor = $xFactor/$turbo;
$panSpeed = intval(round($monitor['MinPanSpeed']+(($monitor['MaxPanSpeed']-$monitor['MinPanSpeed'])*$xFactor)));
}
}
else
{
$panSpeed = intval(round($monitor['MinPanSpeed']+(($monitor['MaxPanSpeed']-$monitor['MinPanSpeed'])*$xFactor)));
}
}
if ( $monitor['HasTiltSpeed'] && $yFactor )
{
if ( $monitor['HasTurboTilt'] )
{
if ( $yFactor >= $turbo )
{
$tiltSpeed = $monitor['TurboTiltSpeed'];
}
else
{
$yFactor = $yFactor/$turbo;
$tiltSpeed = intval(round($monitor['MinTiltSpeed']+(($monitor['MaxTiltSpeed']-$monitor['MinTiltSpeed'])*$yFactor)));
}
}
else
{
$tiltSpeed = intval(round($monitor['MinTiltSpeed']+(($monitor['MaxTiltSpeed']-$monitor['MinTiltSpeed'])*$yFactor)));
}
}
if ( preg_match( '/(Left|Right)$/', $dirn ) )
{
$ctrlCommand .= " --panspeed=".$panSpeed;
}
if ( preg_match( '/^(Up|Down)/', $dirn ) )
{
$ctrlCommand .= " --tiltspeed=".$tiltSpeed;
}
if ( $monitor['AutoStopTimeout'] )
{
$slowPanSpeed = intval(round($monitor['MinPanSpeed']+(($monitor['MaxPanSpeed']-$monitor['MinPanSpeed'])*$slow)));
$slowTiltSpeed = intval(round($monitor['MinTiltSpeed']+(($monitor['MaxTiltSpeed']-$monitor['MinTiltSpeed'])*$slow)));
if ( (!isset($panSpeed) || ($panSpeed < $slowPanSpeed)) && (!isset($tiltSpeed) || ($tiltSpeed < $slowTiltSpeed)) )
{
$ctrlCommand .= " --autostop";
}
}
}
}
else
{
$slow = 0.9; // Threshold for slow speed/timeouts
$turbo = 0.9; // Threshold for turbo speed
$long_y = 48;
$short_x = 32;
$short_y = 32;
if ( preg_match( '/^([a-z]+)([A-Z][a-z]+)([A-Z][a-z]+)$/', $_REQUEST['control'], $matches ) )
{
$command = $matches[1];
$mode = $matches[2];
$dirn = $matches[3];
switch( $command )
{
case 'focus' :
{
switch( $dirn )
{
case 'Near' :
{
$factor = ($long_y-($y+1))/$long_y;
break;
}
case 'Far' :
{
$factor = ($y+1)/$long_y;
break;
}
}
if ( $monitor['HasFocusSpeed'] )
{
$speed = intval(round($monitor['MinFocusSpeed']+(($monitor['MaxFocusSpeed']-$monitor['MinFocusSpeed'])*$factor)));
$ctrlCommand .= " --speed=".$speed;
}
switch( $mode )
{
case 'Abs' :
case 'Rel' :
{
$step = intval(round($monitor['MinFocusStep']+(($monitor['MaxFocusStep']-$monitor['MinFocusStep'])*$factor)));
$ctrlCommand .= " --step=".$step;
break;
}
case 'Con' :
{
if ( $monitor['AutoStopTimeout'] )
{
$slowSpeed = intval(round($monitor['MinFocusSpeed']+(($monitor['MaxFocusSpeed']-$monitor['MinFocusSpeed'])*$slow)));
if ( $speed < $slowSpeed )
{
$ctrlCommand .= " --autostop";
}
}
break;
}
}
break;
}
case 'zoom' :
{
switch( $dirn )
{
case 'Tele' :
{
$factor = ($long_y-($y+1))/$long_y;
break;
}
case 'Wide' :
{
$factor = ($y+1)/$long_y;
break;
}
}
if ( $monitor['HasZoomSpeed'] )
{
$speed = intval(round($monitor['MinZoomSpeed']+(($monitor['MaxZoomSpeed']-$monitor['MinZoomSpeed'])*$factor)));
$ctrlCommand .= " --speed=".$speed;
}
switch( $mode )
{
case 'Abs' :
case 'Rel' :
{
$step = intval(round($monitor['MinZoomStep']+(($monitor['MaxZoomStep']-$monitor['MinZoomStep'])*$factor)));
$ctrlCommand .= " --step=".$step;
break;
}
case 'Con' :
{
if ( $monitor['AutoStopTimeout'] )
{
$slowSpeed = intval(round($monitor['MinZoomSpeed']+(($monitor['MaxZoomSpeed']-$monitor['MinZoomSpeed'])*$slow)));
if ( $speed < $slowSpeed )
{
$ctrlCommand .= " --autostop";
}
}
break;
}
}
break;
}
case 'iris' :
{
switch( $dirn )
{
case 'Open' :
{
$factor = ($long_y-($y+1))/$long_y;
break;
}
case 'Close' :
{
$factor = ($y+1)/$long_y;
break;
}
}
if ( $monitor['HasIrisSpeed'] )
{
$speed = intval(round($monitor['MinIrisSpeed']+(($monitor['MaxIrisSpeed']-$monitor['MinIrisSpeed'])*$factor)));
$ctrlCommand .= " --speed=".$speed;
}
switch( $mode )
{
case 'Abs' :
case 'Rel' :
{
$step = intval(round($monitor['MinIrisStep']+(($monitor['MaxIrisStep']-$monitor['MinIrisStep'])*$factor)));
$ctrlCommand .= " --step=".$step;
break;
}
}
break;
}
case 'white' :
{
switch( $dirn )
{
case 'In' :
{
$factor = ($long_y-($y+1))/$long_y;
break;
}
case 'Out' :
{
$factor = ($y+1)/$long_y;
break;
}
}
if ( $monitor['HasWhiteSpeed'] )
{
$speed = intval(round($monitor['MinWhiteSpeed']+(($monitor['MaxWhiteSpeed']-$monitor['MinWhiteSpeed'])*$factor)));
$ctrlCommand .= " --speed=".$speed;
}
switch( $mode )
{
case 'Abs' :
case 'Rel' :
{
$step = intval(round($monitor['MinWhiteStep']+(($monitor['MaxWhiteStep']-$monitor['MinWhiteStep'])*$factor)));
$ctrlCommand .= " --step=".$step;
break;
}
}
break;
}
case 'gain' :
{
switch( $dirn )
{
case 'Up' :
{
$factor = ($long_y-($y+1))/$long_y;
break;
}
case 'Down' :
{
$factor = ($y+1)/$long_y;
break;
}
}
if ( $monitor['HasGainSpeed'] )
{
$speed = intval(round($monitor['MinGainSpeed']+(($monitor['MaxGainSpeed']-$monitor['MinGainSpeed'])*$factor)));
$ctrlCommand .= " --speed=".$speed;
}
switch( $mode )
{
case 'Abs' :
case 'Rel' :
{
$step = intval(round($monitor['MinGainStep']+(($monitor['MaxGainStep']-$monitor['MinGainStep'])*$factor)));
$ctrlCommand .= " --step=".$step;
break;
}
}
break;
}
case 'move' :
{
$xFactor = 0;
$yFactor = 0;
if ( preg_match( '/^Up/', $dirn ) )
{
$yFactor = ($short_y-($y+1))/$short_y;
}
elseif ( preg_match( '/^Down/', $dirn ) )
{
$yFactor = ($y+1)/$short_y;
}
if ( preg_match( '/Left$/', $dirn ) )
{
$xFactor = ($short_x-($x+1))/$short_x;
}
elseif ( preg_match( '/Right$/', $dirn ) )
{
$xFactor = ($x+1)/$short_x;
}
if ( $monitor['Orientation'] != '0' )
{
$conversions = array(
'90' => array(
'Up' => 'Left',
'Down' => 'Right',
'Left' => 'Down',
'Right' => 'Up',
'UpLeft' => 'DownLeft',
'UpRight' => 'UpLeft',
'DownLeft' => 'DownRight',
'DownRight' => 'UpRight',
),
'180' => array(
'Up' => 'Down',
'Down' => 'Up',
'Left' => 'Right',
'Right' => 'Left',
'UpLeft' => 'DownRight',
'UpRight' => 'DownLeft',
'DownLeft' => 'UpRight',
'DownRight' => 'UpLeft',
),
'270' => array(
'Up' => 'Right',
'Down' => 'Left',
'Left' => 'Up',
'Right' => 'Down',
'UpLeft' => 'UpRight',
'UpRight' => 'DownRight',
'DownLeft' => 'UpLeft',
'DownRight' => 'DownLeft',
),
'hori' => array(
'Up' => 'Up',
'Down' => 'Down',
'Left' => 'Right',
'Right' => 'Left',
'UpLeft' => 'UpRight',
'UpRight' => 'UpLeft',
'DownLeft' => 'DownRight',
'DownRight' => 'DownLeft',
),
'vert' => array(
'Up' => 'Down',
'Down' => 'Up',
'Left' => 'Left',
'Right' => 'Right',
'UpLeft' => 'DownLeft',
'UpRight' => 'DownRight',
'DownLeft' => 'UpLeft',
'DownRight' => 'UpRight',
),
);
$new_dirn = $conversions[$monitor['Orientation']][$dirn];
$_REQUEST['control'] = preg_replace( "/_$dirn\$/", "_$new_dirn", $_REQUEST['control'] );
$dirn = $new_dirn;
}
if ( $monitor['HasPanSpeed'] && $xFactor )
{
if ( $monitor['HasTurboPan'] )
{
if ( $xFactor >= $turbo )
{
$panSpeed = $monitor['TurboPanSpeed'];
}
else
{
$xFactor = $xFactor/$turbo;
$panSpeed = intval(round($monitor['MinPanSpeed']+(($monitor['MaxPanSpeed']-$monitor['MinPanSpeed'])*$xFactor)));
}
}
else
{
$panSpeed = intval(round($monitor['MinPanSpeed']+(($monitor['MaxPanSpeed']-$monitor['MinPanSpeed'])*$xFactor)));
}
$ctrlCommand .= " --panspeed=".$panSpeed;
}
if ( $monitor['HasTiltSpeed'] && $yFactor )
{
if ( $monitor['HasTurboTilt'] )
{
if ( $yFactor >= $turbo )
{
$tiltSpeed = $monitor['TurboTiltSpeed'];
}
else
{
$yFactor = $yFactor/$turbo;
$tiltSpeed = intval(round($monitor['MinTiltSpeed']+(($monitor['MaxTiltSpeed']-$monitor['MinTiltSpeed'])*$yFactor)));
}
}
else
{
$tiltSpeed = intval(round($monitor['MinTiltSpeed']+(($monitor['MaxTiltSpeed']-$monitor['MinTiltSpeed'])*$yFactor)));
}
$ctrlCommand .= " --tiltspeed=".$tiltSpeed;
}
switch( $mode )
{
case 'Rel' :
case 'Abs' :
{
if ( preg_match( '/(Left|Right)$/', $dirn ) )
{
$panStep = intval(round($monitor['MinPanStep']+(($monitor['MaxPanStep']-$monitor['MinPanStep'])*$xFactor)));
$ctrlCommand .= " --panstep=".$panStep;
}
if ( preg_match( '/^(Up|Down)/', $dirn ) )
{
$tiltStep = intval(round($monitor['MinTiltStep']+(($monitor['MaxTiltStep']-$monitor['MinTiltStep'])*$yFactor)));
$ctrlCommand .= " --tiltstep=".$tiltStep;
}
break;
}
case 'Con' :
{
if ( $monitor['AutoStopTimeout'] )
{
$slowPanSpeed = intval(round($monitor['MinPanSpeed']+(($monitor['MaxPanSpeed']-$monitor['MinPanSpeed'])*$slow)));
$slowTiltSpeed = intval(round($monitor['MinTiltSpeed']+(($monitor['MaxTiltSpeed']-$monitor['MinTiltSpeed'])*$slow)));
if ( (!isset($panSpeed) || ($panSpeed < $slowPanSpeed)) && (!isset($tiltSpeed) || ($tiltSpeed < $slowTiltSpeed)) )
{
$ctrlCommand .= " --autostop";
}
}
break;
}
}
}
}
}
}
}
else
{
if ( preg_match( '/^presetGoto(\d+)$/', $_REQUEST['control'], $matches ) )
{
$_REQUEST['control'] = 'presetGoto';
$ctrlCommand .= " --preset=".$matches[1];
}
elseif ( $_REQUEST['control'] == "presetGoto" && !empty($_REQUEST['preset']) )
{
$ctrlCommand .= " --preset=".$_REQUEST['preset'];
}
elseif ( $_REQUEST['control'] == "presetSet" )
{
if ( canEdit( 'Control' ) )
{
$preset = validInt($_REQUEST['preset']);
$newLabel = validJsStr($_REQUEST['newLabel']);
$row = dbFetchOne( "select * from ControlPresets where MonitorId = '".$monitor['Id']."' and Preset = '".dbEscape($preset)."'" );
if ( $newLabel != $row['Label'] )
{
if ( $newLabel )
$sql = "replace into ControlPresets ( MonitorId, Preset, Label ) values ( '".$monitor['Id']."', '".dbEscape($preset)."', '".dbEscape($newLabel)."' )";
else
$sql = "delete from ControlPresets where MonitorId = '".$monitor['Id']."' and Preset = '".dbEscape($preset)."'";
dbQuery( $sql );
}
$ctrlCommand .= " --preset=".$preset;
}
$ctrlCommand .= " --preset=".$preset;
}
elseif ( $_REQUEST['control'] == "moveMap" )
{
$ctrlCommand .= " --xcoord=$x --ycoord=$y";
}
}
$ctrlCommand .= " --command=".$_REQUEST['control'];
return( $ctrlCommand );
}

View File

@ -1,350 +0,0 @@
<?php
//
// ZoneMinder web database interface file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
define( "DB_LOG_OFF", 0 );
define( "DB_LOG_ONLY", 1 );
define( "DB_LOG_DEBUG", 2 );
$GLOBALS['dbLogLevel'] = DB_LOG_OFF;
$GLOBALS['dbConn'] = false;
function dbConnect()
{
global $dbConn;
$dbConn = mysql_pconnect( ZM_DB_HOST, ZM_DB_USER, ZM_DB_PASS ) or die( "Could not connect to database: ".mysql_error() );
mysql_select_db( ZM_DB_NAME, $dbConn ) or die( "Could not select database: ".mysql_error() );
}
dbConnect();
function dbDisconnect()
{
global $dbConn;
mysql_close( $dbConn ) or die( "Could not disconnect from database" );
}
function dbLogOff()
{
global $dbLogLevel;
$dbLogLevel = DB_LOG_OFF;
}
function dbLogOn()
{
global $dbLogLevel;
$dbLogLevel = DB_LOG_ONLY;
}
function dbLogDebug()
{
global $dbLogLevel;
$dbLogLevel = DB_LOG_DEBUG;
}
function dbDebug()
{
dbLogDebug();
}
function dbLog( $sql, $update=false )
{
global $dbLogLevel;
$noExecute = $update && ($dbLogLevel >= DB_LOG_DEBUG);
if ( $dbLogLevel > DB_LOG_OFF )
Debug( "SQL-LOG: $sql".($noExecute?" (not executed)":"") );
return( $noExecute );
}
function dbError( $sql )
{
Fatal( "SQL-ERR '".mysql_error()."', statement was '".$sql."'" );
}
function dbEscape( $string )
{
if ( version_compare( phpversion(), "4.3.0", "<") )
if ( get_magic_quotes_gpc() )
return( mysql_escape_string( stripslashes( $string ) ) );
else
return( mysql_escape_string( $string ) );
else
if ( get_magic_quotes_gpc() )
return( mysql_real_escape_string( stripslashes( $string ) ) );
else
return( mysql_real_escape_string( $string ) );
}
function dbQuery( $sql )
{
if ( dbLog( $sql, true ) )
return;
if (!($result = mysql_query( $sql )))
dbError( $sql );
return( $result );
}
function dbFetchOne( $sql, $col=false )
{
dbLog( $sql );
if (!($result = mysql_query( $sql )))
dbError( $sql );
if ( $dbRow = mysql_fetch_assoc( $result ) )
return( $col?$dbRow[$col]:$dbRow );
return( false );
}
function dbFetchAll( $sql, $col=false )
{
dbLog( $sql );
if (!($result = mysql_query( $sql )))
dbError( $sql );
$dbRows = array();
while( $dbRow = mysql_fetch_assoc( $result ) )
$dbRows[] = $col?$dbRow[$col]:$dbRow;
return( $dbRows );
}
function dbFetchAssoc( $sql, $indexCol, $dataCol=false )
{
dbLog( $sql );
if (!($result = mysql_query( $sql )))
dbError( $sql );
$dbRows = array();
while( $dbRow = mysql_fetch_assoc( $result ) )
$dbRows[$dbRow[$indexCol]] = $dataCol?$dbRow[$dataCol]:$dbRow;
return( $dbRows );
}
function dbFetch( $sql, $col=false )
{
return( dbFetchAll( $sql, $col ) );
}
function dbFetchNext( $result, $col=false )
{
if ( $dbRow = mysql_fetch_assoc( $result ) )
return( $col?$dbRow[$col]:$dbRow );
return( false );
}
function dbNumRows( $sql )
{
dbLog( $sql );
if (!($result = mysql_query( $sql )))
dbError( $sql );
return( mysql_num_rows( $result ) );
}
function dbInsertId()
{
return( mysql_insert_id() );
}
function getEnumValues( $table, $column )
{
$row = dbFetchOne( "describe $table $column" );
preg_match_all( "/'([^']+)'/", $row['Type'], $matches );
return( $matches[1] );
}
function getSetValues( $table, $column )
{
return( getEnumValues( $table, $column ) );
}
function getUniqueValues( $table, $column, $asString=1 )
{
$values = array();
$sql = "select distinct $column from $table where (not isnull($column) and $column != '') order by $column";
foreach( dbFetchAll( $sql ) as $row )
{
if ( $asString )
$values[$row[$column]] = $row[$column];
else
$values[] = $row[$column];
}
return( $values );
}
function getTableColumns( $table, $asString=1 )
{
$columns = array();
$table = dbEscape($table);
$sql = "describe $table";
foreach( dbFetchAll( $sql ) as $row )
{
if ( $asString )
$columns[$row['Field']] = $row['Type'];
else
$columns[] = $row['Type'];
}
return( $columns );
}
function getTableAutoInc( $table )
{
$sql = "show table status where Name = '".dbEscape($table)."'";
$row = dbFetchOne( $sql );
return( $row['Auto_increment'] );
}
function getTableDescription( $table, $asString=1 )
{
$columns = array();
$table = dbEscape($table);
$sql = "describe $table";
foreach( dbFetchAll( $sql ) as $row )
{
$desc = array(
'name' => $row['Field'],
'required' => ($row['Null']=='NO')?true:false,
'default' => $row['Default'],
'db' => $row,
);
if ( preg_match( "/^varchar\((\d+)\)$/", $row['Type'], $matches ) )
{
$desc['type'] = 'text';
$desc['typeAttrib'] = 'varchar';
$desc['maxLength'] = $matches[1];
}
elseif ( preg_match( "/^(\w+)?text$/", $row['Type'], $matches ) )
{
$desc['type'] = 'text';
if (!empty($matches[1]) )
$desc['typeAttrib'] = $matches[1];
switch ( $matches[1] )
{
case 'tiny' :
$desc['maxLength'] = 255;
break;
case 'medium' :
$desc['maxLength'] = 32768;
break;
case '' :
case 'big' :
//$desc['minLength'] = -128;
break;
default :
Error( "Unexpected text qualifier '".$matches[1]."' found for field '".$row['Field']."' in table '".$table."'" );
break;
}
}
elseif ( preg_match( "/^(enum|set)\((.*)\)$/", $row['Type'], $matches ) )
{
$desc['type'] = 'text';
$desc['typeAttrib'] = $matches[1];
preg_match_all( "/'([^']+)'/", $matches[2], $matches );
$desc['values'] = $matches[1];
}
elseif ( preg_match( "/^(\w+)?int\(\d+\)(?:\s+(unsigned))?$/", $row['Type'], $matches ) )
{
$desc['type'] = 'integer';
switch ( $matches[1] )
{
case 'tiny' :
$desc['minValue'] = -128;
$desc['maxValue'] = 127;
break;
case 'small' :
$desc['minValue'] = -32768;
$desc['maxValue'] = 32767;
break;
case 'medium' :
$desc['minValue'] = -8388608;
$desc['maxValue'] = 8388607;
break;
case '' :
$desc['minValue'] = -2147483648;
$desc['maxValue'] = 2147483647;
break;
case 'big' :
//$desc['minValue'] = -128;
//$desc['maxValue'] = 127;
break;
default :
Error( "Unexpected integer qualifier '".$matches[1]."' found for field '".$row['Field']."' in table '".$table."'" );
break;
}
if ( !empty($matches[1]) )
$desc['typeAttrib'] = $matches[1];
if ( $desc['unsigned'] = ( isset($matches[2]) && $matches[2] == 'unsigned' ) )
{
$desc['maxValue'] += (-$desc['minValue']);
$desc['minValue'] = 0;
}
}
elseif ( preg_match( "/^(?:decimal|numeric)\((\d+)(?:,(\d+))?\)(?:\s+(unsigned))?$/", $row['Type'], $matches ) )
{
$desc['type'] = 'fixed';
$desc['range'] = $matches[1];
if ( isset($matches[2]) )
$desc['precision'] = $matches[2];
else
$desc['precision'] = 0;
$desc['unsigned'] = ( isset($matches[3]) && $matches[3] == 'unsigned' );
}
elseif ( preg_match( "/^(datetime|timestamp|date|time)$/", $row['Type'], $matches ) )
{
$desc['type'] = 'datetime';
switch ( $desc['typeAttrib'] = $matches[1] )
{
case 'datetime' :
case 'timestamp' :
$desc['hasDate'] = true;
$desc['hasTime'] = true;
break;
case 'date' :
$desc['hasDate'] = true;
$desc['hasTime'] = false;
break;
case 'time' :
$desc['hasDate'] = false;
$desc['hasTime'] = true;
break;
}
}
else
{
Error( "Can't parse database type '".$row['Type']."' found for field '".$row['Field']."' in table '".$table."'" );
}
if ( $asString )
$columns[$row['Field']] = $desc;
else
$columns[] = $desc;
}
return( $columns );
}
function dbFetchMonitor( $mid )
{
return( dbFetchOne( "select * from Monitors where Id = '".dbEscape($mid)."'" ) );
}
function dbFetchGroup( $gid )
{
return( dbFetchOne( "select * from Groups where Id = '".dbEscape($gid)."'" ) );
}
?>

File diff suppressed because it is too large Load Diff

View File

@ -1,46 +0,0 @@
<?php
//
// ZoneMinder web language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
function loadLanguage( $prefix="" )
{
global $user;
if ( $prefix )
$prefix = $prefix.'/';
$fallbackLangFile = $prefix.'lang/en_gb.php';
$systemLangFile = $prefix.'lang/'.ZM_LANG_DEFAULT.'.php';
if ( isset($user['Language']) )
$userLangFile = $prefix.$user['Language'].'.php';
if ( isset($userLangFile) && file_exists( $userLangFile ) )
return( $userLangFile );
elseif ( file_exists( $systemLangFile ) )
return( $systemLangFile );
elseif ( file_exists( $fallbackLangFile ) )
return( $fallbackLangFile );
else
return( false );
}
if ( $langFile = loadLanguage() )
require_once( $langFile );
?>

View File

@ -1,586 +0,0 @@
<?php
require_once( 'config.php' );
class Logger
{
private static $instance;
const DEBUG = 1;
const INFO = 0;
const WARNING = -1;
const ERROR = -2;
const FATAL = -3;
const PANIC = -4;
const NOLOG = -5; // Special artificial level to prevent logging
private $initialised = false;
private $id = "web";
private $idRoot = "web";
private $idArgs = "";
private $useErrorLog = true;
private $level = self::INFO;
private $termLevel = self::NOLOG;
private $databaseLevel = self::NOLOG;
private $fileLevel = self::NOLOG;
private $weblogLevel = self::NOLOG;
private $syslogLevel = self::NOLOG;
private $effectiveLevel = self::NOLOG;
private $hasTerm = false;
private $logPath = ZM_PATH_LOGS;
private $logFile = "";
private $logFd = NULL;
public static $codes = array(
self::DEBUG => "DBG",
self::INFO => "INF",
self::WARNING => "WAR",
self::ERROR => "ERR",
self::FATAL => "FAT",
self::PANIC => "PNC",
self::NOLOG => "OFF",
);
private static $syslogPriorities = array(
self::DEBUG => LOG_DEBUG,
self::INFO => LOG_INFO,
self::WARNING => LOG_WARNING,
self::ERROR => LOG_ERR,
self::FATAL => LOG_ERR,
self::PANIC => LOG_ERR,
);
private static $phpErrorLevels = array(
self::DEBUG => E_USER_NOTICE,
self::INFO => E_USER_NOTICE,
self::WARNING => E_USER_WARNING,
self::ERROR => E_USER_WARNING,
self::FATAL => E_USER_ERROR,
self::PANIC => E_USER_ERROR,
);
private function __construct()
{
$this->hasTerm = (php_sapi_name() == 'cli' && empty($_SERVER['REMOTE_ADDR']));
$this->logFile = $this->logPath."/".$this->id.".log";
}
public function __destruct()
{
$this->terminate();
}
public function initialise( $options=array() )
{
if ( !empty($options['id']) )
$this->id = $options['id'];
//if ( isset($options['useErrorLog']) )
//$this->useErrorLog = $options['useErrorLog'];
if ( isset($options['logPath']) )
{
$this->logPath = $options['logPath'];
$tempLogFile = $this->logPath."/".$this->id.".log";
}
if ( isset($options['logFile']) )
$tempLogFile = $options['logFile'];
else
$tempLogFile = $this->logPath."/".$this->id.".log";
if ( !is_null($logFile = $this->getTargettedEnv('LOG_FILE')) )
$tempLogFile = $logFile;
$tempLevel = self::INFO;
$tempTermLevel = $this->termLevel;
$tempDatabaseLevel = $this->databaseLevel;
$tempFileLevel = $this->fileLevel;
$tempSyslogLevel = $this->syslogLevel;
$tempWeblogLevel = $this->weblogLevel;
if ( isset($options['termLevel']) )
$tempTermLevel = $options['termLevel'];
if ( isset($options['databaseLevel']) )
$tempDatabaseLevel = $options['databaseLevel'];
else
$tempDatabaseLevel = ZM_LOG_LEVEL_DATABASE;
if ( isset($options['fileLevel']) )
$tempFileLevel = $options['fileLevel'];
else
$tempFileLevel = ZM_LOG_LEVEL_FILE;
if ( isset($options['weblogLevel']) )
$tempWeblogLevel = $options['weblogLevel'];
else
$tempWeblogLevel = ZM_LOG_LEVEL_WEBLOG;
if ( isset($options['syslogLevel']) )
$tempSyslogLevel = $options['syslogLevel'];
else
$tempSyslogLevel = ZM_LOG_LEVEL_SYSLOG;
if ( $value = getenv('LOG_PRINT') )
$tempTermLevel = $value ? self::DEBUG : self::NOLOG;
if ( !is_null($level = $this->getTargettedEnv('LOG_LEVEL')) )
$tempLevel = $level;
if ( !is_null($level = $this->getTargettedEnv('LOG_LEVEL_TERM')) )
$tempTermLevel = $level;
if ( !is_null($level = $this->getTargettedEnv('LOG_LEVEL_DATABASE')) )
$tempDatabaseLevel = $level;
if ( !is_null($level = $this->getTargettedEnv('LOG_LEVEL_FILE')) )
$tempFileLevel = $level;
if ( !is_null($level = $this->getTargettedEnv('LOG_LEVEL_SYSLOG')) )
$tempSyslogLevel = $level;
if ( !is_null($level = $this->getTargettedEnv('LOG_LEVEL_WEBLOG')) )
$tempWeblogLevel = $level;
if ( ZM_LOG_DEBUG )
{
foreach ( explode( '|', ZM_LOG_DEBUG_TARGET ) as $target )
{
if ( $target == $this->id || $target == "_".$this->id || $target == $this->idRoot || $target == "_".$this->idRoot || $target == "" )
{
if ( ZM_LOG_DEBUG_LEVEL > self::NOLOG )
{
$tempLevel = $this->limit( ZM_LOG_DEBUG_LEVEL );
if ( ZM_LOG_DEBUG_FILE != "" )
{
$tempLogFile = ZM_LOG_DEBUG_FILE;
$tempFileLevel = $tempLevel;
}
}
}
}
}
$this->logFile( $tempLogFile );
$this->termLevel( $tempTermLevel );
$this->databaseLevel( $tempDatabaseLevel );
$this->fileLevel( $tempFileLevel );
$this->syslogLevel( $tempSyslogLevel );
$this->weblogLevel( $tempWeblogLevel );
$this->level( $tempLevel );
$this->initialised = true;
Debug( "LogOpts: level=".self::$codes[$this->level]."/".self::$codes[$this->effectiveLevel].", screen=".self::$codes[$this->termLevel].", database=".self::$codes[$this->databaseLevel].", logfile=".self::$codes[$this->fileLevel]."->".$this->logFile.", weblog=".self::$codes[$this->weblogLevel].", syslog=".self::$codes[$this->syslogLevel] );
}
private function terminate()
{
if ( $this->initialised )
{
if ( $this->fileLevel > self::NOLOG )
$this->closeFile();
if ( $this->syslogLevel > self::NOLOG )
$this->closeSyslog();
}
$this->initialised = false;
}
private function limit( $level )
{
if ( $level > self::DEBUG )
return( self::DEBUG );
if ( $level < self::NOLOG )
return( self::NOLOG );
return( $level );
}
private function getTargettedEnv( $name )
{
$envName = $name."_".$this->id;
$value = getenv( $envName );
if ( $value === false && $this->id != $this->idRoot )
$value = getenv( $name."_".$this->idRoot );
if ( $value === false )
$value = getenv( $name );
return( $value !== false ? $value : NULL );
}
public static function fetch( $initialise=true )
{
if ( !isset(self::$instance) )
{
$class = __CLASS__;
self::$instance = new $class;
if ( $initialise )
self::$instance->initialise( array( 'id'=>'web_php', 'syslogLevel'=>self::INFO, 'weblogLevel'=>self::INFO ) );
}
return self::$instance;
}
public function id( $id=NULL )
{
if ( isset($id) && $this->id != $id )
{
// Remove whitespace
$id = preg_replace( '/\S/', '', $id );
// Replace non-alphanum with underscore
$id = preg_replace( '/[^a-zA-Z_]/', '_', $id );
if ( $this->id != $id )
{
$this->id = $this->idRoot = $id;
if ( preg_match( '/^([^_]+)_(.+)$/', $id, $matches ) )
{
$this->idRoot = $matches[1];
$this->idArgs = $matches[2];
}
}
}
return( $this->id );
}
public function level( $level )
{
if ( isset($level) )
{
$lastLevel = $this->level;
$this->level = $this->limit($level);
$this->effectiveLevel = self::NOLOG;
if ( $this->termLevel > $this->effectiveLevel )
$this->effectiveLevel = $this->termLevel;
if ( $this->databaseLevel > $this->effectiveLevel )
$this->effectiveLevel = $this->databaseLevel;
if ( $this->fileLevel > $this->effectiveLevel )
$this->effectiveLevel = $this->fileLevel;
if ( $this->weblogLevel > $this->effectiveLevel )
$this->effectiveLevel = $this->weblogLevel;
if ( $this->syslogLevel > $this->effectiveLevel )
$this->effectiveLevel = $this->syslogLevel;
if ( $this->effectiveLevel > $this->level )
$this->effectiveLevel = $this->level;
if ( !$this->hasTerm )
{
if ( $lastLevel < self::DEBUG && $this->level >= self::DEBUG )
{
$this->savedErrorReporting = error_reporting( E_ALL );
$this->savedDisplayErrors = ini_set( 'display_errors', true );
}
elseif ( $lastLevel >= self::DEBUG && $this->level < self::DEBUG )
{
error_reporting( $this->savedErrorReporting );
ini_set( 'display_errors', $this->savedDisplayErrors );
}
}
}
return( $this->level );
}
public function debugOn()
{
return( $this->effectiveLevel >= self::DEBUG );
}
public function termLevel( $termLevel )
{
if ( isset($termLevel) )
{
$termLevel = $this->limit($termLevel);
if ( $this->termLevel != $termLevel )
$this->termLevel = $termLevel;
}
return( $this->termLevel );
}
public function databaseLevel( $databaseLevel=NULL )
{
if ( !is_null($databaseLevel) )
{
$databaseLevel = $this->limit($databaseLevel);
if ( $this->databaseLevel != $databaseLevel )
{
$this->databaseLevel = $databaseLevel;
if ( $this->databaseLevel > self::NOLOG )
{
if ( (include_once 'database.php') === FALSE )
{
$this->databaseLevel = self::NOLOG;
Warning( "Unable to write log entries to DB, database.php not found" );
}
}
}
}
return( $this->databaseLevel );
}
public function fileLevel( $fileLevel )
{
if ( isset($fileLevel) )
{
$fileLevel = $this->limit($fileLevel);
if ( $this->fileLevel != $fileLevel )
{
if ( $this->fileLevel > self::NOLOG )
$this->closeFile();
$this->fileLevel = $fileLevel;
if ( $this->fileLevel > self::NOLOG )
$this->openFile();
}
}
return( $this->fileLevel );
}
public function weblogLevel( $weblogLevel )
{
if ( isset($weblogLevel) )
{
$weblogLevel = $this->limit($weblogLevel);
if ( $this->weblogLevel != $weblogLevel )
{
if ( $weblogLevel > self::NOLOG && $this->weblogLevel <= self::NOLOG )
{
$this->savedLogErrors = ini_set( 'log_errors', true );
}
elseif ( $weblogLevel <= self::NOLOG && $this->weblogLevel > self::NOLOG )
{
ini_set( 'log_errors', $this->savedLogErrors );
}
$this->weblogLevel = $weblogLevel;
}
}
return( $this->weblogLevel );
}
public function syslogLevel( $syslogLevel )
{
if ( isset($syslogLevel) )
{
$syslogLevel = $this->limit($syslogLevel);
if ( $this->syslogLevel != $syslogLevel )
{
if ( $this->syslogLevel > self::NOLOG )
$this->closeSyslog();
$this->syslogLevel = $syslogLevel;
if ( $this->syslogLevel > self::NOLOG )
$this->openSyslog();
}
}
return( $this->syslogLevel );
}
private function openSyslog()
{
openlog( $this->id, LOG_PID|LOG_NDELAY, LOG_LOCAL1 );
}
private function closeSyslog()
{
closelog();
}
private function logFile( $logFile )
{
if ( preg_match( '/^(.+)\+$/', $logFile, $matches ) )
$this->logFile = $matches[1].'.'.getmypid();
else
$this->logFile = $logFile;
}
private function openFile()
{
if ( !$this->useErrorLog )
{
if ( $this->logFd = fopen( $this->logFile, "a+" ) )
{
if ( strnatcmp( phpversion(), '5.2.0' ) >= 0 )
{
$error = error_get_last();
trigger_error( "Can't open log file '$logFile': ".$error['message']." @ ".$error['file']."/".$error['line'], E_USER_ERROR );
}
$this->fileLevel = self::NOLOG;
}
}
}
private function closeFile()
{
if ( $this->logFd )
fclose( $this->logFd );
}
public function logPrint( $level, $string, $file=NULL, $line=NULL )
{
if ( $level <= $this->effectiveLevel )
{
$string = preg_replace( '/[\r\n]+$/', '', $string );
$code = self::$codes[$level];
$time = gettimeofday();
$message = sprintf( "%s.%06d %s[%d].%s [%s]", strftime( "%x %H:%M:%S", $time['sec'] ), $time['usec'], $this->id, getmypid(), $code, $string );
if ( is_null( $file) )
{
if ( $this->useErrorLog || $this->databaseLevel > self::NOLOG )
{
$backTrace = debug_backtrace();
$file = $backTrace[1]['file'];
$line = $backTrace[1]['line'];
if ( $this->hasTerm )
$rootPath = getcwd();
else
$rootPath = $_SERVER['DOCUMENT_ROOT'];
$file = preg_replace( '/^'.addcslashes($rootPath,'/').'\/?/', '', $file );
}
}
if ( $this->useErrorLog )
$message .= " at ".$file." line ".$line;
else
$message = $message;
if ( $level <= $this->termLevel )
if ( $this->hasTerm )
print( $message."\n" );
else
print( preg_replace( "/\n/", '<br/>', htmlspecialchars($message) )."<br/>" );
if ( $level <= $this->fileLevel )
if ( $this->useErrorLog )
{
if ( !error_log( $message."\n", 3, $this->logFile ) )
{
if ( strnatcmp( phpversion(), '5.2.0' ) >= 0 )
{
$error = error_get_last();
trigger_error( "Can't write to log file '".$this->logFile."': ".$error['message']." @ ".$error['file']."/".$error['line'], E_USER_ERROR );
}
}
}
elseif ( $this->logFd )
fprintf( $this->logFd, $message."\n" );
$message = $code." [".$string."]";
if ( $level <= $this->syslogLevel )
syslog( self::$syslogPriorities[$level], $message );
if ( $level <= $this->databaseLevel )
{
$dbFile = is_null($file)?'NULL':"'".dbEscape($file)."'";
$dbLine = is_null($line)?'NULL':dbEscape($line);
$sql = "insert into Logs ( TimeKey, Component, Pid, Level, Code, Message, File, Line ) values ( ".sprintf( "%d.%06d", $time['sec'], $time['usec'] ).", '".dbEscape($this->id)."', ".getmypid().", ".dbEscape($level).", '".dbEscape($code)."', '".dbEscape($string)."', ".$dbFile.", ".$dbLine." )";
if (!($result = mysql_query( $sql )))
{
$this->databaseLevel = self::NOLOG;
Fatal( "Can't write log entry '$sql': ".mysql_error() );
}
}
// This has to be last as trigger_error can be fatal
if ( $level <= $this->weblogLevel )
{
if ( $this->useErrorLog )
error_log( $message, 0 );
else
trigger_error( $message, self::$phpErrorLevels[$level] );
}
}
}
};
function logInit( $options=array() )
{
$logger = Logger::fetch();
$logger->initialise( $options );
set_error_handler( 'ErrorHandler' );
}
function logToDatabase( $level=NULL )
{
return( Logger::fetch()->databaseLevel( $level ) );
}
function Mark( $level=Logger::DEBUG, $tag="Mark" )
{
Logger::fetch()->logPrint( $level, $tag );
}
function Dump( &$var, $label="VAR" )
{
ob_start();
print( $label." => " );
print_r( $var );
Logger::fetch()->logPrint( Logger::DEBUG, ob_get_clean() );
}
function Debug( $string )
{
Logger::fetch()->logPrint( Logger::DEBUG, $string );
}
function Info( $string )
{
Logger::fetch()->logPrint( Logger::INFO, $string );
}
function Warning( $string )
{
Logger::fetch()->logPrint( Logger::WARNING, $string );
}
function Error( $string )
{
Logger::fetch()->logPrint( Logger::ERROR, $string );
}
function Fatal( $string )
{
Logger::fetch()->logPrint( Logger::FATAL, $string );
die( $string );
}
function Panic( $string )
{
if ( true )
{
// Use builtin function
ob_start();
debug_print_backtrace();
$backtrace = "\n".ob_get_clean();
}
else
{
// Roll your own
$backtrace = '';
$frames = debug_backtrace();
for ( $i = 0; $i < count($frames); $i++ )
{
$frame = $frames[$i];
$backtrace .= sprintf( "\n#%d %s() at %s/%d", $i, $frame['function'], $frame['file'], $frame['line'] );
}
}
Logger::fetch()->logPrint( Logger::PANIC, $string.$backtrace );
die( $string );
}
function ErrorHandler( $error, $string, $file, $line )
{
if ( ! (error_reporting() & $error) )
{
// This error code is not included in error_reporting
return( false );
}
switch ( $error )
{
case E_USER_ERROR:
Logger::fetch()->logPrint( Logger::FATAL, $string, $file, $line );
break;
case E_USER_WARNING:
Logger::fetch()->logPrint( Logger::ERROR, $string, $file, $line );
break;
case E_USER_NOTICE:
Logger::fetch()->logPrint( Logger::WARNING, $string, $file, $line );
break;
default:
Panic( "Unknown error type: [$error] $string" );
break;
}
return( true );
}
?>

View File

@ -1,140 +0,0 @@
<?php
//
// ZoneMinder main web interface file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
error_reporting( E_ALL );
$debug = false;
if ( $debug )
{
// Use these for debugging, though not both at once!
phpinfo( INFO_VARIABLES );
//error_reporting( E_ALL );
}
// Use new style autoglobals where possible
if ( version_compare( phpversion(), "4.1.0", "<") )
{
$_SESSION = &$HTTP_SESSION_VARS;
$_SERVER = &$HTTP_SERVER_VARS;
}
// Useful debugging lines for mobile devices
if ( false )
{
ob_start();
phpinfo( INFO_VARIABLES );
$fp = fopen( "/tmp/env.html", "w" );
fwrite( $fp, ob_get_contents() );
fclose( $fp );
ob_end_clean();
}
if ( isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == 'on' )
{
$protocol = 'https';
}
else
{
$protocol = 'http';
}
define( "ZM_BASE_URL", $protocol.'://'.$_SERVER['HTTP_HOST'] );
if ( isset($_GET['skin']) )
$skin = $_GET['skin'];
elseif ( isset($_COOKIE['zmSkin']) )
$skin = $_COOKIE['zmSkin'];
else
$skin = "classic";
define( "ZM_BASE_PATH", dirname( $_SERVER['REQUEST_URI'] ) );
define( "ZM_SKIN_PATH", "skins/$skin" );
$skinBase = array(); // To allow for inheritance of skins
if ( !file_exists( ZM_SKIN_PATH ) )
Fatal( "Invalid skin '$skin'" );
require_once( ZM_SKIN_PATH.'/includes/init.php' );
$skinBase[] = $skin;
ini_set( "session.name", "ZMSESSID" );
session_start();
if ( !isset($_SESSION['skin']) || isset($_REQUEST['skin']) )
{
$_SESSION['skin'] = $skin;
setcookie( "zmSkin", $skin );
}
require_once( 'includes/config.php' );
require_once( 'includes/logger.php' );
if ( ZM_OPT_USE_AUTH )
if ( isset( $_SESSION['user'] ) )
$user = $_SESSION['user'];
else
unset( $user );
else
$user = $defaultUser;
require_once( 'includes/lang.php' );
require_once( 'includes/functions.php' );
if ( isset($_REQUEST['view']) )
$view = detaintPath($_REQUEST['view']);
if ( isset($_REQUEST['request']) )
$request = detaintPath($_REQUEST['request']);
if ( isset($_REQUEST['action']) )
$action = detaintPath($_REQUEST['action']);
require_once( 'includes/actions.php' );
foreach ( getSkinIncludes( 'skin.php' ) as $includeFile )
require_once $includeFile;
if ( isset( $_REQUEST['request'] ) )
{
foreach ( getSkinIncludes( 'ajax/'.$request.'.php', true, true ) as $includeFile )
{
if ( !file_exists( $includeFile ) )
Fatal( "Request '$request' does not exist" );
require_once $includeFile;
}
return;
}
else
{
if ( $includeFiles = getSkinIncludes( 'views/'.$view.'.php', true, true ) )
{
foreach ( $includeFiles as $includeFile )
{
if ( !file_exists( $includeFile ) )
Fatal( "View '$view' does not exist" );
require_once $includeFile;
}
}
if ( !$includeFiles || $view == 'error' )
{
foreach ( getSkinIncludes( 'views/error.php', true, true ) as $includeFile )
require_once $includeFile;
}
}
?>

View File

@ -1,8 +0,0 @@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/js
dist_web_DATA = \
logger.js \
overlay.js \
mootools.ext.js

View File

@ -1,421 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/js
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/js
dist_web_DATA = \
logger.js \
overlay.js \
mootools.ext.js
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/js/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/js/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-dist_webDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-dist_webDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
install-dist_webDATA install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am uninstall uninstall-am uninstall-dist_webDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,116 +0,0 @@
//
// ZoneMinder logger javascript file, $Date: 2011-05-27 22:24:17 +0100 (Fri, 27 May 2011) $, $Revision: 3374 $
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
if ( !window.console )
{
window.console =
{
init:function() {},
log:function() {},
debug:function() {},
info:function() {},
warn:function() {},
error:function() {}
};
}
if ( !console.debug )//IE8 has console but doesn't have console.debug so lets alias it.
console.debug = console.log;
var reportLogs = true;
var debugParms;
var debugReq;
function logReport( level, message, file, line )
{
if ( !reportLogs )
return;
if ( typeof(MooTools) == "undefined" )
return;
if ( arguments && arguments.callee && arguments.callee.caller && arguments.callee.caller.name )
message += ' - '+arguments.callee.caller.caller.name+'()';
if ( !debugReq )
{
debugParms = "view=request&request=log&task=create&browser[name]="+Browser.name+"&browser[version]="+Browser.version+"&browser[platform]="+Browser.Platform.name;
debugReq = new Request.JSON( { url: thisUrl, method: 'post', timeout: AJAX_TIMEOUT, link: 'chain' } );
}
var requestParms = debugParms;
requestParms += "&level="+level+"&message="+encodeURIComponent(message);
if ( file )
requestParms += "&file="+file;
else
requestParms += "&file="+location.search;
if ( line )
requestParms += "&line="+line;
debugReq.send( requestParms );
}
function Panic( message )
{
console.error( message );
logReport( "PNC", message );
alert( "PANIC: "+message );
}
function Fatal( message )
{
console.error( message );
logReport( "FAT", message );
alert( "FATAL: "+message );
}
function Error( message )
{
console.error( message );
logReport( "ERR", message );
}
function Warning( message )
{
console.warn( message );
logReport( "WAR", message );
}
function Info( message )
{
console.info( message );
logReport( "INF", message );
}
function Debug( message )
{
console.debug( message );
//logReport( "DBG", message );
}
function Dump( value, label )
{
if ( label )
console.debug( label+" => " );
console.debug( value );
}
window.onerror =
function( message, url, line )
{
logReport( "ERR", message, url, line );
}

View File

@ -1,20 +0,0 @@
/*
* MooTools Extension script to support custom extensions to mootools
*/
var zmMooToolsVersion = '1.3.2';
/*
* Firstly, lets check that mootools has been included and thus is present
*/
if ( typeof(MooTools) == "undefined" )
{
alert( "MooTools not found! Please check that it was installed correctly in ZoneMinder web root." );
}
else
{
/* Version check */
if ( MooTools.version < zmMooToolsVersion )
{
alert( "MooTools version "+MooTools.version+" found.\nVersion "+zmMooToolsVersion+" required, please check that it was installed correctly in ZoneMinder web root." );
}
}

View File

@ -1,133 +0,0 @@
var Overlay = new Class({
Implements: [Options, Events],
initialize: function( id, options )
{
this.setOptions( options );
this.mask = new Mask( document.body, { 'maskMargins': false, 'class': 'overlayMask' } );
this.id = id?id:'overlay';
if ( typeOf(this.id) == 'string' )
{
if ( $(this.id) )
this.element = $(this.id);
}
else
{
this.element = this.id;
this.id = this.element.get('id');
}
if ( !this.element )
{
this.element = new Element( 'div', { 'id': this.id, 'class': 'overlay', 'styles': { 'display': 'none' } } );
if ( this.options.title || this.options.buttons )
{
var overlayHeader = new Element( 'div', { 'class': 'overlayHeader' } );
if ( this.options.title )
{
var overlayTitle = new Element( 'div', { 'class': 'overlayTitle', 'text': this.options.title } );
overlayHeader.grab( overlayTitle );
}
if ( this.options.buttons )
{
var overlayToolbar = new Element( 'div', { 'class': 'overlayToolbar' } );
this.options.buttons.each(
function( button )
{
var overlayButton = new Element( 'button', { 'text': button.text } );
if ( button.id )
overlayButton.setProperty( 'id', button.id );
if ( button.events )
overlayButton.set( 'events', events );
overlayToolbar.grab( overlayButton );
}
);
overlayHeader.grab( overlayTitle );
}
this.element.grab( overlayHeader );
var overlayBody = new Element( 'div', { 'class': 'overlayBody' } );
var overlayContent = new Element( 'div', { 'class': 'overlayContent' } );
overlayContent.grab( this.options.content );
overlayBody.grab( overlayContent );
this.element.grab( overlayBody );
}
this.target = document.id(this.options.target) || document.id(document.body);
this.element.inject( this.target );
}
},
show: function()
{
this.mask.show();
$(window).addEvent( 'resize', this.update.bind(this) );
$(window).addEvent( 'scroll', this.update.bind(this) );
this.element.tween( 'opacity', [0, 1.0] );
this.element.show();
this.element.position();
this.mask.position();
},
hideComplete: function()
{
$(window).removeEvent( 'resize', this.update.bind(this) );
$(window).removeEvent( 'scroll', this.update.bind(this) );
this.element.hide();
this.mask.hide();
},
hide: function()
{
new Fx.Tween( this.element, { duration: 400, transition: Fx.Transitions.Sine, onComplete: this.hideComplete.bind(this) } ).start( 'opacity', 1.0, 0 );
},
update: function()
{
this.element.position();
this.mask.position();
},
showAnimation:function()
{
showOverlay();
//console.log( "Showing overlay loading" );
if ( !this.loading )
{
this.loading = new Element( 'div', { 'id': 'loading'+this.key, 'styles': { 'display':'none' } } );
this.loading.grab( this.loadingImage );
document.body.grab( this.loading );
}
updateOverlayLoading();
this.loading.setStyle( 'display', 'block' );
$(window).addEvent( 'resize', this.update.bind(this) );
$(window).addEvent( 'scroll', this.update.bind(this) );
},
hideAnimation:function()
{
$(window).removeEvent( 'resize', this.update.bind(this) );
$(window).removeEvent( 'scroll', this.update.bind(this) );
if ( this.loading )
this.loading.setStyle( 'display', 'none' );
}
});
function setupOverlays()
{
try {
$$('.overlay').each(
function( overlay )
{
overlay.element = new Overlay( overlay.get('id') );
overlay.getElements('.overlayCloser').each(
function( closer )
{
closer.addEvent( 'click', function() { overlay.element.hide(); } )
}
);
overlay.overlayShow = function() { overlay.element.show(); };
overlay.overlayHide = function() { overlay.element.hide(); };
}
);
}
catch ( e )
{
alert( e );
}
}
window.addEvent( 'domready', setupOverlays );

View File

@ -1,25 +0,0 @@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/lang
dist_web_DATA = \
big5_big5.php \
cn_zh.php \
cs_cz.php \
de_de.php \
dk_dk.php \
et_ee.php \
en_gb.php \
en_us.php \
es_ar.php \
fr_fr.php \
he_il.php \
hu_hu.php \
it_it.php \
ja_jp.php \
nl_nl.php \
pl_pl.php \
pt_br.php \
ro_ro.php \
ru_ru.php \
se_se.php

View File

@ -1,438 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/lang
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/lang
dist_web_DATA = \
big5_big5.php \
cn_zh.php \
cs_cz.php \
de_de.php \
dk_dk.php \
et_ee.php \
en_gb.php \
en_us.php \
es_ar.php \
fr_fr.php \
he_il.php \
hu_hu.php \
it_it.php \
ja_jp.php \
nl_nl.php \
pl_pl.php \
pt_br.php \
ro_ro.php \
ru_ru.php \
se_se.php
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/lang/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/lang/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-dist_webDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-dist_webDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
install-dist_webDATA install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am uninstall uninstall-am uninstall-dist_webDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,848 +0,0 @@
<?php
//
// ZoneMinder web Chinese Traditional language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder <Chinese Traditional> Translation by <Greener C. Chiou>
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
//require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
//header( "Content-Type: text/html; charset=Big5" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
//setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
//setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
setlocale( LC_ALL, 'Big5' ); //All locale settings pre-4.3.0
//setlocale( LC_ALL, 'Big5' ); //All locale settings 4.3.0 and after
setlocale( LC_CTYPE, 'Big5' ); //Character class settings 4.3.0 and after
setlocale( LC_TIME, 'Big5' ); //Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => '24 位元色彩',
'8BitGrey' => '8 位元灰階',
'Action' => 'Action',
'Actual' => 'Actual',
'AddNewControl' => '新增控制',
'AddNewMonitor' => '新增監視',
'AddNewUser' => '新增使用者',
'AddNewZone' => '新增監視區',
'Alarm' => '警報',
'AlarmBrFrames' => '警報<br/>框架',
'AlarmFrame' => '警報框架',
'AlarmFrameCount' => '警報框架數',
'AlarmLimits' => 'Alarm Limits',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'Alarm Px',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => '警告',
'All' => '全部',
'Apply' => '確定',
'ApplyingStateChange' => '確定狀態改變',
'ArchArchived' => 'Archived Only',
'ArchUnarchived' => 'Unarchived Only',
'Archive' => '存檔',
'Archived' => '已存檔',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'Alarm Frames',
'AttrArchiveStatus' => 'Archive Status',
'AttrAvgScore' => 'Average Score',
'AttrCause' => 'Cause',
'AttrDate' => 'Date',
'AttrDateTime' => 'Date/Time',
'AttrDiskBlocks' => 'Disk Blocks',
'AttrDiskPercent' => 'Disk Percent',
'AttrDuration' => 'Duration',
'AttrFrames' => 'Frames',
'AttrId' => 'Id',
'AttrMaxScore' => 'Max. Score',
'AttrMonitorId' => 'Monitor Id',
'AttrMonitorName' => 'Monitor Name',
'AttrName' => 'Name',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'Time',
'AttrTotalScore' => 'Total Score',
'AttrWeekday' => 'Weekday',
'Auto' => '自動',
'AutoStopTimeout' => '時間過自動停止',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => '平均<br/>分數',
'Background' => 'Background',
'BackgroundFilter' => 'Run filter in background',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to an integer of zero or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Names may only contain alphanumeric characters plus hyphen and underscore',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => '頻寬',
'BlobPx' => 'Blob Px',
'BlobSizes' => 'Blob Sizes',
'Blobs' => 'Blobs',
'Brightness' => '亮度',
'Buffers' => '緩衝',
'CanAutoFocus' => 'Can Auto Focus',
'CanAutoGain' => 'Can Auto Gain',
'CanAutoIris' => 'Can Auto Iris',
'CanAutoWhite' => 'Can Auto White Bal.',
'CanAutoZoom' => 'Can Auto Zoom',
'CanFocus' => 'Can Focus',
'CanFocusAbs' => 'Can Focus Absolute',
'CanFocusCon' => 'Can Focus Continuous',
'CanFocusRel' => 'Can Focus Relative',
'CanGain' => 'Can Gain ',
'CanGainAbs' => 'Can Gain Absolute',
'CanGainCon' => 'Can Gain Continuous',
'CanGainRel' => 'Can Gain Relative',
'CanIris' => 'Can Iris',
'CanIrisAbs' => 'Can Iris Absolute',
'CanIrisCon' => 'Can Iris Continuous',
'CanIrisRel' => 'Can Iris Relative',
'CanMove' => 'Can Move',
'CanMoveAbs' => 'Can Move Absolute',
'CanMoveCon' => 'Can Move Continuous',
'CanMoveDiag' => 'Can Move Diagonally',
'CanMoveMap' => 'Can Move Mapped',
'CanMoveRel' => 'Can Move Relative',
'CanPan' => 'Can Pan' ,
'CanReset' => 'Can Reset',
'CanSetPresets' => 'Can Set Presets',
'CanSleep' => 'Can Sleep',
'CanTilt' => 'Can Tilt',
'CanWake' => 'Can Wake',
'CanWhite' => 'Can White Balance',
'CanWhiteAbs' => 'Can White Bal. Absolute',
'CanWhiteBal' => 'Can White Bal.',
'CanWhiteCon' => 'Can White Bal. Continuous',
'CanWhiteRel' => 'Can White Bal. Relative',
'CanZoom' => 'Can Zoom',
'CanZoomAbs' => 'Can Zoom Absolute',
'CanZoomCon' => 'Can Zoom Continuous',
'CanZoomRel' => 'Can Zoom Relative',
'Cancel' => '取消',
'CancelForcedAlarm' => 'Cancel Forced Alarm',
'CaptureHeight' => '捕捉高度',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => '捕捉格式',
'CaptureWidth' => '捕捉寬度',
'Cause' => '因素',
'CheckMethod' => 'Alarm Check Method',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'Choose Filter',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => '關閉',
'Colour' => 'Colour',
'Command' => 'Command',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Config',
'ConfiguredFor' => '配置為',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => '確認密碼',
'ConjAnd' => 'and',
'ConjOr' => 'or',
'Console' => '操控台',
'ContactAdmin' => '請與系統管理者聯繫.',
'Continue' => '連續',
'Contrast' => 'Contrast',
'Control' => 'Control',
'ControlAddress' => 'Control Address',
'ControlCap' => 'Control Capability',
'ControlCaps' => 'Control Capabilities',
'ControlDevice' => 'Control Device',
'ControlType' => 'Control Type',
'Controllable' => 'Controllable',
'Cycle' => '分區輪流檢視',
'CycleWatch' => '分區輪流檢視',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => '日',
'Debug' => 'debug',
'DefaultRate' => '預設速率',
'DefaultScale' => '預設尺寸',
'DefaultView' => 'Default View',
'Delete' => '刪除',
'DeleteAndNext' => '刪除 &amp; 下一事件',
'DeleteAndPrev' => '刪除 &amp; 上一事件',
'DeleteSavedFilter' => '刪除儲存過濾',
'Description' => '描述',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => '裝置通道',
'DeviceFormat' => '裝置格式',
'DeviceNumber' => '裝置編號',
'DevicePath' => '裝置路徑',
'Devices' => 'Devices',
'Dimensions' => '尺寸',
'DisableAlarms' => '取消警報',
'Disk' => '磁碟',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Please Donate',
'DonateAlready' => 'No, I\'ve already donated',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br><br>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br><br>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'DonateRemindDay' => 'Not yet, remind again in 1 day',
'DonateRemindHour' => 'Not yet, remind again in 1 hour',
'DonateRemindMonth' => 'Not yet, remind again in 1 month',
'DonateRemindNever' => 'No, I don\'t want to donate, never remind',
'DonateRemindWeek' => 'Not yet, remind again in 1 week',
'DonateYes' => 'Yes, I\'d like to donate now',
'Download' => '下載',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => '歷時',
'Edit' => '編輯',
'Email' => 'Email',
'EnableAlarms' => '啟動警報',
'Enabled' => '啟用',
'EnterNewFilterName' => 'Enter new filter name',
'Error' => '錯誤',
'ErrorBrackets' => 'Error, please check you have an equal number of opening and closing brackets',
'ErrorValidValue' => 'Error, please check that all terms have a valid value',
'Etc' => 'etc',
'Event' => '事件',
'EventFilter' => '事件過濾',
'EventId' => '事件Id',
'EventName' => '事件名稱',
'EventPrefix' => '事件字首',
'Events' => '事件',
'Exclude' => '不包含',
'Execute' => 'Execute',
'Export' => '輸出',
'ExportDetails' => '輸出事件細項',
'ExportFailed' => '輸出失敗',
'ExportFormat' => '輸出檔案格式',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => '輸出框架細項',
'ExportImageFiles' => '輸出圖片檔',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => '輸出其他檔(若有)',
'ExportOptions' => '輸出選項',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => '輸出影片檔(若有)',
'Exporting' => '輸出中',
'FPS' => 'fps',
'FPSReportInterval' => 'FPS 報告間距',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'Feed',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'File',
'FilterArchiveEvents' => '自動儲存符合項目',
'FilterDeleteEvents' => '自動刪除符合項目',
'FilterEmailEvents' => '自動寄出詳細符合項目',
'FilterExecuteEvents' => '自動執行符合指令',
'FilterMessageEvents' => '自動發出符合訊息',
'FilterPx' => 'Filter Px',
'FilterUnset' => '您必需設定濾鏡的寬度和高度',
'FilterUploadEvents' => '自動上傳符合項目',
'FilterVideoEvents' => '自動產生符合的影像檔',
'Filters' => '濾鏡',
'First' => 'First',
'FlippedHori' => '水平反轉',
'FlippedVert' => '垂直反轉',
'Focus' => 'Focus',
'ForceAlarm' => 'Force Alarm',
'Format' => '格式',
'Frame' => '框架',
'FrameId' => '框架 Id',
'FrameRate' => '框架速率',
'FrameSkip' => '框架忽略',
'Frames' => '框架',
'Func' => 'Func',
'Function' => '功能',
'Gain' => 'Gain',
'General' => '一般',
'GenerateVideo' => '輸出影片',
'GeneratingVideo' => '輸出影片中',
'GoToZoneMinder' => 'Go to ZoneMinder.com',
'Grey' => 'Grey',
'Group' => 'Group',
'Groups' => 'Groups',
'HasFocusSpeed' => 'Has Focus Speed',
'HasGainSpeed' => 'Has Gain Speed',
'HasHomePreset' => 'Has Home Preset',
'HasIrisSpeed' => 'Has Iris Speed',
'HasPanSpeed' => 'Has Pan Speed',
'HasPresets' => 'Has Presets',
'HasTiltSpeed' => 'Has Tilt Speed',
'HasTurboPan' => 'Has Turbo Pan',
'HasTurboTilt' => 'Has Turbo Tilt',
'HasWhiteSpeed' => 'Has White Bal. Speed',
'HasZoomSpeed' => 'Has Zoom Speed',
'High' => '高',
'HighBW' => 'High&nbsp;B/W',
'Home' => 'Home',
'Hour' => '時',
'Hue' => 'Hue',
'Id' => 'Id',
'Idle' => 'Idle',
'Ignore' => 'Ignore',
'Image' => '影像',
'ImageBufferSize' => '影像緩衝大小',
'Images' => 'Images',
'In' => 'In',
'Include' => '包含',
'Inverted' => '反轉',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => '語言',
'Last' => 'Last',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'results only;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Limit to first', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Linked Monitors',
'List' => '列出',
'Load' => '載入',
'Local' => 'Local',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => '登入名稱',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => '登入中... 請稍後...',
'Login' => '登入',
'Logout' => '登出',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => '低',
'LowBW' => 'Low&nbsp;B/W',
'Main' => 'Main',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => '標註',
'Max' => 'Max',
'MaxBandwidth' => 'Max Bandwidth', // Added - 2009-02-08
'MaxBrScore' => '最高<br/>分數',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MaximumFPS' => '最大每秒框架數 fps',
'Medium' => '中',
'MediumBW' => 'Medium&nbsp;B/W',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'Minimum blob area should be less than maximum',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'Minimum blobs should be less than maximum',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => 'Minimum pixel threshold should be less than maximum',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => '細項',
'Monitor' => '監視',
'MonitorIds' => 'Monitor&nbsp;Ids',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br><br>Please note that this may overwrite any values you already have configured for this monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => '監視',
'Montage' => '全部顯示',
'Month' => '月',
'More' => 'More', // Added - 2011-06-16
'Move' => '移動',
'MustBeGe' => '需大於或等於',
'MustBeLe' => '需小於或等於',
'MustConfirmPassword' => '您必需確認密碼',
'MustSupplyPassword' => '您必需提供密碼',
'MustSupplyUsername' => '您必需提供使用者名稱',
'Name' => '名稱',
'Near' => 'Near',
'Network' => 'Network',
'New' => '新增',
'NewGroup' => '新群組',
'NewLabel' => 'New Label',
'NewPassword' => '新密碼',
'NewState' => '新狀態',
'NewUser' => '新使用者',
'Next' => '下一步',
'No' => 'No',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'There are no frames recorded for this event',
'NoGroup' => 'No Group', // Added - 2009-02-08
'NoSavedFilters' => 'NoSavedFilters',
'NoStatisticsRecorded' => 'There are no statistics recorded for this event/frame',
'None' => '無選取',
'NoneAvailable' => 'None available',
'Normal' => 'Normal',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'equal to',
'OpGt' => 'greater than',
'OpGtEq' => 'greater than or equal to',
'OpIn' => 'in set',
'OpLt' => 'less than',
'OpLtEq' => 'less than or equal to',
'OpMatches' => 'matches',
'OpNe' => 'not equal to',
'OpNotIn' => 'not in set',
'OpNotMatches' => 'does not match',
'Open' => 'Open',
'OptionHelp' => 'OptionHelp',
'OptionRestartWarning' => 'These changes may not come into effect fully\nwhile the system is running. When you have\nfinished making your changes please ensure that\nyou restart ZoneMinder.',
'Options' => '銓垣專用',//進階選項
'OrEnterNewName' => 'or enter new name',
'Order' => '順序',
'Orientation' => '方向',
'Out' => 'Out',
'OverwriteExisting' => 'Overwrite Existing',
'Paged' => 'Paged',
'Pan' => 'Pan',
'PanLeft' => 'Pan Left',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => '參數',
'Password' => '密碼',
'PasswordsDifferent' => 'The new and confirm passwords are different',
'Paths' => 'Paths',
'Pause' => 'Pause',
'Phone' => 'Phone',
'PhoneBW' => 'Phone&nbsp;B/W',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'pixels',
'Play' => 'Play',
'PlayAll' => '全部播放',
'PleaseWait' => 'Please Wait',
'Point' => '點',
'PostEventImageBuffer' => '後置事件影像緩衝',
'PreEventImageBuffer' => '前置事件影像緩衝',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => '上一事件',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'Rate',
'Real' => 'Real',
'Record' => '錄影',
'RefImageBlendPct' => '參考影像混合 %ge',
'Refresh' => '更新',
'Remote' => 'Remote',
'RemoteHostName' => '遠端主機名稱',
'RemoteHostPath' => '遠端主機路徑',
'RemoteHostPort' => '遠端主機端口',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Remote Image Colours',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => '重新命名',
'Replay' => '重新播放',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'Reset',
'ResetEventCounts' => 'Reset Event Counts',
'Restart' => '重新啟動',
'Restarting' => 'Restarting',
'RestrictedCameraIds' => 'Restricted Camera Ids',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Return Delay',
'ReturnLocation' => 'Return Location',
'Rewind' => 'Rewind',
'RotateLeft' => 'Rotate Left',
'RotateRight' => 'Rotate Right',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => '監視模式',
'RunState' => '運作狀態',
'Running' => '運行中',
'Save' => '存檔',
'SaveAs' => '儲存為',
'SaveFilter' => 'Save Filter',
'Scale' => 'Scale',
'Score' => '分數',
'Secs' => 'Secs',
'Sectionlength' => '片段長度',
'Select' => '選取',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Select Monitors',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => 'Set',
'SetNewBandwidth' => '設定新頻寬速度',
'SetPreset' => 'Set Preset',
'Settings' => 'Settings',
'ShowFilterWindow' => '顯示過濾視窗',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Size',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Sleep',
'SortAsc' => 'Asc',
'SortBy' => 'Sort by',
'SortDesc' => 'Desc',
'Source' => '來源',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => '來源形式',
'Speed' => '速度',
'SpeedHigh' => '高 速',
'SpeedLow' => '低 速',
'SpeedMedium' => '中速',
'SpeedTurbo' => 'Turbo Speed',
'Start' => 'Start',
'State' => 'State',
'Stats' => 'Stats',
'Status' => 'Status',
'Step' => 'Step',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Large Step',
'StepMedium' => 'Medium Step',
'StepNone' => 'No Step',
'StepSmall' => 'Small Step',
'Stills' => '靜止',
'Stop' => '停止',
'Stopped' => '已停止',
'Stream' => '串流',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Submit',
'System' => 'System',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => '小圖檢視',
'Tilt' => 'Tilt',
'Time' => '時間',
'TimeDelta' => 'Time Delta',
'TimeStamp' => 'Time Stamp', // Added - 2009-02-08
'Timeline' => 'Timeline', // Added - 2009-02-08
'Timestamp' => '時間格式',
'TimestampLabelFormat' => '時間標示格式',
'TimestampLabelX' => '時間標示 X',
'TimestampLabelY' => '時間標示 Y',
'Today' => 'Today',
'Tools' => 'Tools',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => '全部<br/>分數',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => '觸發',
'TurboPanSpeed' => 'Turbo Pan Speed',
'TurboTiltSpeed' => 'Turbo Tilt Speed',
'Type' => 'Type',
'Unarchive' => '不存檔',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'Units',
'Unknown' => 'Unknown',
'Update' => 'Update', // Added - 2009-02-08
'UpdateAvailable' => 'An update to ZoneMinder is available.',
'UpdateNotNecessary' => 'No update is necessary.',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Use Filter',
'UseFilterExprsPost' => '&nbsp;filter&nbsp;expressions', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Use&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'User',
'Username' => '使用者名稱',
'Users' => 'Users',
'Value' => '設定值',
'Version' => '版本',
'VersionIgnore' => 'Ignore this version',
'VersionRemindDay' => 'Remind again in 1 day',
'VersionRemindHour' => 'Remind again in 1 hour',
'VersionRemindNever' => 'Don\'t remind about new versions',
'VersionRemindWeek' => 'Remind again in 1 week',
'Video' => 'Video',
'VideoFormat' => 'Video Format', // Added - 2009-02-08
'VideoGenFailed' => '輸出影片失敗!',
'VideoGenFiles' => 'Existing Video Files', // Added - 2009-02-08
'VideoGenNoFiles' => 'No Video Files Found', // Added - 2009-02-08
'VideoGenParms' => '輸出影片參數',
'VideoGenSucceeded' => 'Video Generation Succeeded!', // Added - 2009-02-08
'VideoSize' => '影片尺寸',
'View' => '檢視',
'ViewAll' => '全部檢視',
'ViewEvent' => 'View Event', // Added - 2009-02-08
'ViewPaged' => '分頁檢視',
'Wake' => 'Wake',
'WarmupFrames' => '熱機框架',
'Watch' => 'Watch',
'Web' => 'Web',
'WebColour' => 'Web Colour', // Added - 2009-02-08
'Week' => '週',
'White' => 'White',
'WhiteBalance' => 'White Balance',
'Wide' => 'Wide',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10 Activation String',
'X10InputAlarmString' => 'X10 Input Alarm String',
'X10OutputAlarmString' => 'X10 Output Alarm String',
'Y' => 'Y', // Added - 2009-02-08
'Yes' => 'Yes',
'YouNoPerms' => 'You do not have permissions to access this resource.',
'Zone' => 'Zone',
'ZoneAlarmColour' => 'Alarm Colour (RGB)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => '監視區',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zoom In', // Added - 2009-02-08
'ZoomOut' => 'Zoom Out', // Added - 2009-02-08
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => '目前登入者是 \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Last %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'The latest release is v%1$s, you have v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Monitor %1$s Function',
'RunningRecentVer' => 'You are running the most recent version of ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'事件', 1=>'事件', 2=>'事件' ),
'Monitor' => array( 0=>'監視', 1=>'監視', 2=>'監視' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,843 +0,0 @@
<?php
//
// ZoneMinder web Simplified Chinese language file, $Date: 2009-02-19 12:45:24 +0000 (Tue, 27 Jan 2009) $, $Revision: 0001 $
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder <Simplified Chinese> Translation by <allankliu@yahoo.com.cn>
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_zh_cn.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
// header( "Content-Type: text/html; charset=utf-8" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
setlocale( LC_ALL, 'cn_ZH' ); //All locale settings 4.3.0 and after
setlocale( LC_CTYPE, 'cn_ZH' ); //Character class settings 4.3.0 and after
setlocale( LC_TIME, 'cn_ZH' ); //Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => '24 位彩色',
'8BitGrey' => '8 位灰度',
'Action' => '活动动作',
'Actual' => '实际',
'AddNewControl' => '新建控制',
'AddNewMonitor' => '新建监视器',
'AddNewUser' => '新建用户',
'AddNewZone' => '新建区域',
'Alarm' => '报警',
'AlarmBrFrames' => '报警<br/>帧',
'AlarmFrame' => '报警帧',
'AlarmFrameCount' => '报警帧数',
'AlarmLimits' => '报警限制',
'AlarmMaximumFPS' => '报警最大帧率FPS',
'AlarmPx' => '报警像素',
'AlarmRGBUnset' => '你必须设置一个报警颜色(RGB)',
'Alert' => '警报',
'All' => '全部',
'Apply' => '应用',
'ApplyingStateChange' => '状态改变生效',
'ArchArchived' => '仅限于存档',
'ArchUnarchived' => '仅限于未存档',
'Archive' => '存档',
'Archived' => '已经存档',
'Area' => '区域',
'AreaUnits' => '区域 (px/%)',
'AttrAlarmFrames' => '报警帧',
'AttrArchiveStatus' => '存档状态',
'AttrAvgScore' => '平均分数',
'AttrCause' => '原因',
'AttrDate' => '日期',
'AttrDateTime' => '日期/时间',
'AttrDiskBlocks' => '磁碟区块',
'AttrDiskPercent' => '磁碟百分比',
'AttrDuration' => '过程',
'AttrFrames' => '帧',
'AttrId' => 'Id',
'AttrMaxScore' => '最大分数',
'AttrMonitorId' => '监视器 Id',
'AttrMonitorName' => '监视器名称',
'AttrName' => '名称',
'AttrNotes' => '备注',
'AttrSystemLoad' => '系统负载',
'AttrTime' => '时间',
'AttrTotalScore' => '总分数',
'AttrWeekday' => '星期',
'Auto' => '自动',
'AutoStopTimeout' => '超时自动停止',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => '平均<br/>分数',
'Background' => '后台',
'BackgroundFilter' => '在后台运行筛选器',
'BadAlarmFrameCount' => '报警帧数必须设为大于1的整数',
'BadAlarmMaxFPS' => '报警最大帧率必须是正整数或正浮点数',
'BadChannel' => '通道必须设为大于零的整数',
'BadDevice' => '必须为器件设置有效值',
'BadFPSReportInterval' => 'FPS帧数报告间隔缓冲数必须是0以上整数',
'BadFormat' => '格式必须设为大于零的整数',
'BadFrameSkip' => '跳帧数必须设为大于零的整数',
'BadHeight' => '高度必须设为有效值',
'BadHost' => '主机必须设为有效IP地址或主机名不要包含 http://',
'BadImageBufferCount' => '图像缓冲器大小必须设为大于10的整数',
'BadLabelX' => '标签 X 坐标必须设为大于零的整数',
'BadLabelY' => '标签 Y 坐标必须设为大于零的整数',
'BadMaxFPS' => '最大帧数FPS必须设为正整数或着浮点数',
'BadNameChars' => '名称只可以包含字母,数字,波折号和下划线',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => '路径必须设为有效值',
'BadPort' => '端口必须设为有效数字',
'BadPostEventCount' => '之后事件影像数目必须设为大于零的整数',
'BadPreEventCount' => '之前事件影像数目必须最小值为零,并且小于影像缓冲区',
'BadRefBlendPerc' => '参考混合百分比必须设为一个正整数',
'BadSectionLength' => '节长度必须设为30的整数倍',
'BadSignalCheckColour' => '信号检查颜色必须设为有效的RGB颜色字符',
'BadStreamReplayBuffer' => '流重放缓冲必须为零或更多整数',
'BadWarmupCount' => '预热帪必须设为零或更多整数',
'BadWebColour' => 'Web颜色必须设为有效Web颜色字符',
'BadWidth' => '宽度必须设为有效值',
'Bandwidth' => '带宽',
'BlobPx' => 'Blob像素',
'BlobSizes' => 'Blob大小',
'Blobs' => 'Blobs',
'Brightness' => '亮度',
'Buffers' => '缓冲器',
'CanAutoFocus' => '可以自动对焦',
'CanAutoGain' => '可以自动增益控制',
'CanAutoIris' => '可以自动光圈',
'CanAutoWhite' => '可以自动白平衡',
'CanAutoZoom' => '可以自动缩放',
'CanFocus' => '可以对焦',
'CanFocusAbs' => '可以绝对对焦',
'CanFocusCon' => '可以连续对焦',
'CanFocusRel' => '可以相对对焦',
'CanGain' => '可以增益',
'CanGainAbs' => '可以绝对增益',
'CanGainCon' => '可以连续增益',
'CanGainRel' => '可以相对增益',
'CanIris' => '可以光圈',
'CanIrisAbs' => '可以绝对光圈',
'CanIrisCon' => '可以连续光圈',
'CanIrisRel' => '可以相对光圈',
'CanMove' => '可以移动',
'CanMoveAbs' => '可以绝对移动',
'CanMoveCon' => '可以连续移动',
'CanMoveDiag' => '可以对角移动',
'CanMoveMap' => '可以映射网格移动',
'CanMoveRel' => '可以相对移动',
'CanPan' => '可以平移' ,
'CanReset' => '可以复位',
'CanSetPresets' => '可以进行预设',
'CanSleep' => '可以休眠',
'CanTilt' => '可以倾斜',
'CanWake' => '可以唤醒',
'CanWhite' => '可以白平衡',
'CanWhiteAbs' => '可以绝对白平衡',
'CanWhiteBal' => '可以白平衡',
'CanWhiteCon' => '可以连续白平衡',
'CanWhiteRel' => '可以相对白平衡',
'CanZoom' => '可以缩放',
'CanZoomAbs' => '可以绝对缩放',
'CanZoomCon' => '可以连续缩放',
'CanZoomRel' => '可以相对缩放',
'Cancel' => '取消',
'CancelForcedAlarm' => '取消强制报警',
'CaptureHeight' => '捕获高度',
'CaptureMethod' => '捕获方式',
'CapturePalette' => '捕获调色板',
'CaptureWidth' => '捕获宽度',
'Cause' => '原因',
'CheckMethod' => '报警检查方式',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => '选择筛选器',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => '选择预置',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => '关闭',
'Colour' => '彩色',
'Command' => '命令',
'Component' => 'Component', // Added - 2011-06-16
'Config' => '配置',
'ConfiguredFor' => '配置标的',
'ConfirmDeleteEvents' => '确认希望删除所选事件?',
'ConfirmPassword' => '密码确认',
'ConjAnd' => '及',
'ConjOr' => '或',
'Console' => '控制台',
'ContactAdmin' => '请联系您的管理员了解详情。',
'Continue' => '继续',
'Contrast' => '对比度',
'Control' => '控制',
'ControlAddress' => '控制地址',
'ControlCap' => '控制能力',
'ControlCaps' => '控制能力',
'ControlDevice' => '控制设备',
'ControlType' => '控制类型',
'Controllable' => '可控',
'Cycle' => '循环',
'CycleWatch' => '循环监视',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => '日',
'Debug' => '调试',
'DefaultRate' => '缺省速率',
'DefaultScale' => '缺省缩放',
'DefaultView' => '缺省视角',
'Delete' => '删除',
'DeleteAndNext' => '删除并下一个',
'DeleteAndPrev' => '删除并前一个',
'DeleteSavedFilter' => '删除存储过滤器',
'Description' => '描述',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => '设备',
'DeviceChannel' => '设备通道',
'DeviceFormat' => '设备格式',
'DeviceNumber' => '设备编号',
'DevicePath' => '设备路径',
'Devices' => '设备',
'Dimensions' => '维度',
'DisableAlarms' => '关闭警报',
'Disk' => '磁碟',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => '请捐款',
'DonateAlready' => '不,我已经捐赠过了',
'DonateEnticement' => '迄今您已经运行ZoneMinder有一阵子了希望它能够有助于增强您家或者办公区域的安全。尽管ZoneMinder是并将保持免费和开源该项目依然在研发和支持中投入了资金和精力。如果您愿意支持今后的开发和新功能那么请考虑为该项目捐款。捐款不是必须的任何数量的捐赠我们都很感谢。<br/><br/>如果您愿意捐款,请选择下列选项,或者访问 http://www.zoneminder.com/donate.html 捐赠主页。<br/><br/>感谢您使用ZoneMinder并且不要忘记访问访问ZoneMinder.com的论坛以获得支持或建议这可以提升您的ZoneMinder的体验。',
'DonateRemindDay' => '现在不1天内再次提醒我',
'DonateRemindHour' => '现在不1小时内再次提醒我',
'DonateRemindMonth' => '现在不1个月内再次提醒我',
'DonateRemindNever' => '不,我不打算捐款',
'DonateRemindWeek' => '现在不1星期内再次提醒我',
'DonateYes' => '好,我现在就捐款',
'Download' => '下载',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'Duration',
'Edit' => '编辑',
'Email' => 'Email',
'EnableAlarms' => '启动报警',
'Enabled' => '已启动',
'EnterNewFilterName' => '输入新过滤器名称',
'Error' => '错误',
'ErrorBrackets' => '错误, 请检查左右括号数,必须相等',
'ErrorValidValue' => '错误, 请检查所有条件具备有效值',
'Etc' => '等',
'Event' => '事件',
'EventFilter' => '事件过滤器',
'EventId' => '事件 Id',
'EventName' => '事件名称',
'EventPrefix' => '事件前缀',
'Events' => '事件',
'Exclude' => '排除',
'Execute' => '执行',
'Export' => '导出',
'ExportDetails' => '导出时间详情',
'ExportFailed' => '导出失败',
'ExportFormat' => '导出文件格式',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => '导出帧详情',
'ExportImageFiles' => '导出影像文件',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => '导出其他文件 (如果存在)',
'ExportOptions' => '导出选项',
'ExportSucceeded' => '导出成功',
'ExportVideoFiles' => '导出视频文件 (如果存在)',
'Exporting' => '正在导出',
'FPS' => 'fps',
'FPSReportInterval' => 'FPS 报告间隔',
'FTP' => 'FTP',
'Far' => '远',
'FastForward' => '快进',
'Feed' => '转送源',
'Ffmpeg' => 'Ffmpeg',
'File' => '文件',
'FilterArchiveEvents' => '将全部匹配项存档',
'FilterDeleteEvents' => '将全部匹配项删除',
'FilterEmailEvents' => '将全部匹配项详情电邮出去',
'FilterExecuteEvents' => '执行全部匹配项命令',
'FilterMessageEvents' => '全部匹配项的信息详情',
'FilterPx' => '过滤器像素',
'FilterUnset' => '您必须指定过滤器宽度和高度',
'FilterUploadEvents' => '上传全部匹配项',
'FilterVideoEvents' => '为全部匹配项创建视频',
'Filters' => '过滤器',
'First' => '首先',
'FlippedHori' => '水平翻转',
'FlippedVert' => '垂直翻转',
'Focus' => '聚焦',
'ForceAlarm' => '强制报警',
'Format' => '格式',
'Frame' => '帧',
'FrameId' => '帧 Id',
'FrameRate' => '帧率',
'FrameSkip' => '跳帧',
'Frames' => '帧',
'Func' => '功能',
'Function' => '功能',
'Gain' => '增益',
'General' => '一般',
'GenerateVideo' => '创建视频',
'GeneratingVideo' => '正在创建视频',
'GoToZoneMinder' => '访问 ZoneMinder.com',
'Grey' => '灰',
'Group' => '组',
'Groups' => '组',
'HasFocusSpeed' => '有聚焦速度',
'HasGainSpeed' => '有增益速度',
'HasHomePreset' => '有主页预设',
'HasIrisSpeed' => '有光圈速度',
'HasPanSpeed' => '有平移速度',
'HasPresets' => '有预设值',
'HasTiltSpeed' => '有倾斜速度',
'HasTurboPan' => '有加速平移',
'HasTurboTilt' => '有加速斜率',
'HasWhiteSpeed' => '有白平衡速度',
'HasZoomSpeed' => '有缩放速度',
'High' => '高',
'HighBW' => '高&nbsp;B/W',
'Home' => '主页',
'Hour' => '小时',
'Hue' => '色调',
'Id' => 'Id',
'Idle' => '空闲',
'Ignore' => '忽略',
'Image' => '影像',
'ImageBufferSize' => '影像缓冲区大小 (帧)',
'Images' => '影像',
'In' => '在',
'Include' => '包含',
'Inverted' => '反向',
'Iris' => '光圈',
'KeyString' => '密钥字符',
'Label' => '标签',
'Language' => '语言',
'Last' => '最后',
'Layout' => '布局',
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => '个结果', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => '仅限于开始', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => '管理监视器',
'List' => '列表',
'Load' => '加载',
'Local' => '本地',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => '登录为',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => '登录',
'Login' => '登入',
'Logout' => '登出',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => '低',
'LowBW' => '低&nbsp;B/W',
'Main' => '主要',
'Man' => '人',
'Manual' => '手册',
'Mark' => '标记',
'Max' => '最大',
'MaxBandwidth' => '最大带宽',
'MaxBrScore' => '最大<br/>Score',
'MaxFocusRange' => '最大聚焦范围',
'MaxFocusSpeed' => '最大聚焦速度',
'MaxFocusStep' => '最大聚焦步进',
'MaxGainRange' => '最大增益范围',
'MaxGainSpeed' => '最大增益速度',
'MaxGainStep' => '最大增益步进',
'MaxIrisRange' => '最大光圈范围',
'MaxIrisSpeed' => '最大光圈速度',
'MaxIrisStep' => '最大光圈步进',
'MaxPanRange' => '最大平移范围',
'MaxPanSpeed' => '最大平移速度',
'MaxPanStep' => '最大平移步进',
'MaxTiltRange' => '最大倾斜范围',
'MaxTiltSpeed' => '最大倾斜速度',
'MaxTiltStep' => '最大倾斜步进',
'MaxWhiteRange' => '最大白平衡范围',
'MaxWhiteSpeed' => '最大白平衡速度',
'MaxWhiteStep' => '最大白平衡步进',
'MaxZoomRange' => '最大缩放范围',
'MaxZoomSpeed' => '最大缩放速度',
'MaxZoomStep' => '最大缩放步进',
'MaximumFPS' => '最大帧率 FPS',
'Medium' => '中等',
'MediumBW' => '中等&nbsp;B/W',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => '最小报警区域应该小于最大区域',
'MinAlarmAreaUnset' => '您必须指定最小报警像素数量',
'MinBlobAreaLtMax' => '最小blob区必须小数最大区域',
'MinBlobAreaUnset' => '您必须指定最小blob像素数量',
'MinBlobLtMinFilter' => '最小 blob 区必须小于等于最小过滤区域',
'MinBlobsLtMax' => '最小 blob 必须小于最大区域',
'MinBlobsUnset' => '您必须指定最小 blob 数',
'MinFilterAreaLtMax' => '最小过滤区域必须小于最大区域',
'MinFilterAreaUnset' => '您必须指定最小过滤像素数量',
'MinFilterLtMinAlarm' => '最小过滤区域应该小于等于最小报警区域',
'MinFocusRange' => '最小聚焦区域',
'MinFocusSpeed' => '最小聚焦速度',
'MinFocusStep' => '最小聚焦步进',
'MinGainRange' => '最小增益范围',
'MinGainSpeed' => '最小增益速度',
'MinGainStep' => '最小增益步进',
'MinIrisRange' => '最小光圈范围',
'MinIrisSpeed' => '最小光圈速度',
'MinIrisStep' => '最小光圈步进',
'MinPanRange' => '最小平移范围',
'MinPanSpeed' => '最小平移速度',
'MinPanStep' => '最小平移步进',
'MinPixelThresLtMax' => '最小像素阈值应该小于最大值',
'MinPixelThresUnset' => '您必须指定一个最小像素阈值',
'MinTiltRange' => '最小倾斜范围',
'MinTiltSpeed' => '最小倾斜速度',
'MinTiltStep' => '最小倾斜步进',
'MinWhiteRange' => '最小白平衡范围',
'MinWhiteSpeed' => '最小白平衡速度',
'MinWhiteStep' => '最小白平衡步进',
'MinZoomRange' => '最小缩放范围',
'MinZoomSpeed' => '最小缩放速度',
'MinZoomStep' => '最小缩放步进',
'Misc' => '杂项',
'Monitor' => '监视器',
'MonitorIds' => '监视器&nbsp;Ids',
'MonitorPreset' => '监视器预设值',
'MonitorPresetIntro' => '从以下列表中选择一个合适的预设值.<br/><br/>请注意该方式可能覆盖您为该监视器配置的数值.<br/><br/>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => '监视器',
'Montage' => '镜头组接',
'Month' => '月',
'More' => 'More', // Added - 2011-06-16
'Move' => '移动',
'MustBeGe' => '必须大于等于',
'MustBeLe' => '必须小于等于',
'MustConfirmPassword' => '您必须确认密码',
'MustSupplyPassword' => '您必须提供密码',
'MustSupplyUsername' => '您必须提供用户名',
'Name' => '名称',
'Near' => '近',
'Network' => '网络',
'New' => '新建',
'NewGroup' => '新建组',
'NewLabel' => '新建标签',
'NewPassword' => '新建密码',
'NewState' => '新状态',
'NewUser' => '新用户',
'Next' => '下一个',
'No' => '不',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => '该事件没有相关帧的记录',
'NoGroup' => '无组',
'NoSavedFilters' => '没有保存过滤器',
'NoStatisticsRecorded' => '没有该事件/帧的统计记录',
'None' => '无',
'NoneAvailable' => '没有',
'Normal' => '正常',
'Notes' => '备注',
'NumPresets' => '数值预置',
'Off' => '关',
'On' => '开',
'OpEq' => '等于',
'OpGt' => '大于',
'OpGtEq' => '大于等于',
'OpIn' => '在集',
'OpLt' => '小于',
'OpLtEq' => '小于等于',
'OpMatches' => '匹配',
'OpNe' => '不等于',
'OpNotIn' => '未在集',
'OpNotMatches' => '不匹配',
'Open' => '打开',
'OptionHelp' => '选项帮助',
'OptionRestartWarning' => '这些改动在系统运行时可以不会完全生效.\n 当你设置完毕改动后\n请确认\n您重新启动 ZoneMinder.',
'Options' => '选项',
'OrEnterNewName' => '或输入新名词',
'Order' => '次序',
'Orientation' => '方向',
'Out' => '外部',
'OverwriteExisting' => '覆盖现有的',
'Paged' => '分页',
'Pan' => '平移',
'PanLeft' => '向左平移',
'PanRight' => '向右平移',
'PanTilt' => '平移/倾斜',
'Parameter' => '参数',
'Password' => '密码',
'PasswordsDifferent' => '新建密码和确认密码不一致',
'Paths' => '路径',
'Pause' => '暂停',
'Phone' => '电话',
'PhoneBW' => '电话&nbsp;B/W',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => '像素差别',
'Pixels' => '像素',
'Play' => '播放',
'PlayAll' => '播放全部',
'PleaseWait' => '请等待',
'Point' => '点',
'PostEventImageBuffer' => '事件之后影像数',
'PreEventImageBuffer' => '时间之前影像数',
'PreserveAspect' => '维持长宽比',
'Preset' => '预置',
'Presets' => '预置',
'Prev' => '前',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => '协议',
'Rate' => '速率',
'Real' => '实际',
'Record' => '记录',
'RefImageBlendPct' => '参考影像混合 %ge',
'Refresh' => '刷新',
'Remote' => '远程',
'RemoteHostName' => '远程主机名',
'RemoteHostPath' => '远程主机路径',
'RemoteHostPort' => '远程主机端口',
'RemoteHostSubPath' => '远程主机子路径',
'RemoteImageColours' => '远程影像颜色',
'RemoteMethod' => '远程方法',
'RemoteProtocol' => '远程协议',
'Rename' => '重命名',
'Replay' => '重放',
'ReplayAll' => '全部事件',
'ReplayGapless' => '无间隙事件',
'ReplaySingle' => '单一事件',
'Reset' => '重置',
'ResetEventCounts' => '重置事件数',
'Restart' => '重启动',
'Restarting' => '重启动',
'RestrictedCameraIds' => '受限摄像机 Id',
'RestrictedMonitors' => '受限监视器',
'ReturnDelay' => '返回延时',
'ReturnLocation' => '返回位置',
'Rewind' => '重绕',
'RotateLeft' => '向左旋转',
'RotateRight' => '向右旋转',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => '运行模式',
'RunState' => '运行状态',
'Running' => '运行',
'Save' => '保存',
'SaveAs' => '另存为',
'SaveFilter' => '存储过滤器',
'Scale' => '比例',
'Score' => '分数',
'Secs' => '秒',
'Sectionlength' => '段长度',
'Select' => '选择',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => '选择监视器',
'SelfIntersecting' => '多边形边线不得交叉',
'Set' => '设置',
'SetNewBandwidth' => '设置新的带宽',
'SetPreset' => '设置预设值',
'Settings' => '设置',
'ShowFilterWindow' => '显示过滤器视窗',
'ShowTimeline' => '显示时间轴',
'SignalCheckColour' => '型号检查颜色',
'Size' => '大小',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => '睡眠',
'SortAsc' => '升序',
'SortBy' => '排序',
'SortDesc' => '降序',
'Source' => '信号源',
'SourceColours' => '信号源颜色',
'SourcePath' => '信号源路径',
'SourceType' => '信号源类型',
'Speed' => '加速',
'SpeedHigh' => '高速',
'SpeedLow' => '慢速',
'SpeedMedium' => '中等速度',
'SpeedTurbo' => '加速度',
'Start' => '开始',
'State' => '状态',
'Stats' => '统计',
'Status' => '状况',
'Step' => '步进',
'StepBack' => '单步后退',
'StepForward' => '单步前进',
'StepLarge' => '大步步进',
'StepMedium' => '中步步进',
'StepNone' => '无步进',
'StepSmall' => '小步步进',
'Stills' => '静止',
'Stop' => '停止',
'Stopped' => '已停止',
'Stream' => '流',
'StreamReplayBuffer' => '流重放影像缓冲',
'Submit' => '发送',
'System' => '系统',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => '缩略图',
'Tilt' => '倾斜',
'Time' => '时间',
'TimeDelta' => '相对时间',
'TimeStamp' => '时间戳',
'Timeline' => '时间轴',
'Timestamp' => '时间戳',
'TimestampLabelFormat' => '时间戳标签格式',
'TimestampLabelX' => '时间戳标签 X',
'TimestampLabelY' => '时间戳标签 Y',
'Today' => '今天',
'Tools' => '工具',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => '总<br/>分数',
'TrackDelay' => '轨迹延时',
'TrackMotion' => '轨迹运动',
'Triggers' => '触发器',
'TurboPanSpeed' => '加速平移速度',
'TurboTiltSpeed' => '加速倾斜速度',
'Type' => '类型',
'Unarchive' => '未存档',
'Undefined' => '未定义',
'Units' => '单元',
'Unknown' => '未知',
'Update' => '更新',
'UpdateAvailable' => '有新版本的ZoneMinder.',
'UpdateNotNecessary' => '无须更新',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => '使用筛选器',
'UseFilterExprsPost' => '&nbsp;筛选器&nbsp;表达式', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => '使用&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => '用户',
'Username' => '用户名',
'Users' => '用户',
'Value' => '数值',
'Version' => '版本',
'VersionIgnore' => '忽略该版本',
'VersionRemindDay' => '一天内再次提醒',
'VersionRemindHour' => '一小时内再次提醒',
'VersionRemindNever' => '不再提醒新版本',
'VersionRemindWeek' => '一周内再次提醒',
'Video' => '视频',
'VideoFormat' => '视频格式',
'VideoGenFailed' => '视频产生失败!',
'VideoGenFiles' => '现有视频文件',
'VideoGenNoFiles' => '没有找到视频文件',
'VideoGenParms' => '视频产生参数',
'VideoGenSucceeded' => '视频产生成功!',
'VideoSize' => '视频尺寸',
'View' => '查看',
'ViewAll' => '查看全部',
'ViewEvent' => '查看事件',
'ViewPaged' => '查看分页',
'Wake' => '唤醒',
'WarmupFrames' => '预热帪',
'Watch' => '观察',
'Web' => 'Web',
'WebColour' => 'Web颜色',
'Week' => '周',
'White' => '白',
'WhiteBalance' => '白平衡',
'Wide' => '宽',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10 激活字符',
'X10InputAlarmString' => 'X10 输入警报字符',
'X10OutputAlarmString' => 'X10 输出警报字符',
'Y' => 'Y',
'Yes' => '是',
'YouNoPerms' => '您没有访问该资源的权限。',
'Zone' => '区域',
'ZoneAlarmColour' => '报警色彩 (红/绿/蓝)',
'ZoneArea' => '区域',
'ZoneFilterSize' => '过滤宽度/高度 (像素)',
'ZoneMinMaxAlarmArea' => '最小/最大报警区域',
'ZoneMinMaxBlobArea' => '最小/最大污渍区 Blob',
'ZoneMinMaxBlobs' => '最小/最大污渍区数 Blobs',
'ZoneMinMaxFiltArea' => '最小/最大过滤区域',
'ZoneMinMaxPixelThres' => '最小/最大像素阈值(0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => '忽略过载帪数',
'Zones' => '区域',
'Zoom' => '缩放',
'ZoomIn' => '放大',
'ZoomOut' => '缩小',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => '当前登入的是 \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => '最新 %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => '最新版为 v%1$s, 您有的是 v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => '监视器 %1$s 功能',
'RunningRecentVer' => '您运行的是最新版的 ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// 'Potato' => array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' ),
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'事件', 1=>'事件', 2=>'事件' ),
'Monitor' => array( 0=>'监视器', 1=>'监视器', 2=>'监视器' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $CLANG['MonitorCount'], count($monitors), zmVlang( $VLANG['VlangMonitor'], count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,844 +0,0 @@
<?php
//
// ZoneMinder web UK English language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Czech Translation by Lukas Pokorny/Mlada Boleslav
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
//require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
//header( "Content-Type: text/html; charset=iso-8859-2" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
//setlocale( 'LC_ALL', 'cs_CZ' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => '24 bit barevná',
'8BitGrey' => '8 bit ¹edá ¹kála',
'Action' => 'Akce',
'Actual' => 'Skuteèná',
'AddNewControl' => 'Pøidat nové øízení',
'AddNewMonitor' => 'Pøidat kameru',
'AddNewUser' => 'Pøidat u¾ivatele',
'AddNewZone' => 'Pøidat zónu',
'Alarm' => 'Alarm',
'AlarmBrFrames' => 'Alarm<br/>Snímky',
'AlarmFrame' => 'Alarm snímek',
'AlarmFrameCount' => 'Poèet alarm snímkù',
'AlarmLimits' => 'Limity alarmu',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'Alarm Px',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => 'Pozor',
'All' => 'V¹echny',
'Apply' => 'Pou¾ít',
'ApplyingStateChange' => 'Aplikuji zmìnu stavu',
'ArchArchived' => 'Pouze archivované',
'ArchUnarchived' => 'Pouze nearchivované',
'Archive' => 'Archiv',
'Archived' => 'Archivován',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'Alarm snímky',
'AttrArchiveStatus' => 'Archiv status',
'AttrAvgScore' => 'Prùm. skóre',
'AttrCause' => 'Pøíèina',
'AttrDate' => 'Datum',
'AttrDateTime' => 'Datum/Èas',
'AttrDiskBlocks' => 'Bloky disku',
'AttrDiskPercent' => 'Zaplnìní disku',
'AttrDuration' => 'Prùbìh',
'AttrFrames' => 'Snímky',
'AttrId' => 'Id',
'AttrMaxScore' => 'Max. skóre',
'AttrMonitorId' => 'Kamera Id',
'AttrMonitorName' => 'Jméno kamery',
'AttrName' => 'Jméno',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'Èas',
'AttrTotalScore' => 'Celkové skóre',
'AttrWeekday' => 'Den v týdnu',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Èasový limit pro vypr¹ení',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => 'Prùm.<br/>Skóre',
'Background' => 'Background',
'BackgroundFilter' => 'Run filter in background',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to an integer of zero or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Jména moho obsahovat pouze alfanumerické znaky a podtr¾ítko èi pomlèku',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => 'Rychlost sítì',
'BlobPx' => 'Znaèka Px',
'BlobSizes' => 'Velikost znaèky',
'Blobs' => 'Znaèky',
'Brightness' => 'Svìtlost',
'Buffers' => 'Bufery',
'CanAutoFocus' => 'Umí automaticky zaostøit',
'CanAutoGain' => 'Umí automatický zisk',
'CanAutoIris' => 'Umí auto iris',
'CanAutoWhite' => 'Umí automaticky vyvá¾it bílou',
'CanAutoZoom' => 'Umí automaticky zoomovat',
'CanFocus' => 'Umí zaostøit',
'CanFocusAbs' => 'Umí zaostøit absolutnì',
'CanFocusCon' => 'Umí prùbì¾nì zaostøit',
'CanFocusRel' => 'Umí relativnì zaostøit',
'CanGain' => 'Umí zisk',
'CanGainAbs' => 'Umí absolutní zisk',
'CanGainCon' => 'Umí prùbì¾ný zisk',
'CanGainRel' => 'Umí relativní zisk',
'CanIris' => 'Umí iris',
'CanIrisAbs' => 'Umí absolutní iris',
'CanIrisCon' => 'Umí prùbì¾ný iris',
'CanIrisRel' => 'Umí relativní iris',
'CanMove' => 'Umí pohyb',
'CanMoveAbs' => 'Umí absoultní pohyb',
'CanMoveCon' => 'Umí prùbì¾ný pohyb',
'CanMoveDiag' => 'Umí diagonální pohyb',
'CanMoveMap' => 'Umí mapovaný pohyb',
'CanMoveRel' => 'Umí relativní pohyb',
'CanPan' => 'Umí otáèení',
'CanReset' => 'Umí reset',
'CanSetPresets' => 'Umí navolit pøedvolby',
'CanSleep' => 'Mù¾e spát',
'CanTilt' => 'Umí náklon',
'CanWake' => 'Lze vzbudit',
'CanWhite' => 'Umí vyvá¾ení bílé',
'CanWhiteAbs' => 'Umí absolutní vyvá¾ení bílé',
'CanWhiteBal' => 'Umí vyvá¾ení bílé',
'CanWhiteCon' => 'Umí prùbì¾né vyvá¾ení bílé',
'CanWhiteRel' => 'Umí relativní vyvá¾ení bílé',
'CanZoom' => 'Umí zoom',
'CanZoomAbs' => 'Umí absolutní zoom',
'CanZoomCon' => 'Umí prùbì¾ný zoom',
'CanZoomRel' => 'Umí relativní zoom',
'Cancel' => 'Zru¹it',
'CancelForcedAlarm' => 'Zastavit spu¹tìný alarm',
'CaptureHeight' => 'Vý¹ka zdrojového snímku',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => 'Paleta zdrojového snímku',
'CaptureWidth' => '©íøka zdrojového snímku',
'Cause' => 'Pøíèina',
'CheckMethod' => 'Metoda znaèkování alarmem',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'Vybrat filtr',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Zavøít',
'Colour' => 'Barva',
'Command' => 'Pøíkaz',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Nastavení',
'ConfiguredFor' => 'Nastaveno pro',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => 'Potvrdit heslo',
'ConjAnd' => 'a',
'ConjOr' => 'nebo',
'Console' => 'Konzola',
'ContactAdmin' => 'Pro detailní info kontaktujte Va¹eho administrátora.',
'Continue' => 'Pokraèovat',
'Contrast' => 'Kontrast',
'Control' => 'Øízení',
'ControlAddress' => 'Adresa øízení',
'ControlCap' => 'Schopnosti øízení',
'ControlCaps' => 'Typy øízení',
'ControlDevice' => 'Zaøízení øízení',
'ControlType' => 'Typ øízení',
'Controllable' => 'Øíditelná',
'Cycle' => 'Cyklus',
'CycleWatch' => 'Cyklické prohlí¾ení',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Den',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Pøednastavená velikost',
'DefaultView' => 'Default View',
'Delete' => 'Smazat',
'DeleteAndNext' => 'Smazat &amp; Dal¹í',
'DeleteAndPrev' => 'Smazat &amp; Pøedchozí',
'DeleteSavedFilter' => 'Smazat filtr',
'Description' => 'Popis',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'Kanál zaøízení',
'DeviceFormat' => 'Formát zaøízení',
'DeviceNumber' => 'Èíslo zarízení',
'DevicePath' => 'Cesta k zaøízení',
'Devices' => 'Devices',
'Dimensions' => 'Rozmìry',
'DisableAlarms' => 'Zakázat alarmy',
'Disk' => 'Disk',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Prosím podpoøte',
'DonateAlready' => 'Ne, u¾ jsem podpoøil',
'DonateEnticement' => 'Ji¾ nìjakou dobu pou¾íváte software ZoneMinder k ochranì svého majetku a pøedpokládám, ¾e jej shledáváte u¾iteèným. Pøesto¾e je ZoneMinder, znovu pøipomínám, zdarma a volnì ¹íøený software, stojí jeho vývoj a podpora nìjaké peníze. Pokud byste chtìl/a podpoøit budoucí vývoj a nové mo¾nosti softwaru, prosím zva¾te darování finanèní pomoci. Darování je, samozøejmì, dobrovolné, ale zato velmi cenìné mù¾ete pøispìt jakou èástkou chcete.<br><br>Pokud máte zájem podpoøit ná¹ tým, prosím, vyberte ní¾e uvedenou mo¾nost, nebo nav¹tivte http://www.zoneminder.com/donate.html.<br><br>Dìkuji Vám ¾e jste si vybral/a software ZoneMinder a nezapomeòte nav¹tívit fórum na ZoneMinder.com pro podporu a návrhy jak udìlat ZoneMinder je¹tì lep¹ím ne¾ je dnes.',
'DonateRemindDay' => 'Nyní ne, pøipomenout za 1 den',
'DonateRemindHour' => 'Nyní ne, pøipomenout za hodinu',
'DonateRemindMonth' => 'Nyní ne, pøipomenout za mìsíc',
'DonateRemindNever' => 'Ne, nechci podpoøit ZoneMinder, nepøipomínat',
'DonateRemindWeek' => 'Nyní ne, pøipomenout za týden',
'DonateYes' => 'Ano, chcit podpoøit ZoneMinder nyní',
'Download' => 'Stáhnout',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'Prùbìh',
'Edit' => 'Editovat',
'Email' => 'Email',
'EnableAlarms' => 'Povolit alarmy',
'Enabled' => 'Povoleno',
'EnterNewFilterName' => 'Zadejte nové jméno filtru',
'Error' => 'Chyba',
'ErrorBrackets' => 'Chyba, zkontrolujte prosím závorky',
'ErrorValidValue' => 'Chyba, zkontrolujte ¾e podmínky mají správné hodnoty',
'Etc' => 'atd',
'Event' => 'Záznam',
'EventFilter' => 'Filtr záznamù',
'EventId' => 'Id záznamu',
'EventName' => 'Jméno záznamu',
'EventPrefix' => 'Prefix záznamu',
'Events' => 'Záznamy',
'Exclude' => 'Vyjmout',
'Execute' => 'Execute',
'Export' => 'Exportovat',
'ExportDetails' => 'Exportovat detaily záznamu',
'ExportFailed' => 'Chyba pøi exportu',
'ExportFormat' => 'Formát exportovaného souboru',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Exportovat detaily snímku',
'ExportImageFiles' => 'Exportovat obrazové soubory',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Exportovat ostatní soubory (jestli existují)',
'ExportOptions' => 'Mo¾nosti exportu',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Exportovat video soubory (jestli existují)',
'Exporting' => 'Exportuji',
'FPS' => 'fps',
'FPSReportInterval' => 'FPS Interval pro report',
'FTP' => 'FTP',
'Far' => 'Daleko',
'FastForward' => 'Fast Forward',
'Feed' => 'Nasytit',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'Soubor',
'FilterArchiveEvents' => 'Archivovat v¹echny nalezené',
'FilterDeleteEvents' => 'Smazat v¹echny nalezené',
'FilterEmailEvents' => 'Poslat email s detaily nalezených',
'FilterExecuteEvents' => 'Spustit pøíkaz na v¹ech nalezených',
'FilterMessageEvents' => 'Podat zprávu o v¹ech nalezených',
'FilterPx' => 'Filtr Px',
'FilterUnset' => 'You must specify a filter width and height',
'FilterUploadEvents' => 'Uploadovat nalezené',
'FilterVideoEvents' => 'Create video for all matches',
'Filters' => 'Filtry',
'First' => 'První',
'FlippedHori' => 'Pøeklopený vodorovnì',
'FlippedVert' => 'Pøeklopený svisle',
'Focus' => 'Zaostøení',
'ForceAlarm' => 'Spustit alarm',
'Format' => 'Formát',
'Frame' => 'Snímek',
'FrameId' => 'Snímek Id',
'FrameRate' => 'Rychlost snímkù',
'FrameSkip' => 'Vynechat snímek',
'Frames' => 'Snímky',
'Func' => 'Funkce',
'Function' => 'Funkce',
'Gain' => 'Zisk',
'General' => 'General',
'GenerateVideo' => 'Generovat video',
'GeneratingVideo' => 'Generuji video',
'GoToZoneMinder' => 'Jít na ZoneMinder.com',
'Grey' => '©edá',
'Group' => 'Group',
'Groups' => 'Skupiny',
'HasFocusSpeed' => 'Má rychlost zaostøení',
'HasGainSpeed' => 'Má rychlost zisku',
'HasHomePreset' => 'Má Home volbu',
'HasIrisSpeed' => 'Má rychlost irisu',
'HasPanSpeed' => 'Má rychlost otáèení',
'HasPresets' => 'Má pøedvolby',
'HasTiltSpeed' => 'Má rychlost náklonu',
'HasTurboPan' => 'Má Turbo otáèení',
'HasTurboTilt' => 'Má Turbo náklon',
'HasWhiteSpeed' => 'Má rychlost vyvá¾ení bílé',
'HasZoomSpeed' => 'Má rychlost zoomu',
'High' => 'Rychlá',
'HighBW' => 'Rychlá&nbsp;B/W',
'Home' => 'Domù',
'Hour' => 'Hodina',
'Hue' => 'Odstín',
'Id' => 'Id',
'Idle' => 'Pøipraven',
'Ignore' => 'Ignorovat',
'Image' => 'Obraz',
'ImageBufferSize' => 'Velikost buferu snímkù',
'Images' => 'Images',
'In' => 'Dovnitø',
'Include' => 'Vlo¾it',
'Inverted' => 'Pøevrácenì',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => 'Jazyk',
'Last' => 'Poslední',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'výsledkù', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Zobrazit pouze prvních', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Linked Monitors',
'List' => 'Seznam',
'Load' => 'Load',
'Local' => 'Lokální',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Pøihlá¹en jako',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'Pøihla¹uji',
'Login' => 'Pøihlásit',
'Logout' => 'Odhlásit',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'Pomalá',
'LowBW' => 'Pomalá&nbsp;B/W',
'Main' => 'Hlavní',
'Man' => 'Man',
'Manual' => 'Manuál',
'Mark' => 'Oznaèit',
'Max' => 'Max',
'MaxBandwidth' => 'Max bandwidth',
'MaxBrScore' => 'Max.<br/>skóre',
'MaxFocusRange' => 'Max rozsah zaostøení',
'MaxFocusSpeed' => 'Max rychlost zaostøení',
'MaxFocusStep' => 'Max krok zaostøení',
'MaxGainRange' => 'Max rozsah zisku',
'MaxGainSpeed' => 'Max rychlost zisku',
'MaxGainStep' => 'Max krok zisku',
'MaxIrisRange' => 'Max rozsah iris',
'MaxIrisSpeed' => 'Max rychlost iris',
'MaxIrisStep' => 'Max krok iris',
'MaxPanRange' => 'Max rozsah otáèení',
'MaxPanSpeed' => 'Max rychlost otáèení',
'MaxPanStep' => 'Max krok otáèení',
'MaxTiltRange' => 'Max rozsah náklonu',
'MaxTiltSpeed' => 'Max rychlost náklonu',
'MaxTiltStep' => 'Max krok náklonu',
'MaxWhiteRange' => 'Max rozsah vyvá¾ení bílé',
'MaxWhiteSpeed' => 'Max rychlost vyvá¾ení bílé',
'MaxWhiteStep' => 'Max krok vyvá¾ení bílé',
'MaxZoomRange' => 'Max rozsah zoomu',
'MaxZoomSpeed' => 'Max rychlost zoomu',
'MaxZoomStep' => 'Max krok zoomu',
'MaximumFPS' => 'Maximum FPS',
'Medium' => 'Støední',
'MediumBW' => 'Støední&nbsp;B/W',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'Minimum znaèkované oblasti by mìlo být men¹í ne¾ maximum',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'Minimum znaèek by mìlo být men¹í ne¾ maximum',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min rozsah zaostøení',
'MinFocusSpeed' => 'Min rychlost zaostøení',
'MinFocusStep' => 'Min krok zaostøení',
'MinGainRange' => 'Min rozsah zisku',
'MinGainSpeed' => 'Min rychlost zisku',
'MinGainStep' => 'Min krok zisku',
'MinIrisRange' => 'Min rozsah iris',
'MinIrisSpeed' => 'Min rychlost iris',
'MinIrisStep' => 'Min krok iris',
'MinPanRange' => 'Min rozsah otáèení',
'MinPanSpeed' => 'Min rychlost otáèení',
'MinPanStep' => 'Min krok otáèení',
'MinPixelThresLtMax' => 'Minimální práh pixelu by mìl být men¹í ne¾ maximumální',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min rozsah náklonu',
'MinTiltSpeed' => 'Min rychlost náklonu',
'MinTiltStep' => 'Min krok náklonu',
'MinWhiteRange' => 'Min rozsah vyvá¾ení bílé',
'MinWhiteSpeed' => 'Min rychlost vyvá¾ení bílé',
'MinWhiteStep' => 'Min krok vyvá¾ení bílé',
'MinZoomRange' => 'Min rozsah zoomu',
'MinZoomSpeed' => 'Min rychlost zoomu',
'MinZoomStep' => 'Min krok zoomu',
'Misc' => 'Ostatní',
'Monitor' => 'Kamera',
'MonitorIds' => 'Id&nbsp;kamer',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br><br>Please note that this may overwrite any values you already have configured for this monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'Kamery',
'Montage' => 'Sestøih',
'Month' => 'Mìsíc',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Pohyb',
'MustBeGe' => 'musí být vìt¹í nebo rovno ne¾',
'MustBeLe' => 'musí být men¹í nebo rovno ne¾',
'MustConfirmPassword' => 'Musíte potvrdit heslo',
'MustSupplyPassword' => 'Musíte zadat heslo',
'MustSupplyUsername' => 'Musíte zadat u¾ivatelské jméno',
'Name' => 'Jméno',
'Near' => 'Blízko',
'Network' => 'Sí»',
'New' => 'Nový',
'NewGroup' => 'Nová skupina',
'NewLabel' => 'New Label',
'NewPassword' => 'Nové heslo',
'NewState' => 'Nový stav',
'NewUser' => 'Nový u¾ivatel',
'Next' => 'Dal¹í',
'No' => 'Ne',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'Pro tento snímek nejsou ¾ádné záznamy',
'NoGroup' => 'No Group',
'NoSavedFilters' => '®ádné ulo¾ené filtry',
'NoStatisticsRecorded' => 'Pro tento záznam/snímek nejsou zaznamenány ¾ádné statistiky',
'None' => 'Zakázat',
'NoneAvailable' => '®ádná není dostupná',
'Normal' => 'Normalní',
'Notes' => 'Poznámky',
'NumPresets' => 'Poèet pøedvoleb',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'rovno',
'OpGt' => 'vìt¹í',
'OpGtEq' => 'vìt¹í nebo rovno',
'OpIn' => 'nin set',
'OpLt' => 'men¹í',
'OpLtEq' => 'men¹í nebo rovno',
'OpMatches' => 'obsahuje',
'OpNe' => 'nerovná se',
'OpNotIn' => 'nnot in set',
'OpNotMatches' => 'neobsahuje',
'Open' => 'Otevøít',
'OptionHelp' => 'Mo¾nostHelp',
'OptionRestartWarning' => 'Tyto zmìny se neprojeví\ndokud systém bì¾í. Jakmile\ndokonèíte provádìní zmìn prosím\nrestartujte ZoneMinder.',
'Options' => 'Mo¾nosti',
'OrEnterNewName' => 'nebo vlo¾te nové jméno',
'Order' => 'Poøadí',
'Orientation' => 'Orientace',
'Out' => 'Ven',
'OverwriteExisting' => 'Pøepsat existující',
'Paged' => 'Strákovì',
'Pan' => 'Otáèení',
'PanLeft' => 'Posunout vlevo',
'PanRight' => 'Posunout vpravo',
'PanTilt' => 'Otáèení/Náklon',
'Parameter' => 'Parametr',
'Password' => 'Heslo',
'PasswordsDifferent' => 'Hesla se neshodují',
'Paths' => 'Cesty',
'Pause' => 'Pause',
'Phone' => 'Modem',
'PhoneBW' => 'Modem&nbsp;B/W',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'pixely',
'Play' => 'Play',
'PlayAll' => 'Pøehrát v¹e',
'PleaseWait' => 'Prosím èekejte',
'Point' => 'Point',
'PostEventImageBuffer' => 'Pozáznamový bufer',
'PreEventImageBuffer' => 'Pøedzáznamový bufer',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Pøedvolba',
'Presets' => 'Pøedvolby',
'Prev' => 'Zpìt',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'Rychlost',
'Real' => 'Skuteèná',
'Record' => 'Nahrávat',
'RefImageBlendPct' => 'Reference Image Blend %ge',
'Refresh' => 'Obnovit',
'Remote' => 'Sí»ová',
'RemoteHostName' => 'Adresa',
'RemoteHostPath' => 'Cesta',
'RemoteHostPort' => 'Port',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Barvy',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => 'Pøejmenovat',
'Replay' => 'Replay',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'Reset',
'ResetEventCounts' => 'Resetovat poèty záznamù',
'Restart' => 'Restartovat',
'Restarting' => 'Restartuji',
'RestrictedCameraIds' => 'Povolené id kamer',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Prodleva vracení',
'ReturnLocation' => 'Lokace vrácení',
'Rewind' => 'Rewind',
'RotateLeft' => 'Otoèit vlevo',
'RotateRight' => 'Otoèit vpravo',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Re¾im',
'RunState' => 'Stav',
'Running' => 'Bì¾í',
'Save' => 'Ulo¾it',
'SaveAs' => 'Ulo¾it jako',
'SaveFilter' => 'Ulo¾it filtr',
'Scale' => 'Velikost',
'Score' => 'Skóre',
'Secs' => 'Délka(s)',
'Sectionlength' => 'Délka sekce',
'Select' => 'Vybrat',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Select Monitors',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => 'Nastavit',
'SetNewBandwidth' => 'Nastavit novou rychlost sítì',
'SetPreset' => 'Nastavit pøedvolbu',
'Settings' => 'Nastavení',
'ShowFilterWindow' => 'Zobrazit filtr',
'ShowTimeline' => 'Zobrazit èasovou linii ',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Velikost',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Spát',
'SortAsc' => 'Vzestupnì',
'SortBy' => 'Øadit dle',
'SortDesc' => 'Sestupnì',
'Source' => 'Zdroj',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'Typ zdroje',
'Speed' => 'Rychlost',
'SpeedHigh' => 'Vysoká rychlost',
'SpeedLow' => 'Nízká rychlost',
'SpeedMedium' => 'Støední rychlost',
'SpeedTurbo' => 'Turbo rychlost',
'Start' => 'Start',
'State' => 'Stav',
'Stats' => 'Statistiky',
'Status' => 'Status',
'Step' => 'Krok',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Velký krok',
'StepMedium' => 'Støední krok',
'StepNone' => '®ádný krok',
'StepSmall' => 'Malý krok',
'Stills' => 'Snímky',
'Stop' => 'Zastavit',
'Stopped' => 'Zastaven',
'Stream' => 'Stream',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Potvrdit',
'System' => 'System',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Pøiblí¾it',
'Thumbnail' => 'Miniatura',
'Tilt' => 'Náklon',
'Time' => 'Èas',
'TimeDelta' => 'Delta èasu',
'TimeStamp' => 'Èasové razítko',
'Timeline' => 'Èasová linie',
'Timestamp' => 'Razítko',
'TimestampLabelFormat' => 'Formát èasového razítka',
'TimestampLabelX' => 'Èasové razítko X',
'TimestampLabelY' => 'Èasové razítko Y',
'Today' => 'Dnes',
'Tools' => 'Nástroje',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Celkové<br/>skóre',
'TrackDelay' => 'Prodleva dráhy',
'TrackMotion' => 'Pohyb po dráze',
'Triggers' => 'Trigery',
'TurboPanSpeed' => 'Rychlost Turbo otáèení',
'TurboTiltSpeed' => 'Rychlost Turbo náklonu',
'Type' => 'Typ',
'Unarchive' => 'Vyjmout z archivu',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'Jednotky',
'Unknown' => 'Neznámý',
'Update' => 'Update',
'UpdateAvailable' => 'Je dostupný nový update ZoneMinder.',
'UpdateNotNecessary' => 'Update není potøeba.',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Pou¾ít filtr',
'UseFilterExprsPost' => '&nbsp;výrazù', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Pou¾ít&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'U¾ivatel',
'Username' => 'U¾ivatelské jméno',
'Users' => 'U¾ivatelé',
'Value' => 'Hodnota',
'Version' => 'Verze',
'VersionIgnore' => 'Ignorovat tuto verzi',
'VersionRemindDay' => 'Pøipomenout za 1 den',
'VersionRemindHour' => 'Pøipomenout za hodinu',
'VersionRemindNever' => 'Nepøipomínat nové veze',
'VersionRemindWeek' => 'Pøipomenout za týden',
'Video' => 'Video',
'VideoFormat' => 'Video formát',
'VideoGenFailed' => 'Chyba pøi generování videa!',
'VideoGenFiles' => 'Existující video soubory',
'VideoGenNoFiles' => '®ádné video soubory nenalezeny',
'VideoGenParms' => 'Parametry generování videa',
'VideoGenSucceeded' => 'Video vygenerováno úspì¹nì!',
'VideoSize' => 'Velikost videa',
'View' => 'Zobrazit',
'ViewAll' => 'Zobrazit v¹echny',
'ViewEvent' => 'Zobrazit záznam',
'ViewPaged' => 'Zobrazit strákovì',
'Wake' => 'Vzbudit',
'WarmupFrames' => 'Zahøívací snímky',
'Watch' => 'Sledovat',
'Web' => 'Web',
'WebColour' => 'Webová barva',
'Week' => 'Týden',
'White' => 'Bílá',
'WhiteBalance' => 'Vyvá¾ení bílé',
'Wide' => 'Oddálit',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10 aktivaèní øetìzec',
'X10InputAlarmString' => 'X10 input alarm øetìzec',
'X10OutputAlarmString' => 'X10 output alarm øetìzec',
'Y' => 'Y',
'Yes' => 'Ano',
'YouNoPerms' => 'K tomuto zdroji nemáte oprávnìní.',
'Zone' => 'Zóna',
'ZoneAlarmColour' => 'Barva alarmu (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'Zóny',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zvìt¹it',
'ZoomOut' => 'Zmen¹it',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Právì je pøihlá¹en \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Posledních %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'Poslední verze je v%1$s, vy máte v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Funkce %1$s kamery',
'RunningRecentVer' => 'Pou¾íváte poslední verzi ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Záznamù', 1=>'Záznam', 2=>'Záznamy', 5=>'Záznamù' ),
'Monitor' => array( 0=>'Kamer', 1=>'Kamera', 2=>'Kamery', 5=>'Kamer' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,844 +0,0 @@
<?php
//
// ZoneMinder web German language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder german Translation by Robert Schumann (rs at core82 dot de)
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
// header( "Content-Type: text/html; charset=iso-8859-1" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => '24-Bit-Farbe',
'8BitGrey' => '8-Bit-Grau',
'Action' => 'Aktion',
'Actual' => 'Original',
'AddNewControl' => 'Neues Kontrollelement hinzuf&uuml;gen',
'AddNewMonitor' => 'Neuer Monitor',
'AddNewUser' => 'Neuer Benutzer',
'AddNewZone' => 'Neue Zone',
'Alarm' => 'Alarm',
'AlarmBrFrames' => 'Alarm-<br />Bilder',
'AlarmFrame' => 'Alarm-Bilder',
'AlarmFrameCount' => 'Alarm-Bildanzahl',
'AlarmLimits' => 'Alarm-Limits',
'AlarmMaximumFPS' => 'Alarm-Maximum-FPS',
'AlarmPx' => 'Alarm-Pixel',
'AlarmRGBUnset' => 'Sie m&uuml;ssen eine RGB-Alarmfarbe setzen',
'Alert' => 'Alarm',
'All' => 'Alle',
'Apply' => 'OK',
'ApplyingStateChange' => 'Aktiviere neuen Status',
'ArchArchived' => 'Nur Archivierte',
'ArchUnarchived' => 'Nur Nichtarchivierte',
'Archive' => 'Archivieren',
'Archived' => 'Archivierte',
'Area' => 'Bereich',
'AreaUnits' => 'Bereich (px/%)',
'AttrAlarmFrames' => 'Alarmbilder',
'AttrArchiveStatus' => 'Archivstatus',
'AttrAvgScore' => 'Mittlere Punktzahl',
'AttrCause' => 'Grund',
'AttrDate' => 'Datum',
'AttrDateTime' => 'Datum/Zeit',
'AttrDiskBlocks' => 'Disk-Bloecke',
'AttrDiskPercent' => 'Disk-Prozent',
'AttrDuration' => 'Dauer',
'AttrFrames' => 'Bilder',
'AttrId' => 'ID',
'AttrMaxScore' => 'Maximale Punktzahl',
'AttrMonitorId' => 'Monitor-ID',
'AttrMonitorName' => 'Monitorname',
'AttrName' => 'Name',
'AttrNotes' => 'Bemerkungen',
'AttrSystemLoad' => 'Systemlast',
'AttrTime' => 'Zeit',
'AttrTotalScore' => 'Totale Punktzahl',
'AttrWeekday' => 'Wochentag',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto-Stopp-Zeit&uuml;berschreitung',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => 'Mittlere<br/>Punktzahl',
'Background' => 'Hintergrund',
'BackgroundFilter' => 'Filter im Hintergrund laufen lassen',
'BadAlarmFrameCount' => 'Die Bildanzahl muss ganzzahlig 1 oder gr&ouml;&szlig;er sein',
'BadAlarmMaxFPS' => 'Alarm-Maximum-FPS muss eine positive Ganzzahl oder eine Gleitkommazahl sein',
'BadChannel' => 'Der Kanal muss ganzzahlig 0 oder gr&ouml;&szlig;er sein',
'BadDevice' => 'Das Ger&auml;t muss eine g&uuml;ltige Systemresource sein',
'BadFPSReportInterval' => 'Der FPS-Intervall-Puffer-Z&auml;hler muss ganzzahlig 0 oder gr&ouml;&szlig;er sein',
'BadFormat' => 'Das Format muss ganzzahlig 0 oder gr&ouml;&szlig;er sein',
'BadFrameSkip' => 'Der Auslassz&auml;hler f&uuml;r Frames muss ganzzahlig 0 oder gr&ouml;&szlig;er sein',
'BadHeight' => 'Die H&ouml;he muss auf einen g&uuml;ltigen Wert eingestellt sein',
'BadHost' => 'Der Host muss auf eine g&uuml;ltige IP-Adresse oder einen Hostnamen (ohne http://) eingestellt sein',
'BadImageBufferCount' => 'Die Gr&ouml;&szlig;e des Bildpuffers muss ganzzahlig 10 oder gr&ouml;&szlig;er sein',
'BadLabelX' => 'Die x-Koordinate der Bezeichnung muss ganzzahlig 0 oder gr&ouml;&szlig;er sein',
'BadLabelY' => 'Die y-Koordinate der Bezeichnung muss ganzzahlig 0 oder gr&ouml;&szlig;er sein',
'BadMaxFPS' => 'Maximum-FPS muss eine positive Ganzzahl oder eine Gleitkommazahl sein',
'BadNameChars' => 'Namen d&uuml;rfen nur aus Buchstaben, Zahlen und Trenn- oder Unterstrichen bestehen',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Der Pfad muss auf einen g&uuml;ltigen Wert eingestellt sein',
'BadPort' => 'Der Port muss auf eine g&uuml;ltige Zahl eingestellt sein',
'BadPostEventCount' => 'Der Z&auml;hler f&uuml;r die Ereignisfolgebilder muss ganzzahlig 0 oder gr&ouml;&szlig;er sein',
'BadPreEventCount' => 'Der Z&auml;hler f&uuml;r die Ereignisvorlaufbilder muss mindestens ganzzahlig 0 und kleiner als die Bildpuffergr&ouml;&szlig;e sein',
'BadRefBlendPerc' => 'Der Referenz-Blenden-Prozentwert muss ganzzahlig 0 oder gr&ouml;&szlig;er sein',
'BadSectionLength' => 'Die Bereichsl&auml;nge muss ganzzahlig 0 oder gr&ouml;&szlig;er sein',
'BadSignalCheckColour' => 'Die Signalpr&uuml;ffarbe muss auf einen g&uuml;ltigen Farbwert eingestellt sein',
'BadStreamReplayBuffer'=> 'Der Wiedergabestrompuffer tream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Die Anzahl der Vorwärmbilder muss ganzzahlig 0 oder gr&ouml;&szlig;er sein',
'BadWebColour' => 'Die Webfarbe muss auf einen g&uuml;ltigen Farbwert eingestellt sein',
'BadWidth' => 'Die Breite muss auf einen g&uuml;ltigen Wert eingestellt sein',
'Bandwidth' => 'Bandbreite',
'BlobPx' => 'Blob-Pixel',
'BlobSizes' => 'Blobgr&ouml;&szlig;e',
'Blobs' => 'Blobs',
'Brightness' => 'Helligkeit',
'Buffers' => 'Puffer',
'CanAutoFocus' => 'Kann Autofokus',
'CanAutoGain' => 'Kann Auto-Verst&auml;rkung',
'CanAutoIris' => 'Kann Auto-Iris',
'CanAutoWhite' => 'Kann Auto-Wei&szlig;-Abgleich',
'CanAutoZoom' => 'Kann Auto-Zoom',
'CanFocus' => 'Kann&nbsp;Fokus',
'CanFocusAbs' => 'Kann absoluten Fokus',
'CanFocusCon' => 'Kann kontinuierlichen Fokus',
'CanFocusRel' => 'Kann relativen Fokus',
'CanGain' => 'Kann Verst&auml;rkung',
'CanGainAbs' => 'Kann absolute Verst&auml;rkung',
'CanGainCon' => 'Kann kontinuierliche Verst&auml;rkung',
'CanGainRel' => 'Kann relative Verst&auml;kung',
'CanIris' => 'Kann&nbsp;Iris',
'CanIrisAbs' => 'Kann absolute Iris',
'CanIrisCon' => 'Kann kontinuierliche Iris',
'CanIrisRel' => 'Kann relative Iris',
'CanMove' => 'Kann&nbsp;Bewegung',
'CanMoveAbs' => 'Kann absolute Bewegung',
'CanMoveCon' => 'Kann kontinuierliche Bewegung',
'CanMoveDiag' => 'Kann diagonale Bewegung',
'CanMoveMap' => 'Kann Mapped-Bewegung',
'CanMoveRel' => 'Kann relative Bewegung',
'CanPan' => 'Kann&nbsp;Pan' ,
'CanReset' => 'Kann&nbsp;Reset',
'CanSetPresets' => 'Kann Voreinstellungen setzen',
'CanSleep' => 'Kann&nbsp;Sleep',
'CanTilt' => 'Kann&nbsp;Neigung',
'CanWake' => 'Kann&nbsp;Wake',
'CanWhite' => 'Kann Wei&szlig;-Abgleich',
'CanWhiteAbs' => 'Kann absoluten Wei&szlig;-Abgleich',
'CanWhiteBal' => 'Kann Wei&szlig;-Abgleich',
'CanWhiteCon' => 'Kann kontinuierlichen Wei&szlig;-Abgleich',
'CanWhiteRel' => 'Kann relativen Wei&szlig;-Abgleich',
'CanZoom' => 'Kann&nbsp;Zoom',
'CanZoomAbs' => 'Kann absoluten Zoom',
'CanZoomCon' => 'Kann kontinuierlichen Zoom',
'CanZoomRel' => 'Kann relativen Zoom',
'Cancel' => 'Abbruch',
'CancelForcedAlarm' => 'Abbruch des unbedingten Alarms',
'CaptureHeight' => 'Erfasse H&ouml;he',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => 'Erfasse Farbpalette',
'CaptureWidth' => 'Erfasse Breite',
'Cause' => 'Grund',
'CheckMethod' => 'Alarm-Pr&uuml;fmethode',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'Filterauswahl',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Voreinstellung ausw&auml;hlen',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Schlie&szlig;en',
'Colour' => 'Farbe',
'Command' => 'Kommando',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Konfig.',
'ConfiguredFor' => 'Konfiguriert f&uuml;r',
'ConfirmDeleteEvents' => 'Sind Sie sicher, dass Sie die ausgew&auml;hlten Ereignisse l&ouml;schen wollen?',
'ConfirmPassword' => 'Passwortbest&auml;tigung',
'ConjAnd' => 'und',
'ConjOr' => 'oder',
'Console' => 'Konsole',
'ContactAdmin' => 'Bitte kontaktieren Sie den Administrator f&uuml;r weitere Details',
'Continue' => 'Weiter',
'Contrast' => 'Kontrast',
'Control' => 'Kontrolle',
'ControlAddress' => 'Kontrolladresse',
'ControlCap' => 'Kontrollm&ouml;glichkeit',
'ControlCaps' => 'Kontrollm&ouml;glichkeiten',
'ControlDevice' => 'Kontrollger&auml;t',
'ControlType' => 'Kontrolltyp',
'Controllable' => 'Kontrollierbar',
'Cycle' => 'Zyklus',
'CycleWatch' => 'Zeitzyklus',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Tag',
'Debug' => 'Debug',
'DefaultRate' => 'Standardrate',
'DefaultScale' => 'Standardskalierung',
'DefaultView' => 'Standardansicht',
'Delete' => 'L&ouml;schen',
'DeleteAndNext' => 'L&ouml;schen &amp; N&auml;chstes',
'DeleteAndPrev' => 'L&ouml;schen &amp; Vorheriges',
'DeleteSavedFilter' => 'L&ouml;sche gespeichertes Filter',
'Description' => 'Beschreibung',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'Ger&auml;tekanal',
'DeviceFormat' => 'Ger&auml;teformat',
'DeviceNumber' => 'Ger&auml;tenummer',
'DevicePath' => 'Ger&auml;tepfad',
'Devices' => 'Ger&auml;te',
'Dimensions' => 'Abmessungen',
'DisableAlarms' => 'Alarme abschalten',
'Disk' => 'Disk',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Bitte spenden Sie.',
'DonateAlready' => 'Nein, ich habe schon gespendet',
'DonateEnticement' => 'Sie benutzen ZoneMinder nun schon eine Weile und es ist hoffentlich eine n&uuml;tzliche Applikation zur Verbesserung Ihrer Heim- oder Arbeitssicherheit. Obwohl ZoneMinder eine freie Open-Source-Software ist und bleiben wird, entstehen Kosten bei der Entwicklung und dem Support.<br><br>Falls Sie ZoneMinder für Weiterentwicklung in der Zukunft unterst&uuml;tzen m&ouml;chten, denken Sie bitte über eine Spende f&uuml;r das Projekt unter der Webadresse http://www.zoneminder.com/donate.html oder &uuml;ber nachfolgend stehende Option nach. Spenden sind, wie der Name schon sagt, immer freiwillig. Dem Projekt helfen kleine genauso wie gr&ouml;&szlig;ere Spenden sehr weiter und ein herzlicher Dank ist jedem Spender sicher.<br><br>Vielen Dank daf&uuml;r, dass sie ZoneMinder benutzen. Vergessen Sie nicht die Foren unter ZoneMinder.com, um Support zu erhalten und Ihre Erfahrung mit ZoneMinder zu verbessern!',
'DonateRemindDay' => 'Noch nicht, erinnere mich in einem Tag noch mal.',
'DonateRemindHour' => 'Noch nicht, erinnere mich in einer Stunde noch mal.',
'DonateRemindMonth' => 'Noch nicht, erinnere mich in einem Monat noch mal.',
'DonateRemindNever' => 'Nein, ich m&ouml;chte nicht spenden, niemals erinnern.',
'DonateRemindWeek' => 'Noch nicht, erinnere mich in einer Woche noch mal.',
'DonateYes' => 'Ja, ich m&ouml;chte jetzt spenden.',
'Download' => 'Download',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'Dauer',
'Edit' => 'Bearbeiten',
'Email' => 'E-Mail',
'EnableAlarms' => 'Alarme aktivieren',
'Enabled' => 'Aktiviert',
'EnterNewFilterName' => 'Neuen Filternamen eingeben',
'Error' => 'Fehler',
'ErrorBrackets' => 'Fehler. Bitte nur gleiche Anzahl offener und geschlossener Klammern.',
'ErrorValidValue' => 'Fehler. Bitte alle Werte auf richtige Eingabe pr&uuml;fen',
'Etc' => 'etc.',
'Event' => 'Ereignis',
'EventFilter' => 'Ereignisfilter',
'EventId' => 'Ereignis-ID',
'EventName' => 'Ereignisname',
'EventPrefix' => 'Ereignis-Pr&auml;fix',
'Events' => 'Ereignisse',
'Exclude' => 'Ausschluss;',
'Execute' => 'Ausf&uuml;hren',
'Export' => 'Exportieren',
'ExportDetails' => 'Exportiere Ereignis-Details',
'ExportFailed' => 'Exportieren fehlgeschlagen',
'ExportFormat' => 'Exportiere Dateiformat',
'ExportFormatTar' => 'TAR (Bandarchiv)',
'ExportFormatZip' => 'ZIP (Komprimiert)',
'ExportFrames' => 'Exportiere Bilddetails',
'ExportImageFiles' => 'Exportiere Bilddateien',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Exportiere andere Dateien (falls vorhanden)',
'ExportOptions' => 'Exportierungsoptionen',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Exportiere Videodateien (falls vorhanden)',
'Exporting' => 'Exportiere',
'FPS' => 'fps',
'FPSReportInterval' => 'fps-Meldeintervall',
'FTP' => 'FTP',
'Far' => 'Weit',
'FastForward' => 'Schnell vorw&auml;rts',
'Feed' => 'Eingabe',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'Datei',
'FilterArchiveEvents' => 'Archivierung aller Treffer',
'FilterDeleteEvents' => 'L&ouml;schen aller Treffer',
'FilterEmailEvents' => 'Detaillierte E-Mail zu allen Treffern',
'FilterExecuteEvents' => 'Ausf&uuml;hren bei allen Treffern',
'FilterMessageEvents' => 'Detaillierte Nachricht zu allen Treffern',
'FilterPx' => 'Filter-Pixel',
'FilterUnset' => 'Sie m&uuml;ssen eine Breite und H&ouml;he f&uuml;r das Filter angeben',
'FilterUploadEvents' => 'Hochladen aller Treffer',
'FilterVideoEvents' => 'Video f&uuml;r alle Treffer erstellen',
'Filters' => 'Filter',
'First' => 'Erstes',
'FlippedHori' => 'Horizontal gespiegelt',
'FlippedVert' => 'Vertikal gespiegelt',
'Focus' => 'Fokus',
'ForceAlarm' => 'Unbedingter Alarm',
'Format' => 'Format',
'Frame' => 'Bild',
'FrameId' => 'Bild-ID',
'FrameRate' => 'Abspielgeschwindigkeit',
'FrameSkip' => 'Bilder auslassen',
'Frames' => 'Bilder',
'Func' => 'Fkt.',
'Function' => 'Funktion',
'Gain' => 'Verst&auml;rkung',
'General' => 'Allgemeines',
'GenerateVideo' => 'Erzeuge Video',
'GeneratingVideo' => 'Erzeuge Video...',
'GoToZoneMinder' => 'Gehe zu ZoneMinder.com',
'Grey' => 'Grau',
'Group' => 'Gruppe',
'Groups' => 'Gruppen',
'HasFocusSpeed' => 'Hat Fokus-Geschwindigkeit',
'HasGainSpeed' => 'Hat Verst&auml;kungs-Geschwindigkeit',
'HasHomePreset' => 'Hat Standardvoreinstellungen',
'HasIrisSpeed' => 'Hat Irisgeschwindigkeit',
'HasPanSpeed' => 'Hat Pan-Geschwindigkeit',
'HasPresets' => 'Hat Voreinstellungen',
'HasTiltSpeed' => 'Hat Neigungsgeschwindigkeit',
'HasTurboPan' => 'Hat Turbo-Pan',
'HasTurboTilt' => 'Hat Turbo-Neigung',
'HasWhiteSpeed' => 'Hat Wei&szlig;-Abgleichgeschwindigkeit',
'HasZoomSpeed' => 'Hat Zoom-Geschwindigkeit',
'High' => 'hohe',
'HighBW' => 'Hohe&nbsp;B/W',
'Home' => 'Home',
'Hour' => 'Stunde',
'Hue' => 'Farbton',
'Id' => 'ID',
'Idle' => 'Leerlauf',
'Ignore' => 'Ignoriere',
'Image' => 'Bild',
'ImageBufferSize' => 'Bildpuffergr&ouml;&szlig;e',
'Images' => 'Bilder',
'In' => 'In',
'Include' => 'Einschluss',
'Inverted' => 'Invertiert',
'Iris' => 'Iris',
'KeyString' => 'Schl&uuml;sselwort',
'Label' => 'Bezeichnung',
'Language' => 'Sprache',
'Last' => 'Letztes',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'Ergebnisse;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Begrenze nur auf die ersten', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Verbundene Monitore',
'List' => 'Liste',
'Load' => 'Last',
'Local' => 'Lokal',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Angemeldet als',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'Anmelden',
'Login' => 'Anmeldung',
'Logout' => 'Abmelden',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'niedrige',
'LowBW' => 'Niedrige&nbsp;B/W',
'Main' => 'Haupt',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => 'Markieren',
'Max' => 'Max',
'MaxBandwidth' => 'Maximale Bandbreite',
'MaxBrScore' => 'Maximale<br />Punktzahl',
'MaxFocusRange' => 'Maximaler Fokusbereich',
'MaxFocusSpeed' => 'Maximale Fokusgeschwindigkeit',
'MaxFocusStep' => 'Maximale Fokusstufe',
'MaxGainRange' => 'Maximaler Verst&auml;rkungsbereich',
'MaxGainSpeed' => 'Maximale Verst&auml;rkungsgeschwindigkeit',
'MaxGainStep' => 'Maximale Verst&auml;rkungsstufe',
'MaxIrisRange' => 'Maximaler Irisbereich',
'MaxIrisSpeed' => 'Maximale Irisgeschwindigkeit',
'MaxIrisStep' => 'Maximale Irisstufe',
'MaxPanRange' => 'Maximaler Pan-Bereich',
'MaxPanSpeed' => 'Maximale Pan-Geschw.',
'MaxPanStep' => 'Maximale Pan-Stufe',
'MaxTiltRange' => 'Maximaler Neig.-Bereich',
'MaxTiltSpeed' => 'Maximale Neig.-Geschw.',
'MaxTiltStep' => 'Maximale Neig.-Stufe',
'MaxWhiteRange' => 'Maximaler Wei&szlig;-Abgl.bereich',
'MaxWhiteSpeed' => 'Maximale Wei&szlig;-Abgl.geschw.',
'MaxWhiteStep' => 'Maximale Wei&szlig;-Abgl.stufe',
'MaxZoomRange' => 'Maximaler Zoom-Bereich',
'MaxZoomSpeed' => 'Maximale Zoom-Geschw.',
'MaxZoomStep' => 'Maximale Zoom-Stufe',
'MaximumFPS' => 'Maximale FPS',
'Medium' => 'mittlere',
'MediumBW' => 'Mittlere&nbsp;B/W',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Der minimale Alarmbereich sollte kleiner sein als der maximale',
'MinAlarmAreaUnset' => 'Sie m&uuml;ssen einen Minimumwert an Alarmfl&auml;chenpixeln angeben',
'MinBlobAreaLtMax' => 'Die minimale Blob-Fl&auml;che muss kleiner sein als die maximale',
'MinBlobAreaUnset' => 'Sie m&uuml;ssen einen Minimumwert an Blobfl&auml;chenpixeln angeben',
'MinBlobLtMinFilter' => 'Die minimale Blob-Fl&auml;che sollte kleiner oder gleich der minimalen Filterfl&auml;che sein',
'MinBlobsLtMax' => 'Die minimalen Blobs m&uuml;ssen kleiner sein als die maximalen',
'MinBlobsUnset' => 'Sie m&uuml;ssen einen Minimumwert an Blobs angeben',
'MinFilterAreaLtMax' => 'Die minimale Filterfl&auml;che sollte kleiner sein als die maximale',
'MinFilterAreaUnset' => 'Sie m&uuml;ssen einen Minimumwert an Filterpixeln angeben',
'MinFilterLtMinAlarm' => 'Die minimale Filterfl&auml;che sollte kleiner oder gleich der minimalen Alarmfl&auml;che sein',
'MinFocusRange' => 'Min. Fokusbereich',
'MinFocusSpeed' => 'Min. Fokusgeschw.',
'MinFocusStep' => 'Min. Fokusstufe',
'MinGainRange' => 'Min. Verst&auml;rkungsbereich',
'MinGainSpeed' => 'Min. Verst&auml;rkungsgeschwindigkeit',
'MinGainStep' => 'Min. Verst&auml;rkungsstufe',
'MinIrisRange' => 'Min. Irisbereich',
'MinIrisSpeed' => 'Min. Irisgeschwindigkeit',
'MinIrisStep' => 'Min. Irisstufe',
'MinPanRange' => 'Min. Pan-Bereich',
'MinPanSpeed' => 'Min. Pan-Geschwindigkeit',
'MinPanStep' => 'Min. Pan-Stufe',
'MinPixelThresLtMax' => 'Der minimale Pixelschwellwert muss kleiner sein als der maximale',
'MinPixelThresUnset' => 'Sie m&uuml;ssen einen minimalen Pixel-Schwellenwert angeben',
'MinTiltRange' => 'Min. Neigungsbereich',
'MinTiltSpeed' => 'Min. Neigungsgeschwindigkeit',
'MinTiltStep' => 'Min. Neigungsstufe',
'MinWhiteRange' => 'Min. Wei&szlig;-Abgleichbereich',
'MinWhiteSpeed' => 'Min. Wei&szlig;-Abgleichgeschwindigkeit',
'MinWhiteStep' => 'Min. Wei&szlig;-Abgleichstufe',
'MinZoomRange' => 'Min. Zoom-Bereich',
'MinZoomSpeed' => 'Min. Zoom-Geschwindigkeit',
'MinZoomStep' => 'Min. Zoom-Stufe',
'Misc' => 'Verschiedenes',
'Monitor' => 'Monitor',
'MonitorIds' => 'Monitor-ID',
'MonitorPreset' => 'Monitor-Voreinstellung',
'MonitorPresetIntro' => 'W&auml;hlen Sie eine geeignete Voreinstellung aus der folgenden Liste.<br><br>Bitte beachten Sie, dass dies m&ouml;gliche Einstellungen von Ihnen am Monitor &uuml;berschreiben kann.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'Monitore',
'Montage' => 'Montage',
'Month' => 'Monat',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Bewegung',
'MustBeGe' => 'muss groesser oder gleich sein wie',
'MustBeLe' => 'muss kleiner oder gleich sein wie',
'MustConfirmPassword' => 'Sie m&uuml;ssen das Passwort best&auml;tigen.',
'MustSupplyPassword' => 'Sie m&uuml;ssen ein Passwort vergeben.',
'MustSupplyUsername' => 'Sie m&uuml;ssen einen Usernamen vergeben.',
'Name' => 'Name',
'Near' => 'Nah',
'Network' => 'Netzwerk',
'New' => 'Neu',
'NewGroup' => 'Neue Gruppe',
'NewLabel' => 'Neuer Bezeichner',
'NewPassword' => 'Neues Passwort',
'NewState' => 'Neuer Status',
'NewUser' => 'Neuer Benutzer',
'Next' => 'N&auml;chstes',
'No' => 'Nein',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'Es gibt keine Aufnahmen von diesem Ereignis.',
'NoGroup' => 'Keine Gruppe',
'NoSavedFilters' => 'Keine gespeicherten Filter',
'NoStatisticsRecorded' => 'Keine Statistik f&uuml;r dieses Ereignis/diese Bilder',
'None' => 'ohne',
'NoneAvailable' => 'Nichts verf&uuml;gbar',
'Normal' => 'Normal',
'Notes' => 'Bemerkungen',
'NumPresets' => 'Nummerierte Voreinstellungen',
'Off' => 'Aus',
'On' => 'An',
'OpEq' => 'gleich zu',
'OpGt' => 'groesser als',
'OpGtEq' => 'groesser oder gleich wie',
'OpIn' => 'in Satz',
'OpLt' => 'kleiner als',
'OpLtEq' => 'kleiner oder gleich wie',
'OpMatches' => 'zutreffend',
'OpNe' => 'nicht gleich',
'OpNotIn' => 'nicht im Satz',
'OpNotMatches' => 'nicht zutreffend',
'Open' => '&Ouml;ffnen',
'OptionHelp' => 'Hilfe',
'OptionRestartWarning' => 'Ver&auml;nderungen werden erst nach einem Neustart des Programms aktiv.\nF&uuml;r eine sofortige &Auml;nderung starten Sie das Programm bitte neu.',
'Options' => 'Optionen',
'OrEnterNewName' => 'oder neuen Namen eingeben',
'Order' => 'Reihenfolge',
'Orientation' => 'Ausrichtung',
'Out' => 'Aus',
'OverwriteExisting' => '&Uuml;berschreibe bestehende',
'Paged' => 'Seitennummeriert',
'Pan' => 'Pan',
'PanLeft' => 'Pan-Left',
'PanRight' => 'Pan-Right',
'PanTilt' => 'Pan/Neigung',
'Parameter' => 'Parameter',
'Password' => 'Passwort',
'PasswordsDifferent' => 'Die Passw&ouml;rter sind unterschiedlich',
'Paths' => 'Pfade',
'Pause' => 'Pause',
'Phone' => 'Telefon',
'PhoneBW' => 'Tel.&nbsp;B/W',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel-Differenz',
'Pixels' => 'Pixel',
'Play' => 'Abspielen',
'PlayAll' => 'Alle zeigen',
'PleaseWait' => 'Bitte warten',
'Point' => 'Punkt',
'PostEventImageBuffer' => 'Nachereignispuffer',
'PreEventImageBuffer' => 'Vorereignispuffer',
'PreserveAspect' => 'Seitenverh&auml;ltnis beibehalten',
'Preset' => 'Voreinstellung',
'Presets' => 'Voreinstellungen',
'Prev' => 'Vorheriges',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protokoll',
'Rate' => 'Abspielgeschwindigkeit',
'Real' => 'Real',
'Record' => 'Aufnahme',
'RefImageBlendPct' => 'Referenz-Bildblende',
'Refresh' => 'Aktualisieren',
'Remote' => 'Entfernt',
'RemoteHostName' => 'Entfernter Hostname',
'RemoteHostPath' => 'Entfernter Hostpfad',
'RemoteHostPort' => 'Entfernter Hostport',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Entfernte Bildfarbe',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => 'Umbenennen',
'Replay' => 'Wiederholung',
'ReplayAll' => 'Alle Ereignisse',
'ReplayGapless' => 'L&uuml;ckenlose Ereignisse',
'ReplaySingle' => 'Einzelereignis',
'Reset' => 'Zur&uuml;cksetzen',
'ResetEventCounts' => 'L&ouml;sche Ereignispunktzahl',
'Restart' => 'Neustart',
'Restarting' => 'Neustarten',
'RestrictedCameraIds' => 'Verbotene Kamera-ID',
'RestrictedMonitors' => 'Eingeschr&auml;nkte Monitore',
'ReturnDelay' => 'R&uuml;ckkehr-Verz&ouml;gerung',
'ReturnLocation' => 'R&uuml;ckkehrpunkt',
'Rewind' => 'Zur&uuml;ckspulen',
'RotateLeft' => 'Drehung links',
'RotateRight' => 'Drehung rechts',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Betriebsmodus',
'RunState' => 'Laufender Status',
'Running' => 'In Betrieb',
'Save' => 'OK',
'SaveAs' => 'Speichere als',
'SaveFilter' => 'Speichere Filter',
'Scale' => 'Skalierung',
'Score' => 'Punktzahl',
'Secs' => 'Sekunden',
'Sectionlength' => 'Sektionsl&auml;nge',
'Select' => 'Auswahl',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'W&auml;hle Monitore',
'SelfIntersecting' => 'Die Polygonr&auml;nder d&uuml;rfen sich nicht &uuml;berschneiden.',
'Set' => 'Setze',
'SetNewBandwidth' => 'Setze neue Bandbreite',
'SetPreset' => 'Setze Voreinstellung',
'Settings' => 'Einstellungen',
'ShowFilterWindow' => 'Zeige Filterfenster',
'ShowTimeline' => 'Zeige Zeitlinie',
'SignalCheckColour' => 'Farbe des Signalchecks',
'Size' => 'Gr&ouml;&szlig;e',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Schlaf',
'SortAsc' => 'aufsteigend',
'SortBy' => 'Sortieren nach',
'SortDesc' => 'absteigend',
'Source' => 'Quelle',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'Quellentyp',
'Speed' => 'Geschwindigkeit',
'SpeedHigh' => 'Hohe Geschwindigkeit',
'SpeedLow' => 'Niedrige Geschwindigkeit',
'SpeedMedium' => 'Mittlere Geschwindigkeit',
'SpeedTurbo' => 'Turbo-Geschwindigkeit',
'Start' => 'Start',
'State' => 'Status',
'Stats' => 'Status',
'Status' => 'Status',
'Step' => 'Stufe',
'StepBack' => 'Einen Schritt r&uuml;ckw&auml;rts',
'StepForward' => 'Einen Schritt vorw&auml;rts',
'StepLarge' => 'Gro&szlig;e Stufe',
'StepMedium' => 'Mittlere Stufe',
'StepNone' => 'Keine Stufe',
'StepSmall' => 'Kleine Stufe',
'Stills' => 'Bilder',
'Stop' => 'Stop',
'Stopped' => 'Gestoppt',
'Stream' => 'Stream',
'StreamReplayBuffer' => 'Stream-Wiedergabe-Bildpuffer',
'Submit' => 'Absenden',
'System' => 'System',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Miniatur',
'Tilt' => 'Neigung',
'Time' => 'Zeit',
'TimeDelta' => 'Zeitdifferenz',
'TimeStamp' => 'Zeitstempel',
'Timeline' => 'Zeitlinie',
'Timestamp' => 'Zeitstempel',
'TimestampLabelFormat' => 'Format des Zeitstempels',
'TimestampLabelX' => 'Zeitstempel-X',
'TimestampLabelY' => 'Zeitstempel-Y',
'Today' => 'Heute',
'Tools' => 'Werkzeuge',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Totale<br/>Punktzahl',
'TrackDelay' => 'Nachf&uuml;hrungsverz&ouml;gerung',
'TrackMotion' => 'Bewegungs-Nachf&uuml;hrung',
'Triggers' => 'Ausl&ouml;ser',
'TurboPanSpeed' => 'Turbo-Pan-Geschwindigkeit',
'TurboTiltSpeed' => 'Turbo-Neigungsgeschwindigkeit',
'Type' => 'Typ',
'Unarchive' => 'Aus Archiv entfernen',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'Einheiten',
'Unknown' => 'Unbekannt',
'Update' => 'Aktualisieren',
'UpdateAvailable' => 'Eine Aktualisierung f&uuml;r ZoneMinder ist verf&uuml;gbar.',
'UpdateNotNecessary' => 'Es ist keine Aktualisierung verf&uuml;gbar.',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Benutze Filter',
'UseFilterExprsPost' => '&nbsp;Filter&nbsp;Ausdr&uuml;cke', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Benutze&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'Benutzer',
'Username' => 'Benutzername',
'Users' => 'Benutzer',
'Value' => 'Wert',
'Version' => 'Version',
'VersionIgnore' => 'Ignoriere diese Version',
'VersionRemindDay' => 'Erinnere mich wieder in 1 Tag.',
'VersionRemindHour' => 'Erinnere mich wieder in 1 Stunde.',
'VersionRemindNever' => 'Informiere mich nicht mehr &uuml;ber neue Versionen.',
'VersionRemindWeek' => 'Erinnere mich wieder in 1 Woche.',
'Video' => 'Video',
'VideoFormat' => 'Videoformat',
'VideoGenFailed' => 'Videoerzeugung fehlgeschlagen!',
'VideoGenFiles' => 'Existierende Videodateien',
'VideoGenNoFiles' => 'Keine Videodateien gefunden.',
'VideoGenParms' => 'Parameter der Videoerzeugung',
'VideoGenSucceeded' => 'Videoerzeugung erfolgreich!',
'VideoSize' => 'Videogr&ouml;&szlig;e',
'View' => 'Ansicht',
'ViewAll' => 'Alles ansehen',
'ViewEvent' => 'Zeige Ereignis',
'ViewPaged' => 'Seitenansicht',
'Wake' => 'Aufwachen',
'WarmupFrames' => 'Aufw&auml;rmbilder',
'Watch' => 'Beobachte',
'Web' => 'Web',
'WebColour' => 'Webfarbe',
'Week' => 'Woche',
'White' => 'Wei&szlig;',
'WhiteBalance' => 'Wei&szlig;-Abgleich',
'Wide' => 'Weit',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10-Aktivierungswert',
'X10InputAlarmString' => 'X10-Eingabe-Alarmwert',
'X10OutputAlarmString' => 'X10-Ausgabe-Alarmwert',
'Y' => 'Y',
'Yes' => 'Ja',
'YouNoPerms' => 'Keine Erlaubnis zum Zugang dieser Resource.',
'Zone' => 'Zone',
'ZoneAlarmColour' => 'Alarmfarbe (Rot/Gr&uuml;n/Blau)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter-Breite/-H&ouml;he (Pixel)',
'ZoneMinMaxAlarmArea' => 'Min./max. Alarmfl&auml;che',
'ZoneMinMaxBlobArea' => 'Min./max. Blobfl&auml;che',
'ZoneMinMaxBlobs' => 'Min./max. Blobs',
'ZoneMinMaxFiltArea' => 'Min./max. Filterfl&auml;che',
'ZoneMinMaxPixelThres' => 'Min./max. Pixelschwellwert',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Bildauslassrate bei System&uuml;berlastung',
'Zones' => 'Zonen',
'Zoom' => 'Zoom',
'ZoomIn' => 'Hineinzoomen',
'ZoomOut' => 'Herauszoomen',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Momentan angemeldet ist \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Letzte %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'Die letzte Version ist v%1$s, Sie haben v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Monitor %1$s Funktion',
'RunningRecentVer' => 'Sie benutzen die aktuellste Version von Zoneminder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Ereignisse', 1=>'Ereignis;', 2=>'Ereignisse' ),
'Monitor' => array( 0=>'Monitore', 1=>'Monitor', 2=>'Monitore' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,845 +0,0 @@
<?php
//
// ZoneMinder web Danish language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Danish Translation by Tom Stage
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
// header( "Content-Type: text/html; charset=iso-8859-1" );
header( "Content-Type: text/html; charset=windows-1252" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => '24 bit farve',
'8BitGrey' => '8 bit greyscale',
'Action' => 'Action',
'Actual' => 'Aktuel',
'AddNewControl' => 'Tilføj Ny kontrol',
'AddNewMonitor' => 'Tilføj Ny Monitor',
'AddNewUser' => 'Tilføj Ny Bruger',
'AddNewZone' => 'Tilføj Ny Zone',
'Alarm' => 'Alarm',
'AlarmBrFrames' => 'Alarm<br/>Billeder',
'AlarmFrame' => 'Alarm Billede',
'AlarmFrameCount' => 'Alarm Billede Tæller',
'AlarmLimits' => 'Alarm Begrændsing',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'Alarm Px',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => 'Alarm',
'All' => 'Alle',
'Apply' => 'Aktiver',
'ApplyingStateChange' => 'Aktivere State Ændring',
'ArchArchived' => 'Kun Arkiverede',
'ArchUnarchived' => 'Kun Ikke Arkiverede',
'Archive' => 'Arkiver',
'Archived' => 'Archived',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'Alarm Billeder',
'AttrArchiveStatus' => 'Arkiverings Status',
'AttrAvgScore' => 'Avg. Skore',
'AttrCause' => 'Årsag',
'AttrDate' => 'Dato',
'AttrDateTime' => 'Dato/Tid',
'AttrDiskBlocks' => 'Disk Blocks',
'AttrDiskPercent' => 'Disk Procent',
'AttrDuration' => 'Forløb',
'AttrFrames' => 'Billeder',
'AttrId' => 'Id',
'AttrMaxScore' => 'Max. Skore',
'AttrMonitorId' => 'Monitor Id',
'AttrMonitorName' => 'Monitor Navn',
'AttrName' => 'Navn',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'Tid',
'AttrTotalScore' => 'Total Skore',
'AttrWeekday' => 'Uge Dag',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto Stop Timeout',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => 'Avg.<br/>Skore',
'Background' => 'Background',
'BackgroundFilter' => 'Run filter in background',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to an integer of zero or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Navne må kun indeholde alphanumeric karaktere plus hyphen og underscore',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => 'Båndbrede',
'BlobPx' => 'Blob Px',
'BlobSizes' => 'Blob Størelse',
'Blobs' => 'Blobs',
'Brightness' => 'Brightness',
'Buffers' => 'Buffere',
'CanAutoFocus' => 'Kan Auto Focus',
'CanAutoGain' => 'Kan Auto Gain',
'CanAutoIris' => 'Kan Auto Iris',
'CanAutoWhite' => 'Kan Auto White Bal.',
'CanAutoZoom' => 'Kan Auto Zoom',
'CanFocus' => 'Kan Focus',
'CanFocusAbs' => 'Kan Focus Absolut',
'CanFocusCon' => 'Kan Focus Kontinuerligt',
'CanFocusRel' => 'Kan Focus Relativt',
'CanGain' => 'Kan Gain ',
'CanGainAbs' => 'Kan Gain Absolut',
'CanGainCon' => 'Kan Gain Kontinuerligt',
'CanGainRel' => 'Kan Gain Relativt',
'CanIris' => 'Kan Iris',
'CanIrisAbs' => 'Kan Iris Absolut',
'CanIrisCon' => 'Kan Iris Kontinuerligt',
'CanIrisRel' => 'Kan Iris Relativt',
'CanMove' => 'Kan Bevæge',
'CanMoveAbs' => 'Kan Bevæge Absolut',
'CanMoveCon' => 'Kan Bevæge Kontinuerligt',
'CanMoveDiag' => 'Kan Bevæge Diagonalt',
'CanMoveMap' => 'Kan Bevæge Mapped',
'CanMoveRel' => 'Kan Bevæge Relativt',
'CanPan' => 'Kan Pan' ,
'CanReset' => 'Kan Reset',
'CanSetPresets' => 'Kan Set Presets',
'CanSleep' => 'Kan Sove',
'CanTilt' => 'Kan Tilt',
'CanWake' => 'Kan Vågne',
'CanWhite' => 'Kan White Balance',
'CanWhiteAbs' => 'Kan White Bal. Absolut',
'CanWhiteBal' => 'Kan White Bal.',
'CanWhiteCon' => 'Kan White Bal. Kontinuerligt',
'CanWhiteRel' => 'Kan White Bal. Relativt',
'CanZoom' => 'Kan Zoom',
'CanZoomAbs' => 'Kan Zoom Absolut',
'CanZoomCon' => 'Kan Zoom Kontinuerligt',
'CanZoomRel' => 'Kan Zoom Relativt',
'Cancel' => 'Fortryd',
'CancelForcedAlarm' => 'Fortryd Forced Alarm',
'CaptureHeight' => 'Capture Height',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => 'Capture Palette',
'CaptureWidth' => 'Capture Width',
'Cause' => 'Årsag',
'CheckMethod' => 'Alarm Check Methode',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'Vælg Filter',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Luk',
'Colour' => 'Farve',
'Command' => 'Kommando',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'konfig',
'ConfiguredFor' => 'Konfigureret for',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => 'Verifiser Password',
'ConjAnd' => 'og',
'ConjOr' => 'eller',
'Console' => 'Konsol',
'ContactAdmin' => 'Kontakt Din adminstrator for detalier.',
'Continue' => 'Fortsæt',
'Contrast' => 'Kontrast',
'Control' => 'Kontrol',
'ControlAddress' => 'Kontrol Addresse',
'ControlCap' => 'Kontrol Capability',
'ControlCaps' => 'Kontrol Capabilities',
'ControlDevice' => 'Kontrol Enhed',
'ControlType' => 'Kontrol Type',
'Controllable' => 'Controllable',
'Cycle' => 'Cycle',
'CycleWatch' => 'Cycle Watch',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Dag',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Default Scale',
'DefaultView' => 'Default View',
'Delete' => 'Slet',
'DeleteAndNext' => 'Slet &amp; Næste',
'DeleteAndPrev' => 'Slet &amp; Forrige',
'DeleteSavedFilter' => 'Slet Gemte filter',
'Description' => 'Beskrivelse',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'Enheds Kanal',
'DeviceFormat' => 'Enheds Format',
'DeviceNumber' => 'Enheds Nummer',
'DevicePath' => 'Device Path',
'Devices' => 'Devices',
'Dimensions' => 'Dimentioner',
'DisableAlarms' => 'Disable Alarms',
'Disk' => 'Disk',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Please Donate',
'DonateAlready' => 'No, I\'ve already donated',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br><br>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br><br>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'DonateRemindDay' => 'Not yet, remind again in 1 day',
'DonateRemindHour' => 'Not yet, remind again in 1 hour',
'DonateRemindMonth' => 'Not yet, remind again in 1 month',
'DonateRemindNever' => 'No, I don\'t want to donate, never remind',
'DonateRemindWeek' => 'Not yet, remind again in 1 week',
'DonateYes' => 'Yes, I\'d like to donate now',
'Download' => 'Download',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'Forløb',
'Edit' => 'Rediger',
'Email' => 'Email',
'EnableAlarms' => 'Enable Alarms',
'Enabled' => 'Aktiv',
'EnterNewFilterName' => 'Skriv Nyt filter navn',
'Error' => 'Fejl',
'ErrorBrackets' => 'Fejl, check at du har lige antal af Åbnings og Lukkende brackets',
'ErrorValidValue' => 'Fejl, check at alle terms har en valid værdig',
'Etc' => 'etc',
'Event' => 'Event',
'EventFilter' => 'Event Filter',
'EventId' => 'Event Id',
'EventName' => 'Event Navn',
'EventPrefix' => 'Event Prefix',
'Events' => 'Events',
'Exclude' => 'Exclude',
'Execute' => 'Execute',
'Export' => 'Export',
'ExportDetails' => 'Export Event Details',
'ExportFailed' => 'Export Failed',
'ExportFormat' => 'Export File Format',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Export Frame Details',
'ExportImageFiles' => 'Export Image Files',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Export Other Files (if present)',
'ExportOptions' => 'Export Options',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Export Video Files (if present)',
'Exporting' => 'Exporting',
'FPS' => 'fps',
'FPSReportInterval' => 'FPS Raport Interval',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'Feed',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'File',
'FilterArchiveEvents' => 'Arkiver alle matchende',
'FilterDeleteEvents' => 'Slet alle matchende',
'FilterEmailEvents' => 'Email detalier af alle matchende',
'FilterExecuteEvents' => 'Kør kommando på alle matchende',
'FilterMessageEvents' => 'Send detalier af alle matchende',
'FilterPx' => 'Filter Px',
'FilterUnset' => 'You must specify a filter width and height',
'FilterUploadEvents' => 'Upload alle matchende',
'FilterVideoEvents' => 'Create video for all matches',
'Filters' => 'Filters',
'First' => 'Første',
'FlippedHori' => 'Flipped Horizontally',
'FlippedVert' => 'Flipped Vertically',
'Focus' => 'Fokus',
'ForceAlarm' => 'Tving Alarm',
'Format' => 'Format',
'Frame' => 'Billede',
'FrameId' => 'Billede Id',
'FrameRate' => 'Billede Rate',
'FrameSkip' => 'Billede Skip',
'Frames' => 'Billede',
'Func' => 'Func',
'Function' => 'Funktion',
'Gain' => 'Gain',
'General' => 'General',
'GenerateVideo' => 'Generer Video',
'GeneratingVideo' => 'Generere Video',
'GoToZoneMinder' => 'Gå til ZoneMinder.com',
'Grey' => 'Grå',
'Group' => 'Group',
'Groups' => 'Grupper',
'HasFocusSpeed' => 'Har Fokus Hastighed',
'HasGainSpeed' => 'Har Gain Hastighed',
'HasHomePreset' => 'Har Hjem Preset',
'HasIrisSpeed' => 'Har Iris Hastighed',
'HasPanSpeed' => 'Har Pan Hastighed',
'HasPresets' => 'Har Presets',
'HasTiltSpeed' => 'Har Tilt Hastighed',
'HasTurboPan' => 'Har Turbo Pan',
'HasTurboTilt' => 'Har Turbo Tilt',
'HasWhiteSpeed' => 'Har White Bal. Hastighed',
'HasZoomSpeed' => 'Har Zoom Hastighed',
'High' => 'Høj',
'HighBW' => 'Høj&nbsp;B/B',
'Home' => 'Hjem',
'Hour' => 'Time',
'Hue' => 'Hue',
'Id' => 'Id',
'Idle' => 'Idle',
'Ignore' => 'Ignorer',
'Image' => 'Billede',
'ImageBufferSize' => 'Billede Buffer Størelse (Billeder)',
'Images' => 'Images',
'In' => 'Ind',
'Include' => 'Inkluder',
'Inverted' => 'Inverteret',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => 'Sprog',
'Last' => 'Sidste',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'results only;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Limit to first', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Linked Monitors',
'List' => 'List',
'Load' => 'Load',
'Local' => 'Lokal',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Logget Ind Som',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'Logger Ind',
'Login' => 'Logind',
'Logout' => 'Logud',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'Lav',
'LowBW' => 'Lav&nbsp;B/B',
'Main' => 'Main',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => 'Marker',
'Max' => 'Max',
'MaxBandwidth' => 'Max Bandwidth',
'MaxBrScore' => 'Max.<br/>Skore',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MaximumFPS' => 'Maximale FPS',
'Medium' => 'Medium',
'MediumBW' => 'Medium&nbsp;B/B',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'Minimum blob område bør være mindre end maximum',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'Minimum blobs bør være mindre end maximum',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => 'Minimum pixel threshold bør være mindre end maximum',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => 'Misc',
'Monitor' => 'Monitor',
'MonitorIds' => 'Monitor&nbsp;Ids',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br><br>Please note that this may overwrite any values you already have configured for this monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'Monitore',
'Montage' => 'Montage',
'Month' => 'Måned',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Flyt',
'MustBeGe' => 'skal være støre end eller ligmed',
'MustBeLe' => 'Skal være mindre end eller ligmed',
'MustConfirmPassword' => 'Du skal konfimere password',
'MustSupplyPassword' => 'Du skal angive et password',
'MustSupplyUsername' => 'Du skal opgive et username',
'Name' => 'Navn',
'Near' => 'Near',
'Network' => 'Netværk',
'New' => 'Ny',
'NewGroup' => 'Ny Gruppe',
'NewLabel' => 'New Label',
'NewPassword' => 'Nyt Password',
'NewState' => 'Ny State',
'NewUser' => 'Ny User',
'Next' => 'Næste',
'No' => 'Nej',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'Der er ingen billeder optaget for denne event',
'NoGroup' => 'No Group',
'NoSavedFilters' => 'NoSavedFilters',
'NoStatisticsRecorded' => 'Der er ingen statestikker optaget for denne event/frame',
'None' => 'Ingen',
'NoneAvailable' => 'Ingen Tilstede',
'Normal' => 'Normal',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'ligmed',
'OpGt' => 'støre end',
'OpGtEq' => 'støre end eller ligmed',
'OpIn' => 'i sættet',
'OpLt' => 'mindre end',
'OpLtEq' => 'mindre end eller ligmed',
'OpMatches' => 'matches',
'OpNe' => 'ikke ligmed',
'OpNotIn' => 'ikke i sættet',
'OpNotMatches' => 'does not match',
'Open' => 'Åben',
'OptionHelp' => 'OptionHelp',
'OptionRestartWarning' => 'Disse ændringer træder ikke i fuld effect\nmens systemt køre. Når du har\nafsluttet ændringer bedes du\ngenstarte ZoneMinder.',
'Options' => 'Indstillinger',
'OrEnterNewName' => 'eller skriv nyt navn',
'Order' => 'Order',
'Orientation' => 'Orientation',
'Out' => 'Ud',
'OverwriteExisting' => 'Overskriv Eksisterende',
'Paged' => 'Paged',
'Pan' => 'Pan',
'PanLeft' => 'Pan Left',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'Parameter',
'Password' => 'Password',
'PasswordsDifferent' => 'Det nye og konfimerede passwords er forskellige',
'Paths' => 'Stiger',
'Pause' => 'Pause',
'Phone' => 'Telefon',
'PhoneBW' => 'Telefon&nbsp;B/B',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'pixels',
'Play' => 'Play',
'PlayAll' => 'Afspil Alle',
'PleaseWait' => 'Vent venligst',
'Point' => 'Point',
'PostEventImageBuffer' => 'Efter Event Billed Buffer',
'PreEventImageBuffer' => 'Før Event Billed Buffer',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => 'Prev',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'Rate',
'Real' => 'Real',
'Record' => 'Optag',
'RefImageBlendPct' => 'Reference Billede Blend %ge',
'Refresh' => 'Opdater',
'Remote' => 'Remote',
'RemoteHostName' => 'Remote Host Navn',
'RemoteHostPath' => 'Remote Host Stig',
'RemoteHostPort' => 'Remote Host Port',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Remote Image Farver',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => 'Omdøb',
'Replay' => 'Spil Igen',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'Nulstil',
'ResetEventCounts' => 'Reset Event Counts',
'Restart' => 'Genstart',
'Restarting' => 'Genstarter',
'RestrictedCameraIds' => 'Begranset Kamera Ids',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Return Delay',
'ReturnLocation' => 'Return Location',
'Rewind' => 'Rewind',
'RotateLeft' => 'Rotate Left',
'RotateRight' => 'Rotate Right',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Kørsels Mode',
'RunState' => 'Run State',
'Running' => 'Køre',
'Save' => 'Gem',
'SaveAs' => 'Gem Som',
'SaveFilter' => 'Gem Filter',
'Scale' => 'Scale',
'Score' => 'Skore',
'Secs' => 'Sekunder',
'Sectionlength' => 'Sektion længde',
'Select' => 'Vælg',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Select Monitors',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => 'Sæt',
'SetNewBandwidth' => 'Sæt Ny Båndbrede',
'SetPreset' => 'Sæt Preset',
'Settings' => 'Indstillinger',
'ShowFilterWindow' => 'VisFilterVindue',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Size',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Sov',
'SortAsc' => 'Asc',
'SortBy' => 'Sorter efter',
'SortDesc' => 'Desc',
'Source' => 'Enhed',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'Enheds Type',
'Speed' => 'Hastighed',
'SpeedHigh' => 'Høj Hastighed',
'SpeedLow' => 'Lav Hastighed',
'SpeedMedium' => 'Medium Hastighed',
'SpeedTurbo' => 'Turbo Hastighed',
'Start' => 'Start',
'State' => 'State',
'Stats' => 'Stats',
'Status' => 'Status',
'Step' => 'Step',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Large Step',
'StepMedium' => 'Medium Step',
'StepNone' => 'No Step',
'StepSmall' => 'Small Step',
'Stills' => 'Stills',
'Stop' => 'Stop',
'Stopped' => 'Stoppet',
'Stream' => 'Stream',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Submit',
'System' => 'System',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Tilt',
'Time' => 'Tid',
'TimeDelta' => 'Time Delta',
'TimeStamp' => 'Tids Stempel',
'Timeline' => 'Timeline',
'Timestamp' => 'Tidsstempel',
'TimestampLabelFormat' => 'Tidsstempel Mærkning´s Format',
'TimestampLabelX' => 'Tidsstempel Mærkning X',
'TimestampLabelY' => 'Tidsstempel Mærkning Y',
'Today' => 'Idag',
'Tools' => 'Tools',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Total<br/>Skore',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'Triggers',
'TurboPanSpeed' => 'Turbo Pan Hastighed',
'TurboTiltSpeed' => 'Turbo Tilt Hastighed',
'Type' => 'Type',
'Unarchive' => 'Unarchive',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'Units',
'Unknown' => 'Unknown',
'Update' => 'Update',
'UpdateAvailable' => 'En updatering til ZoneMinder er tilstede.',
'UpdateNotNecessary' => 'Ingen updatering er nødvendig.',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Brug Filter',
'UseFilterExprsPost' => '&nbsp;filter&nbsp;expressions', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Brug&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'Bruger',
'Username' => 'Bruger Navn',
'Users' => 'Brugere',
'Value' => 'Værdig',
'Version' => 'Version',
'VersionIgnore' => 'Ignorer denne version',
'VersionRemindDay' => 'Påmind igen om 1 dag',
'VersionRemindHour' => 'Påmind igen om 1 time',
'VersionRemindNever' => 'Mind ikke om nye versioner',
'VersionRemindWeek' => 'Påmind igen om 1 uge',
'Video' => 'Video',
'VideoFormat' => 'Video Format',
'VideoGenFailed' => 'Video Generering Fejlede!',
'VideoGenFiles' => 'Existing Video Files',
'VideoGenNoFiles' => 'No Video Files Found',
'VideoGenParms' => 'Video Generaring Parametre',
'VideoGenSucceeded' => 'Video Generation Succeeded!',
'VideoSize' => 'Video Størelse',
'View' => 'Vis',
'ViewAll' => 'Vis Alle',
'ViewEvent' => 'View Event',
'ViewPaged' => 'View Paged',
'Wake' => 'Wake',
'WarmupFrames' => 'Varmop Billeder',
'Watch' => 'Se',
'Web' => 'Web',
'WebColour' => 'Web Colour',
'Week' => 'Uge',
'White' => 'White',
'WhiteBalance' => 'White Balance',
'Wide' => 'Wide',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10 Activerings Streng',
'X10InputAlarmString' => 'X10 Input Alarm Streng',
'X10OutputAlarmString' => 'X10 Output Alarm Streng',
'Y' => 'Y',
'Yes' => 'Ja',
'YouNoPerms' => 'Du har ikke adgang til denne resourse.',
'Zone' => 'Zone',
'ZoneAlarmColour' => 'Alarm Farve (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'Zoner',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zoom In',
'ZoomOut' => 'Zoom Out',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Nuværende login er \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Sidste %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'Den Seneste version er v%1$s, du har v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Monitor %1$s Function',
'RunningRecentVer' => 'Du Køre med seneste version af ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Events', 1=>'Event', 2=>'Events' ),
'Monitor' => array( 0=>'Monitors', 1=>'Monitor', 2=>'Monitors' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,844 +0,0 @@
<?php
//
// ZoneMinder web UK English language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder <your language> Translation by <your name>
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
// header( "Content-Type: text/html; charset=iso-8859-1" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'SystemLog' => 'System Log',
'DateTime' => 'Date/Time',
'Component' => 'Component',
'Pid' => 'PID',
'Level' => 'Level',
'Message' => 'Message',
'Line' => 'Line',
'More' => 'More',
'Clear' => 'Clear',
'24BitColour' => '24 bit colour',
'8BitGrey' => '8 bit greyscale',
'Action' => 'Action',
'Actual' => 'Actual',
'AddNewControl' => 'Add New Control',
'AddNewMonitor' => 'Add New Monitor',
'AddNewUser' => 'Add New User',
'AddNewZone' => 'Add New Zone',
'Alarm' => 'Alarm',
'AlarmBrFrames' => 'Alarm<br/>Frames',
'AlarmFrame' => 'Alarm Frame',
'AlarmFrameCount' => 'Alarm Frame Count',
'AlarmLimits' => 'Alarm Limits',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'Alarm Px',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => 'Alert',
'All' => 'All',
'Apply' => 'Apply',
'ApplyingStateChange' => 'Applying State Change',
'ArchArchived' => 'Archived Only',
'Archive' => 'Archive',
'Archived' => 'Archived',
'ArchUnarchived' => 'Unarchived Only',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'Alarm Frames',
'AttrArchiveStatus' => 'Archive Status',
'AttrAvgScore' => 'Avg. Score',
'AttrCause' => 'Cause',
'AttrDate' => 'Date',
'AttrDateTime' => 'Date/Time',
'AttrDiskBlocks' => 'Disk Blocks',
'AttrDiskPercent' => 'Disk Percent',
'AttrDuration' => 'Duration',
'AttrFrames' => 'Frames',
'AttrId' => 'Id',
'AttrMaxScore' => 'Max. Score',
'AttrMonitorId' => 'Monitor Id',
'AttrMonitorName' => 'Monitor Name',
'AttrName' => 'Name',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'Time',
'AttrTotalScore' => 'Total Score',
'AttrWeekday' => 'Weekday',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto Stop Timeout',
'Available' => 'Available',
'AvgBrScore' => 'Avg.<br/>Score',
'Available' => 'Available',
'Background' => 'Background',
'BackgroundFilter' => 'Run filter in background',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFormat' => 'Format must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Names may only contain alphanumeric characters plus hyphen and underscore',
'BadPalette' => 'Palette must be set to a valid value',
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer' => 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => 'Bandwidth',
'BlobPx' => 'Blob Px',
'Blobs' => 'Blobs',
'BlobSizes' => 'Blob Sizes',
'Brightness' => 'Brightness',
'Buffers' => 'Buffers',
'CanAutoFocus' => 'Can Auto Focus',
'CanAutoGain' => 'Can Auto Gain',
'CanAutoIris' => 'Can Auto Iris',
'CanAutoWhite' => 'Can Auto White Bal.',
'CanAutoZoom' => 'Can Auto Zoom',
'Cancel' => 'Cancel',
'CancelForcedAlarm' => 'Cancel Forced Alarm',
'CanFocusAbs' => 'Can Focus Absolute',
'CanFocus' => 'Can Focus',
'CanFocusCon' => 'Can Focus Continuous',
'CanFocusRel' => 'Can Focus Relative',
'CanGainAbs' => 'Can Gain Absolute',
'CanGain' => 'Can Gain ',
'CanGainCon' => 'Can Gain Continuous',
'CanGainRel' => 'Can Gain Relative',
'CanIrisAbs' => 'Can Iris Absolute',
'CanIris' => 'Can Iris',
'CanIrisCon' => 'Can Iris Continuous',
'CanIrisRel' => 'Can Iris Relative',
'CanMoveAbs' => 'Can Move Absolute',
'CanMove' => 'Can Move',
'CanMoveCon' => 'Can Move Continuous',
'CanMoveDiag' => 'Can Move Diagonally',
'CanMoveMap' => 'Can Move Mapped',
'CanMoveRel' => 'Can Move Relative',
'CanPan' => 'Can Pan' ,
'CanReset' => 'Can Reset',
'CanSetPresets' => 'Can Set Presets',
'CanSleep' => 'Can Sleep',
'CanTilt' => 'Can Tilt',
'CanWake' => 'Can Wake',
'CanWhiteAbs' => 'Can White Bal. Absolute',
'CanWhiteBal' => 'Can White Bal.',
'CanWhite' => 'Can White Balance',
'CanWhiteCon' => 'Can White Bal. Continuous',
'CanWhiteRel' => 'Can White Bal. Relative',
'CanZoomAbs' => 'Can Zoom Absolute',
'CanZoom' => 'Can Zoom',
'CanZoomCon' => 'Can Zoom Continuous',
'CanZoomRel' => 'Can Zoom Relative',
'CaptureHeight' => 'Capture Height',
'CaptureMethod' => 'Capture Method',
'CapturePalette' => 'Capture Palette',
'CaptureWidth' => 'Capture Width',
'Cause' => 'Cause',
'CheckMethod' => 'Alarm Check Method',
'ChooseDetectedCamera' => 'Choose Detected Camera',
'ChooseFilter' => 'Choose Filter',
'ChooseLogFormat' => 'Choose a log format',
'ChooseLogSelection' => 'Choose a log selection',
'ChoosePreset' => 'Choose Preset',
'Close' => 'Close',
'Colour' => 'Colour',
'Command' => 'Command',
'Config' => 'Config',
'ConfiguredFor' => 'Configured for',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => 'Confirm Password',
'ConjAnd' => 'and',
'ConjOr' => 'or',
'Console' => 'Console',
'ContactAdmin' => 'Please contact your adminstrator for details.',
'Continue' => 'Continue',
'Contrast' => 'Contrast',
'ControlAddress' => 'Control Address',
'ControlCap' => 'Control Capability',
'ControlCaps' => 'Control Capabilities',
'Control' => 'Control',
'ControlDevice' => 'Control Device',
'Controllable' => 'Controllable',
'ControlType' => 'Control Type',
'Cycle' => 'Cycle',
'CycleWatch' => 'Cycle Watch',
'Day' => 'Day',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Default Scale',
'DefaultView' => 'Default View',
'DeleteAndNext' => 'Delete &amp; Next',
'DeleteAndPrev' => 'Delete &amp; Prev',
'Delete' => 'Delete',
'DeleteSavedFilter' => 'Delete saved filter',
'Description' => 'Description',
'DetectedCameras' => 'Detected Cameras',
'DeviceChannel' => 'Device Channel',
'DeviceFormat' => 'Device Format',
'DeviceNumber' => 'Device Number',
'DevicePath' => 'Device Path',
'Device' => 'Device',
'Devices' => 'Devices',
'Dimensions' => 'Dimensions',
'DisableAlarms' => 'Disable Alarms',
'Disk' => 'Disk',
'Display' => 'Display',
'Displaying' => 'Displaying',
'DonateAlready' => 'No, I\'ve already donated',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br/><br/>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br/><br/>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'Donate' => 'Please Donate',
'DonateRemindDay' => 'Not yet, remind again in 1 day',
'DonateRemindHour' => 'Not yet, remind again in 1 hour',
'DonateRemindMonth' => 'Not yet, remind again in 1 month',
'DonateRemindNever' => 'No, I don\'t want to donate, never remind',
'DonateRemindWeek' => 'Not yet, remind again in 1 week',
'DonateYes' => 'Yes, I\'d like to donate now',
'Download' => 'Download',
'DuplicateMonitorName' => 'Duplicate Monitor Name',
'Duration' => 'Duration',
'Edit' => 'Edit',
'Email' => 'Email',
'EnableAlarms' => 'Enable Alarms',
'Enabled' => 'Enabled',
'EnterNewFilterName' => 'Enter new filter name',
'ErrorBrackets' => 'Error, please check you have an equal number of opening and closing brackets',
'Error' => 'Error',
'ErrorValidValue' => 'Error, please check that all terms have a valid value',
'Etc' => 'etc',
'Event' => 'Event',
'EventFilter' => 'Event Filter',
'EventId' => 'Event Id',
'EventName' => 'Event Name',
'EventPrefix' => 'Event Prefix',
'Events' => 'Events',
'Exclude' => 'Exclude',
'Execute' => 'Execute',
'ExportDetails' => 'Export Event Details',
'Export' => 'Export',
'ExportFailed' => 'Export Failed',
'ExportFormat' => 'Export File Format',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Export Frame Details',
'ExportImageFiles' => 'Export Image Files',
'ExportLog' => 'Export Log',
'Exporting' => 'Exporting',
'ExportMiscFiles' => 'Export Other Files (if present)',
'ExportOptions' => 'Export Options',
'ExportSucceeded' => 'Export Succeeded',
'ExportVideoFiles' => 'Export Video Files (if present)',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'Feed',
'Ffmpeg' => 'Ffmpeg',
'File' => 'File',
'FilterArchiveEvents' => 'Archive all matches',
'FilterDeleteEvents' => 'Delete all matches',
'FilterEmailEvents' => 'Email details of all matches',
'FilterExecuteEvents' => 'Execute command on all matches',
'FilterMessageEvents' => 'Message details of all matches',
'FilterPx' => 'Filter Px',
'Filters' => 'Filters',
'FilterUnset' => 'You must specify a filter width and height',
'FilterUploadEvents' => 'Upload all matches',
'FilterVideoEvents' => 'Create video for all matches',
'First' => 'First',
'FlippedHori' => 'Flipped Horizontally',
'FlippedVert' => 'Flipped Vertically',
'Focus' => 'Focus',
'ForceAlarm' => 'Force Alarm',
'Format' => 'Format',
'FPS' => 'fps',
'FPSReportInterval' => 'FPS Report Interval',
'Frame' => 'Frame',
'FrameId' => 'Frame Id',
'FrameRate' => 'Frame Rate',
'Frames' => 'Frames',
'FrameSkip' => 'Frame Skip',
'FTP' => 'FTP',
'Func' => 'Func',
'Function' => 'Function',
'Gain' => 'Gain',
'General' => 'General',
'GenerateVideo' => 'Generate Video',
'GeneratingVideo' => 'Generating Video',
'GoToZoneMinder' => 'Go to ZoneMinder.com',
'Grey' => 'Grey',
'Group' => 'Group',
'Groups' => 'Groups',
'HasFocusSpeed' => 'Has Focus Speed',
'HasGainSpeed' => 'Has Gain Speed',
'HasHomePreset' => 'Has Home Preset',
'HasIrisSpeed' => 'Has Iris Speed',
'HasPanSpeed' => 'Has Pan Speed',
'HasPresets' => 'Has Presets',
'HasTiltSpeed' => 'Has Tilt Speed',
'HasTurboPan' => 'Has Turbo Pan',
'HasTurboTilt' => 'Has Turbo Tilt',
'HasWhiteSpeed' => 'Has White Bal. Speed',
'HasZoomSpeed' => 'Has Zoom Speed',
'HighBW' => 'High&nbsp;B/W',
'High' => 'High',
'Home' => 'Home',
'Hour' => 'Hour',
'Hue' => 'Hue',
'Id' => 'Id',
'Idle' => 'Idle',
'Ignore' => 'Ignore',
'ImageBufferSize' => 'Image Buffer Size (frames)',
'Image' => 'Image',
'Images' => 'Images',
'Include' => 'Include',
'In' => 'In',
'Inverted' => 'Inverted',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => 'Language',
'Last' => 'Last',
'Layout' => 'Layout',
'LimitResultsPost' => 'results only', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Limit to first', // This is used at the beginning of the phrase 'Limit to first N results only'
'LinkedMonitors' => 'Linked Monitors',
'List' => 'List',
'Load' => 'Load',
'Local' => 'Local',
'Log' => 'Log',
'Logs' => 'Logs',
'Logging' => 'Logging',
'LoggedInAs' => 'Logged in as',
'LoggingIn' => 'Logging In',
'Login' => 'Login',
'Logout' => 'Logout',
'LowBW' => 'Low&nbsp;B/W',
'Low' => 'Low',
'Main' => 'Main',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => 'Mark',
'MaxBandwidth' => 'Max Bandwidth',
'MaxBrScore' => 'Max.<br/>Score',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaximumFPS' => 'Maximum FPS',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'Max' => 'Max',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MediumBW' => 'Medium&nbsp;B/W',
'Medium' => 'Medium',
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'Minimum blob area should be less than maximum',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'Minimum blobs should be less than maximum',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => 'Minimum pixel threshold should be less than maximum',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => 'Misc',
'MonitorIds' => 'Monitor&nbsp;Ids',
'Monitor' => 'Monitor',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br/><br/>Please note that this may overwrite any values you already have configured for the current monitor.<br/><br/>',
'MonitorPreset' => 'Monitor Preset',
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>',
'MonitorProbe' => 'Monitor Probe',
'Monitors' => 'Monitors',
'Montage' => 'Montage',
'Month' => 'Month',
'Move' => 'Move',
'MustBeGe' => 'must be greater than or equal to',
'MustBeLe' => 'must be less than or equal to',
'MustConfirmPassword' => 'You must confirm the password',
'MustSupplyPassword' => 'You must supply a password',
'MustSupplyUsername' => 'You must supply a username',
'Name' => 'Name',
'Near' => 'Near',
'Network' => 'Network',
'NewGroup' => 'New Group',
'NewLabel' => 'New Label',
'New' => 'New',
'NewPassword' => 'New Password',
'NewState' => 'New State',
'NewUser' => 'New User',
'Next' => 'Next',
'NoDetectedCameras' => 'No Detected Cameras',
'NoFramesRecorded' => 'There are no frames recorded for this event',
'NoGroup' => 'No Group',
'NoneAvailable' => 'None available',
'None' => 'None',
'No' => 'No',
'Normal' => 'Normal',
'NoSavedFilters' => 'NoSavedFilters',
'NoStatisticsRecorded' => 'There are no statistics recorded for this event/frame',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'Open' => 'Open',
'OpEq' => 'equal to',
'OpGtEq' => 'greater than or equal to',
'OpGt' => 'greater than',
'OpIn' => 'in set',
'OpLtEq' => 'less than or equal to',
'OpLt' => 'less than',
'OpMatches' => 'matches',
'OpNe' => 'not equal to',
'OpNotIn' => 'not in set',
'OpNotMatches' => 'does not match',
'OptionHelp' => 'Option Help',
'OptionRestartWarning' => 'These changes may not come into effect fully\nwhile the system is running. When you have\nfinished making your changes please ensure that\nyou restart ZoneMinder.',
'Options' => 'Options',
'Order' => 'Order',
'OrEnterNewName' => 'or enter new name',
'Orientation' => 'Orientation',
'Out' => 'Out',
'OverwriteExisting' => 'Overwrite Existing',
'Paged' => 'Paged',
'PanLeft' => 'Pan Left',
'Pan' => 'Pan',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'Parameter',
'Password' => 'Password',
'PasswordsDifferent' => 'The new and confirm passwords are different',
'Paths' => 'Paths',
'Pause' => 'Pause',
'PhoneBW' => 'Phone&nbsp;B/W',
'Phone' => 'Phone',
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'pixels',
'PlayAll' => 'Play All',
'Play' => 'Play',
'PleaseWait' => 'Please Wait',
'Point' => 'Point',
'PostEventImageBuffer' => 'Post Event Image Count',
'PreEventImageBuffer' => 'Pre Event Image Count',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => 'Prev',
'Probe' => 'Probe',
'Protocol' => 'Protocol',
'Rate' => 'Rate',
'Real' => 'Real',
'Record' => 'Record',
'RefImageBlendPct' => 'Reference Image Blend %ge',
'Refresh' => 'Refresh',
'RemoteHostName' => 'Remote Host Name',
'RemoteHostPath' => 'Remote Host Path',
'RemoteHostSubPath' => 'Remote Host SubPath',
'RemoteHostPort' => 'Remote Host Port',
'RemoteImageColours' => 'Remote Image Colours',
'RemoteMethod' => 'Remote Method',
'RemoteProtocol' => 'Remote Protocol',
'Remote' => 'Remote',
'Rename' => 'Rename',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'Replay' => 'Replay',
'ReplaySingle' => 'Single Event',
'ResetEventCounts' => 'Reset Event Counts',
'Reset' => 'Reset',
'Restarting' => 'Restarting',
'Restart' => 'Restart',
'RestrictedCameraIds' => 'Restricted Camera Ids',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Return Delay',
'ReturnLocation' => 'Return Location',
'Rewind' => 'Rewind',
'RotateLeft' => 'Rotate Left',
'RotateRight' => 'Rotate Right',
'RunLocalUpdate' => 'Please run zmupdate.pl to update',
'RunMode' => 'Run Mode',
'Running' => 'Running',
'RunState' => 'Run State',
'SaveAs' => 'Save as',
'SaveFilter' => 'Save Filter',
'Save' => 'Save',
'Scale' => 'Scale',
'Score' => 'Score',
'Secs' => 'Secs',
'Sectionlength' => 'Section length',
'SelectMonitors' => 'Select Monitors',
'Select' => 'Select',
'SelectFormat' => 'Select Format',
'SelectLog' => 'Select Log',
'SelfIntersecting' => 'Polygon edges must not intersect',
'SetNewBandwidth' => 'Set New Bandwidth',
'SetPreset' => 'Set Preset',
'Set' => 'Set',
'Settings' => 'Settings',
'ShowFilterWindow' => 'Show Filter Window',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Size',
'SkinDescription' => 'Change the default skin for this computer',
'Sleep' => 'Sleep',
'SortAsc' => 'Asc',
'SortBy' => 'Sort by',
'SortDesc' => 'Desc',
'Source' => 'Source',
'SourceColours' => 'Source Colours',
'SourcePath' => 'Source Path',
'SourceType' => 'Source Type',
'SpeedHigh' => 'High Speed',
'SpeedLow' => 'Low Speed',
'SpeedMedium' => 'Medium Speed',
'Speed' => 'Speed',
'SpeedTurbo' => 'Turbo Speed',
'Start' => 'Start',
'State' => 'State',
'Stats' => 'Stats',
'Status' => 'Status',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Large Step',
'StepMedium' => 'Medium Step',
'StepNone' => 'No Step',
'StepSmall' => 'Small Step',
'Step' => 'Step',
'Stills' => 'Stills',
'Stopped' => 'Stopped',
'Stop' => 'Stop',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Stream' => 'Stream',
'Submit' => 'Submit',
'System' => 'System',
'Tele' => 'Tele',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Tilt',
'TimeDelta' => 'Time Delta',
'Timeline' => 'Timeline',
'TimestampLabelFormat' => 'Timestamp Label Format',
'TimestampLabelX' => 'Timestamp Label X',
'TimestampLabelY' => 'Timestamp Label Y',
'Timestamp' => 'Timestamp',
'TimeStamp' => 'Time Stamp',
'Time' => 'Time',
'Today' => 'Today',
'Tools' => 'Tools',
'Total' => 'Total',
'TotalBrScore' => 'Total<br/>Score',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'Triggers',
'TurboPanSpeed' => 'Turbo Pan Speed',
'TurboTiltSpeed' => 'Turbo Tilt Speed',
'Type' => 'Type',
'Unarchive' => 'Unarchive',
'Undefined' => 'Undefined',
'Units' => 'Units',
'Unknown' => 'Unknown',
'UpdateAvailable' => 'An update to ZoneMinder is available.',
'UpdateNotNecessary' => 'No update is necessary.',
'Update' => 'Update',
'Upload' => 'Upload',
'Updated' => 'Updated',
'UseFilterExprsPost' => '&nbsp;filter&nbsp;expressions', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Use&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'UseFilter' => 'Use Filter',
'Username' => 'Username',
'Users' => 'Users',
'User' => 'User',
'Value' => 'Value',
'VersionIgnore' => 'Ignore this version',
'VersionRemindDay' => 'Remind again in 1 day',
'VersionRemindHour' => 'Remind again in 1 hour',
'VersionRemindNever' => 'Don\'t remind about new versions',
'VersionRemindWeek' => 'Remind again in 1 week',
'Version' => 'Version',
'VideoFormat' => 'Video Format',
'VideoGenFailed' => 'Video Generation Failed!',
'VideoGenFiles' => 'Existing Video Files',
'VideoGenNoFiles' => 'No Video Files Found',
'VideoGenParms' => 'Video Generation Parameters',
'VideoGenSucceeded' => 'Video Generation Succeeded!',
'VideoSize' => 'Video Size',
'Video' => 'Video',
'ViewAll' => 'View All',
'ViewEvent' => 'View Event',
'ViewPaged' => 'View Paged',
'View' => 'View',
'Wake' => 'Wake',
'WarmupFrames' => 'Warmup Frames',
'Watch' => 'Watch',
'WebColour' => 'Web Colour',
'Web' => 'Web',
'Week' => 'Week',
'WhiteBalance' => 'White Balance',
'White' => 'White',
'Wide' => 'Wide',
'X10ActivationString' => 'X10 Activation String',
'X10InputAlarmString' => 'X10 Input Alarm String',
'X10OutputAlarmString' => 'X10 Output Alarm String',
'X10' => 'X10',
'X' => 'X',
'Yes' => 'Yes',
'YouNoPerms' => 'You do not have permissions to access this resource.',
'Y' => 'Y',
'ZoneAlarmColour' => 'Alarm Colour (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinderLog' => 'ZoneMinder Log',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'Zones',
'Zone' => 'Zone',
'ZoomIn' => 'Zoom In',
'ZoomOut' => 'Zoom Out',
'Zoom' => 'Zoom',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Current login is \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Last %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'The latest release is v%1$s, you have v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Monitor %1$s Function',
'RunningRecentVer' => 'You are running the most recent version of ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.',
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// 'Potato' => array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' ),
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Events', 1=>'Event', 2=>'Events' ),
'Monitor' => array( 0=>'Monitors', 1=>'Monitor', 2=>'Monitors' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $CLANG['MonitorCount'], count($monitors), zmVlang( $VLANG['VlangMonitor'], count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,80 +0,0 @@
<?php
//
// ZoneMinder web US English language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder <your language> Translation by <your name>
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
require_once( 'lang/en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
// header( "Content-Type: text/html; charset=iso-8859-1" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG['24BitColour'] = '24 bit color';
$SLANG['8BitGrey'] = '8 bit grayscale';
$SLANG['Colour'] = 'Color';
$SLANG['Grey'] = 'Gray';
$SLANG['RemoteImageColours'] = 'Remote Image Colors';
$SLANG['ZoneAlarmColour'] = 'Alarm Color (Red/Green/Blue)';
?>

View File

@ -1,697 +0,0 @@
<?php
//
// ZoneMinder web Argentinian Spanish language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Spanish 'Argentina' Translation by Fernando Diaz.
// Simple String Replacements
$SLANG = array(
'24BitColour' => 'Color 24 bits',
'8BitGrey' => 'Grises 8 bits',
'Action' => 'Action',
'Actual' => 'Actual',
'AddNewControl' => 'Add New Control',
'AddNewMonitor' => 'Agregar Nuevo Monitor',
'AddNewUser' => 'Agregar Nuevo Usuario',
'AddNewZone' => 'Agregar Nueva Zona',
'Alarm' => 'Alarma',
'AlarmBrFrames' => 'Alarma<br/>Cuadros',
'AlarmFrame' => 'Cuadro Alarma',
'AlarmFrameCount' => 'Alarm Frame Count',
'AlarmLimits' => 'Alarm Limits',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'Alarm Px',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => 'Alerta',
'All' => 'Todo',
'Apply' => 'Aplicar',
'ApplyingStateChange' => 'Aplicar Cambio Estado',
'ArchArchived' => 'Solo Archivados',
'ArchUnarchived' => 'Solo Sin Archivar',
'Archive' => 'Archivar',
'Archived' => 'Archived',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'Alarm Frames',
'AttrArchiveStatus' => 'Estado Archivo',
'AttrAvgScore' => 'Puntaje Prom.',
'AttrCause' => 'Cause',
'AttrDate' => 'Fecha',
'AttrDateTime' => 'Fecha/Hora',
'AttrDiskBlocks' => 'Disk Blocks',
'AttrDiskPercent' => 'Disk Percent',
'AttrDuration' => 'Duración',
'AttrFrames' => 'Cuadros',
'AttrId' => 'Id',
'AttrMaxScore' => 'Puntaje Máximo',
'AttrMonitorId' => 'Monitor Id',
'AttrMonitorName' => 'Nombre Monitor',
'AttrName' => 'Name',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'Hora',
'AttrTotalScore' => 'Puntaje Total',
'AttrWeekday' => 'Día Semana',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto Stop Timeout',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => 'Punt.<br/>Promedio',
'Background' => 'Background',
'BackgroundFilter' => 'Run filter in background',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to an integer of zero or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Los nombres pueden contener solamente caracteres alfanuméricos más el guión y la raya',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => 'Velocidad',
'BlobPx' => 'Blob Px',
'BlobSizes' => 'Blob Sizes',
'Blobs' => 'Blobs',
'Brightness' => 'Brillo',
'Buffers' => 'Buffers',
'CanAutoFocus' => 'Can Auto Focus',
'CanAutoGain' => 'Can Auto Gain',
'CanAutoIris' => 'Can Auto Iris',
'CanAutoWhite' => 'Can Auto White Bal.',
'CanAutoZoom' => 'Can Auto Zoom',
'CanFocus' => 'Can Focus',
'CanFocusAbs' => 'Can Focus Absolute',
'CanFocusCon' => 'Can Focus Continuous',
'CanFocusRel' => 'Can Focus Relative',
'CanGain' => 'Can Gain ',
'CanGainAbs' => 'Can Gain Absolute',
'CanGainCon' => 'Can Gain Continuous',
'CanGainRel' => 'Can Gain Relative',
'CanIris' => 'Can Iris',
'CanIrisAbs' => 'Can Iris Absolute',
'CanIrisCon' => 'Can Iris Continuous',
'CanIrisRel' => 'Can Iris Relative',
'CanMove' => 'Can Move',
'CanMoveAbs' => 'Can Move Absolute',
'CanMoveCon' => 'Can Move Continuous',
'CanMoveDiag' => 'Can Move Diagonally',
'CanMoveMap' => 'Can Move Mapped',
'CanMoveRel' => 'Can Move Relative',
'CanPan' => 'Can Pan' ,
'CanReset' => 'Can Reset',
'CanSetPresets' => 'Can Set Presets',
'CanSleep' => 'Can Sleep',
'CanTilt' => 'Can Tilt',
'CanWake' => 'Can Wake',
'CanWhite' => 'Can White Balance',
'CanWhiteAbs' => 'Can White Bal. Absolute',
'CanWhiteBal' => 'Can White Bal.',
'CanWhiteCon' => 'Can White Bal. Continuous',
'CanWhiteRel' => 'Can White Bal. Relative',
'CanZoom' => 'Can Zoom',
'CanZoomAbs' => 'Can Zoom Absolute',
'CanZoomCon' => 'Can Zoom Continuous',
'CanZoomRel' => 'Can Zoom Relative',
'Cancel' => 'Cancelar',
'CancelForcedAlarm' => 'Cancelar Alarma Forzada',
'CaptureHeight' => 'Captura Alto',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => 'Captura Paleta',
'CaptureWidth' => 'Captura Ancho',
'Cause' => 'Cause',
'CheckMethod' => 'Alarm Check Method',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'Elegir Filtro',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Cerrar',
'Colour' => 'Color',
'Command' => 'Command',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Config.',
'ConfiguredFor' => 'Configurado Para',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => 'Confirmar Contraseña',
'ConjAnd' => 'y',
'ConjOr' => 'o',
'Console' => 'Console',
'ContactAdmin' => 'Contacte el Administrador para detalles.',
'Continue' => 'Continue',
'Contrast' => 'Contraste',
'Control' => 'Control',
'ControlAddress' => 'Control Address',
'ControlCap' => 'Control Capability',
'ControlCaps' => 'Control Capabilities',
'ControlDevice' => 'Control Device',
'ControlType' => 'Control Type',
'Controllable' => 'Controllable',
'Cycle' => 'Cycle',
'CycleWatch' => 'Cycle Watch',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Día',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Default Scale',
'DefaultView' => 'Default View',
'Delete' => 'Borrar',
'DeleteAndNext' => 'Borrar &amp; Próximo',
'DeleteAndPrev' => 'Borrar &amp; Anterior',
'DeleteSavedFilter' => 'Borrar Filtro Guardado',
'Description' => 'Descripción',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'Canal',
'DeviceFormat' => 'Señal',
'DeviceNumber' => 'Fuente',
'DevicePath' => 'Device Path',
'Devices' => 'Devices',
'Dimensions' => 'Dimensiones',
'DisableAlarms' => 'Disable Alarms',
'Disk' => 'Disco',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Please Donate',
'DonateAlready' => 'No, I\'ve already donated',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br><br>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br><br>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'DonateRemindDay' => 'Not yet, remind again in 1 day',
'DonateRemindHour' => 'Not yet, remind again in 1 hour',
'DonateRemindMonth' => 'Not yet, remind again in 1 month',
'DonateRemindNever' => 'No, I don\'t want to donate, never remind',
'DonateRemindWeek' => 'Not yet, remind again in 1 week',
'DonateYes' => 'Yes, I\'d like to donate now',
'Download' => 'Download',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'Duración',
'Edit' => 'Editar',
'Email' => 'Email',
'EnableAlarms' => 'Enable Alarms',
'Enabled' => 'Habilitado',
'EnterNewFilterName' => 'Ingresar Nuevo Nombre De Filtro',
'Error' => 'Error',
'ErrorBrackets' => 'Error, Revisar si tiene la misma cantidad de paréntesis de apertura',
'ErrorValidValue' => 'Error, Revisar si los términos tienen nombres validos',
'Etc' => 'etc',
'Event' => 'Evento',
'EventFilter' => 'Filtro de Evento',
'EventId' => 'Event Id',
'EventName' => 'Event Name',
'EventPrefix' => 'Event Prefix',
'Events' => 'Eventos',
'Exclude' => 'Excluir',
'Execute' => 'Execute',
'Export' => 'Export',
'ExportDetails' => 'Export Event Details',
'ExportFailed' => 'Export Failed',
'ExportFormat' => 'Export File Format',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Export Frame Details',
'ExportImageFiles' => 'Export Image Files',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Export Other Files (if present)',
'ExportOptions' => 'Export Options',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Export Video Files (if present)',
'Exporting' => 'Exporting',
'FPS' => 'fps',
'FPSReportInterval' => 'Intervalo de Reporte FPS',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'Vista',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'File',
'FilterArchiveEvents' => 'Archivar todos los eventos',
'FilterDeleteEvents' => 'Borrar todos los eventos',
'FilterEmailEvents' => 'Mandar un mail de todos los eventos',
'FilterExecuteEvents' => 'Ejecutar un comando en las coincidencias',
'FilterMessageEvents' => 'Mandar un mensaje de los eventos',
'FilterPx' => 'Filtro Px',
'FilterUnset' => 'You must specify a filter width and height',
'FilterUploadEvents' => 'Subir los eventos que coincidan',
'FilterVideoEvents' => 'Create video for all matches',
'Filters' => 'Filters',
'First' => 'Primero',
'FlippedHori' => 'Flipped Horizontally',
'FlippedVert' => 'Flipped Vertically',
'Focus' => 'Focus',
'ForceAlarm' => 'Forzar Alarma',
'Format' => 'Format',
'Frame' => 'Cuadro',
'FrameId' => 'Id Cuadro',
'FrameRate' => 'Velocidad del video',
'FrameSkip' => 'Saltear Cuadro',
'Frames' => 'Cuadros',
'Func' => 'Func',
'Function' => 'Función',
'Gain' => 'Gain',
'General' => 'General',
'GenerateVideo' => 'Crear Video',
'GeneratingVideo' => 'Creando Video',
'GoToZoneMinder' => 'Ir a Zoneminder.com',
'Grey' => 'Gris',
'Group' => 'Group',
'Groups' => 'Groups',
'HasFocusSpeed' => 'Has Focus Speed',
'HasGainSpeed' => 'Has Gain Speed',
'HasHomePreset' => 'Has Home Preset',
'HasIrisSpeed' => 'Has Iris Speed',
'HasPanSpeed' => 'Has Pan Speed',
'HasPresets' => 'Has Presets',
'HasTiltSpeed' => 'Has Tilt Speed',
'HasTurboPan' => 'Has Turbo Pan',
'HasTurboTilt' => 'Has Turbo Tilt',
'HasWhiteSpeed' => 'Has White Bal. Speed',
'HasZoomSpeed' => 'Has Zoom Speed',
'High' => 'Alta',
'HighBW' => 'Alta&nbsp;B/W',
'Home' => 'Home',
'Hour' => 'Hora',
'Hue' => 'Saturación',
'Id' => 'Id',
'Idle' => 'Pasivo',
'Ignore' => 'Ignorar',
'Image' => 'Imagen',
'ImageBufferSize' => 'Tamaño del Buffer de Imagen',
'Images' => 'Images',
'In' => 'In',
'Include' => 'Incluir',
'Inverted' => 'Invertido',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => 'Lenguaje',
'Last' => 'Ultimo',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'Resultados;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Solo los primeros', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Linked Monitors',
'List' => 'List',
'Load' => 'Carga',
'Local' => 'Local',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Registrado Como',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'Ingresando',
'Login' => 'Ingresar',
'Logout' => 'Salir',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'Baja',
'LowBW' => 'Baja&nbsp;B/W',
'Main' => 'Main',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => 'Marca',
'Max' => 'Max',
'MaxBandwidth' => 'Max Bandwidth',
'MaxBrScore' => 'Puntaje<br/>Max.',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MaximumFPS' => 'Maximos FPS',
'Medium' => 'Media',
'MediumBW' => 'Media&nbsp;B/W',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'Minimum blob area should be less than maximum',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'Minimum blobs should be less than maximum',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => 'Minimum pixel threshold should be less than maximum',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => 'Otros',
'Monitor' => 'Monitor',
'MonitorIds' => 'Ids&nbsp;Monitor',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br><br>Please note that this may overwrite any values you already have configured for this monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'Monitores',
'Montage' => 'Cámara Múltiple',
'Month' => 'Mes',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Move',
'MustBeGe' => 'Debe ser mayor o igual que',
'MustBeLe' => 'Debe ser menor o igual que',
'MustConfirmPassword' => 'Debe confirmar la contraseña',
'MustSupplyPassword' => 'Debe ingresar una contraseña',
'MustSupplyUsername' => 'You must supply a username', // Added - 2009-02-08
'Name' => 'Nombre',
'Near' => 'Near',
'Network' => 'Red',
'New' => 'Nuevo',
'NewGroup' => 'New Group',
'NewLabel' => 'New Label',
'NewPassword' => 'Nueva Contraseña',
'NewState' => 'Nuevo Estado',
'NewUser' => 'Nuevo Usuario',
'Next' => 'Siguiente',
'No' => 'No',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'No hay movimientos grabados para este evento',
'NoGroup' => 'No Group',
'NoSavedFilters' => 'FiltrosNoGuardados',
'NoStatisticsRecorded' => 'No hay estadisticas guardadas para este evento/marco',
'None' => 'Ninguno',
'NoneAvailable' => 'Ninguno Disponible',
'Normal' => 'Normal',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'igual que',
'OpGt' => 'mayor que',
'OpGtEq' => 'mayor o igual que',
'OpIn' => 'En sistema',
'OpLt' => 'menor que',
'OpLtEq' => 'menor o igual que',
'OpMatches' => 'Coincide',
'OpNe' => 'distinto que',
'OpNotIn' => 'No en sistema',
'OpNotMatches' => 'No coincide',
'Open' => 'Open',
'OptionHelp' => 'Ayuda',
'OptionRestartWarning' => 'Estos cambios no se guardaran completamente\nmientras el sistema se ejecute. Cuando termine\nde realizar los cambios asegurese de\nreiniciar Zoneminder.',
'Options' => 'Opciones',
'OrEnterNewName' => 'o agregue nombre',
'Order' => 'Order',
'Orientation' => 'Orientación',
'Out' => 'Out',
'OverwriteExisting' => 'Sobreescribir Exitente',
'Paged' => 'Paged',
'Pan' => 'Pan',
'PanLeft' => 'Pan Left',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'Parametro',
'Password' => 'Contraseña',
'PasswordsDifferent' => 'Las contraseñas nueva y de confirmacion son diferentes',
'Paths' => 'Enlaces',
'Pause' => 'Pause',
'Phone' => 'Phone',
'PhoneBW' => 'Tel.&nbsp;B/N',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff', // Added - 2009-02-08
'Pixels' => 'pixels',
'Play' => 'Play',
'PlayAll' => 'Play All',
'PleaseWait' => 'Espere por favor',
'Point' => 'Point',
'PostEventImageBuffer' => 'Buffer Imagenes despues evento',
'PreEventImageBuffer' => 'Buffer Imagenes antes evento',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => 'Prev',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'Ritmo',
'Real' => 'Real',
'Record' => 'Registro',
'RefImageBlendPct' => 'Reference Image Blend %ge',
'Refresh' => 'Actualizar',
'Remote' => 'Remote',
'RemoteHostName' => 'Nombre Servidor Remoto',
'RemoteHostPath' => 'Enlace Servidor Remoto',
'RemoteHostPort' => 'Puerto Servidor Remoto',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Remote Image Colours',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => 'Renombrar',
'Replay' => 'Replay',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'Reset',
'ResetEventCounts' => 'Borrar Contador Eventos',
'Restart' => 'Reiniciar',
'Restarting' => 'Reiniciando',
'RestrictedCameraIds' => 'Id. Camara restringida',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Return Delay',
'ReturnLocation' => 'Return Location',
'Rewind' => 'Rewind',
'RotateLeft' => 'Rotar a la derecha',
'RotateRight' => 'Rotar a la izquierda',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Metodo Ejecucion',
'RunState' => 'Estado de Ejecución',
'Running' => 'Ejecutando',
'Save' => 'Guardar',
'SaveAs' => 'Guardar Como',
'SaveFilter' => 'Guardar Filtro',
'Scale' => 'Escala',
'Score' => 'Res.',
'Secs' => 'Seg',
'Sectionlength' => 'Longitud Sección',
'Select' => 'Select',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Select Monitors',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => 'Set',
'SetNewBandwidth' => 'Nuevo Ancho de Banda',
'SetPreset' => 'Set Preset',
'Settings' => 'Configuracion',
'ShowFilterWindow' => 'Abrir Filtro',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Size',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Sleep',
'SortAsc' => 'Asc',
'SortBy' => 'Ordenar por',
'SortDesc' => 'Desc',
'Source' => 'Origen',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'Tipo Origen',
'Speed' => 'Speed',
'SpeedHigh' => 'High Speed',
'SpeedLow' => 'Low Speed',
'SpeedMedium' => 'Medium Speed',
'SpeedTurbo' => 'Turbo Speed',
'Start' => 'Iniciar',
'State' => 'Estado',
'Stats' => 'Est.',
'Status' => 'Estado',
'Step' => 'Step',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Large Step',
'StepMedium' => 'Medium Step',
'StepNone' => 'No Step',
'StepSmall' => 'Small Step',
'Stills' => 'Fotos',
'Stop' => 'Desactivar',
'Stopped' => 'Apagado',
'Stream' => 'Stream',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Submit',
'System' => 'Sistema',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Tilt',
'Time' => 'Hora',
'TimeDelta' => 'Hora Delta',
'TimeStamp' => 'Etiqueta Hora',
'Timeline' => 'Timeline',
'Timestamp' => 'Etiqueta Hora',
'TimestampLabelFormat' => 'Formato Etiqueta Hora',
'TimestampLabelX' => 'Eje X Etiqueta Hora',
'TimestampLabelY' => 'Eje Y Etiqueta Hora',
'Today' => 'Today',
'Tools' => 'Herra.',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Total<br/>puntuación',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'Gatillos',
'TurboPanSpeed' => 'Turbo Pan Speed',
'TurboTiltSpeed' => 'Turbo Tilt Speed',
'Type' => 'Tipo',
'Unarchive' => 'Desarchivar',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'Unidades',
'Unknown' => 'Desconocido',
'Update' => 'Update',
'UpdateAvailable' => 'Una Actualización a ZoneMinder esta disponible',
'UpdateNotNecessary' => 'No se requiere Actualización',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Usar Filtro',
'UseFilterExprsPost' => '&nbsp;filtrar&nbsp;sentencias', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Utilizar&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'Usuario',
'Username' => 'Nombre',
'Users' => 'Usuarios',
'Value' => 'Valor',
'Version' => 'Versión',
'VersionIgnore' => 'Ignore esta versión',
'VersionRemindDay' => 'Recordar en 1 día',
'VersionRemindHour' => 'Recordar en 1 hora',
'VersionRemindNever' => 'No avizar de nuevas versiones',
'VersionRemindWeek' => 'Recordar en 1 semana',
'Video' => 'Video',
'VideoFormat' => 'Video Format',
'VideoGenFailed' => 'Fallo la creacion del video!',
'VideoGenFiles' => 'Existing Video Files',
'VideoGenNoFiles' => 'No Video Files Found',
'VideoGenParms' => 'Parametros Generacion Video',
'VideoGenSucceeded' => 'Video Generation Succeeded!',
'VideoSize' => 'Tamaño Video',
'View' => 'Ver',
'ViewAll' => 'Ver Todo',
'ViewEvent' => 'View Event',
'ViewPaged' => 'View Paged',
'Wake' => 'Wake',
'WarmupFrames' => 'Avisos Movimiento',
'Watch' => 'Monitor',
'Web' => 'Web',
'WebColour' => 'Web Colour',
'Week' => 'Semana',
'White' => 'White',
'WhiteBalance' => 'White Balance',
'Wide' => 'Wide',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10 Comando Activación',
'X10InputAlarmString' => 'X10 Comando Entrada Alarma',
'X10OutputAlarmString' => 'X10 Output Alarm String',
'Y' => 'Y',
'Yes' => 'Si',
'YouNoPerms' => 'No tiene permisos para acceder a este recurso.',
'Zone' => 'Zona',
'ZoneAlarmColour' => 'Color Alarma (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'Zonas',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zoom In',
'ZoomOut' => 'Zoom Out',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Usuario actual es \'%1$s\'',
'EventCount' => '%1$s %2$s',
'LastEvents' => 'Ultimo %1$s %2$s',
'LatestRelease' => 'The latest release is v%1$s, you have v%2$s.',
'MonitorCount' => '%1$s %2$s',
'MonitorFunction' => 'Monitor %1$s Funcion',
'RunningRecentVer' => 'You are running the most recent version of Zoneminder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Eventos', 1=>'Evento', 2=>'Eventos' ),
'Monitor' => array( 0=>'Monitores', 1=>'Monitor', 2=>'Monitores' ),
);
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
$OLANG = array(
);
?>

View File

@ -1,747 +0,0 @@
<?php
//
// ZoneMinder web Spain Spanish language file, $Date: 2011-07-26 21:30:00 +0100 (Wed, 06 Jul 2011) $, $Revision: 0002 $
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Spanish 'Spain' Translation by Rafael Medina
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
//require_once( 'en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
header ('Content-type: text/html; charset=utf-8');
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => 'Color 24 bits',
'8BitGrey' => 'Grises 8 bits',
'Action' => 'Acción',
'Actual' => 'Actual',
'AddNewControl' => 'Añadir nuevo control',
'AddNewMonitor' => 'Añadir nuevo monitor',
'AddNewUser' => 'Añadir nuevo usuario',
'AddNewZone' => 'Añadir nueva zona',
'Alarm' => 'Alarma',
'AlarmBrFrames' => 'Marcos de alarma<br/>',
'AlarmFrame' => 'Marco de alarma',
'AlarmFrameCount' => 'Número de Marcos de alarma',
'AlarmLimits' => 'Límites de alarma',
'AlarmMaximumFPS' => 'Máximos MPS alarma',
'AlarmPx' => 'Px alarma',
'AlarmRGBUnset' => 'Debe establecer un color RGB para alarma',
'Alert' => 'Alerta',
'All' => 'Todo',
'Apply' => 'Aplicar',
'ApplyingStateChange' => 'Aplicando cambio de estado...',
'ArchArchived' => 'Sólo archivados',
'ArchUnarchived' => 'Sólo no archivados',
'Archive' => 'Archivar',
'Archived' => 'Archivado',
'Area' => 'Área',
'AreaUnits' => 'Área (px/%)',
'AttrAlarmFrames' => 'Marcos de alarma',
'AttrArchiveStatus' => 'Estado de archivo',
'AttrAvgScore' => 'Promed. señal',
'AttrCause' => 'Causa',
'AttrDate' => 'Fecha',
'AttrDateTime' => 'Fecha/Hora',
'AttrDiskBlocks' => 'Bloques del disco',
'AttrDiskPercent' => 'Porcentaje del disco',
'AttrDuration' => 'Duración',
'AttrFrames' => 'Marcos',
'AttrId' => 'Id',
'AttrMaxScore' => 'Señal máxima',
'AttrMonitorId' => 'Id monitor',
'AttrMonitorName' => 'Nombre del monitor',
'AttrName' => 'Nombre',
'AttrNotes' => 'Notas',
'AttrSystemLoad' => 'Carga del sistema',
'AttrTime' => 'Hora',
'AttrTotalScore' => 'Señal total',
'AttrWeekday' => 'Día de la semana',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Autodetener tiempo de espera',
'Available' => 'Disponible',
'AvgBrScore' => 'Promed.<br/>señal',
'Background' => 'Segundo plano',
'BackgroundFilter' => 'Ejecutar filtro en segundo plano',
'BadAlarmFrameCount' => 'El número de marcos de alarma debe tener un número entero de uno o más',
'BadAlarmMaxFPS' => 'Máximos MPS de alarma debe ser un valor entero positivo o de punto flotante',
'BadChannel' => 'El canal debe estar establecido en un entero de cero o más',
'BadDevice' => 'El dispositivo debe tener un valor válido',
'BadFPSReportInterval' => 'El registro de intervalo de recuento búfer de MPS debe ser un entero de 100 o más',
'BadFormat' => 'El formato debe tener un valor válido',
'BadFrameSkip' => 'El número de omisión de marcos debe ser un entero de cero o más',
'BadHeight' => 'La altura debe tener un valor válido',
'BadHost' => 'El host debe tener una dirección ip o nombre de host válidos, no incluir http://',
'BadImageBufferCount' => 'El tamaño de búfer de imagen debe serun entero de 10 o más',
'BadLabelX' => 'La coordenada de la etiqueta X debe ser un entero de cero o más',
'BadLabelY' => 'La coordenada de la etiqueta Y debe ser un entero de cero o más',
'BadMaxFPS' => 'MPS máximos debe tener un valor entero positivo o de punto flotante',
'BadNameChars' => 'Los nombre sólo pueden contener carácteres alfanuméricos además de guiones y guiones bajos',
'BadPalette' => 'La paleta debe tener un valor válido',
'BadPath' => 'La ruta debe tener un valo válido',
'BadPort' => 'El puerto debe ser un número válido',
'BadPostEventCount' => 'El número de imágenes post evento debe ser un entero de cero o más',
'BadPreEventCount' => 'El número de imágenes pre evento debe ser al menos cero, y menor que el tamaño búfer de imagen',
'BadRefBlendPerc' => 'El porcentaje de la referencia de mezcla debe ser un entero positivo',
'BadSectionLength' => 'La duración de la sección debe ser un entero de 30 o más',
'BadSignalCheckColour' => 'El color de verificación de señal debe ser una cadena de color RGB válida',
'BadStreamReplayBuffer' => 'La secuencia de búfer de reproducción debe ser un entero de cero o más',
'BadWarmupCount' => 'Los marcos de calentamiento deben ser un entero de cero o más',
'BadWebColour' => 'El color web debe ser una cadena de color web válida',
'BadWidth' => 'El ancho debe tener un valor válido',
'Bandwidth' => 'Ancho de banda',
'BlobPx' => 'Px gota',
'BlobSizes' => 'Tamaño gotas',
'Blobs' => 'Gotas',
'Brightness' => 'Brillo',
'Buffers' => 'Búfers',
'CanAutoFocus' => 'Puede enfocar automáticamente',
'CanAutoGain' => 'Puede usar ganancia automática',
'CanAutoIris' => 'Puede ajustar el iris automáticamente',
'CanAutoWhite' => 'Puede ajustar el balance de blancos automáticamente',
'CanAutoZoom' => 'Puede hacer zoom automáticamente',
'CanFocus' => 'Puede enfocar',
'CanFocusAbs' => 'Puede usar enfoque absoluto',
'CanFocusCon' => 'Puede usar enfoque continuo',
'CanFocusRel' => 'Puede usar enfoque relativo',
'CanGain' => 'Puede hacer ganancia ',
'CanGainAbs' => 'Puede hacer ganancia absoluta',
'CanGainCon' => 'Puede hacer ganancia contínua',
'CanGainRel' => 'Puede Hacer ganancia relativa',
'CanIris' => 'Puede ajustar el iris',
'CanIrisAbs' => 'Puede hacer iris Absoluto',
'CanIrisCon' => 'Puede hacer iris contínuo',
'CanIrisRel' => 'Puede hacer iris relativo',
'CanMove' => 'Puede moverse',
'CanMoveAbs' => 'Puede moverse de forma absoluta',
'CanMoveCon' => 'Puede moverse de forma continua',
'CanMoveDiag' => 'Puede moverse en diagonal',
'CanMoveMap' => 'Puede moverse de forma asignada',
'CanMoveRel' => 'Puede moverse de forma relativa',
'CanPan' => 'Puede desplazarse' ,
'CanReset' => 'Puede restablecerse',
'CanSetPresets' => 'Puede fefinir programaciones',
'CanSleep' => 'Puede dormirse',
'CanTilt' => 'Puede inclinarse',
'CanWake' => 'Puede despertarse',
'CanWhite' => 'Puede ajustar balance de blancos',
'CanWhiteAbs' => 'Puede hacer balance de blancos absoluto',
'CanWhiteBal' => 'Puede ajustar Bal.Blanc.',
'CanWhiteCon' => 'Puede hacer balance de blancos continuo',
'CanWhiteRel' => 'Puede hacer balance de blancos relativo',
'CanZoom' => 'Puede hacer zoom',
'CanZoomAbs' => 'Puede hacer zoom absoluto',
'CanZoomCon' => 'Puede hacer zoom continuo',
'CanZoomRel' => 'Puede hacer zoom relativo',
'Cancel' => 'Cancelar',
'CancelForcedAlarm' => 'Cancelar alarma forzada',
'CaptureHeight' => 'Altura de captura',
'CaptureMethod' => 'Método de captura',
'CapturePalette' => 'Paleta de captura',
'CaptureWidth' => 'Ancho de captura',
'Cause' => 'Causa',
'CheckMethod' => 'Método de comprobación de alarma',
'ChooseDetectedCamera' => 'Elegir cámara detectada',
'ChooseFilter' => 'Elegir filtro',
'ChooseLogFormat' => 'Elegir formato de registro',
'ChooseLogSelection' => 'Elegir selección de registro',
'ChoosePreset' => 'Elegir preprogramación',
'Clear' => 'Limpiar',
'Close' => 'Cerrar',
'Colour' => 'Color',
'Command' => 'Comando',
'Component' => 'Componente',
'Config' => 'Config',
'ConfiguredFor' => 'Configurado para',
'ConfirmDeleteEvents' => '¿Seguro que desea borrar los eventos seleccionados?',
'ConfirmPassword' => 'Confirmar contraseña',
'ConjAnd' => 'y',
'ConjOr' => 'o',
'Console' => 'Consola',
'ContactAdmin' => 'Por favor contacte a su administrador para más detalles.',
'Continue' => 'Continuar',
'Contrast' => 'Contraste',
'Control' => 'Control',
'ControlAddress' => 'Dirección de control',
'ControlCap' => 'Capacidad de control',
'ControlCaps' => 'Capacidades de control',
'ControlDevice' => 'Controlar dispositivo',
'ControlType' => 'Tipo de control',
'Controllable' => 'Controlable',
'Cycle' => 'Ciclo',
'CycleWatch' => 'Visión ciclo',
'DateTime' => 'Fecha/Hora',
'Day' => 'Día',
'Debug' => 'Debug',
'DefaultRate' => 'Tasa por defecto',
'DefaultScale' => 'Escala por defecto',
'DefaultView' => 'Vista por defecto',
'Delete' => 'Borrar',
'DeleteAndNext' => 'Borrar &amp; siguiente',
'DeleteAndPrev' => 'Borrar &amp; anterior',
'DeleteSavedFilter' => 'Borrar filtro guardado',
'Description' => 'Descripción',
'DetectedCameras' => 'Cámaras detectadas',
'Device' => 'Dispositivo',
'DeviceChannel' => 'Canal de dispositivo',
'DeviceFormat' => 'Formato de dispositivo',
'DeviceNumber' => 'Número de dispositivo',
'DevicePath' => 'Ruta de dispositivo',
'Devices' => 'Dispositivos',
'Dimensions' => 'Dimensiones',
'DisableAlarms' => 'Deshabilitar alarmas',
'Disk' => 'Disco',
'Display' => 'Visualizar',
'Displaying' => 'Visualizando',
'Donate' => 'Por favor, done',
'DonateAlready' => 'No, ya he donado',
'DonateEnticement' => 'Ha estado ejecutando ZoneMinder por un tiempo y con suerte le resultará un útil complemento para su seguridad en hogar y trabajo. Aunque ZoneMinder es, y será, libre y de código abierto, cuesta dinero desarrollarlo y mantenerlo. Si quiere ayudar a mantener un futuro desarrollo y nuevas funciones entonces considere hacer un donativo por favor. Donar es, por supuesto, opcional pero muy apreciado y puede donar tanto como desee sin importar la cantidad.<br/><br/>Si desea hacer una donación por favor seleccione la opción de debajo o vaya a http://www.zoneminder.com/donate.html en su navegador.<br/><br/>Muchas gracias por usar ZoneMinder y no se olvide de vistar los foros en ZoneMinder.com para obtener soporte o hacer sugerencias sobre cómo mejorar su experiencia con ZoneMinder aún más.',
'DonateRemindDay' => 'Aún no, recordarme de nuevo en 1 día',
'DonateRemindHour' => 'Aún no, recordarme de nuevo en 1 hora',
'DonateRemindMonth' => 'Aún no, recordarme de nuevo en 1 mes',
'DonateRemindNever' => 'No, no quiero hacer una donación, no recordar',
'DonateRemindWeek' => 'Aún no, recordarme de nuevo en 1 semana',
'DonateYes' => 'Sí, me gustaría hacer una donación ahora',
'Download' => 'Descargar',
'DuplicateMonitorName' => 'Duplicar nombre de monitor',
'Duration' => 'Duración',
'Edit' => 'Editar',
'Email' => 'Email',
'EnableAlarms' => 'Habilitar alarmas',
'Enabled' => 'Habilitado',
'EnterNewFilterName' => 'Introducir nuevo nombre de filtro',
'Error' => 'Error',
'ErrorBrackets' => 'Error, por favor compruebe que tenga un mismo número de soportes de apertura y cierre',
'ErrorValidValue' => 'Error, por favor compruebe que todos los términos tienen un valor válido',
'Etc' => 'etc',
'Event' => 'Evento',
'EventFilter' => 'Filtro evento',
'EventId' => 'Id Evento',
'EventName' => 'Nombre evento',
'EventPrefix' => 'Prefijo de evento',
'Events' => 'Eventos',
'Exclude' => 'Excluir',
'Execute' => 'Ejecutar',
'Export' => 'Exportar',
'ExportDetails' => 'Exportar detalles de evento',
'ExportFailed' => 'Fallo al exportar',
'ExportFormat' => 'Formato del archivo a exportar',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Exportar detalles del marco',
'ExportImageFiles' => 'Exportar archivos de imagen',
'ExportLog' => 'Exportar registro',
'ExportMiscFiles' => 'Exportar otros archivos (si hay)',
'ExportOptions' => 'Opciones de exportación',
'ExportSucceeded' => 'Éxito al exportar',
'ExportVideoFiles' => 'Export Video Files (if present)', // Added - 2011-08-23
'Exporting' => 'Exportando',
'FPS' => 'MPS',
'FPSReportInterval' => 'Intervalo de informe de MPS',
'FTP' => 'FTP',
'Far' => 'Lejos',
'FastForward' => 'Avance rápido',
'Feed' => 'Feed',
'Ffmpeg' => 'Ffmpeg',
'File' => 'Archivo',
'FilterArchiveEvents' => 'Archivar todas las coincidencias',
'FilterDeleteEvents' => 'Borrar todas las coincidencias',
'FilterEmailEvents' => 'Enviar detalles de todas las coincidencias por email',
'FilterExecuteEvents' => 'Ejecutar comando para todas las coincidencias',
'FilterMessageEvents' => 'Detalles de mensaje de todas las coincidencias',
'FilterPx' => 'Filtrar Px',
'FilterUnset' => 'Debe especificar un ancho y un alto para el filtro',
'FilterUploadEvents' => 'Subir todas las coincidencias',
'FilterVideoEvents' => 'Create video for all matches', // Added - 2011-08-23
'Filters' => 'Filtros',
'First' => 'Primero',
'FlippedHori' => 'Girado horizontalmente',
'FlippedVert' => 'Girado verticalmente',
'Focus' => 'Enfoque',
'ForceAlarm' => 'Forzar alama',
'Format' => 'Formato',
'Frame' => 'Marco',
'FrameId' => 'Id del marco',
'FrameRate' => 'Ratío del marco',
'FrameSkip' => 'Omisión de marcos',
'Frames' => 'Marcos',
'Func' => 'Func',
'Function' => 'Función',
'Gain' => 'Ganancia',
'General' => 'General',
'GenerateVideo' => 'Generate Video', // Added - 2011-08-23
'GeneratingVideo' => 'Generating Video', // Added - 2011-08-23
'GoToZoneMinder' => 'Ir a ZoneMinder.com',
'Grey' => 'Gris',
'Group' => 'Grupo',
'Groups' => 'Grupos',
'HasFocusSpeed' => 'Tiene velocidad de enfoque',
'HasGainSpeed' => 'Tiene velocidad de ganancia',
'HasHomePreset' => 'Tiene programaciones de inicio',
'HasIrisSpeed' => 'Tiene velocidad de iris',
'HasPanSpeed' => 'Tiene velocidad de desplazamiento',
'HasPresets' => 'Tiene Pprogramaciones',
'HasTiltSpeed' => 'Tiene velocidad de inclinación',
'HasTurboPan' => 'Tiene turbo desplazamiento',
'HasTurboTilt' => 'Tiene turbo inclinación',
'HasWhiteSpeed' => 'Tiene velocidad de balance de blancos',
'HasZoomSpeed' => 'Tiene velocidad de zoom',
'High' => 'Alto',
'HighBW' => 'Alto&nbsp;B/B',
'Home' => 'Inicio',
'Hour' => 'Hora',
'Hue' => 'Matiz',
'Id' => 'Id',
'Idle' => 'Parado',
'Ignore' => 'Ignorar',
'Image' => 'Imagen',
'ImageBufferSize' => 'Tamaño de búfer de imagen (marcos)',
'Images' => 'Imágenes',
'In' => 'En',
'Include' => 'Incluir',
'Inverted' => 'Invertido',
'Iris' => 'Iris',
'KeyString' => 'Cadena clave',
'Label' => 'Etiqueta',
'Language' => 'Idioma',
'Last' => 'Último',
'Layout' => 'Diseño',
'Level' => 'Nivel',
'LimitResultsPost' => 'Sólo resultados', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Limitar al primero', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Línea',
'LinkedMonitors' => 'Monitores enlazados',
'List' => 'Lista',
'Load' => 'Carga',
'Local' => 'Local',
'Log' => 'Registro',
'LoggedInAs' => 'Identificado como',
'Logging' => 'Registro',
'LoggingIn' => 'Iniciando sesión',
'Login' => 'Iniciar sesión',
'Logout' => 'Cerrar sesión',
'Logs' => 'Registros',
'Low' => 'Bajo',
'LowBW' => 'Bajo&nbsp;B/B',
'Main' => 'Principal',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => 'Marca',
'Max' => 'Máx',
'MaxBandwidth' => 'Ancho de banda máximo',
'MaxBrScore' => 'Señal<br/>máxima',
'MaxFocusRange' => 'Rango de enfoque máximo',
'MaxFocusSpeed' => 'Velocidad de enfoque máxima',
'MaxFocusStep' => 'Grado de enfoque máximo',
'MaxGainRange' => 'Rango de ganancia máximo',
'MaxGainSpeed' => 'Velocidad de ganancia máxima',
'MaxGainStep' => 'Grado de ganancia máximo',
'MaxIrisRange' => 'Rango de iris máximo',
'MaxIrisSpeed' => 'Velocidad de iris máxima',
'MaxIrisStep' => 'Grado de iris máximo',
'MaxPanRange' => 'Rango de desplazamiento máximo',
'MaxPanSpeed' => 'Velocidad de desplazamiento máxima',
'MaxPanStep' => 'Grado de desplazamiento máximo',
'MaxTiltRange' => 'Rango de inclinación máximo',
'MaxTiltSpeed' => 'Velocidad de inclinación máxima',
'MaxTiltStep' => 'Grado de inclinación máximo',
'MaxWhiteRange' => 'Rango de balance de blancos máximo',
'MaxWhiteSpeed' => 'Velocidad de balance de blancos máxima',
'MaxWhiteStep' => 'Grado de balance de blancos máximo',
'MaxZoomRange' => 'Rango de zoom máximo',
'MaxZoomSpeed' => 'Velocidad de zoom máxima',
'MaxZoomStep' => 'Grado de zoom máximo',
'MaximumFPS' => 'MPS Máximos',
'Medium' => 'Medio',
'MediumBW' => 'Medio&nbsp;B/B',
'Message' => 'Mensaje',
'MinAlarmAreaLtMax' => 'El área mínima de alarma debe ser menor que la máxima',
'MinAlarmAreaUnset' => 'Debe especificar la mínima cantidad de píxeles de alarma',
'MinBlobAreaLtMax' => 'El área mínima de goteo debe ser menor que la máxima',
'MinBlobAreaUnset' => 'Debe especificar la mínima cantidad de píxeles de goteo',
'MinBlobLtMinFilter' => 'El área mínima de goteo debe ser menor o igual que el área mínima de filtro',
'MinBlobsLtMax' => 'Los goteos mínimos deben ser menores que los máximos',
'MinBlobsUnset' => 'Debe especificar una cantidad mínima de goteos',
'MinFilterAreaLtMax' => 'El área mínima del filtro debe ser menor que la máxima',
'MinFilterAreaUnset' => 'Debe especificar la cantidad mínima de píxeles del filtro',
'MinFilterLtMinAlarm' => 'El área mínima del filtro debe ser menor o igual a la máxima',
'MinFocusRange' => 'Rango de enfoque mínimo',
'MinFocusSpeed' => 'Velocidad de enfoque mínima',
'MinFocusStep' => 'Grado de enfoque mínimo',
'MinGainRange' => 'Rango de ganancia mínimo',
'MinGainSpeed' => 'Velocidad de ganancia mínima',
'MinGainStep' => 'Grado de ganancia mínimo',
'MinIrisRange' => 'Rango de iris mínimo',
'MinIrisSpeed' => 'Velocidad de iris mínima',
'MinIrisStep' => 'Grado de iris mínimo',
'MinPanRange' => 'Rango de desplazamiento mínima',
'MinPanSpeed' => 'Velocidad de desplazamiento mínima',
'MinPanStep' => 'Grado de desplazamiento mínimo',
'MinPixelThresLtMax' => 'El mínimo umbral de píxeles debe ser menor que el máximo',
'MinPixelThresUnset' => 'Debe especificar un umbral de píxeles mínimo',
'MinTiltRange' => 'Rango de inclinación mínimo',
'MinTiltSpeed' => 'Velocidad de inclinación mínima',
'MinTiltStep' => 'Grado de inclinación mínimo',
'MinWhiteRange' => 'Rango de balance de blancos mínimo',
'MinWhiteSpeed' => 'Velocidad de balance de blancos mínimo',
'MinWhiteStep' => 'Grado de balance de blancos mínimo',
'MinZoomRange' => 'Rango de zoom mínimo',
'MinZoomSpeed' => 'Velocidad de zoom mínima',
'MinZoomStep' => 'Grado de zoom mínimo',
'Misc' => 'Misc',
'Monitor' => 'Monitor',
'MonitorIds' => 'Ids&nbsp;monitor',
'MonitorPreset' => 'Programar monitor',
'MonitorPresetIntro' => 'Seleccione la programación más apropiada de la lista de debajo.<br/><br/>Por favor tenga en cuenta que esto podría sobrescribir cualquier valor que ya hubiera configurado para el monitor actual.<br/><br/>',
'MonitorProbe' => 'Sondear monitor',
'MonitorProbeIntro' => 'La lista de debajo muestra las cámaras analógicas y en red detectadas y si ya están siendo usadas o están disponibles para seleccionar.<br/><br/>Seleccione la entrada deseada de la lista de debajo.<br/><br/>Por favor tenga en cuenta que podrían no detectarse todas las cámaras y que elegir una cámara aquí podría sobrescribir cualquier valor que ya hubiera configurado para el monitor actual.<br/><br/>',
'Monitors' => 'Monitores',
'Montage' => 'Montaje',
'Month' => 'Mes',
'More' => 'Más',
'Move' => 'Mover',
'MustBeGe' => 'debe ser mayor o igual que',
'MustBeLe' => 'debe ser menor o igual que',
'MustConfirmPassword' => 'Debe confirmar la contraseña',
'MustSupplyPassword' => 'Debe indicar una contraseña',
'MustSupplyUsername' => 'Debe indicar un nombre de usuario',
'Name' => 'Nombre',
'Near' => 'Cerca',
'Network' => 'Red',
'New' => 'Nuevo',
'NewGroup' => 'Nuevo grupo',
'NewLabel' => 'Nueva etiqueta',
'NewPassword' => 'Nueva contraseña',
'NewState' => 'Nuevo estado',
'NewUser' => 'Nuevo usuario',
'Next' => 'Siguiente',
'No' => 'No',
'NoDetectedCameras' => 'No se detectaron cámaras',
'NoFramesRecorded' => 'No hay marcos grabados para este evento',
'NoGroup' => 'Sin grupo',
'NoSavedFilters' => 'No hay filtros guardados',
'NoStatisticsRecorded' => 'No hay estadísticas guardadas para este evento/marco',
'None' => 'Ninguno',
'NoneAvailable' => 'Ninguno disponible',
'Normal' => 'Normal',
'Notes' => 'Notas',
'NumPresets' => 'Número programa',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'igual a',
'OpGt' => 'mayor que',
'OpGtEq' => 'mayor que o igual a',
'OpIn' => 'en conjunto',
'OpLt' => 'menor que',
'OpLtEq' => 'menor que o igual a',
'OpMatches' => 'coincidencias',
'OpNe' => 'distinto de',
'OpNotIn' => 'no en conjunto',
'OpNotMatches' => 'no coincide',
'Open' => 'Abrir',
'OptionHelp' => 'Ayuda de la opción',
'OptionRestartWarning' => 'Estos cambios podrían no surtir un efecto completo mientras el sistema esté ejecutándose. Cuando haya terminado haciendo cambios por favor asegúrese de reiniciar ZoneMinder.',
'Options' => 'Opciones',
'OrEnterNewName' => 'o introduzca un nuevo nombre',
'Order' => 'Orden',
'Orientation' => 'Orientación',
'Out' => 'Fuera',
'OverwriteExisting' => 'Sobreescribir existente',
'Paged' => 'Paginado',
'Pan' => 'Desplazar',
'PanLeft' => 'Desplazar a la izquierda',
'PanRight' => 'Rotar a la derecha',
'PanTilt' => 'Rotar/Inclinar',
'Parameter' => 'Parámetro',
'Password' => 'Contraseña',
'PasswordsDifferent' => 'La nueva contraseña y la de confirmación son diferentes',
'Paths' => 'Rutas',
'Pause' => 'Pausar',
'Phone' => 'Teléfono',
'PhoneBW' => 'B/B&nbsp;Teléfono',
'Pid' => 'PID',
'PixelDiff' => 'Diferencia píxeles',
'Pixels' => 'píxeles',
'Play' => 'Reproducir',
'PlayAll' => 'Reproducir rodo',
'PleaseWait' => 'Espere por favor',
'Point' => 'Punto',
'PostEventImageBuffer' => 'Cuenta de imagen post evento',
'PreEventImageBuffer' => 'Cuenta de imagen pre evento',
'PreserveAspect' => 'Preservar relación de aspecto',
'Preset' => 'Programa',
'Presets' => 'Programas',
'Prev' => 'Anterior',
'Probe' => 'Sondear',
'Protocol' => 'Protocolo',
'Rate' => 'Valorar',
'Real' => 'Real',
'Record' => 'Grabar',
'RefImageBlendPct' => 'Referencia de mezcla de imagen %ge',
'Refresh' => 'Refrescar',
'Remote' => 'Remoto',
'RemoteHostName' => 'Nombre del host remoto',
'RemoteHostPath' => 'Nombre de ruta del host',
'RemoteHostPort' => 'Puerto del host remoto',
'RemoteHostSubPath' => 'Nombre de subruta del host',
'RemoteImageColours' => 'Colores de imagen remota',
'RemoteMethod' => 'Método remoto',
'RemoteProtocol' => 'Protocolo remoto',
'Rename' => 'Renombrar',
'Replay' => 'Repetir',
'ReplayAll' => 'Todos los eventos',
'ReplayGapless' => 'Eventos sin espacios',
'ReplaySingle' => 'Evento individual',
'Reset' => 'Restablecer',
'ResetEventCounts' => 'Restablecer número de eventos',
'Restart' => 'Reiniciar',
'Restarting' => 'Reinciando',
'RestrictedCameraIds' => 'Ids de cámara restringidos',
'RestrictedMonitors' => 'Monitores restringidos',
'ReturnDelay' => 'Retraso de entrega',
'ReturnLocation' => 'Lugar de entrega',
'Rewind' => 'Rebobinar',
'RotateLeft' => 'Rotar hacia la izquierda',
'RotateRight' => 'Rotar hacia la derecha',
'RunLocalUpdate' => 'Por favor, ejecute zmupdate.pl para actualizar',
'RunMode' => 'Modo de ejecución',
'RunState' => 'Estado de ejecución',
'Running' => 'En ejecución',
'Save' => 'Guardar',
'SaveAs' => 'Guardar cómo',
'SaveFilter' => 'Guardar filtro',
'Scale' => 'Escalar',
'Score' => 'Cuenta',
'Secs' => 'Segs',
'Sectionlength' => 'Duración de sección',
'Select' => 'Seleccionar',
'SelectFormat' => 'Seleccionar formato',
'SelectLog' => 'Seleccionar registro',
'SelectMonitors' => 'Seleccionar monitores',
'SelfIntersecting' => 'Arístas de polígonos no deben intersectar',
'Set' => 'Establecer',
'SetNewBandwidth' => 'Establecer nuevo ancho de banda',
'SetPreset' => 'Establecer programación',
'Settings' => 'Ajustes',
'ShowFilterWindow' => 'Mostrar ventana de filtros',
'ShowTimeline' => 'Mostrar línea de tiempo',
'SignalCheckColour' => 'Color de comprobación de señal',
'Size' => 'Tamaño',
'SkinDescription' => 'Cambiar el tema por defecto para este ordenador',
'Sleep' => 'Dormir',
'SortAsc' => 'Ascendente',
'SortBy' => 'Ordenar por',
'SortDesc' => 'Descendente',
'Source' => 'Origen',
'SourceColours' => 'Colores de origen',
'SourcePath' => 'Ruta de origen',
'SourceType' => 'Tipo de origen',
'Speed' => 'Velocidad',
'SpeedHigh' => 'Velocidad alta',
'SpeedLow' => 'Velocidad baja',
'SpeedMedium' => 'Velocidad media',
'SpeedTurbo' => 'Turbo velocidad',
'Start' => 'Iniciar',
'State' => 'Estado',
'Stats' => 'Estadísticas',
'Status' => 'Estado',
'Step' => 'Salto',
'StepBack' => 'Salto atrás',
'StepForward' => 'Salto adelante',
'StepLarge' => 'Salto largo',
'StepMedium' => 'Salto medio',
'StepNone' => 'Sin salto',
'StepSmall' => 'Salto pequeño',
'Stills' => 'Fijas',
'Stop' => 'Detener',
'Stopped' => 'Detenido',
'Stream' => 'Corriente',
'StreamReplayBuffer' => 'Secuencia de búfer de reproducción',
'Submit' => 'Enviar',
'System' => 'Sistema',
'SystemLog' => 'Registros del sistema',
'Tele' => 'Tele',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Inclinar',
'Time' => 'Hora',
'TimeDelta' => 'Delta del tiempo',
'TimeStamp' => 'Marca de tiempo',
'Timeline' => 'Línea de tiempo',
'Timestamp' => 'Marca de tiempo',
'TimestampLabelFormat' => 'Formato de hora multinacional',
'TimestampLabelX' => 'Etiqueta de tiempo X',
'TimestampLabelY' => 'Etiqueta de tiempo Y',
'Today' => 'Hoy',
'Tools' => 'Herramientas',
'Total' => 'Total',
'TotalBrScore' => 'Cuenta<br/>total',
'TrackDelay' => 'Retraso de pista',
'TrackMotion' => 'Movimiento de pista',
'Triggers' => 'Interruptores',
'TurboPanSpeed' => 'Turbo velocidad de rotación',
'TurboTiltSpeed' => 'Turbo velocidad de inclinación',
'Type' => 'Tipe',
'Unarchive' => 'Desarchivar',
'Undefined' => 'Indefinido',
'Units' => 'Unidades',
'Unknown' => 'Desconocido',
'Update' => 'Actualizar',
'UpdateAvailable' => 'Hay una actualización disponible para ZoneMinder.',
'UpdateNotNecessary' => 'No es necesario actualizar.',
'Updated' => 'Actualizado',
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Usar filtro',
'UseFilterExprsPost' => '&nbsp;filtros&nbsp;de expresión', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Usar&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'Usuario',
'Username' => 'Nombre de usuario',
'Users' => 'Usuarios',
'Value' => 'Valor',
'Version' => 'Versión',
'VersionIgnore' => 'Ignorar esta versión',
'VersionRemindDay' => 'Volver a recordar en 1 día',
'VersionRemindHour' => 'Volver a recordar en 1 hora',
'VersionRemindNever' => 'No recordar nuevas versiones',
'VersionRemindWeek' => 'Volver a recordar en 1 semana',
'Video' => 'Video', // Added - 2011-08-23
'VideoFormat' => 'Video Format', // Added - 2011-08-23
'VideoGenFailed' => 'Video Generation Failed!', // Added - 2011-08-23
'VideoGenFiles' => 'Existing Video Files', // Added - 2011-08-23
'VideoGenNoFiles' => 'No Video Files Found', // Added - 2011-08-23
'VideoGenParms' => 'Video Generation Parameters', // Added - 2011-08-23
'VideoGenSucceeded' => 'Video Generation Succeeded!', // Added - 2011-08-23
'VideoSize' => 'Video Size', // Added - 2011-08-23
'View' => 'Ver',
'ViewAll' => 'Ver todos',
'ViewEvent' => 'Ver evento',
'ViewPaged' => 'Ver paginados',
'Wake' => 'Despertar',
'WarmupFrames' => 'Marcos de calentamiento',
'Watch' => 'Observar',
'Web' => 'Web',
'WebColour' => 'Color web',
'Week' => 'Semana',
'White' => 'Blanco',
'WhiteBalance' => 'Balance de blancos',
'Wide' => 'Ancho',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'Cadena de activación de X10',
'X10InputAlarmString' => 'Alarma de entrada de cadena de X10',
'X10OutputAlarmString' => 'Salida de cadena de alarma de X10',
'Y' => 'Y',
'Yes' => 'Sí',
'YouNoPerms' => 'No tiene los permisos necesarios para acceder a este recurso.',
'Zone' => 'Zona',
'ZoneAlarmColour' => 'Color de alarma (rojo/verde/bzul)',
'ZoneArea' => 'Área de zona',
'ZoneFilterSize' => 'Filtrar anchura/altura (píxeles)',
'ZoneMinMaxAlarmArea' => 'Mín/Máx área de alarma',
'ZoneMinMaxBlobArea' => 'Mín/Máx área de goteo',
'ZoneMinMaxBlobs' => 'Mín/Máx goteos',
'ZoneMinMaxFiltArea' => 'Mín/Máx áreas filtradas',
'ZoneMinMaxPixelThres' => 'Mín/Máx umbral de píxeles (0-255)',
'ZoneMinderLog' => 'Registros de ZoneMinder',
'ZoneOverloadFrames' => 'Ignorar número de sobrecarga de marcos',
'Zones' => 'Zonas',
'Zoom' => 'Zoom',
'ZoomIn' => 'Acercar imagen',
'ZoomOut' => 'Alejar imagen',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Sesión actual: \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Último(s) %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'La última versión publicada es la v%1$s, tiene instalada la v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Función del monitor %1$s',
'RunningRecentVer' => 'Está ejecutando la versión más reciente de ZoneMinder, v%s.',
'VersionMismatch' => 'La versión no coincide, la versión del sistema es la %1$s, la de la base de datos es la %2$s.',
);
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Eventos', 1=>'Evento', 2=>'Eventos' ),
'Monitor' => array( 0=>'Monitores', 1=>'Monitor', 2=>'Monitores' ),
);
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, no se pudo correlacionar la variable de la cadena de idioma' );
}
$OLANG = array(
);
?>

View File

@ -1,839 +0,0 @@
<?php
//
// ZoneMinder web Estonian language file, $Date: 2009-03-31
//14:00:49 +0100 (Tue, 31 Mar 2009) $, $Revision: 2829 $ // Copyright (C)
//2001-2008 Philip Coombes // // This program is free software; you can
//redistribute it and/or // modify it under the terms of the GNU General
//Public License // as published by the Free Software Foundation; either
//version 2 // of the License, or (at your option) any later version. //
// This program 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
//General Public License for more details. // // You should have received
//a copy of the GNU General Public License // along with this program; if
//not, write to the Free Software // Foundation, Inc., 59 Temple Place -
//Suite 330, Boston, MA 02111-1307, USA. //
// ZoneMinder estonian Translation by Seston seston@gmail.com
// Kes viitsiks aidata tõlkida abitekste ja üldse kõike seda.Üksi on kuidagi igav ettevõtmine.
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
//require_once( 'zm_lang_en_GB.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
header( "Content-Type: text/html; charset=UTF-8" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => '24 bit colour',
'8BitGrey' => '8 bit greyscale',
'Action' => 'Action',
'Actual' => 'Actual',
'AddNewControl' => 'Add New Control',
'AddNewMonitor' => 'Lisa uus Monitor',
'AddNewUser' => 'Lisa uus kasutaja',
'AddNewZone' => 'Lisa uus tsoon',
'Alarm' => 'Alarm',
'AlarmBrFrames' => 'Alarmi<br/>kaadrid',
'AlarmFrame' => 'Alarmi kaader',
'AlarmFrameCount' => 'Alarm Frame Count',
'AlarmLimits' => 'Alarm Limits',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'Alarm Px',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => 'Hoiatus',
'All' => 'All',
'Apply' => 'Apply',
'ApplyingStateChange' => 'Applying State Change',
'ArchArchived' => 'Archived Only',
'ArchUnarchived' => 'Unarchived Only',
'Archive' => 'Archive',
'Archived' => 'Arhiveeritud',
'Area' => 'Ala',
'AreaUnits' => 'Ala (px/%)',
'AttrAlarmFrames' => 'Alarmi kaadrid',
'AttrArchiveStatus' => 'Archive Status',
'AttrAvgScore' => 'Avg. Score',
'AttrCause' => 'Cause',
'AttrDate' => 'Kp.',
'AttrDateTime' => 'Kp/Kellaaeg',
'AttrDiskBlocks' => 'Disk Blocks',
'AttrDiskPercent' => 'Disk Percent',
'AttrDuration' => 'Kestvus',
'AttrFrames' => 'Kaadrid',
'AttrId' => 'Id',
'AttrMaxScore' => 'Max. Score',
'AttrMonitorId' => 'Monitor Id',
'AttrMonitorName' => 'Monitori Nimi',
'AttrName' => 'Nimi',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'Kellaaeg',
'AttrTotalScore' => 'Total Score',
'AttrWeekday' => 'Tööpäevad',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto Stop Timeout',
'Available' => 'Saadaval',
'AvgBrScore' => 'Avg.<br/>Score',
'Background' => 'Taust',
'BackgroundFilter' => 'Käivita filter taustal',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to a valid value',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Names may only contain alphanumeric characters plus hyphen and underscore',
'BadPalette' => 'Palette must be set to a valid value',
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer' => 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => 'Ribalaius',
'BlobPx' => 'Blob Px',
'BlobSizes' => 'Blob Sizes',
'Blobs' => 'Blobs',
'Brightness' => 'Heledus',
'Buffers' => 'Buffer',
'CanAutoFocus' => 'Can Auto Focus',
'CanAutoGain' => 'Can Auto Gain',
'CanAutoIris' => 'Can Auto Iris',
'CanAutoWhite' => 'Can Auto White Bal.',
'CanAutoZoom' => 'Can Auto Zoom',
'CanFocus' => 'Can Focus',
'CanFocusAbs' => 'Can Focus Absolute',
'CanFocusCon' => 'Can Focus Continuous',
'CanFocusRel' => 'Can Focus Relative',
'CanGain' => 'Can Gain ',
'CanGainAbs' => 'Can Gain Absolute',
'CanGainCon' => 'Can Gain Continuous',
'CanGainRel' => 'Can Gain Relative',
'CanIris' => 'Can Iris',
'CanIrisAbs' => 'Can Iris Absolute',
'CanIrisCon' => 'Can Iris Continuous',
'CanIrisRel' => 'Can Iris Relative',
'CanMove' => 'Can Move',
'CanMoveAbs' => 'Can Move Absolute',
'CanMoveCon' => 'Can Move Continuous',
'CanMoveDiag' => 'Can Move Diagonally',
'CanMoveMap' => 'Can Move Mapped',
'CanMoveRel' => 'Can Move Relative',
'CanPan' => 'Can Pan' ,
'CanReset' => 'Can Reset',
'CanSetPresets' => 'Can Set Presets',
'CanSleep' => 'Can Sleep',
'CanTilt' => 'Can Tilt',
'CanWake' => 'Can Wake',
'CanWhite' => 'Can White Balance',
'CanWhiteAbs' => 'Can White Bal. Absolute',
'CanWhiteBal' => 'Can White Bal.',
'CanWhiteCon' => 'Can White Bal. Continuous',
'CanWhiteRel' => 'Can White Bal. Relative',
'CanZoom' => 'Can Zoom',
'CanZoomAbs' => 'Can Zoom Absolute',
'CanZoomCon' => 'Can Zoom Continuous',
'CanZoomRel' => 'Can Zoom Relative',
'Cancel' => 'Cancel',
'CancelForcedAlarm' => 'Cancel Forced Alarm',
'CaptureHeight' => 'Capture Height',
'CaptureMethod' => 'Capture Method',
'CapturePalette' => 'Capture Palette',
'CaptureWidth' => 'Capture Width',
'Cause' => 'Cause',
'CheckMethod' => 'Alarm Check Method',
'ChooseDetectedCamera' => 'Vali tuvastatud kaamera',
'ChooseFilter' => 'Vali Filter',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Sule',
'Colour' => 'Colour',
'Command' => 'Command',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Config',
'ConfiguredFor' => 'Seadistatud',
'ConfirmDeleteEvents' => 'Oled sa kindel kustamaks valitud sündmused?',
'ConfirmPassword' => 'Kinnita salasõna',
'ConjAnd' => 'ja',
'ConjOr' => 'või',
'Console' => 'Konsool',
'ContactAdmin' => 'Võta ühendust adminniga.',
'Continue' => 'Jätka',
'Contrast' => 'Kontrast',
'Control' => 'Control',
'ControlAddress' => 'Control Address',
'ControlCap' => 'Control Capability',
'ControlCaps' => 'Control Capabilities',
'ControlDevice' => 'Control Device',
'ControlType' => 'Control Type',
'Controllable' => 'Controllable',
'Cycle' => 'Cycle',
'CycleWatch' => 'Cycle Watch',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Päevas',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Default Scale',
'DefaultView' => 'Default View',
'Delete' => 'Kustuta',
'DeleteAndNext' => 'Delete &amp; Next',
'DeleteAndPrev' => 'Delete &amp; Prev',
'DeleteSavedFilter' => 'Kustuta salvestatud filter',
'Description' => 'Kirjeldus',
'DetectedCameras' => 'Tuvastatud kaamerad',
'Device' => 'Device',
'DeviceChannel' => 'Device Channel',
'DeviceFormat' => 'Device Format',
'DeviceNumber' => 'Device Number',
'DevicePath' => 'Device Path',
'Devices' => 'Devices',
'Dimensions' => 'Dimensions',
'DisableAlarms' => 'Keela alarmid',
'Disk' => 'Disk',
'Display' => 'Display', // Added - 2011-03-02
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Please Donate',
'DonateAlready' => 'No, I\'ve already donated',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br/><br/>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br/><br/>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'DonateRemindDay' => 'Not yet, remind again in 1 day',
'DonateRemindHour' => 'Not yet, remind again in 1 hour',
'DonateRemindMonth' => 'Not yet, remind again in 1 month',
'DonateRemindNever' => 'No, I don\'t want to donate, never remind',
'DonateRemindWeek' => 'Not yet, remind again in 1 week',
'DonateYes' => 'Yes, I\'d like to donate now',
'Download' => 'Lae alla',
'DuplicateMonitorName' => 'Duplicate Monitor Name',
'Duration' => 'Kestvus',
'Edit' => 'Edit',
'Email' => 'Email',
'EnableAlarms' => 'Luba Alarmid',
'Enabled' => 'Lubatud',
'EnterNewFilterName' => 'Sisest uue filtri nimi',
'Error' => 'Viga',
'ErrorBrackets' => 'Error, please check you have an equal number of opening and closing brackets',
'ErrorValidValue' => 'Error, please check that all terms have a valid value',
'Etc' => 'etc',
'Event' => 'Syndmus',
'EventFilter' => 'Sündmuste filter',
'EventId' => 'Sündmuse Id',
'EventName' => 'Sündmuse nimi',
'EventPrefix' => 'Event Prefix',
'Events' => 'Sündmuseid',
'Exclude' => 'Exclude',
'Execute' => 'Käivita',
'Export' => 'Export',
'ExportDetails' => 'Export Event Details',
'ExportFailed' => 'Export Failed',
'ExportFormat' => 'Export File Format',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Export Frame Details',
'ExportImageFiles' => 'Export Image Files',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Export Other Files (if present)',
'ExportOptions' => 'Export Options',
'ExportSucceeded' => 'Export Succeeded',
'ExportVideoFiles' => 'Export Video Files (if present)',
'Exporting' => 'Exporting',
'FPS' => 'fps',
'FPSReportInterval' => 'FPS Report Interval',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'Feed',
'Ffmpeg' => 'Ffmpeg',
'File' => 'Fail',
'FilterArchiveEvents' => 'Archive all matches',
'FilterDeleteEvents' => 'Delete all matches',
'FilterEmailEvents' => 'Email details of all matches',
'FilterExecuteEvents' => 'Execute command on all matches',
'FilterMessageEvents' => 'Message details of all matches',
'FilterPx' => 'Filter Px',
'FilterUnset' => 'You must specify a filter width and height',
'FilterUploadEvents' => 'Upload all matches',
'FilterVideoEvents' => 'Create video for all matches',
'Filters' => 'Filtrid',
'First' => 'Esimene',
'FlippedHori' => 'Flipped Horizontally',
'FlippedVert' => 'Flipped Vertically',
'Focus' => 'Fookus',
'ForceAlarm' => 'Force Alarm',
'Format' => 'Format',
'Frame' => 'Kaader',
'FrameId' => 'Frame Id',
'FrameRate' => 'Frame Rate',
'FrameSkip' => 'Frame Skip',
'Frames' => 'Kaadrid',
'Func' => 'Func',
'Function' => 'Funktsioon',
'Gain' => 'Gain',
'General' => 'Peamine',
'GenerateVideo' => 'Genereeri Video',
'GeneratingVideo' => 'Genereerin Videot',
'GoToZoneMinder' => 'Mine ZoneMinder.com',
'Grey' => 'Grey',
'Group' => 'Grupp',
'Groups' => 'Grupid',
'HasFocusSpeed' => 'Has Focus Speed',
'HasGainSpeed' => 'Has Gain Speed',
'HasHomePreset' => 'Has Home Preset',
'HasIrisSpeed' => 'Has Iris Speed',
'HasPanSpeed' => 'Has Pan Speed',
'HasPresets' => 'Has Presets',
'HasTiltSpeed' => 'Has Tilt Speed',
'HasTurboPan' => 'Has Turbo Pan',
'HasTurboTilt' => 'Has Turbo Tilt',
'HasWhiteSpeed' => 'Has White Bal. Speed',
'HasZoomSpeed' => 'Has Zoom Speed',
'High' => 'Suurim',
'HighBW' => 'High&nbsp;B/W',
'Home' => 'Koju',
'Hour' => 'Tunnis',
'Hue' => 'Hue',
'Id' => 'Id',
'Idle' => 'Idle',
'Ignore' => 'Ignore',
'Image' => 'Pilt',
'ImageBufferSize' => 'Image Buffer Size (frames)',
'Images' => 'Pildid',
'In' => 'In',
'Include' => 'Include',
'Inverted' => 'Inverted',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => 'Keel',
'Last' => 'Viimane',
'Layout' => 'Layout',
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'results only', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Limit to first', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Lingitud monitorid',
'List' => 'List',
'Load' => 'Koormus',
'Local' => 'Local',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Sisse logitud',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'Login sisse',
'Login' => 'Login',
'Logout' => 'Logi välja',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'Madal',
'LowBW' => 'Low&nbsp;B/W',
'Main' => 'Main',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => 'Märgi',
'Max' => 'Max',
'MaxBandwidth' => 'Max Ribalaius',
'MaxBrScore' => 'Max.<br/>Score',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MaximumFPS' => 'Maksimaalne FPS',
'Medium' => 'Keskmine',
'MediumBW' => 'Medium&nbsp;B/W',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'Minimum blob area should be less than maximum',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'Minimum blobs should be less than maximum',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => 'Minimum pixel threshold should be less than maximum',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => 'Misc',
'Monitor' => 'Monitor',
'MonitorIds' => 'Monitor&nbsp;Ids',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br/><br/>Please note that this may overwrite any values you already have configured for the current monitor.<br/><br/>',
'MonitorProbe' => 'Monitor Probe',
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>',
'Monitors' => 'Monitors',
'Montage' => 'Montage',
'Month' => 'Kuus',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Move',
'MustBeGe' => 'must be greater than or equal to',
'MustBeLe' => 'must be less than or equal to',
'MustConfirmPassword' => 'You must confirm the password',
'MustSupplyPassword' => 'You must supply a password',
'MustSupplyUsername' => 'You must supply a username',
'Name' => 'Sündmus',
'Near' => 'Near',
'Network' => 'Network',
'New' => 'New',
'NewGroup' => 'New Group',
'NewLabel' => 'New Label',
'NewPassword' => 'New Password',
'NewState' => 'New State',
'NewUser' => 'New User',
'Next' => 'Next',
'No' => 'No',
'NoDetectedCameras' => 'No Detected Cameras',
'NoFramesRecorded' => 'There are no frames recorded for this event',
'NoGroup' => 'No Group',
'NoSavedFilters' => 'NoSavedFilters',
'NoStatisticsRecorded' => 'There are no statistics recorded for this event/frame',
'None' => 'None',
'NoneAvailable' => 'None available',
'Normal' => 'Normal',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'equal to',
'OpGt' => 'greater than',
'OpGtEq' => 'greater than or equal to',
'OpIn' => 'in set',
'OpLt' => 'less than',
'OpLtEq' => 'less than or equal to',
'OpMatches' => 'matches',
'OpNe' => 'not equal to',
'OpNotIn' => 'not in set',
'OpNotMatches' => 'does not match',
'Open' => 'Open',
'OptionHelp' => 'Option Help',
'OptionRestartWarning' => 'These changes may not come into effect fully\nwhile the system is running. When you have\nfinished making your changes please ensure that\nyou restart ZoneMinder.',
'Options' => 'Seaded',
'OrEnterNewName' => 'või sisesta uus nimi',
'Order' => 'Järjekord',
'Orientation' => 'Orientatsioon',
'Out' => 'Out',
'OverwriteExisting' => 'Kirjuta üle',
'Paged' => 'Paged',
'Pan' => 'Pan',
'PanLeft' => 'Pan Left',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'Parameter',
'Password' => 'Password',
'PasswordsDifferent' => 'The new and confirm passwords are different',
'Paths' => 'Paths',
'Pause' => 'Pause',
'Phone' => 'Phone',
'PhoneBW' => 'Phone&nbsp;B/W',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'pixels',
'Play' => 'Play',
'PlayAll' => 'Play All',
'PleaseWait' => 'Please Wait',
'Point' => 'Point',
'PostEventImageBuffer' => 'Post Event Image Count',
'PreEventImageBuffer' => 'Pre Event Image Count',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => 'Prev',
'Probe' => 'Probe',
'Protocol' => 'Protocol',
'Rate' => 'Rate',
'Real' => 'Real',
'Record' => 'Record',
'RefImageBlendPct' => 'Reference Image Blend %ge',
'Refresh' => 'Värskenda',
'Remote' => 'Remote',
'RemoteHostName' => 'Remote Host Name',
'RemoteHostPath' => 'Remote Host Path',
'RemoteHostPort' => 'Remote Host Port',
'RemoteHostSubPath' => 'Remote Host SubPath',
'RemoteImageColours' => 'Remote Image Colours',
'RemoteMethod' => 'Remote Method',
'RemoteProtocol' => 'Remote Protocol',
'Rename' => 'Nimeta ümber',
'Replay' => 'Kordus esitus',
'ReplayAll' => 'Kõik sündmused',
'ReplayGapless' => 'Lünkadeta sündmused',
'ReplaySingle' => 'Üksik sündmus',
'Reset' => 'Reset',
'ResetEventCounts' => 'Reset Event Counts',
'Restart' => 'Restart',
'Restarting' => 'Restarting',
'RestrictedCameraIds' => 'Restricted Camera Ids',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Return Delay',
'ReturnLocation' => 'Return Location',
'Rewind' => 'Rewind',
'RotateLeft' => 'Rotate Left',
'RotateRight' => 'Rotate Right',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Run Mode',
'RunState' => 'Run State',
'Running' => 'Töötab',
'Save' => 'Save',
'SaveAs' => 'Save as',
'SaveFilter' => 'Save Filter',
'Scale' => 'Scale',
'Score' => 'Score',
'Secs' => 'Secs',
'Sectionlength' => 'Section length',
'Select' => 'Select',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Select Monitors',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => 'Set',
'SetNewBandwidth' => 'Set New Bandwidth',
'SetPreset' => 'Set Preset',
'Settings' => 'Settings',
'ShowFilterWindow' => 'Show Filter Window',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Size',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-03-02
'Sleep' => 'Sleep',
'SortAsc' => 'Asc',
'SortBy' => 'Sort by',
'SortDesc' => 'Desc',
'Source' => 'Allikas',
'SourceColours' => 'Source Colours',
'SourcePath' => 'Source Path',
'SourceType' => 'Source Type',
'Speed' => 'Speed',
'SpeedHigh' => 'High Speed',
'SpeedLow' => 'Low Speed',
'SpeedMedium' => 'Medium Speed',
'SpeedTurbo' => 'Turbo Speed',
'Start' => 'Start',
'State' => 'State',
'Stats' => 'Stats',
'Status' => 'Status',
'Step' => 'Step',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Large Step',
'StepMedium' => 'Medium Step',
'StepNone' => 'No Step',
'StepSmall' => 'Small Step',
'Stills' => 'Stills',
'Stop' => 'Stop',
'Stopped' => 'Stopped',
'Stream' => 'Stream',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Submit',
'System' => 'System',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Tilt',
'Time' => 'Time',
'TimeDelta' => 'Time Delta',
'TimeStamp' => 'Time Stamp',
'Timeline' => 'Timeline',
'Timestamp' => 'Timestamp',
'TimestampLabelFormat' => 'Timestamp Label Format',
'TimestampLabelX' => 'Timestamp Label X',
'TimestampLabelY' => 'Timestamp Label Y',
'Today' => 'Today',
'Tools' => 'Tools',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Total<br/>Score',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'Triggers',
'TurboPanSpeed' => 'Turbo Pan Speed',
'TurboTiltSpeed' => 'Turbo Tilt Speed',
'Type' => 'Type',
'Unarchive' => 'Unarchive',
'Undefined' => 'Undefined',
'Units' => 'Units',
'Unknown' => 'Unknown',
'Update' => 'Update',
'UpdateAvailable' => 'An update to ZoneMinder is available.',
'UpdateNotNecessary' => 'No update is necessary.',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Use Filter',
'UseFilterExprsPost' => '&nbsp;filter&nbsp;expressions', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Use&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'User',
'Username' => 'Username',
'Users' => 'Users',
'Value' => 'Value',
'Version' => 'Version',
'VersionIgnore' => 'Ignore this version',
'VersionRemindDay' => 'Remind again in 1 day',
'VersionRemindHour' => 'Remind again in 1 hour',
'VersionRemindNever' => 'Don\'t remind about new versions',
'VersionRemindWeek' => 'Remind again in 1 week',
'Video' => 'Video',
'VideoFormat' => 'Video Format',
'VideoGenFailed' => 'Video Generation Failed!',
'VideoGenFiles' => 'Existing Video Files',
'VideoGenNoFiles' => 'No Video Files Found',
'VideoGenParms' => 'Video Generation Parameters',
'VideoGenSucceeded' => 'Video Generation Succeeded!',
'VideoSize' => 'Video Size',
'View' => 'View',
'ViewAll' => 'View All',
'ViewEvent' => 'View Event',
'ViewPaged' => 'View Paged',
'Wake' => 'Wake',
'WarmupFrames' => 'Warmup Frames',
'Watch' => 'Watch',
'Web' => 'Web',
'WebColour' => 'Web Colour',
'Week' => 'Nädalas',
'White' => 'White',
'WhiteBalance' => 'White Balance',
'Wide' => 'Wide',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10 Activation String',
'X10InputAlarmString' => 'X10 Input Alarm String',
'X10OutputAlarmString' => 'X10 Output Alarm String',
'Y' => 'Y',
'Yes' => 'Yes',
'YouNoPerms' => 'You do not have permissions to access this resource.',
'Zone' => 'Tsoon',
'ZoneAlarmColour' => 'Alarm Colour (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'Tsoone',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zoom In',
'ZoomOut' => 'Zoom Out',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Current login is \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Last %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'The latest release is v%1$s, you have v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Monitor %1$s Function',
'RunningRecentVer' => 'You are running the most recent version of ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// 'Potato' => array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' ),
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Events', 1=>'Event', 2=>'Events' ),
'Monitor' => array( 0=>'Monitors', 1=>'Monitor', 2=>'Monitors' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $CLANG['MonitorCount'], count($monitors), zmVlang( $VLANG['VlangMonitor'], count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,844 +0,0 @@
<?php
//
// ZoneMinder web UK French language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder French Translation by Jerome Hanoteau
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
// header( "Content-Type: text/html; charset=iso-8859-1" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => 'Couleur 24 bit',
'8BitGrey' => 'Gris 8 bit',
'Action' => 'Action',
'Actual' => 'Réel',
'AddNewControl' => 'Add New Control',
'AddNewMonitor' => 'Aj. nouv. écran',
'AddNewUser' => 'Aj. nouv. util.',
'AddNewZone' => 'Aj. nouv. zone',
'Alarm' => 'Alarme',
'AlarmBrFrames' => 'Images<br/>alarme',
'AlarmFrame' => 'Image alarme',
'AlarmFrameCount' => 'Alarm Frame Count',
'AlarmLimits' => 'Limites alarme',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'Px Alarme',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => 'Alerte',
'All' => 'Tous',
'Apply' => 'Appliquer',
'ApplyingStateChange' => 'Appl. chgt état',
'ArchArchived' => 'Archivé seul.',
'ArchUnarchived' => 'Non-arch. seul.',
'Archive' => 'Archiver',
'Archived' => 'Archived',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'Images alarme',
'AttrArchiveStatus' => 'Etat Archive',
'AttrAvgScore' => 'Score moy.',
'AttrCause' => 'Cause',
'AttrDate' => 'Date',
'AttrDateTime' => 'Date/temps',
'AttrDiskBlocks' => 'Disk Blocks',
'AttrDiskPercent' => 'Disk Percent',
'AttrDuration' => 'Durée',
'AttrFrames' => 'Images',
'AttrId' => 'Id',
'AttrMaxScore' => 'Score max.',
'AttrMonitorId' => 'N° écran',
'AttrMonitorName' => 'Nom écran',
'AttrName' => 'Name',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'Temps',
'AttrTotalScore' => 'Score total',
'AttrWeekday' => 'Semaine',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto Stop Timeout',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => 'Score<br/>moy.',
'Background' => 'Background',
'BackgroundFilter' => 'Run filter in background',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to an integer of zero or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Les noms ne peuvent contenir que des lettres, chiffres, trait d\'union ou souligné',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => 'Bande-pass.',
'BlobPx' => 'Px forme',
'BlobSizes' => 'Taille forme',
'Blobs' => 'Formes',
'Brightness' => 'Luminosité;',
'Buffers' => 'Tampons',
'CanAutoFocus' => 'Can Auto Focus',
'CanAutoGain' => 'Can Auto Gain',
'CanAutoIris' => 'Can Auto Iris',
'CanAutoWhite' => 'Can Auto White Bal.',
'CanAutoZoom' => 'Can Auto Zoom',
'CanFocus' => 'Can Focus',
'CanFocusAbs' => 'Can Focus Absolute',
'CanFocusCon' => 'Can Focus Continuous',
'CanFocusRel' => 'Can Focus Relative',
'CanGain' => 'Can Gain ',
'CanGainAbs' => 'Can Gain Absolute',
'CanGainCon' => 'Can Gain Continuous',
'CanGainRel' => 'Can Gain Relative',
'CanIris' => 'Can Iris',
'CanIrisAbs' => 'Can Iris Absolute',
'CanIrisCon' => 'Can Iris Continuous',
'CanIrisRel' => 'Can Iris Relative',
'CanMove' => 'Can Move',
'CanMoveAbs' => 'Can Move Absolute',
'CanMoveCon' => 'Can Move Continuous',
'CanMoveDiag' => 'Can Move Diagonally',
'CanMoveMap' => 'Can Move Mapped',
'CanMoveRel' => 'Can Move Relative',
'CanPan' => 'Can Pan' ,
'CanReset' => 'Can Reset',
'CanSetPresets' => 'Can Set Presets',
'CanSleep' => 'Can Sleep',
'CanTilt' => 'Can Tilt',
'CanWake' => 'Can Wake',
'CanWhite' => 'Can White Balance',
'CanWhiteAbs' => 'Can White Bal. Absolute',
'CanWhiteBal' => 'Can White Bal.',
'CanWhiteCon' => 'Can White Bal. Continuous',
'CanWhiteRel' => 'Can White Bal. Relative',
'CanZoom' => 'Can Zoom',
'CanZoomAbs' => 'Can Zoom Absolute',
'CanZoomCon' => 'Can Zoom Continuous',
'CanZoomRel' => 'Can Zoom Relative',
'Cancel' => 'Annul.',
'CancelForcedAlarm' => 'Annul. Forc&eacute; Alarme',
'CaptureHeight' => 'Haut. capture',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => 'palette capture',
'CaptureWidth' => 'Larg. capture',
'Cause' => 'Cause',
'CheckMethod' => 'Méthode vérif. alarme',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'Choisir filtre',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Fermer',
'Colour' => 'Couleur',
'Command' => 'Command',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Config',
'ConfiguredFor' => 'Configuré pour',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => 'Confirmer mt de pass.',
'ConjAnd' => 'et',
'ConjOr' => 'ou',
'Console' => 'Console',
'ContactAdmin' => 'Contactez votre administrateur SVP',
'Continue' => 'Continue',
'Contrast' => 'Contraste',
'Control' => 'Control',
'ControlAddress' => 'Control Address',
'ControlCap' => 'Control Capability',
'ControlCaps' => 'Control Capabilities',
'ControlDevice' => 'Control Device',
'ControlType' => 'Control Type',
'Controllable' => 'Controllable',
'Cycle' => 'Cycle',
'CycleWatch' => 'Cycle vision',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Jour',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Default Scale',
'DefaultView' => 'Default View',
'Delete' => 'Eff.',
'DeleteAndNext' => 'Eff. &amp; suiv.',
'DeleteAndPrev' => 'Eff. &amp; prec.',
'DeleteSavedFilter' => 'Eff. filtre sauvé',
'Description' => 'Description',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'Canal caméra',
'DeviceFormat' => 'Format caméra',
'DeviceNumber' => 'Numéro caméra',
'DevicePath' => 'Device Path',
'Devices' => 'Devices',
'Dimensions' => 'Dimensions',
'DisableAlarms' => 'Disable Alarms',
'Disk' => 'Disk',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Please Donate',
'DonateAlready' => 'No, I\'ve already donated',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br><br>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br><br>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'DonateRemindDay' => 'Not yet, remind again in 1 day',
'DonateRemindHour' => 'Not yet, remind again in 1 hour',
'DonateRemindMonth' => 'Not yet, remind again in 1 month',
'DonateRemindNever' => 'No, I don\'t want to donate, never remind',
'DonateRemindWeek' => 'Not yet, remind again in 1 week',
'DonateYes' => 'Yes, I\'d like to donate now',
'Download' => 'Download',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'Durée',
'Edit' => 'Editer',
'Email' => 'Courriel',
'EnableAlarms' => 'Enable Alarms',
'Enabled' => 'Activé',
'EnterNewFilterName' => 'Entrer nom nouv. filtre',
'Error' => 'Erreur',
'ErrorBrackets' => 'Erreur, vérifiez que toutes les parenthèses ouvertes sont fermées',
'ErrorValidValue' => 'Erreur, vérifiez que tous les termes ont une valeur valide',
'Etc' => 'etc',
'Event' => 'Evènt',
'EventFilter' => 'Filtre evènt',
'EventId' => 'Event Id',
'EventName' => 'Event Name',
'EventPrefix' => 'Event Prefix',
'Events' => 'Evènts',
'Exclude' => 'Exclure',
'Execute' => 'Execute',
'Export' => 'Export',
'ExportDetails' => 'Export Event Details',
'ExportFailed' => 'Export Failed',
'ExportFormat' => 'Export File Format',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Export Frame Details',
'ExportImageFiles' => 'Export Image Files',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Export Other Files (if present)',
'ExportOptions' => 'Export Options',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Export Video Files (if present)',
'Exporting' => 'Exporting',
'FPS' => 'i/s',
'FPSReportInterval' => 'FPS Report Interval',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'Feed',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'File',
'FilterArchiveEvents' => 'Archive all matches',
'FilterDeleteEvents' => 'Delete all matches',
'FilterEmailEvents' => 'Email details of all matches',
'FilterExecuteEvents' => 'Execute command on all matches',
'FilterMessageEvents' => 'Message details of all matches',
'FilterPx' => 'Filter Px',
'FilterUnset' => 'You must specify a filter width and height',
'FilterUploadEvents' => 'Upload all matches',
'FilterVideoEvents' => 'Create video for all matches',
'Filters' => 'Filters',
'First' => 'Prem.',
'FlippedHori' => 'Flipped Horizontally',
'FlippedVert' => 'Flipped Vertically',
'Focus' => 'Focus',
'ForceAlarm' => 'Force Alarme',
'Format' => 'Format',
'Frame' => 'Image',
'FrameId' => 'N° image',
'FrameRate' => 'Débit image',
'FrameSkip' => 'Saut image',
'Frames' => 'images',
'Func' => 'Fct',
'Function' => 'Fonction',
'Gain' => 'Gain',
'General' => 'General',
'GenerateVideo' => 'Générer Vidéo',
'GeneratingVideo' => 'Génération Vidéo',
'GoToZoneMinder' => 'Aller sur ZoneMinder.com',
'Grey' => 'Gris',
'Group' => 'Group',
'Groups' => 'Groups',
'HasFocusSpeed' => 'Has Focus Speed',
'HasGainSpeed' => 'Has Gain Speed',
'HasHomePreset' => 'Has Home Preset',
'HasIrisSpeed' => 'Has Iris Speed',
'HasPanSpeed' => 'Has Pan Speed',
'HasPresets' => 'Has Presets',
'HasTiltSpeed' => 'Has Tilt Speed',
'HasTurboPan' => 'Has Turbo Pan',
'HasTurboTilt' => 'Has Turbo Tilt',
'HasWhiteSpeed' => 'Has White Bal. Speed',
'HasZoomSpeed' => 'Has Zoom Speed',
'High' => 'Haut',
'HighBW' => 'Haut&nbsp;N/B',
'Home' => 'Home',
'Hour' => 'Heure',
'Hue' => 'Teinte',
'Id' => 'N°',
'Idle' => 'Vide',
'Ignore' => 'Ignorer',
'Image' => 'Image',
'ImageBufferSize' => 'Taille tampon image',
'Images' => 'Images',
'In' => 'In',
'Include' => 'Inclure',
'Inverted' => 'Inversé',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => 'Langue',
'Last' => 'Dernier',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'results only;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Limit to first', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Linked Monitors',
'List' => 'List',
'Load' => 'Load',
'Local' => 'Local',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Connecté cô',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'Connexion',
'Login' => 'Login',
'Logout' => 'Déconnexion',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'Bas',
'LowBW' => 'Basse&nbsp;N/B',
'Main' => 'Main',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => 'Marque',
'Max' => 'Max',
'MaxBandwidth' => 'Max Bandwidth',
'MaxBrScore' => 'Score<br/>max',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MaximumFPS' => 'i/s maximum',
'Medium' => 'Medium',
'MediumBW' => 'Moy.&nbsp;N/B',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'Aire blob min. doit ê < aire blob maximum',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'Blobs min. doit ê < blobs max.',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => 'Seuil pixel min. doit ê < seuil pixel max.',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => 'Div.',
'Monitor' => 'Ecran',
'MonitorIds' => 'N°&nbsp;écran',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br><br>Please note that this may overwrite any values you already have configured for this monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'Ecrans',
'Montage' => 'Montage',
'Month' => 'Mois',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Move',
'MustBeGe' => 'doit être sup. ou égal à',
'MustBeLe' => 'doit être inf. ou égal à',
'MustConfirmPassword' => 'Confirmez le mot de passe',
'MustSupplyPassword' => 'Entrez un mot de passe',
'MustSupplyUsername' => 'Entrez un nom d\'utilisateur',
'Name' => 'Nom',
'Near' => 'Near',
'Network' => 'Réseau',
'New' => 'Nouv.',
'NewGroup' => 'New Group',
'NewLabel' => 'New Label',
'NewPassword' => 'Nouv. mt de passe',
'NewState' => 'Nv état',
'NewUser' => 'Nv util.',
'Next' => 'Suiv.',
'No' => 'Non',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'Pas d\'image enregistrée pour cet évènement',
'NoGroup' => 'No Group',
'NoSavedFilters' => 'Pasfiltressauv',
'NoStatisticsRecorded' => 'Pas de statistiques disponibles pour cet évènmnt/imag.',
'None' => 'Aucun',
'NoneAvailable' => 'Aucun disponible',
'Normal' => 'Normal',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'égal à',
'OpGt' => 'sup. à',
'OpGtEq' => 'plus grand ou égal à',
'OpIn' => 'en lot',
'OpLt' => 'inf. à',
'OpLtEq' => 'inf. ou égal à',
'OpMatches' => 'correspond',
'OpNe' => 'diff. de',
'OpNotIn' => 'pas en lot',
'OpNotMatches' => 'ne correspond pas',
'Open' => 'Open',
'OptionHelp' => 'OptionAide',
'OptionRestartWarning' => 'These changes may not come into effect fully\nwhile the system is running. When you have\nfinished making your changes please ensure that\nyou restart ZoneMinder.',
'Options' => 'Options',
'OrEnterNewName' => 'ou entrez nv nom',
'Order' => 'Order',
'Orientation' => 'Orientation',
'Out' => 'Out',
'OverwriteExisting' => 'Ecraser l\'existant',
'Paged' => 'Paged',
'Pan' => 'Pan',
'PanLeft' => 'Pan Left',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'Paramètre',
'Password' => 'Mt de passe',
'PasswordsDifferent' => 'Les 2 mots de passe sont différents',
'Paths' => 'Paths',
'Pause' => 'Pause',
'Phone' => 'Phone',
'PhoneBW' => 'Phone&nbsp;B/W',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'pixels',
'Play' => 'Play',
'PlayAll' => 'Play All',
'PleaseWait' => 'Attendez',
'Point' => 'Point',
'PostEventImageBuffer' => 'Post Event Image Count',
'PreEventImageBuffer' => 'Pre Event Image Count',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => 'Prec.',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'Débit',
'Real' => 'Réel',
'Record' => 'Enreg.',
'RefImageBlendPct' => 'Reference Image Blend %ge',
'Refresh' => 'Rafraîchir',
'Remote' => 'Remote',
'RemoteHostName' => 'Remote Host Name',
'RemoteHostPath' => 'Remote Host Path',
'RemoteHostPort' => 'Remote Host Port',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Remote Image Colours',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => 'Renommer',
'Replay' => 'Replay',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'Reset',
'ResetEventCounts' => 'Rem. à 0 comptage des évts',
'Restart' => 'Redémarrer',
'Restarting' => 'Redémarrage',
'RestrictedCameraIds' => 'N° caméras confid.',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Return Delay',
'ReturnLocation' => 'Return Location',
'Rewind' => 'Rewind',
'RotateLeft' => 'Rotation g.',
'RotateRight' => 'Rotation d.',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Run Mode',
'RunState' => 'Run State',
'Running' => 'Ca tourne',
'Save' => 'Enr.',
'SaveAs' => 'Enr. ss',
'SaveFilter' => 'Save Filter',
'Scale' => 'Echelle',
'Score' => 'Score',
'Secs' => 'Secs',
'Sectionlength' => 'Longueur section',
'Select' => 'Select',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Select Monitors',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => 'Set',
'SetNewBandwidth' => 'Régler la bande passante',
'SetPreset' => 'Set Preset',
'Settings' => 'Réglages',
'ShowFilterWindow' => 'Montrerfen.filtre',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Size',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Sleep',
'SortAsc' => 'Asc',
'SortBy' => 'Sort by',
'SortDesc' => 'Desc',
'Source' => 'Source',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'Source Type',
'Speed' => 'Speed',
'SpeedHigh' => 'High Speed',
'SpeedLow' => 'Low Speed',
'SpeedMedium' => 'Medium Speed',
'SpeedTurbo' => 'Turbo Speed',
'Start' => 'Démarrer',
'State' => 'Etat',
'Stats' => 'Stats',
'Status' => 'Statut',
'Step' => 'Step',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Large Step',
'StepMedium' => 'Medium Step',
'StepNone' => 'No Step',
'StepSmall' => 'Small Step',
'Stills' => 'Photos',
'Stop' => 'Stop',
'Stopped' => 'Arrêté',
'Stream' => 'Flux',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Submit',
'System' => 'Système',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Tilt',
'Time' => 'Temps',
'TimeDelta' => 'Time Delta',
'TimeStamp' => 'Time Stamp',
'Timeline' => 'Timeline',
'Timestamp' => 'Timestamp',
'TimestampLabelFormat' => 'Timestamp Label Format',
'TimestampLabelX' => 'Timestamp Label X',
'TimestampLabelY' => 'Timestamp Label Y',
'Today' => 'Today',
'Tools' => 'Outils',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Score<br/>total',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'Déclenchements',
'TurboPanSpeed' => 'Turbo Pan Speed',
'TurboTiltSpeed' => 'Turbo Tilt Speed',
'Type' => 'Type',
'Unarchive' => 'Désarchiv.',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'Unités',
'Unknown' => 'Inconnu',
'Update' => 'Update',
'UpdateAvailable' => 'Mise à jour de ZM dispo.',
'UpdateNotNecessary' => 'Pas de mise à jour dispo.',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Util. Filtre',
'UseFilterExprsPost' => '&nbsp;filter&nbsp;expressions', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Util.&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'Util.',
'Username' => 'nom util.',
'Users' => 'Utils',
'Value' => 'Valeur',
'Version' => 'Version',
'VersionIgnore' => 'Ignorer cette version',
'VersionRemindDay' => 'Me rappeler ds 1 j.',
'VersionRemindHour' => 'Me rappleler dans 1 h.',
'VersionRemindNever' => 'Ne pas avertir des nvelles versions',
'VersionRemindWeek' => 'Me rappeler ds 1 sem.',
'Video' => 'Vidéo',
'VideoFormat' => 'Video Format',
'VideoGenFailed' => 'Echec génération vidéo!',
'VideoGenFiles' => 'Existing Video Files',
'VideoGenNoFiles' => 'No Video Files Found',
'VideoGenParms' => 'Paramètres génération vidéo',
'VideoGenSucceeded' => 'Video Generation Succeeded!',
'VideoSize' => 'taille vidéo',
'View' => 'Voir',
'ViewAll' => 'Voir tt',
'ViewEvent' => 'View Event',
'ViewPaged' => 'Vue recherchée',
'Wake' => 'Wake',
'WarmupFrames' => 'Images test',
'Watch' => 'Regarder',
'Web' => 'Web',
'WebColour' => 'Web Colour',
'Week' => 'Semaine',
'White' => 'White',
'WhiteBalance' => 'White Balance',
'Wide' => 'Wide',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10:chaîne activation',
'X10InputAlarmString' => 'X10:chaîne alarme entrée',
'X10OutputAlarmString' => 'X10:chaîne alarme sortie',
'Y' => 'Y',
'Yes' => 'Oui',
'YouNoPerms' => 'Permissions nécessaires pour cette ressource.',
'Zone' => 'Zone',
'ZoneAlarmColour' => 'Couleur alarme (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'Zones',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zoom In',
'ZoomOut' => 'Zoom Out',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Util. Actuel: \'%1$s\'',
'EventCount' => '%1$s %2$s', // par ex. '37 évènts' (voir Vlang ci-dessous)
'LastEvents' => '%1$s derniers %2$s', // par ex. '37 derniers évènts' (voir Vlang ci-dessous)
'LatestRelease' => 'La dernière version est v%1$s, vous avez v%2$s.',
'MonitorCount' => '%1$s %2$s', // par exemple '4 écrans' (voir Vlang ci-dessous)
'MonitorFunction' => 'Ecran %1$s Fonction',
'RunningRecentVer' => 'Vs avez la dernière version de ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'évènts', 1=>'évènt', 2=>'évènts' ),
'Monitor' => array( 0=>'écrans', 1=>'écran', 2=>'écrans' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,844 +0,0 @@
<?php
//
// ZoneMinder web IL Hebrew language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Hebrew Translation by oc666@netvision.net.il
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
header( "Content-Type: text/html; charset=iso-8859-8-i" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'he_IL' ); All locale settings pre-4.3.0
setlocale( LC_ALL, 'he_IL' ); //All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'he_IL' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'he_IL' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => 'öáò 24 áéè',
'8BitGrey' => 'âååðé àôåø 8 áéè',
'Action' => 'ôòåìä',
'Actual' => 'î÷åøé',
'AddNewControl' => 'äåñó ÷åðèøåì çãù',
'AddNewMonitor' => 'äåñó îåðéèåø çãù',
'AddNewUser' => 'äåñó îùúîù çãù',
'AddNewZone' => 'äåñó àéæåø çãù',
'Alarm' => 'àæò÷ä',
'AlarmBrFrames' => 'àæò÷ú<br/>ôøééîéí',
'AlarmFrame' => 'àæò÷ú ôøééîéí',
'AlarmFrameCount' => 'ñôéøú àæò÷åú ôøééîéí',
'AlarmLimits' => 'äâáìåú àæò÷ä',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'àæò÷ú Px',
'AlarmRGBUnset' => 'äéðê çééá ìàúçì àæò÷ú öáò',
'Alert' => 'äúøàä',
'All' => 'äëì',
'Apply' => 'äçì',
'ApplyingStateChange' => 'äçì ùéðåé îöá',
'ArchArchived' => 'àøëéá áìáã',
'ArchUnarchived' => 'ìà ìàøëéá áìáã',
'Archive' => 'àøëéá',
'Archived' => 'àåøëá',
'Area' => 'àæåø',
'AreaUnits' => 'àæåø (px/%)',
'AttrAlarmFrames' => 'Alarm Frames',
'AttrArchiveStatus' => 'Archive Status',
'AttrAvgScore' => 'ðé÷åã îîåöò',
'AttrCause' => 'ñéáä',
'AttrDate' => 'úàøéê',
'AttrDateTime' => 'úàøéê/ùòä',
'AttrDiskBlocks' => 'Disk Blocks',
'AttrDiskPercent' => 'Disk Percent',
'AttrDuration' => 'îùê æîï',
'AttrFrames' => 'ôøééîéí',
'AttrId' => 'Id',
'AttrMaxScore' => 'ðé÷åã î÷ñéîìé',
'AttrMonitorId' => 'Monitor Id',
'AttrMonitorName' => 'ùí îåðéèåø',
'AttrName' => 'ùí',
'AttrNotes' => 'äòøåú',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'ùòä',
'AttrTotalScore' => 'ñê ñëåí',
'AttrWeekday' => 'éåí áùáåò',
'Auto' => 'àåèå',
'AutoStopTimeout' => 'ôñ÷ æîï òöéøä àåèå',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => 'ðé÷åã<br/>îîåöò',
'Background' => 'ø÷ò',
'BackgroundFilter' => 'äøõ îñðï áø÷ò',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to an integer of zero or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Names may only contain alphanumeric characters plus hyphen and underscore',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => 'øåçá ôñ',
'BlobPx' => 'Blob Px',
'BlobSizes' => 'Blob Sizes',
'Blobs' => 'Blobs',
'Brightness' => 'áäéøåú',
'Buffers' => 'Buffers',
'CanAutoFocus' => 'àôùø äúî÷ãåú àåèåîèé',
'CanAutoGain' => 'Can Auto Gain',
'CanAutoIris' => 'Can Auto Iris',
'CanAutoWhite' => 'Can Auto White Bal.',
'CanAutoZoom' => 'àôùø æåí àåèåîèé',
'CanFocus' => 'àôùø äúî÷ãåú',
'CanFocusAbs' => 'àôùø äúî÷ãåú àáñåìåèé',
'CanFocusCon' => 'àôùø äúî÷ãåú îúîùê',
'CanFocusRel' => 'àôùø äúî÷ãåú éçñé',
'CanGain' => 'Can Gain ',
'CanGainAbs' => 'Can Gain Absolute',
'CanGainCon' => 'Can Gain Continuous',
'CanGainRel' => 'Can Gain Relative',
'CanIris' => 'Can Iris',
'CanIrisAbs' => 'Can Iris Absolute',
'CanIrisCon' => 'Can Iris Continuous',
'CanIrisRel' => 'Can Iris Relative',
'CanMove' => 'àôùø úðåòä',
'CanMoveAbs' => 'àôùø úðåòä àáñåìåèéú',
'CanMoveCon' => 'àôùø úæåæä îúîùëú',
'CanMoveDiag' => 'Can Move Diagonally',
'CanMoveMap' => 'Can Move Mapped',
'CanMoveRel' => 'àôùø úæåæä éçñéú',
'CanPan' => 'Can Pan' ,
'CanReset' => 'àôùø àúçåì',
'CanSetPresets' => 'Can Set Presets',
'CanSleep' => 'àôùø îöá ùéðä',
'CanTilt' => 'àôùø æòæåò',
'CanWake' => 'àôùø éöéàä îîöá ùéðä',
'CanWhite' => 'Can White Balance',
'CanWhiteAbs' => 'Can White Bal. Absolute',
'CanWhiteBal' => 'Can White Bal.',
'CanWhiteCon' => 'Can White Bal. Continuous',
'CanWhiteRel' => 'Can White Bal. Relative',
'CanZoom' => 'àôùø æåí',
'CanZoomAbs' => 'àôùø æåí àáñåìåèé',
'CanZoomCon' => 'àôùø æåí îúîùê',
'CanZoomRel' => 'àôùø æåí éçñé',
'Cancel' => 'áèì',
'CancelForcedAlarm' => 'Cancel Forced Alarm',
'CaptureHeight' => 'Capture Height',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => 'Capture Palette',
'CaptureWidth' => 'Capture Width',
'Cause' => 'ñéáä',
'CheckMethod' => 'Alarm Check Method',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'áçø îñðï',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'ñâåø',
'Colour' => 'öáò',
'Command' => 'ô÷åãä',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'úöåøä',
'ConfiguredFor' => 'úöåøä òáåø',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => 'àùø ñéñîà',
'ConjAnd' => 'å',
'ConjOr' => 'àå',
'Console' => '÷åðñåì',
'ContactAdmin' => 'öåø ÷ùø òí îðäì äîòøëú áùáéì ôøèéí ðåñôéí.',
'Continue' => 'äîùê',
'Contrast' => 'ðéâåãéåú',
'Control' => '÷åðèøåì',
'ControlAddress' => 'ëúåáú ä÷åðèøåì',
'ControlCap' => 'éëåìú ä÷åðèøåì',
'ControlCaps' => 'éëåìåú ä÷åðèøåì',
'ControlDevice' => 'äú÷ï ä÷åðèøåì',
'ControlType' => 'ñåâ ä÷åðèøåì',
'Controllable' => 'Controllable',
'Cycle' => 'îçæåøé',
'CycleWatch' => 'öôééä îçæåøéú',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'éåí',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Default Scale',
'DefaultView' => 'Default View',
'Delete' => 'îç÷',
'DeleteAndNext' => 'îç÷ &amp; äáà',
'DeleteAndPrev' => 'îç÷ &amp; ä÷åãí',
'DeleteSavedFilter' => 'îç÷ îñðï ùîåø',
'Description' => 'úéàåø',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'òøåõ ääú÷ï',
'DeviceFormat' => 'úáðéú ääú÷ï',
'DeviceNumber' => 'îñôø ääú÷ï',
'DevicePath' => 'ðúéá ääú÷ï',
'Devices' => 'äú÷ðéí',
'Dimensions' => 'îéîãéí',
'DisableAlarms' => 'ðèøì àæò÷åú',
'Disk' => 'ãéñ÷',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'úøåí áá÷ùä',
'DonateAlready' => 'ìà, úøîúé ëáø',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br><br>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br><br>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'DonateRemindDay' => 'òãééï ìà, äæëø ìà áòåã éåí àçã',
'DonateRemindHour' => 'òãééï ìà, äæëø ìé áòåã ùòä àçú',
'DonateRemindMonth' => 'òãééï ìà, äæëø ìé áòåã çåãù àçã',
'DonateRemindNever' => 'ìà, àðé ìà øåöä ìúøåí, àì úúæëø àåúé',
'DonateRemindWeek' => 'òãééï ìà, äæëø ìé áòåã ùáåò àçã',
'DonateYes' => 'ëï, àðé îòåðééï ìúøåí òëùéå',
'Download' => 'äåøã',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'îùê æîï',
'Edit' => 'òøåê',
'Email' => 'ãåà"ì',
'EnableAlarms' => 'àôùø àæò÷åú',
'Enabled' => 'àôùø',
'EnterNewFilterName' => 'äæï îñðï çãù',
'Error' => 'ùâéàä',
'ErrorBrackets' => 'Error, please check you have an equal number of opening and closing brackets',
'ErrorValidValue' => 'Error, please check that all terms have a valid value',
'Etc' => 'åëå\'',
'Event' => 'àéøåò',
'EventFilter' => 'îñðï àéøåò',
'EventId' => 'æéäåé àéøåò',
'EventName' => 'ùí àéøåò',
'EventPrefix' => 'Event Prefix',
'Events' => 'àéøåòéí',
'Exclude' => 'ììà',
'Execute' => 'áöò',
'Export' => 'éöà',
'ExportDetails' => 'éöà ôøèé àéøåò',
'ExportFailed' => 'éöåà ðëùì',
'ExportFormat' => 'éöà úáðéú ÷åáõ',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Export Frame Details',
'ExportImageFiles' => 'éöà ÷áöé úîåðä',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'éöà ÷áöéí àçøéí (àí éùðí)',
'ExportOptions' => 'éöà àôùøåéåú',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Export Video Files (if present)',
'Exporting' => 'îééöà',
'FPS' => 'fps',
'FPSReportInterval' => 'FPS Report Interval',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'Feed',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => '÷åáõ',
'FilterArchiveEvents' => 'àøëá úåàîéí',
'FilterDeleteEvents' => 'îç÷ úåàîéí',
'FilterEmailEvents' => 'ùìç ãåàø ùì ëì äúåàîéí',
'FilterExecuteEvents' => 'Execute command on all matches',
'FilterMessageEvents' => 'Message details of all matches',
'FilterPx' => 'Filter Px',
'FilterUnset' => 'òìéê ìöééï øåçá åâåáä îñðï',
'FilterUploadEvents' => 'òìä àú ëì äúåàîéí',
'FilterVideoEvents' => 'öåø åéãàå ìëì äúåàîéí',
'Filters' => 'îñððéí',
'First' => 'äøàùåï',
'FlippedHori' => 'Flipped Horizontally',
'FlippedVert' => 'Flipped Vertically',
'Focus' => 'äúî÷ã',
'ForceAlarm' => 'äëøç àæò÷ä',
'Format' => 'úáðéú',
'Frame' => 'ôøééí',
'FrameId' => 'Frame Id',
'FrameRate' => 'Frame Rate',
'FrameSkip' => 'ãìâ ôøééí',
'Frames' => 'ôøééîéí',
'Func' => 'ôåð÷',
'Function' => 'ôåð÷öéä',
'Gain' => 'Gain',
'General' => 'ëììé',
'GenerateVideo' => 'öåø åéãàå',
'GeneratingVideo' => 'îééöø åéãàå',
'GoToZoneMinder' => 'á÷ø ZoneMinder.com',
'Grey' => 'àôåø',
'Group' => '÷áåöä',
'Groups' => '÷áåöåú',
'HasFocusSpeed' => 'Has Focus Speed',
'HasGainSpeed' => 'Has Gain Speed',
'HasHomePreset' => 'Has Home Preset',
'HasIrisSpeed' => 'Has Iris Speed',
'HasPanSpeed' => 'Has Pan Speed',
'HasPresets' => 'Has Presets',
'HasTiltSpeed' => 'Has Tilt Speed',
'HasTurboPan' => 'Has Turbo Pan',
'HasTurboTilt' => 'Has Turbo Tilt',
'HasWhiteSpeed' => 'Has White Bal. Speed',
'HasZoomSpeed' => 'Has Zoom Speed',
'High' => 'âáåä',
'HighBW' => 'âáåä&nbsp;ø/ô',
'Home' => 'áéú',
'Hour' => 'ùòä',
'Hue' => 'Hue',
'Id' => 'æéäåé',
'Idle' => 'äîúðä',
'Ignore' => 'äúòìí',
'Image' => 'úîåðä',
'ImageBufferSize' => 'Image Buffer Size (frames)',
'Images' => 'úîåðåú',
'In' => 'áúåê',
'Include' => 'ëìåì',
'Inverted' => 'äôåê',
'Iris' => 'Iris',
'KeyString' => 'îçøåæú úåéí',
'Label' => 'úååéú',
'Language' => 'ùôä',
'Last' => 'àçøåï',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'úåöàåú áìáã;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'äâáì ìøàùåï', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'îåðéèåøéí î÷åùøéí',
'List' => 'øùéîä',
'Load' => 'èòï',
'Local' => 'î÷åîé',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'äúçáø ë',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'îúçáø',
'Login' => 'äúçáø',
'Logout' => 'äúðú÷',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'ðîåê',
'LowBW' => 'ðîåê&nbsp;ø/ô',
'Main' => 'îøëæé',
'Man' => 'îãøéê',
'Manual' => 'îãøéê',
'Mark' => 'ñîï',
'Max' => 'î÷ñ',
'MaxBandwidth' => 'øåçá ôñ î÷ñ',
'MaxBrScore' => 'ðé÷åã<br/>î÷ñéîìé',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MaximumFPS' => 'Maximum FPS',
'Medium' => 'áéðåðé',
'MediumBW' => 'Medium&nbsp;B/W',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'Minimum blob area should be less than maximum',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'Minimum blobs should be less than maximum',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => 'Minimum pixel threshold should be less than maximum',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => 'Misc',
'Monitor' => 'îåðéèåø',
'MonitorIds' => 'Monitor&nbsp;Ids',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br><br>Please note that this may overwrite any values you already have configured for this monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'îåðéèåøéí',
'Montage' => 'Montage',
'Month' => 'çåãù',
'More' => 'More', // Added - 2011-06-16
'Move' => 'äææ',
'MustBeGe' => 'must be greater than or equal to',
'MustBeLe' => 'must be less than or equal to',
'MustConfirmPassword' => 'You must confirm the password',
'MustSupplyPassword' => 'You must supply a password',
'MustSupplyUsername' => 'You must supply a username',
'Name' => 'ùí',
'Near' => 'ìéã',
'Network' => 'øùú',
'New' => 'çãù',
'NewGroup' => '÷áåöä çãùä',
'NewLabel' => 'úååéú çãùä',
'NewPassword' => 'ñéñîà çãùä',
'NewState' => 'îöá çãù',
'NewUser' => 'îùúîù çãù',
'Next' => 'äáà',
'No' => 'ìà',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'There are no frames recorded for this event',
'NoGroup' => 'ììà ÷áåöä',
'NoSavedFilters' => 'NoSavedFilters',
'NoStatisticsRecorded' => 'There are no statistics recorded for this event/frame',
'None' => 'øé÷',
'NoneAvailable' => 'áìúé æîéï',
'Normal' => 'ðåøîìé',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'ëáåé',
'On' => 'ãìå÷',
'OpEq' => 'ùååä ì',
'OpGt' => 'âãåì î',
'OpGtEq' => 'greater than or equal to',
'OpIn' => 'in set',
'OpLt' => 'ôçåú î',
'OpLtEq' => 'less than or equal to',
'OpMatches' => 'matches',
'OpNe' => 'àéðå ùååä',
'OpNotIn' => 'not in set',
'OpNotMatches' => 'àéðå úåàí',
'Open' => 'ôúç',
'OptionHelp' => 'OptionHelp',
'OptionRestartWarning' => 'These changes may not come into effect fully\nwhile the system is running. When you have\nfinished making your changes please ensure that\nyou restart ZoneMinder.',
'Options' => 'àôùøåéåú',
'OrEnterNewName' => 'or enter new name',
'Order' => 'îéåï',
'Orientation' => 'Orientation',
'Out' => 'Out',
'OverwriteExisting' => 'Overwrite Existing',
'Paged' => 'Paged',
'Pan' => 'Pan',
'PanLeft' => 'Pan Left',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'ôøîèø',
'Password' => 'ñéñîà',
'PasswordsDifferent' => 'The new and confirm passwords are different',
'Paths' => 'ðúéáéí',
'Pause' => 'Pause',
'Phone' => 'èìôåï',
'PhoneBW' => 'ø/ô&nbsp;èìôåï',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'ôé÷ñìéí',
'Play' => 'Play',
'PlayAll' => 'ðâï äëì',
'PleaseWait' => 'äîúï áá÷ùä',
'Point' => 'ð÷åãä',
'PostEventImageBuffer' => 'Post Event Image Count',
'PreEventImageBuffer' => 'Pre Event Image Count',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => 'ä÷åãí',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'ãéøåâ',
'Real' => 'àîéúé',
'Record' => 'ä÷ìèä',
'RefImageBlendPct' => 'Reference Image Blend %ge',
'Refresh' => 'øòðåï',
'Remote' => 'îøåç÷',
'RemoteHostName' => 'ùí îàøç îøåç÷',
'RemoteHostPath' => 'ðúéá îàøç îøåç÷',
'RemoteHostPort' => 'ôåøè îàøç îøåç÷',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Remote Image Colours',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => 'ùðä ùí',
'Replay' => 'Replay',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'àôñ',
'ResetEventCounts' => 'Reset Event Counts',
'Restart' => 'àúçì',
'Restarting' => 'îàúçì',
'RestrictedCameraIds' => 'Restricted Camera Ids',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'çæøä îäùäéä',
'ReturnLocation' => 'îé÷åí çæøä',
'Rewind' => 'Rewind',
'RotateLeft' => 'ñåáá ùîàìä',
'RotateRight' => 'ñåáá éîéðä',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'öåøú øéöä',
'RunState' => 'îöá øéöä',
'Running' => 'îøéõ',
'Save' => 'ùîåø',
'SaveAs' => 'ùîåø áùí',
'SaveFilter' => 'ùîåø îñðï',
'Scale' => 'ñ÷àìä',
'Score' => 'ðé÷åã',
'Secs' => 'ùðéåú',
'Sectionlength' => 'àåøê ÷èò',
'Select' => 'áçø',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'áçø îåðéèåøéí',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => '÷áò',
'SetNewBandwidth' => 'Set New Bandwidth',
'SetPreset' => 'Set Preset',
'Settings' => 'äâãøåú',
'ShowFilterWindow' => 'Show Filter Window',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'âåãì',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'ùéðä',
'SortAsc' => 'Asc',
'SortBy' => 'Sort by',
'SortDesc' => 'Desc',
'Source' => 'î÷åø',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'ñåâ î÷åø',
'Speed' => 'îäéøåú',
'SpeedHigh' => 'îäéøåú âáåää',
'SpeedLow' => 'îäéøåú ðîåëä',
'SpeedMedium' => 'îöìîä áéðåðéú',
'SpeedTurbo' => 'îäéøåú èåøáå',
'Start' => 'äúçì',
'State' => 'îöá',
'Stats' => 'îöáéí',
'Status' => 'ñèèåñ',
'Step' => 'öòã',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'öòã âãåì',
'StepMedium' => 'öòã áéðåðé',
'StepNone' => 'àì úöòã',
'StepSmall' => 'öòã ÷èï',
'Stills' => 'ñèéìñ',
'Stop' => 'òöåø',
'Stopped' => 'ðòöø',
'Stream' => 'ñèøéí',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Submit',
'System' => 'îòøëú',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'èì',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Tilt',
'Time' => 'æîï',
'TimeDelta' => 'ùéðåé áæîï',
'TimeStamp' => 'çåúîú æîï',
'Timeline' => '÷å æîï',
'Timestamp' => 'çåúîú æîï',
'TimestampLabelFormat' => 'Timestamp Label Format',
'TimestampLabelX' => 'Timestamp Label X',
'TimestampLabelY' => 'Timestamp Label Y',
'Today' => 'äéåí',
'Tools' => 'ëìéí',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'ñê<br/>ðé÷åã',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'èøéâøéí',
'TurboPanSpeed' => 'Turbo Pan Speed',
'TurboTiltSpeed' => 'Turbo Tilt Speed',
'Type' => 'ñåâ',
'Unarchive' => 'áìúé àøëéá',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'éçéãåú',
'Unknown' => 'áìúé éãåò',
'Update' => 'òãëåï',
'UpdateAvailable' => 'òãëåï ìæåï-îéðãø àôùøé.',
'UpdateNotNecessary' => 'òãëåï àéðå äëøçé.',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'ùéîåù áîñðï',
'UseFilterExprsPost' => '&nbsp;filter&nbsp;expressions', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'ùéîåù&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'îùúîù',
'Username' => 'ùí îùúîù',
'Users' => 'îùúîùéí',
'Value' => 'òøê',
'Version' => 'âéøñä',
'VersionIgnore' => 'äúòìí îâéøñä æå',
'VersionRemindDay' => 'äæëø ìé áòåã éåí àçã',
'VersionRemindHour' => 'äæëø ìé áòåã ùòä àçú',
'VersionRemindNever' => 'Don\'t remind about new versions',
'VersionRemindWeek' => 'Remind again in 1 week',
'Video' => 'åéãàå',
'VideoFormat' => 'úáðéú åéãàå',
'VideoGenFailed' => 'Video Generation Failed!',
'VideoGenFiles' => 'Existing Video Files',
'VideoGenNoFiles' => 'No Video Files Found',
'VideoGenParms' => 'Video Generation Parameters',
'VideoGenSucceeded' => 'Video Generation Succeeded!',
'VideoSize' => 'âåãì åéãàå',
'View' => 'äöâ',
'ViewAll' => 'äöâ äëì',
'ViewEvent' => 'äöâ àéøåò',
'ViewPaged' => 'View Paged',
'Wake' => 'äòø',
'WarmupFrames' => 'Warmup Frames',
'Watch' => 'öôä',
'Web' => 'àéðèøðè',
'WebColour' => 'öáò àéðèøðè',
'Week' => 'ùáåò',
'White' => 'ìáï',
'WhiteBalance' => 'White Balance',
'Wide' => 'øçá',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10 Activation String',
'X10InputAlarmString' => 'X10 Input Alarm String',
'X10OutputAlarmString' => 'X10 Output Alarm String',
'Y' => 'Y',
'Yes' => 'ëï',
'YouNoPerms' => 'àéï ìê äøùàä ìäéëðñ ìî÷åø æä.',
'Zone' => 'àæåø',
'ZoneAlarmColour' => 'Alarm Colour (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'àæåøéí',
'Zoom' => 'æåí',
'ZoomIn' => 'æåí ôðéîä',
'ZoomOut' => 'æåí äçåöä',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Current login is \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Last %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'The latest release is v%1$s, you have v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Monitor %1$s Function',
'RunningRecentVer' => 'You are running the most recent version of ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Events', 1=>'Event', 2=>'Events' ),
'Monitor' => array( 0=>'Monitors', 1=>'Monitor', 2=>'Monitors' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,853 +0,0 @@
<?php
//
// ZoneMinder web HU Hungarian language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Hungarian Translation by szimszon at oregpreshaz dot eu, robi
// version: 0.6 - 2009.06.21. - frissítés 1.24.2-höz (robi)
// version: 0.5 - 2007.12.30. - frissítés 1.23.1-hez (robi)
// version: 0.4 - 2007.12.30. - frissítés 1.23.0-hoz (robi)
// version: 0.3 - 2006.04.27. - fordítás befejezése, elrendezése elféréshez (robi)
// version: 0.2 - 2006.12.05. - par javitas
// version: 0.1 - 2006.11.27. - sok typoval es par leforditatlan resszel
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
header( "Content-Type: text/html; charset=iso8859-2" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'hu_HU' ); //All locale settings 4.3.0 and after
//setlocale( LC_CTYPE, 'hu_HU'); //Character class settings 4.3.0 and after
//setlocale( LC_TIME, 'hu_HU'); //Date and time formatting 4.3.0 and after
setlocale( LC_TIME, 'hu_HU' );
setlocale( LC_ALL, 'hu_HU' );
// Simple String Replacements
$SLANG = array(
'24BitColour' => '24 bites szín',
'8BitGrey' => '8 bit szürkeárnyalat',
'Action' => 'Mûvelet',
'Actual' => 'Valós',
'AddNewControl' => 'Új vezérlés',
'AddNewMonitor' => 'Új monitor',
'AddNewUser' => 'Új felhasználó',
'AddNewZone' => 'Új zóna',
'Alarm' => 'Riadó',
'AlarmBrFrames' => 'Riadó<br/>képek',
'AlarmFrame' => 'Riadó kép',
'AlarmFrameCount' => 'Riadó képek száma',
'AlarmLimits' => 'Riasztási határok',
'AlarmMaximumFPS' => 'Maximális FPS riasztásnál',
'AlarmPx' => 'Riadó képpont',
'AlarmRGBUnset' => 'Be kell állítani egy RGB színt a riasztáshoz',
'Alert' => 'Riasztás',
'All' => 'Mind',
'Apply' => 'Alkalmaz',
'ApplyingStateChange' => 'Állapot váltás...',
'ArchArchived' => 'Csak archivált',
'ArchUnarchived' => 'Csak archiválatlan',
'Archive' => 'Archiválás',
'Archived' => 'Archívum',
'Area' => 'Terület',
'AreaUnits' => 'Terület (képpont / %)',
'AttrAlarmFrames' => 'Riadó képkockák',
'AttrArchiveStatus' => 'Archivált állapot',
'AttrAvgScore' => 'Átlagos érték',
'AttrCause' => 'Okozó',
'AttrDate' => 'Dátum',
'AttrDateTime' => 'Dátum/Idõ',
'AttrDiskBlocks' => 'Lemez blokkok',
'AttrDiskPercent' => 'Lemez százalék',
'AttrDuration' => 'Idõtartam',
'AttrFrames' => 'Képkockák',
'AttrId' => 'Azonosító',
'AttrMaxScore' => 'Max. érték',
'AttrMonitorId' => 'Monitor azon.',
'AttrMonitorName' => 'Monitor név',
'AttrName' => 'Név',
'AttrNotes' => 'Megjegyzés',
'AttrSystemLoad' => 'Rendszer terhelés',
'AttrTime' => 'Idõ',
'AttrTotalScore' => 'Össz. érték',
'AttrWeekday' => 'Hétköznap',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto megállási idõ túllépés',
'Available' => 'Elérhetõ',
'AvgBrScore' => 'Átlag<br/>érték',
'Background' => 'Háttér',
'BackgroundFilter' => 'Szûrõ futtatása a háttérben',
'BadAlarmFrameCount' => 'Riadó képek száma 1 vagy nagyobb egész szám legyen',
'BadAlarmMaxFPS' => 'A riadó maximális FPS száma pozitív szám legyen',
'BadChannel' => 'A csatorna száma 0 vagy nagyobb egész szám legyen',
'BadDevice' => 'Az eszköz érték valós legyen',
'BadFPSReportInterval' => 'FPS információs idõköz puffer számlálója 0 vagy nagyobb egész legyen',
'BadFormat' => 'A típus 0 vagy nagyobb egész szám legyen',
'BadFrameSkip' => 'Képkocka eldobások száma 0 vagy nagyobb egész szám legyen',
'BadHeight' => 'A képmagasság érvényes érték legyen képpontban',
'BadHost' => 'A hoszt valós IP cím vagy hosztnév legyen, http:// nélkül',
'BadImageBufferCount' => 'Kép puffer mérete legyen 10 vagy nagyobb szám',
'BadLabelX' => 'A cimke X koordinátája legyen 0 vagy nagyobb egész szám',
'BadLabelY' => 'A cimke Y koordinátája legyen 0 vagy nagyobb egész szám',
'BadMaxFPS' => 'A maximális FPS nullánál nagyobb szám legyen',
'BadNameChars' => 'A név csak alfanumerikus karaktereket, plusz-, kötõ-, és aláhúzásjelet tartalmazhat',
'BadPalette' => 'A palettának egy helyes értéket kell megadni',
'BadPath' => 'A kép elérési útvonala valós legyen',
'BadPort' => 'A portszám valós legyen',
'BadPostEventCount' => 'Az esemény utáni képek puffere 0 vagy nagyobb egész szám legyen',
'BadPreEventCount' => 'Az esemény elõtti képek puffere 0 vagy nagyobb egész szám legyen',
'BadRefBlendPerc' => 'A referencia képkeverék-százalék pozitív egész szám legyen',
'BadSectionLength' => 'Egy egység hossza 30 vagy hosszabb legyen',
'BadSignalCheckColour' => 'A jel ellenõrzési szín egy érvényes RGP kód kell legyen',
'BadStreamReplayBuffer'=> 'Folyam visszajátszó puffer 0 vagy nagyobb egész szám legyen',
'BadWarmupCount' => 'Bemelegítõ képek száma 0 vagy nagyobb egész szám legyen',
'BadWebColour' => 'A web szín érvényes web szín kód legyen',
'BadWidth' => 'A képszélesség érvényes érték legyen képpontban',
'Bandwidth' => 'sávszélességre',
'BlobPx' => 'Blob képpont',
'BlobSizes' => 'Blob mérete',
'Blobs' => 'Blob-ok',
'Brightness' => 'Fényerõ',
'Buffers' => 'Pufferek',
'CanAutoFocus' => 'Auto fókusz van',
'CanAutoGain' => 'Auto gain van',
'CanAutoIris' => 'Auto írisz van',
'CanAutoWhite' => 'Van autómata fehér egyensúly',
'CanAutoZoom' => 'Auto zoom van',
'CanFocus' => 'Tud fókuszálni',
'CanFocusAbs' => 'Tud abszolút fókuszt',
'CanFocusCon' => 'Tud folyamatos fókuszt',
'CanFocusRel' => 'Tud relatív fókuszt',
'CanGain' => 'Tud erõsíteni',
'CanGainAbs' => 'Tud abszolút erõsítést',
'CanGainCon' => 'Tud folyamatos erõsítést',
'CanGainRel' => 'Tud relatív erõsítést',
'CanIris' => 'Tud íriszt változtatni',
'CanIrisAbs' => 'Tud abszolut íriszt',
'CanIrisCon' => 'Folyamatosan tud íriszt változtatni',
'CanIrisRel' => 'Relatíven tud íriszt változtatni',
'CanMove' => 'Tud mozogni',
'CanMoveAbs' => 'Tud abszolult mozgást',
'CanMoveCon' => 'Folyamatosan tud mozogni',
'CanMoveDiag' => 'Diagonálban tud mozogni',
'CanMoveMap' => 'Útvonalon tud mozogni',
'CanMoveRel' => 'Relatíven tud mozogni',
'CanPan' => 'Tud jobb-bal mozgást' ,
'CanReset' => 'Tud alaphelyzetbe jönni',
'CanSetPresets' => 'Tud menteni profilokat',
'CanSleep' => 'Tud phihenõ üzemmódot',
'CanTilt' => 'Tud fel-le mozgást',
'CanWake' => 'Tud feléledni',
'CanWhite' => 'Tud fehér egyensúlyt',
'CanWhiteAbs' => 'Tud abszolut fehér egyensúlyt',
'CanWhiteBal' => 'Tud fehér egyensúlyt',
'CanWhiteCon' => 'Tud folyamatos fehér egyensúlyt',
'CanWhiteRel' => 'Tud relatív fehér egyensúlyt',
'CanZoom' => 'Tud zoom-olni',
'CanZoomAbs' => 'Tud abszolut zoom-ot',
'CanZoomCon' => 'Tud folyamatos zoom-ot',
'CanZoomRel' => 'Tud relatív zoom-ot',
'Cancel' => 'Mégsem',
'CancelForcedAlarm' => 'Kézi riasztás leállítása',
'CaptureHeight' => 'Képmagasság',
'CaptureMethod' => 'Digitalizálás módszere',
'CapturePalette' => 'Digitalizálás szín-palettája',
'CaptureWidth' => 'Képszélesség',
'Cause' => 'Okozó',
'CheckMethod' => 'A riasztás figyelésének módja',
'ChooseDetectedCamera' => 'Válasszon érzékelt kamerát',
'ChooseFilter' => 'Válassz szûrõt',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Válassz profilt',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Bezár',
'Colour' => 'Szín',
'Command' => 'Parancs',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Beállítás',
'ConfiguredFor' => 'Beállítva',
'ConfirmDeleteEvents' => 'Biztos benne, hogy törli a kiválasztott eseményeket?',
'ConfirmPassword' => 'Jelszó megerõsítés',
'ConjAnd' => 'és',
'ConjOr' => 'vagy',
'Console' => 'Konzol',
'ContactAdmin' => 'Kérem vegye fel a kapcsolatot a rendszergazdával a részletekért.',
'Continue' => 'Folytatás',
'Contrast' => 'Kontraszt',
'Control' => 'Vezérlés',
'ControlAddress' => 'Vezérlési jogok',
'ControlCap' => 'Vezérlési lehetõség',
'ControlCaps' => 'Vezérlési lehetõségek',
'ControlDevice' => 'Vezérlõ eszköz',
'ControlType' => 'Vezérlés típusa',
'Controllable' => 'Vezérelhetõ',
'Cycle' => 'Körbekapcsolás',
'CycleWatch' => 'Körbekapcsolás',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Napon',
'Debug' => 'Nyomon<br>követés',
'DefaultRate' => 'Alapértelmezett sebesség',
'DefaultScale' => 'Alapértelmezett méret',
'DefaultView' => 'Alapértelmezett nézet',
'Delete' => 'Töröl',
'DeleteAndNext' => 'Töröl &amp;<br>következõ',
'DeleteAndPrev' => 'Töröl &amp;<br>elõzõ',
'DeleteSavedFilter' => 'Mentett szûrõ törlése',
'Description' => 'Leírás',
'DetectedCameras' => 'Érzékelt kamerák',
'Device' => 'Eszköz',
'DeviceChannel' => 'Eszköz csatornája',
'DeviceFormat' => 'Eszköz formátuma',
'DeviceNumber' => 'Eszköz szám',
'DevicePath' => 'Eszköz elérési útvonala',
'Devices' => 'Eszközök',
'Dimensions' => 'Dimenziók',
'DisableAlarms' => 'Riasztás tiltása',
'Disk' => 'Tárhely',
'Display' => 'Megjelenés',
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Kérem támogasson',
'DonateAlready' => 'Nem, én már támogattam',
'DonateEnticement' => 'Ön már jó ideje használja a ZoneMindert remélhetõleg hasznos kiegészítésnek tartja háza vagy munkahelye biztosításában. Bár ZoneMinder szabad, nyílt forráskódú, és az is marad; a fejlesztése pénzbe kerül. Ha támogatni szeretné a jövõbeni fejlesztéseket és az új funkciókat kérem támogasson. A támogatás teljesen önkéntes, de nagyon megbecsült és annyival tud támogatni amennyivel kíván.<br><br>Ha támogatni szertne kérem válasszon az alábbi lehetõségekbõl vagy látogassa meg a http://www.zoneminder.com/donate.html oldalt.<br><br>Köszönöm, hogy használja a ZoneMinder-t és ne felejtse el meglátogatni a fórumokat a ZoneMinder.com oldalon támogatásért és ötletekért, hogy tudja még jobban használni a ZoneMinder-t.',
'DonateRemindDay' => 'Nem most, figyelmeztess 1 nap múlva',
'DonateRemindHour' => 'Nem most, figyelmeztess 1 óra múlva',
'DonateRemindMonth' => 'Nem most, figyelmeztess 1 hónap múlva',
'DonateRemindNever' => 'Nem akarom támogatni, ne is emlékeztess',
'DonateRemindWeek' => 'Nem most, figyelmeztess 1 hét múlva',
'DonateYes' => 'Igen, most szeretném támogatni',
'Download' => 'Letölt',
'DuplicateMonitorName' => 'Monitor nevének duplikálása',
'Duration' => 'Idõtartam',
'Edit' => 'Szerkeszt',
'Email' => 'Email',
'EnableAlarms' => 'Riasztás feloldása',
'Enabled' => 'Engedélyezve',
'EnterNewFilterName' => 'Írd be az új szûrõ nevét',
'Error' => 'Hiba',
'ErrorBrackets' => 'Hiba, ellenõrizd, hogy ugyanannyi nyitó és záró zárójel van',
'ErrorValidValue' => 'Hiba, ellenõrizd, hogy minden beállításnak érvényes értéke van',
'Etc' => 'stb',
'Event' => 'Esemény',
'EventFilter' => 'Esemény szûrõ',
'EventId' => 'Esemény azonosító',
'EventName' => 'Esemény név',
'EventPrefix' => 'Esemény elõtag',
'Events' => 'Események',
'Exclude' => 'Kizár',
'Execute' => 'Futtat',
'Export' => 'Exportál',
'ExportDetails' => 'Esemény adatainak exportálása',
'ExportFailed' => 'Hibás exportálás',
'ExportFormat' => 'Exportált fájl formátuma',
'ExportFormatTar' => 'TAR',
'ExportFormatZip' => 'ZIP',
'ExportFrames' => 'Képek adatainak exportálása',
'ExportImageFiles' => 'Képek exportálása',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Egyéb fájlok exportálása (ha vannak)',
'ExportOptions' => 'Exportálás beállításai',
'ExportSucceeded' => 'Az exportálás sikerült',
'ExportVideoFiles' => 'Videó fájlok exportálása (ha vannak)',
'Exporting' => 'Exportálás...',
'FPS' => 'fps',
'FPSReportInterval' => 'FPS megjelenítés idõköze',
'FTP' => 'FTP',
'Far' => 'Távol',
'FastForward' => 'Elõre tekerés',
'Feed' => 'Folyam',
'Ffmpeg' => 'Ffmpeg',
'File' => 'Fájl',
'FilterArchiveEvents' => 'Minden találat archiválása',
'FilterDeleteEvents' => 'Minden találat törlése',
'FilterEmailEvents' => 'Minden találat adatainak elküldése E-mailben',
'FilterExecuteEvents' => 'Parancs futtatása minden találaton',
'FilterMessageEvents' => 'Minden találat adatainak üzenése',
'FilterPx' => 'Szûrt képkockák',
'FilterUnset' => 'Meg kell adnod a szûrõ szélességét és magasságát',
'FilterUploadEvents' => 'Minden találat feltöltése',
'FilterVideoEvents' => 'Videó készítése minden találatról',
'Filters' => 'Szûrõk',
'First' => 'Elsõ',
'FlippedHori' => 'Vízszintes tükrözés',
'FlippedVert' => 'Függõleges tükrözés',
'Focus' => 'Fókusz',
'ForceAlarm' => 'Kézi riasztás',
'Format' => 'Formátum',
'Frame' => 'Képkocka',
'FrameId' => 'Képkocka azonosító',
'FrameRate' => 'FPS',
'FrameSkip' => 'Képkocka kihagyás',
'Frames' => 'Képkocka',
'Func' => 'Funk.',
'Function' => 'Funkció',
'Gain' => 'Erõsítés',
'General' => 'Általános',
'GenerateVideo' => 'Videó készítés',
'GeneratingVideo' => 'Videó készítése...',
'GoToZoneMinder' => 'Látogatás a ZoneMinder.com-ra',
'Grey' => 'Szürke',
'Group' => 'Csoport',
'Groups' => 'Csoportok',
'HasFocusSpeed' => 'Van fókusz sebesség',
'HasGainSpeed' => 'Van erõsítés sebesség',
'HasHomePreset' => 'Van kedvenc profilja',
'HasIrisSpeed' => 'Van írisz sebesség',
'HasPanSpeed' => 'Van jobb-bal sebesség',
'HasPresets' => 'Vannak profiljai',
'HasTiltSpeed' => 'Van le-fel sebesség',
'HasTurboPan' => 'Van turbó jobb-bal',
'HasTurboTilt' => 'Van turbó le-fel',
'HasWhiteSpeed' => 'Van fehér egyensúly sebesség',
'HasZoomSpeed' => 'Van zoom sebesség',
'High' => 'Magas',
'HighBW' => 'Magas<br>sávsz.',
'Home' => 'Home',
'Hour' => 'Órában',
'Hue' => 'Színárnyalat',
'Id' => 'Az.',
'Idle' => 'Nyugalom',
'Ignore' => 'Figyelmen kívül hagy',
'Image' => 'Kép',
'ImageBufferSize' => 'Képpuffer mérete (képkockák)',
'Images' => 'Kép',
'In' => 'In',
'Include' => 'Beágyaz',
'Inverted' => 'Invertálva',
'Iris' => 'Írisz',
'KeyString' => 'Kulcs karaktersor',
'Label' => 'Cimke',
'Language' => 'Nyelv',
'Last' => 'Utolsó',
'Layout' => 'Elrendezés',
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'találatig korlátoz', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Az elsõ', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Összefüggõ monitorok',
'List' => 'Lista',
'Load' => 'Terhelés',
'Local' => 'Helyi',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Bejelentkezve mint',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'Bejelentkezés folyamatban',
'Login' => 'Bejelentkezés',
'Logout' => 'Kilépés',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'Alacsony',
'LowBW' => 'Alacsony<br>sávsz.',
'Main' => 'Fõ',
'Man' => 'Man',
'Manual' => 'Kézikönyv',
'Mark' => 'Jelölés',
'Max' => 'Max.',
'MaxBandwidth' => 'Max. sávszélesség',
'MaxBrScore' => 'Max.<br/>érték',
'MaxFocusRange' => 'Max. fókusz tartomány',
'MaxFocusSpeed' => 'Max. fókusz sebesség',
'MaxFocusStep' => 'Max. fókusz lépés',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max. írisz tartomány',
'MaxIrisSpeed' => 'Max. írisz sebesség',
'MaxIrisStep' => 'Max. írisz lépés',
'MaxPanRange' => 'Max. jobb-bal tartomány',
'MaxPanSpeed' => 'Max. jobb-bal sebesség',
'MaxPanStep' => 'Max. jobb-bal lépés',
'MaxTiltRange' => 'Max. fel-le tartomány',
'MaxTiltSpeed' => 'Max. fel-le sebesség',
'MaxTiltStep' => 'Max. fel-le lépés',
'MaxWhiteRange' => 'Max. fehér egyensúly tartomány',
'MaxWhiteSpeed' => 'Max. fehér egyensúly sebesség',
'MaxWhiteStep' => 'Max. fehér egyensúly lépés',
'MaxZoomRange' => 'Max. zoom tartomány',
'MaxZoomSpeed' => 'Max. zoom sebesség',
'MaxZoomStep' => 'Max. zoom lépés',
'MaximumFPS' => 'Maximum FPS',
'Medium' => 'Közepes',
'MediumBW' => 'Közepes<br>sávsz.',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'A minimum riasztott területnek kisebbnek kell lennie mint a maximumnak',
'MinAlarmAreaUnset' => 'Meg kell adnod a minimum riasztott képpontok számát',
'MinBlobAreaLtMax' => 'A minimum blob területnek kisebbnek kell lennie mint a maximumnak',
'MinBlobAreaUnset' => 'Meg kell adnod a minimum blob képpontok számát',
'MinBlobLtMinFilter' => 'A minimum blob területnek kisebbnek vagy egyenlõnek kell lennie a megszûrt területtel',
'MinBlobsLtMax' => 'A minimum bloboknak kisebbeknek kell lenniük, mint a maximum',
'MinBlobsUnset' => 'Meg kell adnod a blobok számát',
'MinFilterAreaLtMax' => 'A minimum megszûrt területnek kisebbnek kell lennie mint a maximum',
'MinFilterAreaUnset' => 'Meg kell adnod a megszûrt terület képpontjainak számát',
'MinFilterLtMinAlarm' => 'A megszûrt területnek kisebbnek vagy ugyanakkorának kell lennie mint a riasztott terület',
'MinFocusRange' => 'Min. fókusz terület',
'MinFocusSpeed' => 'Min. fókusz sebesség',
'MinFocusStep' => 'Min. fókusz lépés',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min. írisz terület',
'MinIrisSpeed' => 'Min. írisz sebesség',
'MinIrisStep' => 'Min. írisz lépés',
'MinPanRange' => 'Min. jobb-bal tartomány',
'MinPanSpeed' => 'Min. jobb-bal sebesség',
'MinPanStep' => 'Min. jobb-bal lépés',
'MinPixelThresLtMax' => 'A képpont minimum eltérési küszöbének kisebbnek kell lennie, mint a maximum',
'MinPixelThresUnset' => 'Meg kell adnod a képpont minimum eltérési küszöbét',
'MinTiltRange' => 'Min. fel-le tartomány',
'MinTiltSpeed' => 'Min. fel-le sebesség',
'MinTiltStep' => 'Min. fel-le lépés',
'MinWhiteRange' => 'Min. fehér egyensúly terület',
'MinWhiteSpeed' => 'Min. fehér egyensúly sebesség',
'MinWhiteStep' => 'Min. fehér egyensúly lépés',
'MinZoomRange' => 'Min. zoom terület',
'MinZoomSpeed' => 'Min. zoom sebesség',
'MinZoomStep' => 'Min. zoom lépés',
'Misc' => 'Egyéb',
'Monitor' => 'Monitor',
'MonitorIds' => 'Monitor&nbsp;azonosítók',
'MonitorPreset' => 'Elõre beállított monitorprofilok',
'MonitorPresetIntro' => 'Válassz egy, az elõre meghatározott<br> értékprofilt az alábbiak közül.<br><br>Vedd figyelembe, hogy ez felülírhatja <br>az általad már beállított értékeket.<br><br>',
'MonitorProbe' => 'Monitor észlelés',
'MonitorProbeIntro' => 'Az alábbi listában találhatók az automatikusan érzékelt analóg és hálózati kamerákat, illetve azt, hogy közülük melyik van használatban, vagy kiválasztható.<br/><br/>Válasszon egyet az alábbi listából.<br/><br/>Figyelem! Nem biztos, hogy minden kamerát lehet automatikusan érzékelni. Az itt kiválasztott kamara adatai felülírhatják azokat, amelyeket már ehhez a monitorhoz beállított.<br/><br/>',
'Monitors' => 'Monitorok',
'Montage' => 'Többkamerás nézet',
'Month' => 'Hónapban',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Mozgás',
'MustBeGe' => 'nagyobbnak vagy egyenlõnek kell lennie',
'MustBeLe' => 'kisebbnek vagy egyenlõnek kell lennie',
'MustConfirmPassword' => 'Meg kell erõsítened a jelszót',
'MustSupplyPassword' => 'Meg kell adnod a jelszót',
'MustSupplyUsername' => 'Meg kell adnod felhasználói nevet',
'Name' => 'Név',
'Near' => 'Közel',
'Network' => 'Hálózat',
'New' => 'Uj',
'NewGroup' => 'Új csoport',
'NewLabel' => 'Új cimke',
'NewPassword' => 'Új jelszó',
'NewState' => 'Új állapot neve',
'NewUser' => 'Új felhasználó',
'Next' => 'Következõ',
'No' => 'Nem',
'NoDetectedCameras' => 'Nincsenek érzékelt kamerák',
'NoFramesRecorded' => 'Nincs felvett képkocka ehhez az eseményhez',
'NoGroup' => 'Nincs csoport',
'NoSavedFilters' => 'Nincs mentett szûrõ',
'NoStatisticsRecorded' => 'Nincs mentett statisztika ehhez az eseményhez/képkockához',
'None' => 'Nincs kiválasztva',
'NoneAvailable' => 'Nem elérhetõ',
'Normal' => 'Normál',
'Notes' => 'Megjegyzések',
'NumPresets' => 'Profilok száma',
'Off' => 'Ki',
'On' => 'Be',
'OpEq' => 'egyenlõ',
'OpGt' => 'nagyobb mint',
'OpGtEq' => 'nagyobb van egyenlõ',
'OpIn' => 'beállítva',
'OpLt' => 'kisebb mint',
'OpLtEq' => 'kisebb vagy egyenlõ',
'OpMatches' => 'találatok',
'OpNe' => 'nem egyenlõ',
'OpNotIn' => 'nincs beállítva',
'OpNotMatches' => 'nincs találat',
'Open' => 'Megnyitás',
'OptionHelp' => 'Beállítási segítség',
'OptionRestartWarning' => 'Ez a beállítás nem jut teljesen érvényre\namíg a rendszer fut. Ha megtettél minden\nbeállítást, indítsd újra a ZoneMinder szolgáltatást.',
'Options' => 'Beállítások',
'OrEnterNewName' => 'vagy adj meg új nevet',
'Order' => 'Sorrend',
'Orientation' => 'Orientáció',
'Out' => 'Kifelé',
'OverwriteExisting' => 'Meglévõ felülírása',
'Paged' => 'Lapozva',
'Pan' => 'Jobb-bal mozgás',
'PanLeft' => 'Mozgás balra',
'PanRight' => 'Mozgás jobbra',
'PanTilt' => 'Mozgat',
'Parameter' => 'Paraméter',
'Password' => 'Jelszó',
'PasswordsDifferent' => 'Az új és a megerõsített jelszó különbözik!',
'Paths' => 'Útvonalak',
'Pause' => 'Szünet',
'Phone' => 'Telefonon betárcsázva',
'PhoneBW' => 'Betárcsázó<br>sávsz.',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Képpont eltérés',
'Pixels' => 'képpont',
'Play' => 'Lejátszás',
'PlayAll' => 'Mind lejátszása',
'PleaseWait' => 'Kérlek várj...',
'Point' => 'Pont',
'PostEventImageBuffer' => 'Esemény utáni képpuffer',
'PreEventImageBuffer' => 'Esemény elötti képpuffer',
'PreserveAspect' => 'Képarány megtartása',
'Preset' => 'Elõre beállított profil',
'Presets' => 'Elõre beállított profilok',
'Prev' => 'Elõzõ',
'Probe' => 'Érzékelés',
'Protocol' => 'Protocol',
'Rate' => 'FPS',
'Real' => 'Valós',
'Record' => 'Felvétel',
'RefImageBlendPct' => 'Változás a referenciaképtõl %-ban',
'Refresh' => 'Frissít',
'Remote' => 'Hálózati',
'RemoteHostName' => 'Hálózati IP cím/hosztnév',
'RemoteHostPath' => 'A kép elérési útvonala',
'RemoteHostPort' => 'Hálózati portszám',
'RemoteHostSubPath' => 'A kép elérési al-útvonala',
'RemoteImageColours' => 'A kép színe',
'RemoteMethod' => 'Hálózati metódus',
'RemoteProtocol' => 'Hálózati protokoll',
'Rename' => 'Átnevezés',
'Replay' => 'Visszajátszás',
'ReplayAll' => 'Minden eseményt',
'ReplayGapless' => 'Folyamatos eseményeket',
'ReplaySingle' => 'Egyéni esemény',
'Reset' => 'Alapértékre állít',
'ResetEventCounts' => 'Esemény számláló nullázása',
'Restart' => 'A szolgáltatás újraindítása',
'Restarting' => 'Újraindítás',
'RestrictedCameraIds' => 'Korlátozott kamerák azonosítói',
'RestrictedMonitors' => 'Korlátozott kamerák',
'ReturnDelay' => 'Visszaérkezés késleltetése',
'ReturnLocation' => 'Visszaérkezés helye',
'Rewind' => 'Visszatekerés',
'RotateLeft' => 'Balra forgatás',
'RotateRight' => 'Jobbra forgatás',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Futási mód',
'RunState' => 'A ZoneMinder állapota',
'Running' => 'Éles',
'Save' => 'Mentés',
'SaveAs' => 'Mentés mint',
'SaveFilter' => 'Szûrõ mentése',
'Scale' => 'Méret',
'Score' => 'Pontszám',
'Secs' => 'mp.',
'Sectionlength' => 'Rész hossz',
'Select' => 'Kiválasztás',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Monitorok kiválasztása',
'SelfIntersecting' => 'A sokszög szélei nem keresztezõdhetnek',
'Set' => 'Beállít',
'SetNewBandwidth' => 'Új sávszélesség beállítás',
'SetPreset' => 'Alapértelmezett beállítása',
'Settings' => 'Beállítások',
'ShowFilterWindow' => 'Szûrõablak megjelenítés',
'ShowTimeline' => 'Idõvonal megjelenítés',
'SignalCheckColour' => 'Szín a jel kimaradásakor',
'Size' => 'Fájlméret',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Alvás',
'SortAsc' => 'Növekvõ',
'SortBy' => 'Sorbarendezés:',
'SortDesc' => 'Csökkenõ',
'Source' => 'Forrás',
'SourceColours' => 'A kép színe',
'SourcePath' => 'A kép elérési útvonala',
'SourceType' => 'Kép-forrás típusa',
'Speed' => 'Sebesség',
'SpeedHigh' => 'Nagy sebsség',
'SpeedLow' => 'Alacsony sebesség',
'SpeedMedium' => 'Közepes sebesség',
'SpeedTurbo' => 'Turbó sebesség',
'Start' => 'Indít',
'State' => 'Állapot',
'Stats' => 'Statisztikák',
'Status' => 'Státusz',
'Step' => 'Ugrás',
'StepBack' => 'Visszalépés',
'StepForward' => 'Elõrelépés',
'StepLarge' => 'Nagy ugrás',
'StepMedium' => 'Közepes ugrás',
'StepNone' => 'Nincs ugrás',
'StepSmall' => 'Kis ugrás',
'Stills' => 'Állóképek',
'Stop' => 'A szolgáltatás leállítása',
'Stopped' => 'Leállítva',
'Stream' => 'Élõ folyam',
'StreamReplayBuffer' => 'Folyam visszajátszó képpuffer',
'Submit' => 'Elküld',
'System' => 'Rendszer',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Táv',
'Thumbnail' => 'Elõnézet',
'Tilt' => 'Fel-le mozgás',
'Time' => 'Idõpont',
'TimeDelta' => 'Idõ változás',
'TimeStamp' => 'Idõbélyeg',
'Timeline' => 'Idõvonal',
'Timestamp' => 'Idõbélyeg',
'TimestampLabelFormat' => 'Idõbélyeg formátum',
'TimestampLabelX' => 'Elhelyezés X pozició',
'TimestampLabelY' => 'Elhelyezés Y pozició',
'Today' => 'Ma',
'Tools' => 'Eszközök',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Össz.<br/>pontszám',
'TrackDelay' => 'Késleltetés követése',
'TrackMotion' => 'Mozgás követése',
'Triggers' => 'Elõidézõk',
'TurboPanSpeed' => 'Turbó jobb-bal sebesség',
'TurboTiltSpeed' => 'Turbo fel-le sebesség',
'Type' => 'Típus',
'Unarchive' => 'Archívumból ki',
'Undefined' => 'Nincs megadva',
'Units' => 'Egység',
'Unknown' => 'Ismeretlen',
'Update' => 'Frissítés',
'UpdateAvailable' => 'Elérhetõ ZoneMinder frissítés.',
'UpdateNotNecessary' => 'Nem szükséges a frissítés.',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Szûrõt használ',
'UseFilterExprsPost' => '&nbsp;szürõ&nbsp;kifejezés használata', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => '&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'Felhasználó',
'Username' => 'Felhasználónév',
'Users' => 'Felhasználók',
'Value' => 'Érték',
'Version' => 'Verzió',
'VersionIgnore' => 'Ennek a verziónak a figyelmen kívül hagyása',
'VersionRemindDay' => '1 nap múlva emlékeztess',
'VersionRemindHour' => '1 óra múlva emlékeztess',
'VersionRemindNever' => 'Ne emlékeztess az új verzióról',
'VersionRemindWeek' => '1 hét múlva emlékeztess',
'Video' => 'Videó',
'VideoFormat' => 'Videó formátum',
'VideoGenFailed' => 'Hiba a videó készítésekor!',
'VideoGenFiles' => 'Létezõ videók',
'VideoGenNoFiles' => 'Nem találhatók videók',
'VideoGenParms' => 'Videó készítési paraméterek',
'VideoGenSucceeded' => 'A videó elkészült!',
'VideoSize' => 'Kép mérete',
'View' => 'Megtekint',
'ViewAll' => 'Az összes listázása',
'ViewEvent' => 'Események nézet',
'ViewPaged' => 'Oldal nézet',
'Wake' => 'Ébreszt',
'WarmupFrames' => 'Bemelegítõ képkockák',
'Watch' => 'Figyel',
'Web' => 'Web',
'WebColour' => 'Szín az idõvonal ablakban',
'Week' => 'Héten',
'White' => 'Fehér',
'WhiteBalance' => 'Fehér egyensúly',
'Wide' => 'Széles',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10 élesítõ karaktersor',
'X10InputAlarmString' => 'X10 bemeneti riadó karaktersor',
'X10OutputAlarmString' => 'X10 kimeneti riadó karaktersor',
'Y' => 'Y',
'Yes' => 'Igen',
'YouNoPerms' => 'Nincs jogod az erõforrás eléréséhez.',
'Zone' => 'Zóna:',
'ZoneAlarmColour' => 'Riadó színezés (R/G/B)',
'ZoneArea' => 'Zóna lefedettsége',
'ZoneFilterSize' => 'Szûrt szélesség/magasság<br>(képpont)',
'ZoneMinMaxAlarmArea' => 'Min/Max riadó terület',
'ZoneMinMaxBlobArea' => 'Min/Max Blob terület',
'ZoneMinMaxBlobs' => 'Min/Max Blobok',
'ZoneMinMaxFiltArea' => 'Min/Max szûrt terület',
'ZoneMinMaxPixelThres' => 'Min/Max képpont eltérési<br>küszöb (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Túlterhelés esetén<br>ennyi képkocka hagyható ki',
'Zones' => 'Zónák',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zoom be',
'ZoomOut' => 'Zoom ki',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Jelenleg belépve mint \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Utolsó %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'Az utolsó kiadás v%1$s, ami neked van v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Megfigyelés funkció: %1$s',
'RunningRecentVer' => 'A legfrissebb ZoneMinder verziót használod, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Esemény', 1=>'Esemény', 2=>'Esemény' ),
'Monitor' => array( 0=>'Monitor', 1=>'Monitor', 2=>'Monitor' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,849 +0,0 @@
<?php
//
// ZoneMinder web Italian language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder IT modified by Nicola Murino (23/09/2007)
// ZoneMinder IT modified by Alessio Chemeri (18/01/2006) (based on the translation done by
// Davide Morelli
// Tolmino Muccitelli - Sicurezza Informatica: info@tolmino.it
// Nicola Murino - IT Consultant: nicola.murino@gmail.com
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
//header( "Content-Type: text/html; charset=iso-8859-1" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
//setlocale( LC_ALL, 'it_IT.UTF-8' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => 'colori a 24 bit',
'8BitGrey' => '8 bit scala di grigio',
'Action' => 'Azione',
'Actual' => 'Attuale',
'AddNewControl' => 'Aggiungi nuovo Controllo',
'AddNewMonitor' => 'Aggiungi nuovo Monitor',
'AddNewUser' => 'Aggiungi nuovo Utente',
'AddNewZone' => 'Aggiungi nuova Zona',
'Alarm' => 'Allarme',
'AlarmBrFrames' => 'Immagini<br/>Allarme',
'AlarmFrame' => 'Immagine Allarme',
'AlarmFrameCount' => 'Allarme Conta frame',
'AlarmLimits' => 'Limiti Allarme',
'AlarmMaximumFPS' => 'FPS massimi durante l\'allarme',
'AlarmPx' => 'Pixel Allarme',
'AlarmRGBUnset' => 'Devi settare un colore RGB di allarme',
'Alert' => 'Attenzione',
'All' => 'Tutto',
'Apply' => 'Applica',
'ApplyingStateChange' => 'Sto applicando le modifiche',
'ArchArchived' => 'Archiviato',
'ArchUnarchived' => 'Non archiviare',
'Archive' => 'Archivio',
'Archived' => 'Archiviato',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'Immagini in Allarme',
'AttrArchiveStatus' => 'Stato Archivio',
'AttrAvgScore' => 'Punteggio medio',
'AttrCause' => 'Causa',
'AttrDate' => 'Data',
'AttrDateTime' => 'Data/Ora',
'AttrDiskBlocks' => 'Blocchi del Disco',
'AttrDiskPercent' => 'Percentuale del Disco',
'AttrDuration' => 'Durata',
'AttrFrames' => 'Immagini',
'AttrId' => 'Id',
'AttrMaxScore' => 'Punteggio massimo',
'AttrMonitorId' => 'Id Monitor',
'AttrMonitorName' => 'Nome Monitor',
'AttrName' => 'Nome',
'AttrNotes' => 'Note',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'Ora',
'AttrTotalScore' => 'Punteggio totale',
'AttrWeekday' => 'Giorno della settimana',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto Stop Timeout',
'Available' => 'Disponibile', // Added - 2009-03-31
'AvgBrScore' => 'Punteggio<br/>medio',
'Background' => 'Background',
'BackgroundFilter' => 'Esegui filtro in background',
'BadAlarmFrameCount' => 'Il numero di frame di un allarme deve essere un numero intero superiore a uno',
'BadAlarmMaxFPS' => 'Il numero massimo di FPS dell\'allarme deve essere un numero intero positivo o un valore in virgola mobile',
'BadChannel' => 'Il canale deve essere settato con un numero intero uguale o maggiore di zero',
'BadDevice' => 'Il dispositivo deve essere impostato con un valore valido',
'BadFPSReportInterval' => 'L\'intervallo di FPS per i report deve essere un numero intero superiore a 0',
'BadFormat' => 'Il formato deve essere impostato con un numero intero come 0 o maggiore',
'BadFrameSkip' => 'Il numero di Frame da scartare deve essere un intero uguale a 0 o superiore',
'BadHeight' => 'L\'altezza deve essere impostata con un valore valido',
'BadHost' => 'L\'host deve essere impostato con un indirizzo ip valido o con un hostname, non includendo http://',
'BadImageBufferCount' => 'La dimensione del buffer dell\'immagine deve essere impostata con un numero intero pari a 10 o maggiore',
'BadLabelX' => 'L\'etichetta della coordinata X deve essere un numero intero pari a 0 o maggiore',
'BadLabelY' => 'L\'etichetta della coordinata Y deve essere un numero intero pari a 0 o maggiore',
'BadMaxFPS' => 'I frame per secondo (FPS) massimi devono essere un numero intero positivo o un valore in virgola mobile',
'BadNameChars' => 'I nomi possono contenere solo caratteri alfanumerici pi&ugrave; i caratteri - e _',
'BadPalette' => 'La palette dei colori deve essere impostata ad un valore valido', // Added - 2009-03-31
'BadPath' => 'Il percorso deve essere impostato con un valore valido',
'BadPort' => 'La porta deve essere settata con un valore valido',
'BadPostEventCount' => 'Il buffer d\'immagine successivo ad un evento deve essere un numero maggiore o uguale a zero',
'BadPreEventCount' => 'Il buffer d\'immagine antecedente ad un evento deve essere minimo 0 e comunque minore della dimensione del buffer d\'immagine',
'BadRefBlendPerc' => 'La percentuale di miscela di riferimento deve essere un intero positivo',
'BadSectionLength' => 'La lunghezza della sezione deve essere un numero intero pari a 30 o maggiore',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Il numero di frame di allarme deve essere un numero intero maggiore o uguale a zero',
'BadWebColour' => 'L\'identificativo del colore deve essere una stringa valida',
'BadWidth' => 'La larghezza deve essere impostata con un valore valido',
'Bandwidth' => 'Banda',
'BlobPx' => 'Blob Px',
'BlobSizes' => 'Dimensioni Blob',
'Blobs' => 'Blobs',
'Brightness' => 'Luminosit&agrave;',
'Buffers' => 'Buffers',
'CanAutoFocus' => 'Puo\' Auto Focus',
'CanAutoGain' => 'Puo\' Auto Gains',
'CanAutoIris' => 'Puo\' Auto Iris',
'CanAutoWhite' => 'Puo\' Auto bil bianco',
'CanAutoZoom' => 'Puo\' Auto Zoom',
'CanFocus' => 'Puo\' Fuoco',
'CanFocusAbs' => 'Puo\' Fuoco Assoluto',
'CanFocusCon' => 'Puo\' Fuoco Continuo ',
'CanFocusRel' => 'Puo\' Fuoco Relativo',
'CanGain' => 'Puo\' Gain ',
'CanGainAbs' => 'Puo\' Gain Assoluto',
'CanGainCon' => 'Puo\' Gain Continuo ',
'CanGainRel' => 'Puo\' Gain Relativo',
'CanIris' => 'Puo\' Iris',
'CanIrisAbs' => 'Puo\' Iris Assoluto',
'CanIrisCon' => 'Puo\' Iris Continuo ',
'CanIrisRel' => 'Puo\' Iris Relativo',
'CanMove' => 'Puo\' Mov.',
'CanMoveAbs' => 'Puo\' Mov. Assoluto',
'CanMoveCon' => 'Puo\' Mov. Continuo ',
'CanMoveDiag' => 'Puo\' Mov. Diagonale ',
'CanMoveMap' => 'Puo\' Mov Mappato',
'CanMoveRel' => 'Puo\' Mov. Relativo',
'CanPan' => 'Puo\' Pan' ,
'CanReset' => 'Puo\' Reset',
'CanSetPresets' => 'Puo\' impostare preset',
'CanSleep' => 'Puo\' andare in sleep',
'CanTilt' => 'Puo\' Tilt',
'CanWake' => 'Puo\' essere riattivato',
'CanWhite' => 'Puo\' bilanciare il bianco',
'CanWhiteAbs' => 'Puo\' bilanciare il bianco assoluto',
'CanWhiteBal' => 'Puo\' bilanciare il bianco',
'CanWhiteCon' => 'Puo\' bilanciare il bianco Continuo',
'CanWhiteRel' => 'Puo\' bilanciare il bianco Relativo',
'CanZoom' => 'Puo\' Zoom',
'CanZoomAbs' => 'Puo\' Zoom Assoluto',
'CanZoomCon' => 'Puo\' Zoom Continuo',
'CanZoomRel' => 'Puo\' Zoom Relativo',
'Cancel' => 'Annulla',
'CancelForcedAlarm' => 'Annulla Allarme Forzato',
'CaptureHeight' => 'Altezza img catturata',
'CaptureMethod' => 'Metodo di cattura', // Added - 2009-02-08
'CapturePalette' => 'Paletta img Catturata',
'CaptureWidth' => 'Larghezza img Catturata',
'Cause' => 'Causa',
'CheckMethod' => 'Metodo di Controllo Allarme',
'ChooseDetectedCamera' => 'Scegli telecamera rilevata', // Added - 2009-03-31
'ChooseFilter' => 'Scegli Filtro',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Scegli Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Chiudi',
'Colour' => 'Colori',
'Command' => 'Comando',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Configura',
'ConfiguredFor' => 'Configurato per',
'ConfirmDeleteEvents' => 'Sei sicuro di voler cancellare gli eventi selezionati',
'ConfirmPassword' => 'Conferma Password',
'ConjAnd' => 'e',
'ConjOr' => 'o',
'Console' => 'Console',
'ContactAdmin' => 'Contatta il tuo amministratore per dettagli.',
'Continue' => 'Continuo',
'Contrast' => 'Contrasto',
'Control' => 'Controllo',
'ControlAddress' => 'Indirizzo di controllo',
'ControlCap' => 'Capacita\' di controllo',
'ControlCaps' => 'Capacita\' di controllo',
'ControlDevice' => 'Dispositivo di controllo',
'ControlType' => 'Tipo Controllo',
'Controllable' => 'Controllabile',
'Cycle' => 'Cicla',
'CycleWatch' => 'Vista Ciclica',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Giorno',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Scala di default',
'DefaultView' => 'Visualizzazione di default',
'Delete' => 'Elimina',
'DeleteAndNext' => 'Elimina &amp; Prossimo',
'DeleteAndPrev' => 'Elimina &amp; Precedente',
'DeleteSavedFilter' => 'Elimina il filtro salvato',
'Description' => 'Descrizione',
'DetectedCameras' => 'Telecamere Rilevate', // Added - 2009-03-31
'Device' => 'Periferica', // Added - 2009-02-08
'DeviceChannel' => 'Canale Periferica',
'DeviceFormat' => 'Formato',
'DeviceNumber' => 'Numero Periferica',
'DevicePath' => 'Percorso Dispositivo',
'Devices' => 'Dispositivi',
'Dimensions' => 'Dimensioni',
'DisableAlarms' => 'Disabil Allarme',
'Disk' => 'Utilizzo Disco',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Donate,per favore',
'DonateAlready' => 'No, ho gia donato... ',
'DonateEnticement' => 'Stai usando ZoneMinder da un po\' di tempo e spero che tu lo stia trovando utile per la sicurezza di casa tua o del tuo posto di lavoro..Anche se ZoneMinder e\' distribuito liberamente come software libero,costa soldi sia svilupparlo che supportarlo. Se preferisci che questo software continui ad avere supporto e sviluppo in futuro allora considera l\idea di fare una piccola donazione. Donare e\' ovviamente opzionale, ma apprezzato e puoi donare quanto vuoi,quel poco o tanto che tu desideri.<br><br>Se hai voglia per cortesia seleziona l\'opzione sotto o punta il tuo browser a http://www.zoneminder.com/donate.html .<br><br>Grazie per usare ZoneMinder e non dimenticare di visitare il forum in ZoneMinder.com se cerchi supporto o hai suggerimenti riguardo a come rendere migliore Zoneminder.',
'DonateRemindDay' => 'Non ancora, ricordamelo ancora tra 1 giorno',
'DonateRemindHour' => 'Non ancora, ricordamelo ancora tra 1 ora',
'DonateRemindMonth' => 'Non ancora, ricordamelo ancora tra 1 mese',
'DonateRemindNever' => 'No, io non voglio donare, non lo faro\' mai',
'DonateRemindWeek' => 'Non ancora, ricordamelo ancora tra 1 settimana',
'DonateYes' => 'Si,mi piacerebbe donare qualcosa ora',
'Download' => 'Download',
'DuplicateMonitorName' => 'Il nome del monitor e\' gia\' presente', // Added - 2009-03-31
'Duration' => 'Durata',
'Edit' => 'Modifica',
'Email' => 'Email',
'EnableAlarms' => 'Abilita Allarmi',
'Enabled' => 'Attivo',
'EnterNewFilterName' => 'Inserisci il nome del nuovo filtro',
'Error' => 'Errore',
'ErrorBrackets' => 'Errore, controlla di avere un ugual numero di parentesti aperte e chiuse.',
'ErrorValidValue' => 'Errore, controlla che tutti i termini abbiano un valore valido',
'Etc' => 'ecc.',
'Event' => 'Evento',
'EventFilter' => 'Filtro Eventi',
'EventId' => 'Id Evento',
'EventName' => 'Nome Evento',
'EventPrefix' => 'Prefisso Evento',
'Events' => 'Eventi',
'Exclude' => 'Escludi',
'Execute' => 'Esegui',
'Export' => 'Esporta',
'ExportDetails' => 'Esp. dettagli eventi',
'ExportFailed' => 'Esp. Fallita ',
'ExportFormat' => 'Formato File Esp. ',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Dettagli frame espo.',
'ExportImageFiles' => 'Esporta le immagini',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Esporto Altri file (se presenti)',
'ExportOptions' => 'Opzioni Esportazione',
'ExportSucceeded' => 'Export completata con successo', // Added - 2009-02-08
'ExportVideoFiles' => 'Esporto File Video (se presenti)',
'Exporting' => 'In corso.',
'FPS' => 'fps',
'FPSReportInterval' => 'Intervallo Report FPS',
'FTP' => 'FTP',
'Far' => 'Lontano',
'FastForward' => 'Fast Forward',
'Feed' => 'Feed',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'File',
'FilterArchiveEvents' => 'Archivia gli eventi',
'FilterDeleteEvents' => 'Elimina gli eventi',
'FilterEmailEvents' => 'Invia dettagli via email',
'FilterExecuteEvents' => 'Esegui un comando',
'FilterMessageEvents' => 'Invia dettagli tramite messaggio',
'FilterPx' => 'Px Filtro',
'FilterUnset' => 'Devi specificare altezza e larghezza per il filtro',
'FilterUploadEvents' => 'Fai upload eventi (FTP)',
'FilterVideoEvents' => 'Crea video per tutte le corrispondenze',
'Filters' => 'Filtri',
'First' => 'Primo',
'FlippedHori' => 'ribaltato orizzontale',
'FlippedVert' => 'ribaltato verticale',
'Focus' => 'Focus',
'ForceAlarm' => 'Forza Allarme',
'Format' => 'Formato',
'Frame' => 'Immagini',
'FrameId' => 'Id Immagine',
'FrameRate' => 'Immagini al secondo',
'FrameSkip' => 'Immagini saltate',
'Frames' => 'Immagini',
'Func' => 'Funz',
'Function' => 'Funzione',
'Gain' => 'Gain',
'General' => 'Generale',
'GenerateVideo' => 'Genera Video',
'GeneratingVideo' => 'Sto generando il Video',
'GoToZoneMinder' => 'Vai su zoneminder.com',
'Grey' => 'Grigio',
'Group' => 'Gruppo',
'Groups' => 'Gruppi',
'HasFocusSpeed' => 'Ha velocita\' di focus',
'HasGainSpeed' => 'Ha velocita\' di guadagno',
'HasHomePreset' => 'Ha posizioni di present',
'HasIrisSpeed' => 'Ha velocota\' di iris',
'HasPanSpeed' => 'Ha velocita\' di Pan',
'HasPresets' => 'Ha preset',
'HasTiltSpeed' => 'Ha velocita\' di Tilt',
'HasTurboPan' => 'Ha il Turbo Pan',
'HasTurboTilt' => 'Ha il Turbo Tilt',
'HasWhiteSpeed' => 'Ha velocita\' di bilanciamento del bianco',
'HasZoomSpeed' => 'Ha velocita\' di zoom',
'High' => 'Alta',
'HighBW' => 'Banda&nbsp;Alta',
'Home' => 'Home',
'Hour' => 'Ora',
'Hue' => 'Tinta',
'Id' => 'Id',
'Idle' => 'Inattivo',
'Ignore' => 'Ignora',
'Image' => 'Immagine',
'ImageBufferSize' => 'Grandezza Buffer Immagine (frames)',
'Images' => 'Immagini',
'In' => 'In',
'Include' => 'Includi',
'Inverted' => 'Invertito',
'Iris' => 'Iris',
'KeyString' => 'Stringa Chiave',
'Label' => 'Etichetta',
'Language' => 'Linguaggio',
'Last' => 'Ultimo',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'risultati;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Limita ai primi', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Monitor Collegati',
'List' => 'Lista',
'Load' => 'Carico Sistema',
'Local' => 'Locale',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Collegato come:',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'Mi Sto Collegando',
'Login' => 'Login',
'Logout' => 'Logout',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'Bassa',
'LowBW' => 'Banda&nbsp;Bassa',
'Main' => 'Principale',
'Man' => 'Man',
'Manual' => 'Manuale',
'Mark' => 'Seleziona',
'Max' => 'Massima',
'MaxBandwidth' => 'Banda Massima',
'MaxBrScore' => 'Punteggio<br/>Massimo',
'MaxFocusRange' => 'Massimo range del focus',
'MaxFocusSpeed' => 'Massima velocita\' del focus',
'MaxFocusStep' => 'Massimo step del focus',
'MaxGainRange' => 'Massimo range del guadagno',
'MaxGainSpeed' => 'Massima velocita\' del guadagno',
'MaxGainStep' => 'Massimo step del guadagno',
'MaxIrisRange' => 'Massima range dell\'Iris',
'MaxIrisSpeed' => 'Massima velocita\' dell\'Iris',
'MaxIrisStep' => 'Massimo step dell\'Iris',
'MaxPanRange' => 'Massimo range del pan',
'MaxPanSpeed' => 'Massima velocita\' del tilt',
'MaxPanStep' => 'Massimo step del pan',
'MaxTiltRange' => 'Massimo range del tilt',
'MaxTiltSpeed' => 'Massima velocita\' del tilt',
'MaxTiltStep' => 'Massimo passo del tilt',
'MaxWhiteRange' => 'Massimo range del bilanciamento del bianco',
'MaxWhiteSpeed' => 'Massima velocita\' del bilanciamento del bianco',
'MaxWhiteStep' => 'Massimo Step del bilanciamento del bianco',
'MaxZoomRange' => 'Massimo range dello zoom',
'MaxZoomSpeed' => 'Massima velocita\' dello zoom',
'MaxZoomStep' => 'Massimo step dello zoom',
'MaximumFPS' => 'Massimi FPS',
'Medium' => 'Media',
'MediumBW' => 'Banda&nbsp;Media',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'L\'area minima dell\'allarme deve essere minore di quella massima',
'MinAlarmAreaUnset' => 'Devi specificare il numero minimo di pixel per l\'allarme',
'MinBlobAreaLtMax' => 'L\'area di blob minima deve essere minore dell\'area di blob massima',
'MinBlobAreaUnset' => 'Devi specificare il numero minimo di pixel per il blob',
'MinBlobLtMinFilter' => 'L\'area minima di blob deve essere minore o uguale dell\'area minima del filtro',
'MinBlobsLtMax' => 'I blob minimi devono essere minori dei blob massimi',
'MinBlobsUnset' => 'Devi specificare il numero minimo di blob',
'MinFilterAreaLtMax' => 'L\'area minima del filtro deve essere minore di quella massima',
'MinFilterAreaUnset' => 'Devi specificare il numero minimo di pixel per il filtro',
'MinFilterLtMinAlarm' => 'L\'area minima di filtro deve essere minore o uguale dell\area minima di allarme',
'MinFocusRange' => 'Range minimo del Focus',
'MinFocusSpeed' => 'Velocita\' minima del Focus',
'MinFocusStep' => 'Minimo step del Focus',
'MinGainRange' => 'Minimo range del Guadagno',
'MinGainSpeed' => 'Velocita\' minima del Guadagno',
'MinGainStep' => 'Step minimo del guadagno',
'MinIrisRange' => 'Range minimo dell\'Iris',
'MinIrisSpeed' => 'Velocita\' minima dell\'Iris',
'MinIrisStep' => 'Step minimo dell\'Iris',
'MinPanRange' => 'Range minimo del pan',
'MinPanSpeed' => 'Velocita\' minima del Pan',
'MinPanStep' => 'Step minimo del Pan',
'MinPixelThresLtMax' => 'I pixel minimi della soglia devono essere minori dei pixel massimi della soglia',
'MinPixelThresUnset' => 'Devi specificare una soglia minima di pixel', // Added - 2009-02-08
'MinTiltRange' => 'Range minimo del Tilt',
'MinTiltSpeed' => 'Velocita\' minima del Tilt',
'MinTiltStep' => 'Step minimo del Tilt',
'MinWhiteRange' => 'Range minimo del bilanciamento del bianco',
'MinWhiteSpeed' => 'Velocita\' minima del bialnciamento del bianco',
'MinWhiteStep' => 'Minimo step del bilanciamento del bianco',
'MinZoomRange' => 'Range minimo dello zoom',
'MinZoomSpeed' => 'Velocita\' minima dello zoom',
'MinZoomStep' => 'Step minimo dello zoom',
'Misc' => 'Altro',
'Monitor' => 'Monitor',
'MonitorIds' => 'Monitor&nbsp;Ids',
'MonitorPreset' => 'Monitor Presenti',
'MonitorPresetIntro' => 'Selezionare un appropriato pre settaggio dalla lista riportata qui sotto.<br><br>Per favore notare che questo potrebbe sovrascrivere ogni valore che hai gi&agrave; configurato su questo monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'Monitors',
'Montage' => 'Montaggio',
'Month' => 'Mese',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Sposta',
'MustBeGe' => 'deve essere superiore a',
'MustBeLe' => 'deve essere inferiore o pari a',
'MustConfirmPassword' => 'Devi confermare la password',
'MustSupplyPassword' => 'Devi inserire una password',
'MustSupplyUsername' => 'Devi specificare un nome utente',
'Name' => 'Nome',
'Near' => 'Vicino',
'Network' => 'Rete',
'New' => 'Nuovo',
'NewGroup' => 'Nuovo Gruppo',
'NewLabel' => 'Nuova Etichetta',
'NewPassword' => 'Nuova Password',
'NewState' => 'Nuovo Stato',
'NewUser' => 'Nuovo Utente',
'Next' => 'Prossimo',
'No' => 'No',
'NoDetectedCameras' => 'Nessuna telecamera rilevata', // Added - 2009-03-31
'NoFramesRecorded' => 'Non ci sono immagini salvate per questo evento',
'NoGroup' => 'Nessun gruppo', // Added - 2009-02-08
'NoSavedFilters' => 'NessunFiltroSalvato',
'NoStatisticsRecorded' => 'Non ci sono statistiche salvate per questo evento/immagine',
'None' => 'Nessuno',
'NoneAvailable' => 'Nessuno disponibile',
'Normal' => 'Normale',
'Notes' => 'Note',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'uguale a',
'OpGt' => 'maggiore di',
'OpGtEq' => 'maggiore o uguale a',
'OpIn' => 'impostato',
'OpLt' => 'minore di',
'OpLtEq' => 'minore o uguale a',
'OpMatches' => 'corrisponde',
'OpNe' => 'diverso da',
'OpNotIn' => 'non impostato',
'OpNotMatches' => 'non corrisponde',
'Open' => 'Apri',
'OptionHelp' => 'Opzioni di Aiuto',
'OptionRestartWarning' => 'Queste modifiche potrebbero essere attive solo dopo un riavvio del sistema. Riavviare ZoneMinder.',
'Options' => 'Opzioni',
'OrEnterNewName' => 'o inserisci un nuovo nome',
'Order' => 'Ordine',
'Orientation' => 'Orientamento',
'Out' => 'Out',
'OverwriteExisting' => 'Sovrascrivi',
'Paged' => 'Con paginazione',
'Pan' => 'Pan',
'PanLeft' => 'Pan Sinistra',
'PanRight' => 'Pan Destra',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'Parametri',
'Password' => 'Password',
'PasswordsDifferent' => 'Le password non coincidono',
'Paths' => 'Percorsi',
'Pause' => 'Pause',
'Phone' => 'Telefono',
'PhoneBW' => 'Banda&nbsp;Tel',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'pixels',
'Play' => 'Play',
'PlayAll' => 'Vedi tutti',
'PleaseWait' => 'Attendere prego',
'Point' => 'Punto',
'PostEventImageBuffer' => 'Buffer di immagini Dopo Evento',
'PreEventImageBuffer' => 'Buffer di immagini Pre Evento',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => 'Prec',
'Probe' => 'Prova la telecamera', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'Velocita\'',
'Real' => 'Reale',
'Record' => 'Registra',
'RefImageBlendPct' => 'Riferimento Miscela Immagine percentuale',
'Refresh' => 'Aggiorna',
'Remote' => 'Remoto',
'RemoteHostName' => 'Nome dell\'Host Remoto',
'RemoteHostPath' => 'Percorso dell\'Host Remoto',
'RemoteHostPort' => 'Porta dell\'Host Remoto',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Colori delle immagini Remote',
'RemoteMethod' => 'Metodo Remoto', // Added - 2009-02-08
'RemoteProtocol' => 'Protocollo Remoto', // Added - 2009-02-08
'Rename' => 'Rinomina',
'Replay' => 'Replay',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'Resetta',
'ResetEventCounts' => 'Resetta Contatore Eventi',
'Restart' => 'Riavvia',
'Restarting' => 'Sto riavviando',
'RestrictedCameraIds' => 'Camera Ids Riservati',
'RestrictedMonitors' => 'Monitor limitati',
'ReturnDelay' => 'Ritardo del ritorno',
'ReturnLocation' => 'Posizione del ritorno',
'Rewind' => 'Riavvolgi',
'RotateLeft' => 'Ruota a Sinista',
'RotateRight' => 'Ruota a Destra',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Modalita\' funzionamento',
'RunState' => 'Stato di funzionamento',
'Running' => 'Attivo',
'Save' => 'Salva',
'SaveAs' => 'Salva come',
'SaveFilter' => 'salva Filtro',
'Scale' => 'Scala',
'Score' => 'Punteggio',
'Secs' => 'Secs',
'Sectionlength' => 'Lunghezza Sezione',
'Select' => 'Seleziona',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Monitor Selezionati',
'SelfIntersecting' => 'I vertici del poligono non devono intersecarsi',
'Set' => 'Imposta',
'SetNewBandwidth' => 'Imposta nuova Banda',
'SetPreset' => 'Imposta Preset',
'Settings' => 'Impostazioni',
'ShowFilterWindow' => 'MostraFinestraFiltri',
'ShowTimeline' => 'Mostra linea temporale',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'grandezza',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Sleep',
'SortAsc' => 'Cresc',
'SortBy' => 'Ordina per',
'SortDesc' => 'Decr',
'Source' => 'Sorgente',
'SourceColours' => 'Colori della Sorgente', // Added - 2009-02-08
'SourcePath' => 'Percorso della Sorgente', // Added - 2009-02-08
'SourceType' => 'Tipo Sorgente',
'Speed' => 'Velocita\'',
'SpeedHigh' => 'Alta Velocita\'',
'SpeedLow' => 'Bassa Velocita\'',
'SpeedMedium' => 'Media Velocita\'',
'SpeedTurbo' => 'Turbo Velocita\'',
'Start' => 'Avvia',
'State' => 'Stato',
'Stats' => 'Statistiche',
'Status' => 'Stato',
'Step' => 'Passo',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Lungo passo',
'StepMedium' => 'Medio passo',
'StepNone' => 'No passo',
'StepSmall' => 'Piccolo passo',
'Stills' => 'Foto',
'Stop' => 'Stop',
'Stopped' => 'Inattivo',
'Stream' => 'Flusso',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Accetta',
'System' => 'Sistema',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Anteprima',
'Tilt' => 'Tilt',
'Time' => 'Ora',
'TimeDelta' => 'Tempo di Delta',
'TimeStamp' => 'Time Stamp',
'Timeline' => 'Linea Temporale',
'Timestamp' => 'Timestamp',
'TimestampLabelFormat' => 'Formato etichetta timestamp',
'TimestampLabelX' => 'coordinata X etichetta',
'TimestampLabelY' => 'coordinata Y etichetta',
'Today' => 'Oggi ',
'Tools' => 'Strumenti',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Punteggio<br/>Totale',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'Triggers',
'TurboPanSpeed' => 'Velocita\' Turbo Pan',
'TurboTiltSpeed' => 'Velocita\' Turbo Tilt',
'Type' => 'Tipo',
'Unarchive' => 'Togli dall\'archivio',
'Undefined' => 'Non specificato', // Added - 2009-02-08
'Units' => 'Unit&agrave;',
'Unknown' => 'Sconosciuto',
'Update' => 'Aggiorna',
'UpdateAvailable' => 'Un aggiornamento di ZoneMinder &egrave; disponibilie.',
'UpdateNotNecessary' => 'Nessun aggiornamento necessario.',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Usa Filtro',
'UseFilterExprsPost' => '&nbsp;espressioni&nbsp;filtri', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Usa&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'Utente',
'Username' => 'Nome Utente',
'Users' => 'Utenti',
'Value' => 'Valore',
'Version' => 'Versione',
'VersionIgnore' => 'Ignora questa versione',
'VersionRemindDay' => 'Ricordami ancora tra un giorno',
'VersionRemindHour' => 'Ricordami ancora tra un\'ora',
'VersionRemindNever' => 'Non ricordarmi di nuove versioni',
'VersionRemindWeek' => 'Ricordami ancora tra una settimana',
'Video' => 'Video',
'VideoFormat' => 'Formato Video',
'VideoGenFailed' => 'Generazione Video Fallita!',
'VideoGenFiles' => 'File Video Esistenti',
'VideoGenNoFiles' => 'Non ho trovato file ',
'VideoGenParms' => 'Parametri Generazione Video',
'VideoGenSucceeded' => 'Successo: Generato Video !',
'VideoSize' => 'Dimensioni Video',
'View' => 'vedi',
'ViewAll' => 'Vedi Tutto',
'ViewEvent' => 'Vedi Evento',
'ViewPaged' => 'Vedi con paginazione',
'Wake' => 'Riattiva',
'WarmupFrames' => 'Immagini Allerta',
'Watch' => 'Guarda',
'Web' => 'Web',
'WebColour' => 'Colore Web',
'Week' => 'Settimana',
'White' => 'Bianco',
'WhiteBalance' => 'Bil. Bianco ',
'Wide' => 'Larghezza',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'Stringa attivazione X10',
'X10InputAlarmString' => 'Stringa allarme input X10',
'X10OutputAlarmString' => 'Stringa allarme output X10',
'Y' => 'Y',
'Yes' => 'Si',
'YouNoPerms' => 'Non hai i permessi per accedere a questa risorsa.',
'Zone' => 'Zona',
'ZoneAlarmColour' => 'Colore Allarme (RGB)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Larghezza/Altezza Filtro (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Area Allarmata',
'ZoneMinMaxBlobArea' => 'Min/Max Area di Blob',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Area Filtrata',
'ZoneMinMaxPixelThres' => 'Min/Max Soglia Pixel (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'Zone',
'Zoom' => 'Zoom',
'ZoomIn' => 'Ingrandisci',
'ZoomOut' => 'Rimpicciolisci',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Login attuale: \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Ultimi %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'L\'ultima release v%1$s, tu hai v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Funzione Monitor %1$s',
'RunningRecentVer' => 'Stai usando la versione pi&ugrave; aggiornata di ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Eventi', 1=>'Evento', 2=>'Eventi' ),
'Monitor' => array( 0=>'Monitor', 1=>'Monitor', 2=>'Monitor' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Errore, sono incapace di correlare le stringhe del file-linguaggio');
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,844 +0,0 @@
<?php
//
// ZoneMinder web Japanese language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Japanese Translation by Andrew Arkley
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
// header( "Content-Type: text/html; charset=iso-8859-1" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => '24ビットカラー',
'8BitGrey' => '8ビット濃淡画像',
'Action' => 'Action',
'Actual' => '生中継',
'AddNewControl' => 'Add New Control',
'AddNewMonitor' => 'モニター追加',
'AddNewUser' => 'ユーザ追加',
'AddNewZone' => 'ゾーン追加',
'Alarm' => 'アラーム',
'AlarmBrFrames' => 'アラーム<br/>フレーム',
'AlarmFrame' => 'アラーム フレーム',
'AlarmFrameCount' => 'Alarm Frame Count',
'AlarmLimits' => 'アラーム限度',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'アラーム Px',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => '警告',
'All' => '全て',
'Apply' => '適用',
'ApplyingStateChange' => '変更適用中',
'ArchArchived' => '保存分のみ',
'ArchUnarchived' => '保存分以外のみ',
'Archive' => 'アーカイブ',
'Archived' => 'Archived',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'アラーム フレーム',
'AttrArchiveStatus' => '保存状態',
'AttrAvgScore' => '平均スコアー',
'AttrCause' => 'Cause',
'AttrDate' => '日付',
'AttrDateTime' => '日時',
'AttrDiskBlocks' => 'Disk Blocks',
'AttrDiskPercent' => 'Disk Percent',
'AttrDuration' => '継続時間',
'AttrFrames' => 'フレーム',
'AttrId' => 'Id',
'AttrMaxScore' => '最高スコアー',
'AttrMonitorId' => 'モニター Id',
'AttrMonitorName' => 'モニター 名前',
'AttrName' => 'Name',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => '時間',
'AttrTotalScore' => '合計スコアー',
'AttrWeekday' => '曜日',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto Stop Timeout',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => '平均<br/>スコアー',
'Background' => 'Background',
'BackgroundFilter' => 'Run filter in background',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to an integer of zero or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Names may only contain alphanumeric characters plus hyphen and underscore',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => '帯域幅',
'BlobPx' => 'ブロブ Px',
'BlobSizes' => 'ブロブ サイズ',
'Blobs' => 'ブロブ',
'Brightness' => '輝度',
'Buffers' => 'バッファ',
'CanAutoFocus' => 'Can Auto Focus',
'CanAutoGain' => 'Can Auto Gain',
'CanAutoIris' => 'Can Auto Iris',
'CanAutoWhite' => 'Can Auto White Bal.',
'CanAutoZoom' => 'Can Auto Zoom',
'CanFocus' => 'Can Focus',
'CanFocusAbs' => 'Can Focus Absolute',
'CanFocusCon' => 'Can Focus Continuous',
'CanFocusRel' => 'Can Focus Relative',
'CanGain' => 'Can Gain ',
'CanGainAbs' => 'Can Gain Absolute',
'CanGainCon' => 'Can Gain Continuous',
'CanGainRel' => 'Can Gain Relative',
'CanIris' => 'Can Iris',
'CanIrisAbs' => 'Can Iris Absolute',
'CanIrisCon' => 'Can Iris Continuous',
'CanIrisRel' => 'Can Iris Relative',
'CanMove' => 'Can Move',
'CanMoveAbs' => 'Can Move Absolute',
'CanMoveCon' => 'Can Move Continuous',
'CanMoveDiag' => 'Can Move Diagonally',
'CanMoveMap' => 'Can Move Mapped',
'CanMoveRel' => 'Can Move Relative',
'CanPan' => 'Can Pan' ,
'CanReset' => 'Can Reset',
'CanSetPresets' => 'Can Set Presets',
'CanSleep' => 'Can Sleep',
'CanTilt' => 'Can Tilt',
'CanWake' => 'Can Wake',
'CanWhite' => 'Can White Balance',
'CanWhiteAbs' => 'Can White Bal. Absolute',
'CanWhiteBal' => 'Can White Bal.',
'CanWhiteCon' => 'Can White Bal. Continuous',
'CanWhiteRel' => 'Can White Bal. Relative',
'CanZoom' => 'Can Zoom',
'CanZoomAbs' => 'Can Zoom Absolute',
'CanZoomCon' => 'Can Zoom Continuous',
'CanZoomRel' => 'Can Zoom Relative',
'Cancel' => 'キャンセル',
'CancelForcedAlarm' => '強制アラームキャンセル',
'CaptureHeight' => '取り込み高さ',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => '取り込みパレット',
'CaptureWidth' => '取り込み幅',
'Cause' => 'Cause',
'CheckMethod' => 'アラーム チェック方法',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'フィルターの選択',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => '閉じる',
'Colour' => '色',
'Command' => 'Command',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Config',
'ConfiguredFor' => '設定:',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => 'パスワードの確認',
'ConjAnd' => '及び',
'ConjOr' => '又は',
'Console' => 'コンソール',
'ContactAdmin' => '管理者にお問い合わせください。',
'Continue' => 'Continue',
'Contrast' => 'コントラスト',
'Control' => 'Control',
'ControlAddress' => 'Control Address',
'ControlCap' => 'Control Capability',
'ControlCaps' => 'Control Capabilities',
'ControlDevice' => 'Control Device',
'ControlType' => 'Control Type',
'Controllable' => 'Controllable',
'Cycle' => 'Cycle',
'CycleWatch' => 'サイクル観察',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => '曜日',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Default Scale',
'DefaultView' => 'Default View',
'Delete' => '削除',
'DeleteAndNext' => '次を削除',
'DeleteAndPrev' => '前を削除',
'DeleteSavedFilter' => '保存フィルターの削除',
'Description' => '説明',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'デバイス チャンネル',
'DeviceFormat' => 'デバイス フォーマット',
'DeviceNumber' => 'デバイス番号',
'DevicePath' => 'Device Path',
'Devices' => 'Devices',
'Dimensions' => '寸法',
'DisableAlarms' => 'Disable Alarms',
'Disk' => 'Disk',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Please Donate',
'DonateAlready' => 'No, I\'ve already donated',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br><br>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br><br>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'DonateRemindDay' => 'Not yet, remind again in 1 day',
'DonateRemindHour' => 'Not yet, remind again in 1 hour',
'DonateRemindMonth' => 'Not yet, remind again in 1 month',
'DonateRemindNever' => 'No, I don\'t want to donate, never remind',
'DonateRemindWeek' => 'Not yet, remind again in 1 week',
'DonateYes' => 'Yes, I\'d like to donate now',
'Download' => 'Download',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => '継続時間',
'Edit' => '編集',
'Email' => 'メール',
'EnableAlarms' => 'Enable Alarms',
'Enabled' => '使用可能\',
'EnterNewFilterName' => '新しいフィルター名の入力',
'Error' => 'エラー',
'ErrorBrackets' => 'エラー、開き括弧と閉じ括弧の数が合っているのかを確認してください',
'ErrorValidValue' => 'エラー、全ての項の数値が有効かどうかを確認してください',
'Etc' => '等',
'Event' => 'イベント',
'EventFilter' => 'イベント フィルター',
'EventId' => 'Event Id',
'EventName' => 'Event Name',
'EventPrefix' => 'Event Prefix',
'Events' => 'イベント',
'Exclude' => '排除',
'Execute' => 'Execute',
'Export' => 'Export',
'ExportDetails' => 'Export Event Details',
'ExportFailed' => 'Export Failed',
'ExportFormat' => 'Export File Format',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Export Frame Details',
'ExportImageFiles' => 'Export Image Files',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Export Other Files (if present)',
'ExportOptions' => 'Export Options',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Export Video Files (if present)',
'Exporting' => 'Exporting',
'FPS' => 'fps',
'FPSReportInterval' => 'FPS報告間隔',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => '送り込む',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'File',
'FilterArchiveEvents' => 'Archive all matches',
'FilterDeleteEvents' => 'Delete all matches',
'FilterEmailEvents' => 'Email details of all matches',
'FilterExecuteEvents' => 'Execute command on all matches',
'FilterMessageEvents' => 'Message details of all matches',
'FilterPx' => 'フィルター Px',
'FilterUnset' => 'You must specify a filter width and height',
'FilterUploadEvents' => 'Upload all matches',
'FilterVideoEvents' => 'Create video for all matches',
'Filters' => 'Filters',
'First' => '最初',
'FlippedHori' => 'Flipped Horizontally',
'FlippedVert' => 'Flipped Vertically',
'Focus' => 'Focus',
'ForceAlarm' => '強制アラーム',
'Format' => 'Format',
'Frame' => 'フレーム',
'FrameId' => 'フレーム ID',
'FrameRate' => 'フレームレート',
'FrameSkip' => 'フレームスキップ',
'Frames' => 'フレーム',
'Func' => '機能\',
'Function' => '機能\',
'Gain' => 'Gain',
'General' => 'General',
'GenerateVideo' => 'ビデオの生成',
'GeneratingVideo' => 'ビデオ生成中',
'GoToZoneMinder' => 'ZoneMinder.comに行く',
'Grey' => 'グレー',
'Group' => 'Group',
'Groups' => 'Groups',
'HasFocusSpeed' => 'Has Focus Speed',
'HasGainSpeed' => 'Has Gain Speed',
'HasHomePreset' => 'Has Home Preset',
'HasIrisSpeed' => 'Has Iris Speed',
'HasPanSpeed' => 'Has Pan Speed',
'HasPresets' => 'Has Presets',
'HasTiltSpeed' => 'Has Tilt Speed',
'HasTurboPan' => 'Has Turbo Pan',
'HasTurboTilt' => 'Has Turbo Tilt',
'HasWhiteSpeed' => 'Has White Bal. Speed',
'HasZoomSpeed' => 'Has Zoom Speed',
'High' => '高',
'HighBW' => '高帯域',
'Home' => 'Home',
'Hour' => '時',
'Hue' => '色相',
'Id' => 'ID',
'Idle' => '待機状態',
'Ignore' => '無視',
'Image' => '画像',
'ImageBufferSize' => '画像 バッファ サイズ',
'Images' => 'Images',
'In' => 'In',
'Include' => '組み込む',
'Inverted' => '反転',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => '言語',
'Last' => '最終',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'results only;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Limit to first', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Linked Monitors',
'List' => 'List',
'Load' => 'Load',
'Local' => 'ローカル',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'ログイン済み:',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'ログイン中',
'Login' => 'ログイン',
'Logout' => 'ログアウト',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => '低',
'LowBW' => '低帯域',
'Main' => 'Main',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => '選択',
'Max' => '最高',
'MaxBandwidth' => 'Max Bandwidth',
'MaxBrScore' => '最高<br/>スコアー',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MaximumFPS' => '最高 FPS',
'Medium' => '中',
'MediumBW' => '中帯域',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => '最低ブロッブ範囲は最高値より以下でなければいけない',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => '最低ブロッブ数は最高数より以下でなければいけない',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => '最低ピクセル閾値は最高値より以下でなければいけない',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => 'その他',
'Monitor' => 'モニター',
'MonitorIds' => 'モニター ID',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br><br>Please note that this may overwrite any values you already have configured for this monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'モニター',
'Montage' => 'モンタージュ',
'Month' => '月',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Move',
'MustBeGe' => '同等か以上でなければいけない',
'MustBeLe' => '同等か以下でなければいけない',
'MustConfirmPassword' => 'パスワードの確認をしてください',
'MustSupplyPassword' => 'パスワードを入力してください',
'MustSupplyUsername' => 'ユーザ名を入力してください',
'Name' => '名前',
'Near' => 'Near',
'Network' => 'ネットワーク',
'New' => '新規',
'NewGroup' => 'New Group',
'NewLabel' => 'New Label',
'NewPassword' => '新しいパスワード',
'NewState' => '新規状態',
'NewUser' => '新しいユーザ',
'Next' => '次',
'No' => 'いいえ',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'このイベントのフレームは登録されていません',
'NoGroup' => 'No Group',
'NoSavedFilters' => '保存されたフィルターはありません',
'NoStatisticsRecorded' => 'このイベント/フレームの統計は登録されていません',
'None' => 'ありません',
'NoneAvailable' => 'ありません',
'Normal' => '普通',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'OpEq' => '同等',
'OpGt' => '以下',
'OpGtEq' => '同等か以上',
'OpIn' => 'セットに入っている',
'OpLt' => '以下',
'OpLtEq' => '同等か以下',
'OpMatches' => '一致する',
'OpNe' => '同等でない',
'OpNotIn' => 'セットに入っていない',
'OpNotMatches' => '一致しない',
'Open' => 'Open',
'OptionHelp' => 'オプション ヘルプ',
'OptionRestartWarning' => 'この変更は起動中反映されない場合があります。\n変更してからZoneMinderを再起動してください。',
'Options' => 'オプション',
'OrEnterNewName' => '又は新しい名前を入力してください',
'Order' => 'Order',
'Orientation' => 'オリオンテーション',
'Out' => 'Out',
'OverwriteExisting' => '上書きします',
'Paged' => 'ページ化',
'Pan' => 'Pan',
'PanLeft' => 'Pan Left',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'パラメータ',
'Password' => 'パスワード',
'PasswordsDifferent' => '新しいパスワードと再入力パスワードが一致しません',
'Paths' => 'パス',
'Pause' => 'Pause',
'Phone' => 'Phone',
'PhoneBW' => '携帯用',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'ピクセル',
'Play' => 'Play',
'PlayAll' => 'Play All',
'PleaseWait' => 'お待ちください',
'Point' => 'Point',
'PostEventImageBuffer' => 'イベント イメージ バッファ後',
'PreEventImageBuffer' => 'イベント イメージ バッファ前',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => '前',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'レート',
'Real' => '生中継',
'Record' => '録画',
'RefImageBlendPct' => 'イメージ ブレンド 参照 %',
'Refresh' => '最新の情報に更新',
'Remote' => 'リモート',
'RemoteHostName' => 'リモート ホスト 名',
'RemoteHostPath' => 'リモート ホスト パス',
'RemoteHostPort' => 'リモート ホスト ポート',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'リモート イメージ カラー',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => '新しい名前をつける',
'Replay' => 'Replay',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'Reset',
'ResetEventCounts' => 'イベント カウント リセット',
'Restart' => '再起動',
'Restarting' => '再起動中',
'RestrictedCameraIds' => '制限されたカメラ ID',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Return Delay',
'ReturnLocation' => 'Return Location',
'Rewind' => 'Rewind',
'RotateLeft' => '左に回転',
'RotateRight' => '右に回転',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => '起動モード',
'RunState' => '起動状態',
'Running' => '起動中',
'Save' => '保存',
'SaveAs' => '名前をつけて保存',
'SaveFilter' => 'フィルターを保存',
'Scale' => 'スケール',
'Score' => 'スコアー',
'Secs' => '秒',
'Sectionlength' => '長さ',
'Select' => 'Select',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Select Monitors',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => 'Set',
'SetNewBandwidth' => '新しい帯域幅の設定',
'SetPreset' => 'Set Preset',
'Settings' => '設定',
'ShowFilterWindow' => 'フィルター ウインドーの表示',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Size',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Sleep',
'SortAsc' => 'Asc',
'SortBy' => 'Sort by',
'SortDesc' => 'Desc',
'Source' => 'ソース',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'ソース タイプ',
'Speed' => 'Speed',
'SpeedHigh' => 'High Speed',
'SpeedLow' => 'Low Speed',
'SpeedMedium' => 'Medium Speed',
'SpeedTurbo' => 'Turbo Speed',
'Start' => 'スタート',
'State' => '状態',
'Stats' => '統計',
'Status' => '状態',
'Step' => 'Step',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Large Step',
'StepMedium' => 'Medium Step',
'StepNone' => 'No Step',
'StepSmall' => 'Small Step',
'Stills' => 'スチール画像',
'Stop' => '停止',
'Stopped' => '停止状態',
'Stream' => 'ストリーム',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Submit',
'System' => 'システム',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Tilt',
'Time' => '時間',
'TimeDelta' => 'デルタ タイム',
'TimeStamp' => 'タイム スタンプ',
'Timeline' => 'Timeline',
'Timestamp' => 'タイムスタンプ',
'TimestampLabelFormat' => 'タイムスタンプ ラベル フォーマット',
'TimestampLabelX' => 'タイムスタンプ ラベル X',
'TimestampLabelY' => 'タイムスタンプ ラベル Y',
'Today' => 'Today',
'Tools' => 'ツール',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => '合計<br/>スコアー',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'トリガー',
'TurboPanSpeed' => 'Turbo Pan Speed',
'TurboTiltSpeed' => 'Turbo Tilt Speed',
'Type' => 'タイプ',
'Unarchive' => '解凍',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'ユニット',
'Unknown' => '不明',
'Update' => 'Update',
'UpdateAvailable' => 'ZoneMinderのアップデートがあります',
'UpdateNotNecessary' => 'アップデートの必要はありません',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'フィルターを使用してください',
'UseFilterExprsPost' => '&nbsp;フィルター個数', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => '指定してください:&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'ユーザ',
'Username' => 'ユーザ名',
'Users' => 'ユーザ',
'Value' => '数値',
'Version' => 'バージョン',
'VersionIgnore' => 'このバージョンを無視',
'VersionRemindDay' => '1日後に再度知らせる',
'VersionRemindHour' => '1時間後に再度知らせる',
'VersionRemindNever' => '新しいバージョンの知らせは必要ない',
'VersionRemindWeek' => '1週間後に再度知らせる',
'Video' => 'ビデオ',
'VideoFormat' => 'Video Format',
'VideoGenFailed' => 'ビデオ生成の失敗!',
'VideoGenFiles' => 'Existing Video Files',
'VideoGenNoFiles' => 'No Video Files Found',
'VideoGenParms' => 'ビデオ生成 パラメータ',
'VideoGenSucceeded' => 'Video Generation Succeeded!',
'VideoSize' => 'ビデオ サイズ',
'View' => '表示',
'ViewAll' => '全部表示',
'ViewEvent' => 'View Event',
'ViewPaged' => 'ページ化の表示',
'Wake' => 'Wake',
'WarmupFrames' => 'ウォームアップ フレーム',
'Watch' => '監視',
'Web' => 'ウェブ',
'WebColour' => 'Web Colour',
'Week' => '週',
'White' => 'White',
'WhiteBalance' => 'White Balance',
'Wide' => 'Wide',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10起動文字列',
'X10InputAlarmString' => 'X10入力アラーム文字列',
'X10OutputAlarmString' => 'X10出力アラーム文字列',
'Y' => 'Y',
'Yes' => 'はい',
'YouNoPerms' => 'この資源のアクセス権がありません。',
'Zone' => 'ゾーン',
'ZoneAlarmColour' => 'アラーム カラー (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'ゾーン',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zoom In',
'ZoomOut' => 'Zoom Out',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'ただ今\'%1$s\がログインしています',
'EventCount' => '%1$s %2$s',
'LastEvents' => '最終 %1$s %2$s',
'LatestRelease' => '最新バージョンは v%1$s、ご利用バージョンはv%2$s.',
'MonitorCount' => '%1$s %2$s',
'MonitorFunction' => 'モニター%1$s 機能\',
'RunningRecentVer' => 'あなたはZoneMinderの最新バージョン v%s.を使っています',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'イベント', 1=>'イベント', 2=>'イベント' ),
'Monitor' => array( 0=>'モニター', 1=>'モニター', 2=>'モニター' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,844 +0,0 @@
<?php
//
// ZoneMinder web Dutch language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Dutch Translation by Koen Veen
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
// header( "Content-Type: text/html; charset=iso-8859-1" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => '24 bit kleuren',
'8BitGrey' => '8 bit grijstinten',
'Action' => 'Action',
'Actual' => 'Aktueel',
'AddNewControl' => 'Add New Control',
'AddNewMonitor' => 'Voeg een nieuwe monitor toe',
'AddNewUser' => 'Voeg een nieuwe gebruiker toe',
'AddNewZone' => 'Voeg een nieuwe zone toe',
'Alarm' => 'Alarm',
'AlarmBrFrames' => 'Alarm<br/>Frames',
'AlarmFrame' => 'Alarm Frame',
'AlarmFrameCount' => 'Alarm Frame Count',
'AlarmLimits' => 'Alarm Limieten',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'Alarm Px',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => 'Waarschuwing',
'All' => 'Alle',
'Apply' => 'Voer uit',
'ApplyingStateChange' => 'Status verandering aan het uitvoeren',
'ArchArchived' => 'Alleen gearchiveerd',
'ArchUnarchived' => 'Alleen ongearchiveerd',
'Archive' => 'Archief',
'Archived' => 'Archived',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'Alarm frames',
'AttrArchiveStatus' => 'Archief status',
'AttrAvgScore' => 'Gem. score',
'AttrCause' => 'Cause',
'AttrDate' => 'Datum',
'AttrDateTime' => 'Datum/tijd',
'AttrDiskBlocks' => 'Disk Blocks',
'AttrDiskPercent' => 'Disk Percent',
'AttrDuration' => 'Duur',
'AttrFrames' => 'Frames',
'AttrId' => 'Id',
'AttrMaxScore' => 'Max. Score',
'AttrMonitorId' => 'Monitor Id',
'AttrMonitorName' => 'Monitor Naam',
'AttrName' => 'Name',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'Tijd',
'AttrTotalScore' => 'Totale Score',
'AttrWeekday' => 'Weekdag',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto Stop Timeout',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => 'Gem.<br/>score',
'Background' => 'Background',
'BackgroundFilter' => 'Run filter in background',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to an integer of zero or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Namen mogen alleen alpha numerieke karakters bevatten plus hyphens en underscores',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => 'Bandbreedte',
'BlobPx' => 'Blob px',
'BlobSizes' => 'Blob grootte',
'Blobs' => 'Blobs',
'Brightness' => 'Helderheid',
'Buffers' => 'Buffers',
'CanAutoFocus' => 'Can Auto Focus',
'CanAutoGain' => 'Can Auto Gain',
'CanAutoIris' => 'Can Auto Iris',
'CanAutoWhite' => 'Can Auto White Bal.',
'CanAutoZoom' => 'Can Auto Zoom',
'CanFocus' => 'Can Focus',
'CanFocusAbs' => 'Can Focus Absolute',
'CanFocusCon' => 'Can Focus Continuous',
'CanFocusRel' => 'Can Focus Relative',
'CanGain' => 'Can Gain ',
'CanGainAbs' => 'Can Gain Absolute',
'CanGainCon' => 'Can Gain Continuous',
'CanGainRel' => 'Can Gain Relative',
'CanIris' => 'Can Iris',
'CanIrisAbs' => 'Can Iris Absolute',
'CanIrisCon' => 'Can Iris Continuous',
'CanIrisRel' => 'Can Iris Relative',
'CanMove' => 'Can Move',
'CanMoveAbs' => 'Can Move Absolute',
'CanMoveCon' => 'Can Move Continuous',
'CanMoveDiag' => 'Can Move Diagonally',
'CanMoveMap' => 'Can Move Mapped',
'CanMoveRel' => 'Can Move Relative',
'CanPan' => 'Can Pan' ,
'CanReset' => 'Can Reset',
'CanSetPresets' => 'Can Set Presets',
'CanSleep' => 'Can Sleep',
'CanTilt' => 'Can Tilt',
'CanWake' => 'Can Wake',
'CanWhite' => 'Can White Balance',
'CanWhiteAbs' => 'Can White Bal. Absolute',
'CanWhiteBal' => 'Can White Bal.',
'CanWhiteCon' => 'Can White Bal. Continuous',
'CanWhiteRel' => 'Can White Bal. Relative',
'CanZoom' => 'Can Zoom',
'CanZoomAbs' => 'Can Zoom Absolute',
'CanZoomCon' => 'Can Zoom Continuous',
'CanZoomRel' => 'Can Zoom Relative',
'Cancel' => 'Cancel',
'CancelForcedAlarm' => 'Cancel geforceerd alarm',
'CaptureHeight' => 'Capture hoogte',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => 'Capture pallet',
'CaptureWidth' => 'Capture breedte',
'Cause' => 'Cause',
'CheckMethod' => 'Alarm Check Methode',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'Kies filter',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Sluit',
'Colour' => 'Kleur',
'Command' => 'Command',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Config',
'ConfiguredFor' => 'Geconfigureerd voor',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => 'Bevestig wachtwoord',
'ConjAnd' => 'en',
'ConjOr' => 'of',
'Console' => 'Console',
'ContactAdmin' => 'Neem A.U.B. contact op met je beheerder voor details.',
'Continue' => 'Continue',
'Contrast' => 'Contrast',
'Control' => 'Control',
'ControlAddress' => 'Control Address',
'ControlCap' => 'Control Capability',
'ControlCaps' => 'Control Capabilities',
'ControlDevice' => 'Control Device',
'ControlType' => 'Control Type',
'Controllable' => 'Controllable',
'Cycle' => 'Cycle',
'CycleWatch' => 'Observeer cyclus',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Dag',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Default Scale',
'DefaultView' => 'Default View',
'Delete' => 'verwijder',
'DeleteAndNext' => 'verwijder &amp; volgende',
'DeleteAndPrev' => 'verwijder &amp; vorige',
'DeleteSavedFilter' => 'verwijder opgeslagen filter',
'Description' => 'Omschrijving',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'Apparaat kanaal',
'DeviceFormat' => 'Apparaat formaat',
'DeviceNumber' => 'apparaat nummer',
'DevicePath' => 'Device Path',
'Devices' => 'Devices',
'Dimensions' => 'Afmetingen',
'DisableAlarms' => 'Disable Alarms',
'Disk' => 'Disk',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Please Donate',
'DonateAlready' => 'No, I\'ve already donated',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br><br>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br><br>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'DonateRemindDay' => 'Not yet, remind again in 1 day',
'DonateRemindHour' => 'Not yet, remind again in 1 hour',
'DonateRemindMonth' => 'Not yet, remind again in 1 month',
'DonateRemindNever' => 'No, I don\'t want to donate, never remind',
'DonateRemindWeek' => 'Not yet, remind again in 1 week',
'DonateYes' => 'Yes, I\'d like to donate now',
'Download' => 'Download',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'Duur',
'Edit' => 'Bewerk',
'Email' => 'Email',
'EnableAlarms' => 'Enable Alarms',
'Enabled' => 'Uitgeschakeld',
'EnterNewFilterName' => 'Voer nieuwe filter naam in',
'Error' => 'Error',
'ErrorBrackets' => 'Error, controleer of je even veel openings als afsluiting brackets hebt gebruikt',
'ErrorValidValue' => 'Error, Controleer of alle termen een geldige waarde hebben',
'Etc' => 'etc',
'Event' => 'Gebeurtenis',
'EventFilter' => 'Gebeurtenis filter',
'EventId' => 'Event Id',
'EventName' => 'Event Name',
'EventPrefix' => 'Event Prefix',
'Events' => 'Gebeurtenissen',
'Exclude' => 'Sluit uit',
'Execute' => 'Execute',
'Export' => 'Export',
'ExportDetails' => 'Export Event Details',
'ExportFailed' => 'Export Failed',
'ExportFormat' => 'Export File Format',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Export Frame Details',
'ExportImageFiles' => 'Export Image Files',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Export Other Files (if present)',
'ExportOptions' => 'Export Options',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Export Video Files (if present)',
'Exporting' => 'Exporting',
'FPS' => 'fps',
'FPSReportInterval' => 'FPS rapport interval',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'toevoer',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'File',
'FilterArchiveEvents' => 'Archiveer alle overeenkomsten',
'FilterDeleteEvents' => 'Verwijder alle overeenkomsten',
'FilterEmailEvents' => 'Email de details van alle overeenkomsten',
'FilterExecuteEvents' => 'Voer opdrachten op alle overeenkomsten uit',
'FilterMessageEvents' => 'Bericht de details van alle overeenkomsten',
'FilterPx' => 'Filter px',
'FilterUnset' => 'You must specify a filter width and height',
'FilterUploadEvents' => 'Upload alle overeenkomsten',
'FilterVideoEvents' => 'Create video for all matches',
'Filters' => 'Filters',
'First' => 'Eerste',
'FlippedHori' => 'Flipped Horizontally',
'FlippedVert' => 'Flipped Vertically',
'Focus' => 'Focus',
'ForceAlarm' => 'Forceeer alarm',
'Format' => 'Format',
'Frame' => 'Frame',
'FrameId' => 'Frame id',
'FrameRate' => 'Frame rate',
'FrameSkip' => 'Frame overgeslagen',
'Frames' => 'Frames',
'Func' => 'Func',
'Function' => 'Functie',
'Gain' => 'Gain',
'General' => 'General',
'GenerateVideo' => 'Genereer Video',
'GeneratingVideo' => 'Genereren Video',
'GoToZoneMinder' => 'ga naar ZoneMinder.com',
'Grey' => 'Grijs',
'Group' => 'Group',
'Groups' => 'Groups',
'HasFocusSpeed' => 'Has Focus Speed',
'HasGainSpeed' => 'Has Gain Speed',
'HasHomePreset' => 'Has Home Preset',
'HasIrisSpeed' => 'Has Iris Speed',
'HasPanSpeed' => 'Has Pan Speed',
'HasPresets' => 'Has Presets',
'HasTiltSpeed' => 'Has Tilt Speed',
'HasTurboPan' => 'Has Turbo Pan',
'HasTurboTilt' => 'Has Turbo Tilt',
'HasWhiteSpeed' => 'Has White Bal. Speed',
'HasZoomSpeed' => 'Has Zoom Speed',
'High' => 'Hoog',
'HighBW' => 'Hoog&nbsp;B/W',
'Home' => 'Home',
'Hour' => 'Uur',
'Hue' => 'Hue',
'Id' => 'Id',
'Idle' => 'Ongebruikt',
'Ignore' => 'Negeer',
'Image' => 'Image',
'ImageBufferSize' => 'Image buffer grootte (frames)',
'Images' => 'Images',
'In' => 'In',
'Include' => 'voeg in',
'Inverted' => 'omgedraaid',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => 'Taal',
'Last' => 'Laatste',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'resultaten;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'beperk tot eerste', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Linked Monitors',
'List' => 'List',
'Load' => 'Load',
'Local' => 'Lokaal',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Ingelogd als',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'In loggen',
'Login' => 'Login',
'Logout' => 'Logout',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'Laag',
'LowBW' => 'Laag&nbsp;B/W',
'Main' => 'Main',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => 'Markeer',
'Max' => 'Max',
'MaxBandwidth' => 'Max Bandwidth',
'MaxBrScore' => 'Max.<br/>score',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MaximumFPS' => 'Maximum FPS',
'Medium' => 'Medium',
'MediumBW' => 'Medium&nbsp;B/W',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'minimum blob gebied moet kleiner zijn dan maximum blob gebied',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'minimum blobs moet kleiner zijn dan maximum blobs',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => 'minimum pixel kleurdiepte moet kleiner zijn dan maximum pixel threshold',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => 'Misc',
'Monitor' => 'Monitor',
'MonitorIds' => 'Monitor&nbsp;Ids',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br><br>Please note that this may overwrite any values you already have configured for this monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'Monitoren',
'Montage' => 'Montage',
'Month' => 'Maand',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Move',
'MustBeGe' => 'Moet groter zijn of gelijk aan',
'MustBeLe' => 'Moet kleiner zijn of gelijk aan',
'MustConfirmPassword' => 'Je moet je wachtwoord bevestigen',
'MustSupplyPassword' => 'Je moet een wachtwoord geven',
'MustSupplyUsername' => 'Je moet een gebruikersnaam geven',
'Name' => 'Naam',
'Near' => 'Near',
'Network' => 'Netwerk',
'New' => 'Nieuw',
'NewGroup' => 'New Group',
'NewLabel' => 'New Label',
'NewPassword' => 'Nieuw Wachtwoord',
'NewState' => 'Nieuwe Status',
'NewUser' => 'Nieuwe gebruiker',
'Next' => 'Volgende',
'No' => 'Nee',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'Er zijn geen frames opgenomen voor deze gebeurtenis',
'NoGroup' => 'No Group',
'NoSavedFilters' => 'GeenOpgeslagenFilters',
'NoStatisticsRecorded' => 'er zijn geen statistieken opgenomen voor dit event/frame',
'None' => 'Geen',
'NoneAvailable' => 'geen beschikbaar',
'Normal' => 'Normaal',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'gelijk aan',
'OpGt' => 'groter dan',
'OpGtEq' => 'groter dan of gelijk aan',
'OpIn' => 'in set',
'OpLt' => 'kleiner dan',
'OpLtEq' => 'kleiner dan of gelijk aan',
'OpMatches' => 'Komt overeen',
'OpNe' => 'niet gelijk aan',
'OpNotIn' => 'niet in set',
'OpNotMatches' => 'Komt niet overeen',
'Open' => 'Open',
'OptionHelp' => 'OptieHelp',
'OptionRestartWarning' => 'Deze veranderingen passen niet aan\nals het systeem loopt. Als je\nKlaar bent met veranderen vergeet dan niet dat\nje ZoneMinder herstart.',
'Options' => 'Opties',
'OrEnterNewName' => 'of voer een nieuwe naam in',
'Order' => 'Order',
'Orientation' => 'Orientatie',
'Out' => 'Out',
'OverwriteExisting' => 'Overschrijf bestaande',
'Paged' => 'Paged',
'Pan' => 'Pan',
'PanLeft' => 'Pan Left',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'Parameter',
'Password' => 'Wachtwoord',
'PasswordsDifferent' => 'Het nieuwe en bevestigde wachtwoord zijn verschillend',
'Paths' => 'Paden',
'Pause' => 'Pause',
'Phone' => 'Phone',
'PhoneBW' => 'Telefoon&nbsp;B/W',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'pixels',
'Play' => 'Play',
'PlayAll' => 'Play All',
'PleaseWait' => 'wacht A.U.B.',
'Point' => 'Point',
'PostEventImageBuffer' => 'Post gebeurtenis Image Buffer',
'PreEventImageBuffer' => 'Pre gebeurtenis Image Buffer',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => 'vorige',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'Waardering',
'Real' => 'Echte',
'Record' => 'Record',
'RefImageBlendPct' => 'Referentie Image Blend %ge',
'Refresh' => 'Ververs',
'Remote' => 'Remote',
'RemoteHostName' => 'Remote Host Naam',
'RemoteHostPath' => 'Remote Host Pad',
'RemoteHostPort' => 'Remote Host Poort',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Remote Image kleuren',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => 'Hernoem',
'Replay' => 'Replay',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'Reset',
'ResetEventCounts' => 'Reset gebeurtenis teller',
'Restart' => 'herstart',
'Restarting' => 'herstarten',
'RestrictedCameraIds' => 'Verboden Camera Ids',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Return Delay',
'ReturnLocation' => 'Return Location',
'Rewind' => 'Rewind',
'RotateLeft' => 'Draai linksom',
'RotateRight' => 'Draai rechtsom',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Run Mode',
'RunState' => 'Run Status',
'Running' => 'Running',
'Save' => 'Opslaan',
'SaveAs' => 'opslaan als',
'SaveFilter' => 'opslaan Filter',
'Scale' => 'Schaal',
'Score' => 'Score',
'Secs' => 'Secs',
'Sectionlength' => 'Sectie lengte',
'Select' => 'Select',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Select Monitors',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => 'Set',
'SetNewBandwidth' => 'Zet Nieuwe Bandbreedte',
'SetPreset' => 'Set Preset',
'Settings' => 'Instellingen',
'ShowFilterWindow' => 'ToonFilterWindow',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Size',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Sleep',
'SortAsc' => 'Opl.',
'SortBy' => 'Sorteer op',
'SortDesc' => 'afl.',
'Source' => 'Bron',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'Bron Type',
'Speed' => 'Speed',
'SpeedHigh' => 'High Speed',
'SpeedLow' => 'Low Speed',
'SpeedMedium' => 'Medium Speed',
'SpeedTurbo' => 'Turbo Speed',
'Start' => 'Start',
'State' => 'Status',
'Stats' => 'Stats',
'Status' => 'Status',
'Step' => 'Step',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Large Step',
'StepMedium' => 'Medium Step',
'StepNone' => 'No Step',
'StepSmall' => 'Small Step',
'Stills' => 'Plaatjes',
'Stop' => 'Stop',
'Stopped' => 'gestopt',
'Stream' => 'Stroom',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Submit',
'System' => 'Systeem',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Tilt',
'Time' => 'Tijd',
'TimeDelta' => 'Tijd Delta',
'TimeStamp' => 'Tijdstempel',
'Timeline' => 'Timeline',
'Timestamp' => 'Tijdstempel',
'TimestampLabelFormat' => 'Tijdstempel Label Format',
'TimestampLabelX' => 'Tijdstempel Label X',
'TimestampLabelY' => 'Tijdstempel Label Y',
'Today' => 'Today',
'Tools' => 'Gereedschappen',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Totaal<br/>Score',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'Triggers',
'TurboPanSpeed' => 'Turbo Pan Speed',
'TurboTiltSpeed' => 'Turbo Tilt Speed',
'Type' => 'Type',
'Unarchive' => 'Dearchiveer',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'Eenheden',
'Unknown' => 'Onbekend',
'Update' => 'Update',
'UpdateAvailable' => 'een update voor ZoneMinder is beschikbaar',
'UpdateNotNecessary' => 'geen update noodzakelijk',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Gebruik Filter',
'UseFilterExprsPost' => '&nbsp;filter&nbsp;expressies', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Gebruik&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'Gebruiker',
'Username' => 'Gebruikersnaam',
'Users' => 'Gebruikers',
'Value' => 'Waarde',
'Version' => 'Versie',
'VersionIgnore' => 'negeer deze versie',
'VersionRemindDay' => 'herinner me na 1 dag',
'VersionRemindHour' => 'herinner me na 1 uur',
'VersionRemindNever' => 'herinner me niet aan nieuwe versies',
'VersionRemindWeek' => 'herinner me na 1 week',
'Video' => 'Video',
'VideoFormat' => 'Video Format',
'VideoGenFailed' => 'Video Generatie mislukt!',
'VideoGenFiles' => 'Existing Video Files',
'VideoGenNoFiles' => 'No Video Files Found',
'VideoGenParms' => 'Video Generatie Parameters',
'VideoGenSucceeded' => 'Video Generation Succeeded!',
'VideoSize' => 'Video grootte',
'View' => 'Bekijk',
'ViewAll' => 'Bekijk Alles',
'ViewEvent' => 'View Event',
'ViewPaged' => 'Bekijk Paged',
'Wake' => 'Wake',
'WarmupFrames' => 'Warmup Frames',
'Watch' => 'Observeer',
'Web' => 'Web',
'WebColour' => 'Web Colour',
'Week' => 'Week',
'White' => 'White',
'WhiteBalance' => 'White Balance',
'Wide' => 'Wide',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10 Activatie String',
'X10InputAlarmString' => 'X10 Input Alarm String',
'X10OutputAlarmString' => 'X10 Output Alarm String',
'Y' => 'Y',
'Yes' => 'Ja',
'YouNoPerms' => 'Je hebt niet de rechten om toegang te krijgen tot deze bronnen.',
'Zone' => 'Zone',
'ZoneAlarmColour' => 'Alarm Kleur (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'Zones',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zoom In',
'ZoomOut' => 'Zoom Out',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'huidige login is \'%1$s\'',
'EventCount' => '%1$s %2$s', // Als voorbeeld '37 gebeurtenissen' (from Vlang below)
'LastEvents' => 'Last %1$s %2$s', // Als voorbeeld 'Laatste 37 gebeurtenissen' (from Vlang below)
'LatestRelease' => 'de laatste release is v%1$s, jij hebt v%2$s.',
'MonitorCount' => '%1$s %2$s', // Als voorbeeld '4 Monitoren' (from Vlang below)
'MonitorFunction' => 'Monitor %1$s Functie',
'RunningRecentVer' => 'Je draait al met de laatste versie van ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'gebeurtenissen', 1=>'gebeurtenis', 2=>'gebeurtenissen' ),
'Monitor' => array( 0=>'Monitoren', 1=>'Monitor', 2=>'Monitoren' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,823 +0,0 @@
<?php
//
// ZoneMinder web Polish language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Polish Translation by Robert Krysztof
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
header( "Content-Type: text/html; charset=iso-8859-2" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'pl_PL' ); // All locale settings pre-4.3.0
setlocale( LC_ALL, 'pl_PL' ); // All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'pl_PL' ); // Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'pl_PL' ); // Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => 'Kolor (24 bity)',
'8BitGrey' => 'Cz/b (8 bitów)',
'Action' => 'Action',
'Actual' => 'Aktualny',
'AddNewControl' => 'Add New Control',
'AddNewMonitor' => 'Dodaj nowy monitor',
'AddNewUser' => 'Dodaj u¿ytkownika',
'AddNewZone' => 'Dodaj now± strefê',
'Alarm' => 'Alarm',
'AlarmBrFrames' => 'Ramki<br/>alarmowe',
'AlarmFrame' => 'Ramka alarmowa',
'AlarmFrameCount' => 'Alarm Frame Count',
'AlarmLimits' => 'Ograniczenia alarmu',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'Alarm Px',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => 'Gotowosc',
'All' => 'Wszystko',
'Apply' => 'Zastosuj',
'ApplyingStateChange' => 'Zmieniam stan pracy',
'ArchArchived' => 'Tylko zarchiwizowane',
'ArchUnarchived' => 'Tylko niezarchiwizowane',
'Archive' => 'Archiwum',
'Archived' => 'Archived',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'Ramki alarmowe',
'AttrArchiveStatus' => 'Status archiwum',
'AttrAvgScore' => '¦red. wynik',
'AttrCause' => 'Cause',
'AttrDate' => 'Data',
'AttrDateTime' => 'Data/Czas',
'AttrDiskBlocks' => 'Dysk Bloki',
'AttrDiskPercent' => 'Dysk Procent',
'AttrDuration' => 'Czas trwania',
'AttrFrames' => 'Ramek',
'AttrId' => 'Id',
'AttrMaxScore' => 'Maks. wynik',
'AttrMonitorId' => 'Nr monitora',
'AttrMonitorName' => 'Nazwa monitora',
'AttrName' => 'Nazwa',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'Czas',
'AttrTotalScore' => 'Ca³kowity wynik',
'AttrWeekday' => 'Dzieñ roboczy',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto Stop Timeout',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => '¦red.<br/>wynik',
'Background' => 'Background',
'BackgroundFilter' => 'Run filter in background',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to an integer of zero or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Nazwy mog± zawieraæ tylko litery, cyfry oraz my¶lnik i podkre¶lenie',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => 'przepustowo¶æ',
'BlobPx' => 'Plamka Px',
'BlobSizes' => 'Rozmiary plamek',
'Blobs' => 'Plamki',
'Brightness' => 'Jaskrawo¶æ',
'Buffers' => 'Bufory',
'CanAutoFocus' => 'Can Auto Focus',
'CanAutoGain' => 'Can Auto Gain',
'CanAutoIris' => 'Can Auto Iris',
'CanAutoWhite' => 'Can Auto White Bal.',
'CanAutoZoom' => 'Can Auto Zoom',
'CanFocus' => 'Can Focus',
'CanFocusAbs' => 'Can Focus Absolute',
'CanFocusCon' => 'Can Focus Continuous',
'CanFocusRel' => 'Can Focus Relative',
'CanGain' => 'Can Gain ',
'CanGainAbs' => 'Can Gain Absolute',
'CanGainCon' => 'Can Gain Continuous',
'CanGainRel' => 'Can Gain Relative',
'CanIris' => 'Can Iris',
'CanIrisAbs' => 'Can Iris Absolute',
'CanIrisCon' => 'Can Iris Continuous',
'CanIrisRel' => 'Can Iris Relative',
'CanMove' => 'Can Move',
'CanMoveAbs' => 'Can Move Absolute',
'CanMoveCon' => 'Can Move Continuous',
'CanMoveDiag' => 'Can Move Diagonally',
'CanMoveMap' => 'Can Move Mapped',
'CanMoveRel' => 'Can Move Relative',
'CanPan' => 'Can Pan' ,
'CanReset' => 'Can Reset',
'CanSetPresets' => 'Can Set Presets',
'CanSleep' => 'Can Sleep',
'CanTilt' => 'Can Tilt',
'CanWake' => 'Can Wake',
'CanWhite' => 'Can White Balance',
'CanWhiteAbs' => 'Can White Bal. Absolute',
'CanWhiteBal' => 'Can White Bal.',
'CanWhiteCon' => 'Can White Bal. Continuous',
'CanWhiteRel' => 'Can White Bal. Relative',
'CanZoom' => 'Can Zoom',
'CanZoomAbs' => 'Can Zoom Absolute',
'CanZoomCon' => 'Can Zoom Continuous',
'CanZoomRel' => 'Can Zoom Relative',
'Cancel' => 'Anuluj',
'CancelForcedAlarm' => 'Anuluj wymuszony alarm',
'CaptureHeight' => 'Wysoko¶æ obrazu',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => 'Paleta kolorów obrazu',
'CaptureWidth' => 'Szeroko¶æ obrazu',
'Cause' => 'Cause',
'CheckMethod' => 'Metoda sprawdzenia alarmu',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'Wybierz filtr',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Zamknij',
'Colour' => 'Nasycenie',
'Command' => 'Command',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Konfiguracja',
'ConfiguredFor' => 'Ustawiona',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => 'Potwierd¼ has³o',
'ConjAnd' => 'i',
'ConjOr' => 'lub',
'Console' => 'Konsola',
'ContactAdmin' => 'Skontaktuj siê z Twoim adminstratorem w sprawie szczegó³ów.',
'Continue' => 'Continue',
'Contrast' => 'Kontrast',
'Control' => 'Control',
'ControlAddress' => 'Control Address',
'ControlCap' => 'Control Capability',
'ControlCaps' => 'Control Capabilities',
'ControlDevice' => 'Control Device',
'ControlType' => 'Control Type',
'Controllable' => 'Controllable',
'Cycle' => 'Cycle',
'CycleWatch' => 'Cykl podgl±du',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Dzieñ',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Default Scale',
'DefaultView' => 'Default View',
'Delete' => 'Usuñ',
'DeleteAndNext' => 'Usuñ &amp; nastêpny',
'DeleteAndPrev' => 'Usuñ &amp; poprzedni',
'DeleteSavedFilter' => 'Usuñ zapisany filtr',
'Description' => 'Opis',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'Numer wej¶cia w urz±dzeniu',
'DeviceFormat' => 'System TV',
'DeviceNumber' => 'Numer urz±dzenia',
'DevicePath' => 'Device Path',
'Devices' => 'Devices',
'Dimensions' => 'Rozmiary',
'DisableAlarms' => 'Disable Alarms',
'Disk' => 'Dysk',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Please Donate',
'DonateAlready' => 'No, I\'ve already donated',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br><br>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br><br>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'DonateRemindDay' => 'Not yet, remind again in 1 day',
'DonateRemindHour' => 'Not yet, remind again in 1 hour',
'DonateRemindMonth' => 'Not yet, remind again in 1 month',
'DonateRemindNever' => 'No, I don\'t want to donate, never remind',
'DonateRemindWeek' => 'Not yet, remind again in 1 week',
'DonateYes' => 'Yes, I\'d like to donate now',
'Download' => 'Download',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'Czas trwania',
'Edit' => 'Edycja',
'Email' => 'Email',
'EnableAlarms' => 'Enable Alarms',
'Enabled' => 'Zezwolono',
'EnterNewFilterName' => 'Wpisz now± nazwê filtra',
'Error' => 'B³±d',
'ErrorBrackets' => 'B³±d, proszê sprawdziæ ilo¶æ nawiasów otwieraj±cych i zamykaj±cych',
'ErrorValidValue' => 'B³±d, proszê sprawdziæ czy wszystkie warunki maj± poprawne warto¶ci',
'Etc' => 'itp',
'Event' => 'Zdarzenie',
'EventFilter' => 'Filtr zdarzeñ',
'EventId' => 'Id zdarzenia',
'EventName' => 'Event Name',
'EventPrefix' => 'Event Prefix',
'Events' => 'Zdarzenia',
'Exclude' => 'Wyklucz',
'Execute' => 'Execute',
'Export' => 'Export',
'ExportDetails' => 'Export Event Details',
'ExportFailed' => 'Export Failed',
'ExportFormat' => 'Export File Format',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Export Frame Details',
'ExportImageFiles' => 'Export Image Files',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Export Other Files (if present)',
'ExportOptions' => 'Export Options',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Export Video Files (if present)',
'Exporting' => 'Exporting',
'FPS' => 'fps',
'FPSReportInterval' => 'Raport (ramek/s)',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'Dostarcz',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'File',
'FilterArchiveEvents' => 'Archiwizuj wszystkie pasuj±ce',
'FilterDeleteEvents' => 'Usuwaj wszystkie pasuj±ce',
'FilterEmailEvents' => 'Wysy³aj poczt± wszystkie pasuj±ce',
'FilterExecuteEvents' => 'Wywo³uj komendê na wszystkie pasuj±ce',
'FilterMessageEvents' => 'Wy¶wietlaj komunikat na wszystkie pasuj±ce',
'FilterPx' => 'Filtr Px',
'FilterUnset' => 'You must specify a filter width and height',
'FilterUploadEvents' => 'Wysy³aj wszystkie pasuj±ce',
'FilterVideoEvents' => 'Create video for all matches',
'Filters' => 'Filters',
'First' => 'Pierwszy',
'FlippedHori' => 'Flipped Horizontally',
'FlippedVert' => 'Flipped Vertically',
'Focus' => 'Focus',
'ForceAlarm' => 'Wymu¶ alarm',
'Format' => 'Format',
'Frame' => 'Ramka',
'FrameId' => 'Nr ramki',
'FrameRate' => 'Tempo ramek',
'FrameSkip' => 'Pomiñ ramkê',
'Frames' => 'Ramek',
'Func' => 'Funkcja',
'Function' => 'Funkcja',
'Gain' => 'Gain',
'General' => 'General',
'GenerateVideo' => 'Generowanie Video',
'GeneratingVideo' => 'Generujê Video',
'GoToZoneMinder' => 'Przejd¼ na ZoneMinder.com',
'Grey' => 'Cz/b',
'Group' => 'Group',
'Groups' => 'Groups',
'HasFocusSpeed' => 'Has Focus Speed',
'HasGainSpeed' => 'Has Gain Speed',
'HasHomePreset' => 'Has Home Preset',
'HasIrisSpeed' => 'Has Iris Speed',
'HasPanSpeed' => 'Has Pan Speed',
'HasPresets' => 'Has Presets',
'HasTiltSpeed' => 'Has Tilt Speed',
'HasTurboPan' => 'Has Turbo Pan',
'HasTurboTilt' => 'Has Turbo Tilt',
'HasWhiteSpeed' => 'Has White Bal. Speed',
'HasZoomSpeed' => 'Has Zoom Speed',
'High' => 'wysoka',
'HighBW' => 'Wys.&nbsp;prz.',
'Home' => 'Home',
'Hour' => 'Godzina',
'Hue' => 'Odcieñ',
'Id' => 'Nr',
'Idle' => 'Bezczynny',
'Ignore' => 'Ignoruj',
'Image' => 'Obraz',
'ImageBufferSize' => 'Rozmiar bufora obrazu (ramek)',
'Images' => 'Images',
'In' => 'In',
'Include' => 'Do³±cz',
'Inverted' => 'Odwrócony',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => 'Jêzyk',
'Last' => 'Ostatni',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'wyników;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Ogranicz do pocz±tkowych', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Linked Monitors',
'List' => 'List',
'Load' => 'Obc.',
'Local' => 'Lokalny',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Zalogowany jako',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'Logowanie',
'Login' => 'Login',
'Logout' => 'Wyloguj',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'niska',
'LowBW' => 'Nis.&nbsp;prz.',
'Main' => 'Main',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => 'Znacznik',
'Max' => 'Maks.',
'MaxBandwidth' => 'Max Bandwidth',
'MaxBrScore' => 'Maks.<br/>wynik',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MaximumFPS' => 'Maks. FPS',
'Medium' => '¶rednia',
'MediumBW' => '¦red.&nbsp;prz.',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'Minimalny obszar plamki powinien byæ mniejszy od maksymalnego obszaru plamki',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'Najmniejsze plamki powinny byæ mniejsze od najwiêkszych plamek' ,
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => 'Najmniejsze progi pikseli powinny byæ mniejsze od najwiêkszych progów pikseli',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => 'Inne',
'Monitor' => 'Monitor',
'MonitorIds' => 'Numery&nbsp;monitorów',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br><br>Please note that this may overwrite any values you already have configured for this monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'Monitory',
'Montage' => 'Monta¿',
'Month' => 'Miesi±c',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Move',
'MustBeGe' => 'musi byæ wiêksze lub równe od',
'MustBeLe' => 'musi byæ mniejsze lub równe od',
'MustConfirmPassword' => 'Musisz potwierdziæ has³o',
'MustSupplyPassword' => 'Musisz podaæ has³o',
'MustSupplyUsername' => 'Musisz podaæ nazwê u¿ytkownika',
'Name' => 'Nazwa',
'Near' => 'Near',
'Network' => 'Sieæ',
'New' => 'Nowy',
'NewGroup' => 'New Group',
'NewLabel' => 'New Label',
'NewPassword' => 'Nowe has³o',
'NewState' => 'Nowy stan',
'NewUser' => 'nowy',
'Next' => 'Nastêpny',
'No' => 'Nie',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'Brak zapisanych ramek dla tego zdarzenia',
'NoGroup' => 'No Group',
'NoSavedFilters' => 'BrakZapisanychFiltrów',
'NoStatisticsRecorded' => 'Brak zapisanych statystyk dla tego zdarzenia/ramki',
'None' => 'Brak',
'NoneAvailable' => 'Niedostêpne',
'Normal' => 'Normalny',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'równy',
'OpGt' => 'wiêksze od',
'OpGtEq' => 'wiêksze lub równe od',
'OpIn' => 'w zestawie',
'OpLt' => 'mniejsze od',
'OpLtEq' => 'mniejsze lub równe od',
'OpMatches' => 'pasuj±ce',
'OpNe' => 'ró¿ne od',
'OpNotIn' => 'brak w zestawie',
'OpNotMatches' => 'nie pasuj±ce',
'Open' => 'Open',
'OptionHelp' => 'OpcjePomoc',
'OptionRestartWarning' => 'Te zmiany nie przynios± natychmiastowego efektu\ndopóki system pracuje. Kiedy zakoñczysz robiæ zmiany\nproszê koniecznie zrestartowaæ ZoneMinder.',
'Options' => 'Opcje',
'OrEnterNewName' => 'lub wpisz now± nazwê',
'Order' => 'Order',
'Orientation' => 'Orientacja',
'Out' => 'Out',
'OverwriteExisting' => 'Nadpisz istniej±ce',
'Paged' => 'Stronicowane',
'Pan' => 'Pan',
'PanLeft' => 'Pan Left',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'Parametr',
'Password' => 'Has³o',
'PasswordsDifferent' => 'Has³a: nowe i potwierdzone s± ró¿ne!',
'Paths' => '¦cie¿ki',
'Pause' => 'Pause',
'Phone' => 'Phone',
'PhoneBW' => 'Tel.&nbsp;prz.',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'pikseli',
'Play' => 'Play',
'PlayAll' => 'Play All',
'PleaseWait' => 'Proszê czekaæ',
'Point' => 'Point',
'PostEventImageBuffer' => 'Bufor obrazów po zdarzeniu',
'PreEventImageBuffer' => 'Bufor obrazów przed zdarzeniem',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => 'Poprzedni',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'Tempo',
'Real' => 'Rzeczywiste',
'Record' => 'Zapis',
'RefImageBlendPct' => 'Miks z obrazem odniesienia',
'Refresh' => 'Od¶wie¿',
'Remote' => 'Zdalny',
'RemoteHostName' => 'Nazwa zdalnego hosta',
'RemoteHostPath' => 'Scie¿ka zdalnego hosta',
'RemoteHostPort' => 'Port zdalnego hosta',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Kolory zdalnego obrazu',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => 'Zmieñ nazwê',
'Replay' => 'Replay',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'Reset',
'ResetEventCounts' => 'Kasuj licznik zdarzeñ',
'Restart' => 'Restart',
'Restarting' => 'Restartujê',
'RestrictedCameraIds' => 'Numery kamer',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Return Delay',
'ReturnLocation' => 'Return Location',
'Rewind' => 'Rewind',
'RotateLeft' => 'Obróæ w lewo',
'RotateRight' => 'Obróæ w prawo',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Tryb pracy',
'RunState' => 'Stan pracy',
'Running' => 'Pracuje',
'Save' => 'Zapisz',
'SaveAs' => 'Zapisz jako',
'SaveFilter' => 'Zapisz filtr',
'Scale' => 'Skala',
'Score' => 'Wynik',
'Secs' => 'Sekund',
'Sectionlength' => 'D³ugo¶æ sekcji',
'Select' => 'Select',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Select Monitors',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => 'Set',
'SetNewBandwidth' => 'Ustaw now± przepustowo¶æ',
'SetPreset' => 'Set Preset',
'Settings' => 'Ustawienia',
'ShowFilterWindow' => 'Poka¿OknoFiltru',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Size',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Sleep',
'SortAsc' => 'Nara.',
'SortBy' => 'Sortuj',
'SortDesc' => 'Opad.',
'Source' => '¬ród³o',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'Typ ¼ród³a',
'Speed' => 'Speed',
'SpeedHigh' => 'High Speed',
'SpeedLow' => 'Low Speed',
'SpeedMedium' => 'Medium Speed',
'SpeedTurbo' => 'Turbo Speed',
'Start' => 'Start',
'State' => 'Stan',
'Stats' => 'Statystyki',
'Status' => 'Status',
'Step' => 'Step',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Large Step',
'StepMedium' => 'Medium Step',
'StepNone' => 'No Step',
'StepSmall' => 'Small Step',
'Stills' => 'Nieruchome',
'Stop' => 'Stop',
'Stopped' => 'Zatrzymany',
'Stream' => 'Ruchomy',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Submit',
'System' => 'System',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Tilt',
'Time' => 'Czas',
'TimeDelta' => 'Ró¿nica czasu',
'TimeStamp' => 'Pieczêæ czasu',
'Timeline' => 'Timeline',
'Timestamp' => 'Czas',
'TimestampLabelFormat' => 'Format etykiety czasu',
'TimestampLabelX' => 'Wsp. X etykiety czasu',
'TimestampLabelY' => 'Wsp. Y etykiety czasu',
'Today' => 'Today',
'Tools' => 'Narzêdzia',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Ca³kowity<br/>wynik',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'Wyzwalacze',
'TurboPanSpeed' => 'Turbo Pan Speed',
'TurboTiltSpeed' => 'Turbo Tilt Speed',
'Type' => 'Typ',
'Unarchive' => 'Nie archiwizuj',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'Jednostki',
'Unknown' => 'Nieznany',
'Update' => 'Update',
'UpdateAvailable' => 'Jest dostêpne uaktualnienie ZoneMinder ',
'UpdateNotNecessary' => 'Nie jest wymagane uaktualnienie',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'U¿yj filtru',
'UseFilterExprsPost' => '&nbsp;wyra¿enie&nbsp;filtru', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'U¿yj&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'U¿ytkownik',
'Username' => 'Nazwa u¿ytkownika',
'Users' => 'U¿ytkownicy',
'Value' => 'Warto¶æ',
'Version' => 'Wersja',
'VersionIgnore' => 'Zignoruj t± wersjê',
'VersionRemindDay' => 'Przypomnij po 1 dniu',
'VersionRemindHour' => 'Przypomnij po 1 godzinie',
'VersionRemindNever' => 'Nie przypominaj o nowych wersjach',
'VersionRemindWeek' => 'Przypomnij po 1 tygodniu',
'Video' => 'Video',
'VideoFormat' => 'Video Format',
'VideoGenFailed' => 'Generowanie filmu Video nie powiod³o siê!',
'VideoGenFiles' => 'Existing Video Files',
'VideoGenNoFiles' => 'No Video Files Found',
'VideoGenParms' => 'Parametery generowania filmu Video',
'VideoGenSucceeded' => 'Video Generation Succeeded!',
'VideoSize' => 'Rozmiar filmu Video',
'View' => 'Podgl±d',
'ViewAll' => 'Poka¿ wszystko',
'ViewEvent' => 'View Event',
'ViewPaged' => 'Poka¿ stronami',
'Wake' => 'Wake',
'WarmupFrames' => 'Ignorowane ramki',
'Watch' => 'podgl±d',
'Web' => 'Web',
'WebColour' => 'Web Colour',
'Week' => 'Tydzieñ',
'White' => 'White',
'WhiteBalance' => 'White Balance',
'Wide' => 'Wide',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10: ³añcuch aktywuj±cy',
'X10InputAlarmString' => 'X10: ³añcuch wej¶cia alarmu',
'X10OutputAlarmString' => 'X10: ³añcuch wyj¶cia alarmu',
'Y' => 'Y',
'Yes' => 'Tak',
'YouNoPerms' => 'Nie masz uprawnieñ na dostêp do tego zasobu.',
'Zone' => 'Strefa',
'ZoneAlarmColour' => 'Kolor alarmu (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'Strefy',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zoom In',
'ZoomOut' => 'Zoom Out',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Aktualny login \'%1$s\'',
'EventCount' => '%1$s %2$s',
'LastEvents' => 'Ostatnie %1$s %2$s',
'LatestRelease' => 'Najnowsza wersja to v%1$s, Ty posiadasz v%2$s.',
'MonitorCount' => '%1$s %2$s',
'MonitorFunction' => 'Monitor %1$s Funkcja',
'RunningRecentVer' => 'Uruchomi³e¶ najnowsz± wersjê ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Zdarzeñ', 1=>'Zdarzenie', 2=>'Zdarzenia'),
'Monitor' => array( 0=>'Monitorów', 1=>'Monitor', 2=>'Monitory'),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
// This is an version that could be used in the Polish language
//
function zmVlang( $langVarArray, $count )
{
$secondlastdigit = substr( $count, -2, 1 );
$lastdigit = substr( $count, -1, 1 );
if ( $count == 1 )
{
return( $langVarArray[1] );
}
if (($secondlastdigit == 0)|( $secondlastdigit == 1))
{
return( $langVarArray[0] );
}
if ( $secondlastdigit >= 2)
{
switch ( $lastdigit )
{
case 0 :
case 1 :
case 5 :
case 6 :
case 7 :
case 8 :
case 9 :
{
return( $langVarArray[0] );
break;
}
case 2 :
case 3 :
case 4 :
{
return( $langVarArray[2] );
break;
}
}
}
die( 'B£¡D! zmVlang nie mo¿e skorelowac ³añcucha!' );
}
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
// $monitors = 12; // Choose any number
// echo $monitors." ";
// echo zmVlang( $zmVlangMonitor, $monitors);
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,784 +0,0 @@
<?php
// ZoneMinder Brazilian Portuguese Traduction By Victor Diago
//
// Feel Free to contact Me at illuminati@linuxmail.org
//
// Tradução Para Português do Brasil do Zoneminder
//
// Sinta-se Livre para me contactar em illuminati@linuxmail.org
// Simple String Replacements
$SLANG = array(
'24BitColour' => 'cor 24 bits',
'8BitGrey' => 'cinza 8 bits',
'Action' => 'Action',
'Actual' => 'Atual',
'AddNewControl' => 'Add New Control',
'AddNewMonitor' => 'Adicionar Monitor',
'AddNewUser' => 'Adicionar Usuário',
'AddNewZone' => 'Adicionar Zona',
'Alarm' => 'Alarme',
'AlarmBrFrames' => 'Imagens<br/>Alarmadas',
'AlarmFrame' => 'Imagem Alarmada',
'AlarmFrameCount' => 'Alarm Frame Count',
'AlarmLimits' => 'Limites de Alarme',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'Pixel de Alarme',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => 'Alerta',
'All' => 'Tudo',
'Apply' => 'Aplicar',
'ApplyingStateChange' => 'Aplicando mudança de estado',
'ArchArchived' => 'Somente Arquivados',
'ArchUnarchived' => 'Somente Nao Arquivados',
'Archive' => 'Arquivar',
'Archived' => 'Archived',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'Imagens Alarmadas',
'AttrArchiveStatus' => 'Status/Arquivamento',
'AttrAvgScore' => 'Maior Score',
'AttrCause' => 'Cause',
'AttrDate' => 'Data',
'AttrDateTime' => 'Data/Horario',
'AttrDiskBlocks' => 'Blocos de Disco',
'AttrDiskPercent' => 'Porcentagem de Disco',
'AttrDuration' => 'Duração',
'AttrFrames' => 'Imagens',
'AttrId' => 'Id',
'AttrMaxScore' => 'Max. Score',
'AttrMonitorId' => 'Id do Monitor',
'AttrMonitorName' => 'Nome do Monitor',
'AttrName' => 'Nome',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => 'Horário',
'AttrTotalScore' => 'Score Total',
'AttrWeekday' => 'Dia/Semana',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto Stop Timeout',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => 'Maior<br/>Score',
'Background' => 'Background',
'BackgroundFilter' => 'Run filter in background',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to an integer of zero or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Nomes devem ser caracteres alfanuméricos mais hífen e underscore',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => 'Larg/Banda',
'BlobPx' => 'Px Blob',
'BlobSizes' => 'Tam Blob',
'Blobs' => 'Blobs',
'Brightness' => 'Brilho',
'Buffers' => 'Buffers',
'CanAutoFocus' => 'Can Auto Focus',
'CanAutoGain' => 'Can Auto Gain',
'CanAutoIris' => 'Can Auto Iris',
'CanAutoWhite' => 'Can Auto White Bal.',
'CanAutoZoom' => 'Can Auto Zoom',
'CanFocus' => 'Can Focus',
'CanFocusAbs' => 'Can Focus Absolute',
'CanFocusCon' => 'Can Focus Continuous',
'CanFocusRel' => 'Can Focus Relative',
'CanGain' => 'Can Gain ',
'CanGainAbs' => 'Can Gain Absolute',
'CanGainCon' => 'Can Gain Continuous',
'CanGainRel' => 'Can Gain Relative',
'CanIris' => 'Can Iris',
'CanIrisAbs' => 'Can Iris Absolute',
'CanIrisCon' => 'Can Iris Continuous',
'CanIrisRel' => 'Can Iris Relative',
'CanMove' => 'Can Move',
'CanMoveAbs' => 'Can Move Absolute',
'CanMoveCon' => 'Can Move Continuous',
'CanMoveDiag' => 'Can Move Diagonally',
'CanMoveMap' => 'Can Move Mapped',
'CanMoveRel' => 'Can Move Relative',
'CanPan' => 'Can Pan' ,
'CanReset' => 'Can Reset',
'CanSetPresets' => 'Can Set Presets',
'CanSleep' => 'Can Sleep',
'CanTilt' => 'Can Tilt',
'CanWake' => 'Can Wake',
'CanWhite' => 'Can White Balance',
'CanWhiteAbs' => 'Can White Bal. Absolute',
'CanWhiteBal' => 'Can White Bal.',
'CanWhiteCon' => 'Can White Bal. Continuous',
'CanWhiteRel' => 'Can White Bal. Relative',
'CanZoom' => 'Can Zoom',
'CanZoomAbs' => 'Can Zoom Absolute',
'CanZoomCon' => 'Can Zoom Continuous',
'CanZoomRel' => 'Can Zoom Relative',
'Cancel' => 'Cancelar',
'CancelForcedAlarm' => 'Cancelar Alarme Forçado',
'CaptureHeight' => 'Altura da Captura',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => 'Paleta de Captura',
'CaptureWidth' => 'Largura de Captura',
'Cause' => 'Cause',
'CheckMethod' => 'Metodo marcar por alarme',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'Escolher Filtro',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Fechar',
'Colour' => 'Cor',
'Command' => 'Command',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Config',
'ConfiguredFor' => 'Configurado para',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => 'Confirmar Senha',
'ConjAnd' => 'E',
'ConjOr' => 'OU',
'Console' => 'Console',
'ContactAdmin' => 'Por favor contate o administrador para detalhes.',
'Continue' => 'Continue',
'Contrast' => 'Contraste',
'Control' => 'Control',
'ControlAddress' => 'Control Address',
'ControlCap' => 'Control Capability',
'ControlCaps' => 'Control Capabilities',
'ControlDevice' => 'Control Device',
'ControlType' => 'Control Type',
'Controllable' => 'Controllable',
'Cycle' => 'Cycle',
'CycleWatch' => 'Ciclo Monitor',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Dia',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Default Scale',
'DefaultView' => 'Default View',
'Delete' => 'Deletar',
'DeleteAndNext' => 'Deletar &amp; Próx',
'DeleteAndPrev' => 'Deletar &amp; Ant',
'DeleteSavedFilter' => 'Deletar Filtros Salvos',
'Description' => 'Descrição',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'Canal do Dispositivo',
'DeviceFormat' => 'Formato do Dispos.',
'DeviceNumber' => 'Num. do Dispos.',
'DevicePath' => 'Device Path',
'Devices' => 'Devices',
'Dimensions' => 'Dimensões',
'DisableAlarms' => 'Disable Alarms',
'Disk' => 'Disco',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Please Donate',
'DonateAlready' => 'No, I\'ve already donated',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br><br>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br><br>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'DonateRemindDay' => 'Not yet, remind again in 1 day',
'DonateRemindHour' => 'Not yet, remind again in 1 hour',
'DonateRemindMonth' => 'Not yet, remind again in 1 month',
'DonateRemindNever' => 'No, I don\'t want to donate, never remind',
'DonateRemindWeek' => 'Not yet, remind again in 1 week',
'DonateYes' => 'Yes, I\'d like to donate now',
'Download' => 'Download',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'Duração',
'Edit' => 'Editar',
'Email' => 'Email',
'EnableAlarms' => 'Enable Alarms',
'Enabled' => 'Habilitado',
'EnterNewFilterName' => 'Digite nome do novo filtro',
'Error' => 'Erro',
'ErrorBrackets' => 'Por favor cheque se você tem o mesmo numero de chaves abertas e fechadas',
'ErrorValidValue' => 'Erro, por favor cheque se os campos estão corretos',
'Etc' => 'etc',
'Event' => 'Evento',
'EventFilter' => 'Filtro de Evento',
'EventId' => 'Id do Evento',
'EventName' => 'Event Name',
'EventPrefix' => 'Event Prefix',
'Events' => 'Eventos',
'Exclude' => 'Excluir',
'Execute' => 'Execute',
'Export' => 'Export',
'ExportDetails' => 'Export Event Details',
'ExportFailed' => 'Export Failed',
'ExportFormat' => 'Export File Format',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Export Frame Details',
'ExportImageFiles' => 'Export Image Files',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Export Other Files (if present)',
'ExportOptions' => 'Export Options',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Export Video Files (if present)',
'Exporting' => 'Exporting',
'FPS' => 'fps',
'FPSReportInterval' => 'Intervalo de mostragem FPS',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'Alimentar',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'File',
'FilterArchiveEvents' => 'Arquivar resultados',
'FilterDeleteEvents' => 'Apagar resultados',
'FilterEmailEvents' => 'Enviar e-mail com detalhes dos resultados',
'FilterExecuteEvents' => 'Executar comando p/ resultados',
'FilterMessageEvents' => 'Enviar Mensagem dos resultados',
'FilterPx' => 'Px de Filtro',
'FilterUnset' => 'You must specify a filter width and height',
'FilterUploadEvents' => 'Fazer upload dos resultados',
'FilterVideoEvents' => 'Create video for all matches',
'Filters' => 'Filters',
'First' => 'Primeiro',
'FlippedHori' => 'Flipped Horizontally',
'FlippedVert' => 'Flipped Vertically',
'Focus' => 'Focus',
'ForceAlarm' => 'Forçar Alarme',
'Format' => 'Format',
'Frame' => 'Imagem',
'FrameId' => 'Id de Imagem',
'FrameRate' => 'Velocidade de Imagem',
'FrameSkip' => 'Salto de Imagem',
'Frames' => 'Imagens',
'Func' => 'Func',
'Function' => 'Função',
'Gain' => 'Gain',
'General' => 'General',
'GenerateVideo' => 'Gerar Video',
'GeneratingVideo' => 'Gerando Video',
'GoToZoneMinder' => 'Ir Para ZoneMinder.com',
'Grey' => 'Cinza',
'Group' => 'Group',
'Groups' => 'Groups',
'HasFocusSpeed' => 'Has Focus Speed',
'HasGainSpeed' => 'Has Gain Speed',
'HasHomePreset' => 'Has Home Preset',
'HasIrisSpeed' => 'Has Iris Speed',
'HasPanSpeed' => 'Has Pan Speed',
'HasPresets' => 'Has Presets',
'HasTiltSpeed' => 'Has Tilt Speed',
'HasTurboPan' => 'Has Turbo Pan',
'HasTurboTilt' => 'Has Turbo Tilt',
'HasWhiteSpeed' => 'Has White Bal. Speed',
'HasZoomSpeed' => 'Has Zoom Speed',
'High' => 'Alto',
'HighBW' => 'Alta&nbsp;L/B',
'Home' => 'Home',
'Hour' => 'Hora',
'Hue' => 'Saturação',
'Id' => 'Id',
'Idle' => 'Parado',
'Ignore' => 'Ignorar',
'Image' => 'Imagem',
'ImageBufferSize' => 'Tamanho de Buffer (imagens)',
'Images' => 'Images',
'In' => 'In',
'Include' => 'Incluir',
'Inverted' => 'Invertido',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => 'Linguagem',
'Last' => 'Último',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'resultados somente;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Limitar aos primeiros', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Linked Monitors',
'List' => 'List',
'Load' => 'Carga',
'Local' => 'Local',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Conectado como',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'Conectando',
'Login' => 'Conectar',
'Logout' => 'Sair',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'Baixa',
'LowBW' => 'Baixa&nbsp;L/B',
'Main' => 'Main',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => 'Marcar',
'Max' => 'Maximo',
'MaxBandwidth' => 'Max Bandwidth',
'MaxBrScore' => 'Max.<br/>Score',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MaximumFPS' => 'Maximo FPS',
'Medium' => 'Media',
'MediumBW' => 'Media&nbsp;L/B',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'A area minima de blob deve ser menor do que a area máxima de blob',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'O minimo de Blobs deve ser menor que o maximo de blobs',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => 'Minimum pixel threshold should be less than maximum',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => 'Misc',
'Monitor' => 'Monitor',
'MonitorIds' => 'Ids&nbsp;de Monitor',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br><br>Please note that this may overwrite any values you already have configured for this monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'Monitores',
'Montage' => 'Montagem',
'Month' => 'Mês',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Move',
'MustBeGe' => 'deve ser maior ou igual a',
'MustBeLe' => 'deve ser menor ou igual a',
'MustConfirmPassword' => 'Voce deve Confirmar a senha',
'MustSupplyPassword' => 'Voce deve informar a senha',
'MustSupplyUsername' => 'Voce deve informar nome de usuário',
'Name' => 'Nome',
'Near' => 'Near',
'Network' => 'Rede',
'New' => 'Novo',
'NewGroup' => 'New Group',
'NewLabel' => 'New Label',
'NewPassword' => 'Nova Senha',
'NewState' => 'Novo Estado',
'NewUser' => 'Novo Usuário',
'Next' => 'Próx',
'No' => 'Não',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'Não há imagens gravadas neste evento',
'NoGroup' => 'No Group',
'NoSavedFilters' => 'SemFiltrosSalvos',
'NoStatisticsRecorded' => 'Não há estatísticas gravadas neste evento/imagem',
'None' => 'Nada',
'NoneAvailable' => 'Nada disponível',
'Normal' => 'Normal',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'igual a',
'OpGt' => 'maior que',
'OpGtEq' => 'maior que ou igual a',
'OpIn' => 'no set',
'OpLt' => 'menor que',
'OpLtEq' => 'menor que ou igual a',
'OpMatches' => 'combina',
'OpNe' => 'diferente de',
'OpNotIn' => 'não no set',
'OpNotMatches' => 'não combina',
'Open' => 'Open',
'OptionHelp' => 'OpçãoAjuda',
'OptionRestartWarning' => 'Reinicie o Zoneminder para que as mudanças tenham efeito',
'Options' => 'Opções',
'OrEnterNewName' => 'ou defina novo nome',
'Order' => 'Order',
'Orientation' => 'Orientação',
'Out' => 'Out',
'OverwriteExisting' => 'Sobrescrever Existente',
'Paged' => 'Paginado',
'Pan' => 'Pan',
'PanLeft' => 'Pan Left',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'Parametro',
'Password' => 'Senha',
'PasswordsDifferent' => 'A nova senha e a de confirmação são diferentes',
'Paths' => 'Caminhos',
'Pause' => 'Pause',
'Phone' => 'Phone',
'PhoneBW' => 'Discada&nbsp;L/B',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => 'pixels',
'Play' => 'Play',
'PlayAll' => 'Play All',
'PleaseWait' => 'Por Favor Espere',
'Point' => 'Point',
'PostEventImageBuffer' => 'Buffer de imagem pós evento',
'PreEventImageBuffer' => 'Buffer de imagem pré evento',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => 'Ant.',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'Vel.',
'Real' => 'Real',
'Record' => 'Gravar',
'RefImageBlendPct' => 'Referência de imagem Blend %ge',
'Refresh' => 'Atualizar',
'Remote' => 'Remoto',
'RemoteHostName' => 'Nome do host remoto',
'RemoteHostPath' => 'Caminho do host remoto',
'RemoteHostPort' => 'Porta do host remoto',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Cores de imagem remota',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => 'Renomear',
'Replay' => 'Ver Novamente',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'Reset',
'ResetEventCounts' => 'Resetar contagem de eventos',
'Restart' => 'Reiniciar',
'Restarting' => 'Reiniciando',
'RestrictedCameraIds' => 'Ids de camera proibídos',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Return Delay',
'ReturnLocation' => 'Return Location',
'Rewind' => 'Rewind',
'RotateLeft' => 'Rotacionar à esquerda ',
'RotateRight' => 'Rotacionar à direita',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Modo de Execução',
'RunState' => 'Estado de Execução',
'Running' => 'Rodando',
'Save' => 'Salvar',
'SaveAs' => 'Salvar Como',
'SaveFilter' => 'Salvar Filtro',
'Scale' => 'Tamanho',
'Score' => 'Score',
'Secs' => 'Segs',
'Sectionlength' => 'Tamanho de evento Fixo',
'Select' => 'Select',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Select Monitors',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => 'Set',
'SetNewBandwidth' => 'Defina Nova L/B',
'SetPreset' => 'Set Preset',
'Settings' => 'Configurações',
'ShowFilterWindow' => 'MostrarJanelaDeFiltros',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Size',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Sleep',
'SortAsc' => 'Asc',
'SortBy' => 'mostrar por',
'SortDesc' => 'Desc',
'Source' => 'Origem',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'Tipo de Origem',
'Speed' => 'Speed',
'SpeedHigh' => 'High Speed',
'SpeedLow' => 'Low Speed',
'SpeedMedium' => 'Medium Speed',
'SpeedTurbo' => 'Turbo Speed',
'Start' => 'Iniciar',
'State' => 'Estado',
'Stats' => 'Status',
'Status' => 'Status',
'Step' => 'Step',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Large Step',
'StepMedium' => 'Medium Step',
'StepNone' => 'No Step',
'StepSmall' => 'Small Step',
'Stills' => 'Imagens',
'Stop' => 'Parar',
'Stopped' => 'Parado',
'Stream' => 'Contínuo',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Submit',
'System' => 'Sistema',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Tilt',
'Time' => 'Tempo',
'TimeDelta' => 'Tempo Delta',
'TimeStamp' => 'Tempo',
'Timeline' => 'Timeline',
'Timestamp' => 'Tempo',
'TimestampLabelFormat' => 'Formato de etiqueta de tempo',
'TimestampLabelX' => 'posição de etiqueta X',
'TimestampLabelY' => 'posição de etiqueta Y',
'Today' => 'Today',
'Tools' => 'Ferramentas',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Score<br/>Total',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'Acionadores',
'TurboPanSpeed' => 'Turbo Pan Speed',
'TurboTiltSpeed' => 'Turbo Tilt Speed',
'Type' => 'Tipo',
'Unarchive' => 'Desarquivar',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'Unidades',
'Unknown' => 'Desconhecido',
'Update' => 'Update',
'UpdateAvailable' => 'Um update ao zoneminder está disponível.',
'UpdateNotNecessary' => 'Não é necessário update.',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Use Filtro',
'UseFilterExprsPost' => '&nbsp;expressões&nbsp;de&nbsp;filtragem', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Use&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'Usuário',
'Username' => 'Nome de Usuário',
'Users' => 'Usuários',
'Value' => 'Valor',
'Version' => 'Versão',
'VersionIgnore' => 'Ignorar esta versão',
'VersionRemindDay' => 'Lembre novamente em 1 dia',
'VersionRemindHour' => 'Lembre novamente em 1 hora',
'VersionRemindNever' => 'Nao lembrar novas versões',
'VersionRemindWeek' => 'Lembrar novamente em 1 semana',
'Video' => 'Video',
'VideoFormat' => 'Video Format',
'VideoGenFailed' => 'Geração de Vídeo falhou!',
'VideoGenFiles' => 'Existing Video Files',
'VideoGenNoFiles' => 'No Video Files Found',
'VideoGenParms' => 'Parametros de geração de vídeo',
'VideoGenSucceeded' => 'Video Generation Succeeded!',
'VideoSize' => 'Tamanho do vídeo',
'View' => 'Ver',
'ViewAll' => 'Ver Tudo',
'ViewEvent' => 'View Event',
'ViewPaged' => 'Ver Paginado',
'Wake' => 'Wake',
'WarmupFrames' => 'Imagens Desconsideradas',
'Watch' => 'Assistir',
'Web' => 'Web',
'WebColour' => 'Web Colour',
'Week' => 'Semana',
'White' => 'White',
'WhiteBalance' => 'White Balance',
'Wide' => 'Wide',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'String de Ativação X10',
'X10InputAlarmString' => 'String de Entrada de alarme X10',
'X10OutputAlarmString' => 'String de Saída de Alarme X10',
'Y' => 'Y',
'Yes' => 'Sim',
'YouNoPerms' => 'Você não tem permissões para acessar este recurso.',
'Zone' => 'Zona',
'ZoneAlarmColour' => 'Cor de Alarme (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'Zonas',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zoom In',
'ZoomOut' => 'Zoom Out',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Login atual é \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Últimos %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'A Última versão é v%1$s, você tem v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Monitor %1$s Funcção',
'RunningRecentVer' => 'Você está usando a versão mais recente do ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Events', 1=>'Event', 2=>'Events' ),
'Monitor' => array( 0=>'Monitors', 1=>'Monitor', 2=>'Monitors' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

File diff suppressed because it is too large Load Diff

View File

@ -1,843 +0,0 @@
<?php
//
// ZoneMinder web UK English language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Russian Translation by Borodin A.S.
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
header( "Content-Type: text/html; charset=koi8-r" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => '24 ÂÉÔÎÙÊ Ã×ÅÔ',
'8BitGrey' => '256 ÏÔÔÅÎËÏ× ÓÅÒÏÇÏ',
'Action' => 'Action',
'Actual' => 'äÅÊÓÔ×ÉÔÅÌØÎÙÊ',
'AddNewControl' => 'Add New Control',
'AddNewMonitor' => 'äÏÂÁ×ÉÔØ ÍÏÎÉÔÏÒ',
'AddNewUser' => 'äÏÂÁ×ÉÔØ ÐÏÌØÚÏ×ÁÔÅÌÑ',
'AddNewZone' => 'äÏÂÁ×ÉÔØ ÚÏÎÕ',
'Alarm' => 'ôÒÅ×ÏÇÁ',
'AlarmBrFrames' => 'ëÁÄÒÙ<br/>ÔÒÅ×ÏÇÉ',
'AlarmFrame' => 'ëÁÄÒ ÔÒÅ×ÏÇÉ',
'AlarmFrameCount' => 'Alarm Frame Count',
'AlarmLimits' => 'çÒÁÎ.&nbsp;ÚÏÎÙ&nbsp;ÔÒÅ×.',
'AlarmMaximumFPS' => 'Alarm Maximum FPS',
'AlarmPx' => 'ðËÓ&nbsp;ÔÒÅ×.',
'AlarmRGBUnset' => 'You must set an alarm RGB colour',
'Alert' => 'îÁÓÔÏÒÏÖÅ',
'All' => '÷ÓÅ',
'Apply' => 'ðÒÉÍÅÎÉÔØ',
'ApplyingStateChange' => 'óÏÓÔÏÑÎÉÅ ÓÅÒ×ÉÓÁ ÉÚÍÅÎÑÅÔÓÑ',
'ArchArchived' => 'ôÏÌØËÏ × ÁÒÈÉ×Å',
'ArchUnarchived' => 'ôÏÌØËÏ ÎÅ × ÁÒÈÉ×Å',
'Archive' => 'áÒÈÉ×',
'Archived' => 'Archived',
'Area' => 'Area',
'AreaUnits' => 'Area (px/%)',
'AttrAlarmFrames' => 'ëÏÌ-×Ï ËÁÄÒÏ× ÔÒÅ×ÏÇÉ',
'AttrArchiveStatus' => 'óÔÁÔÕÓ ÁÒÈÉ×ÁÃÉÉ',
'AttrAvgScore' => 'óÒÅÄ. ÏÃÅÎËÁ',
'AttrCause' => 'Cause',
'AttrDate' => 'äÁÔÁ',
'AttrDateTime' => 'äÁÔÁ/÷ÒÅÍÑ',
'AttrDiskBlocks' => 'Disk Blocks',
'AttrDiskPercent' => 'Disk Percent',
'AttrDuration' => 'äÌÉÔÅÌØÎÏÓÔØ',
'AttrFrames' => 'ëÏÌ-×Ï ËÁÄÒÏ×',
'AttrId' => 'Id',
'AttrMaxScore' => 'íÁËÓ. ÏÃÅÎËÁ',
'AttrMonitorId' => 'Id íÏÎÉÔÏÒÁ',
'AttrMonitorName' => 'îÁÚ×ÁÎÉÅ íÏÎÉÔÏÒÁ',
'AttrName' => 'Name',
'AttrNotes' => 'Notes',
'AttrSystemLoad' => 'System Load',
'AttrTime' => '÷ÒÅÍÑ',
'AttrTotalScore' => 'óÕÍÍ. ÏÃÅÎËÁ',
'AttrWeekday' => 'äÅÎØ ÎÅÄÅÌÉ',
'Auto' => 'Auto',
'AutoStopTimeout' => 'Auto Stop Timeout',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => 'óÒÅÄ.<br/>ÏÃÅÎËÁ',
'Background' => 'Background',
'BackgroundFilter' => 'Run filter in background',
'BadAlarmFrameCount' => 'Alarm frame count must be an integer of one or more',
'BadAlarmMaxFPS' => 'Alarm Maximum FPS must be a positive integer or floating point value',
'BadChannel' => 'Channel must be set to an integer of zero or more',
'BadDevice' => 'Device must be set to a valid value',
'BadFPSReportInterval' => 'FPS report interval buffer count must be an integer of 0 or more',
'BadFormat' => 'Format must be set to an integer of zero or more',
'BadFrameSkip' => 'Frame skip count must be an integer of zero or more',
'BadHeight' => 'Height must be set to a valid value',
'BadHost' => 'Host must be set to a valid ip address or hostname, do not include http://',
'BadImageBufferCount' => 'Image buffer size must be an integer of 10 or more',
'BadLabelX' => 'Label X co-ordinate must be set to an integer of zero or more',
'BadLabelY' => 'Label Y co-ordinate must be set to an integer of zero or more',
'BadMaxFPS' => 'Maximum FPS must be a positive integer or floating point value',
'BadNameChars' => 'Names may only contain alphanumeric characters plus hyphen and underscore',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Path must be set to a valid value',
'BadPort' => 'Port must be set to a valid number',
'BadPostEventCount' => 'Post event image count must be an integer of zero or more',
'BadPreEventCount' => 'Pre event image count must be at least zero, and less than image buffer size',
'BadRefBlendPerc' => 'Reference blend percentage must be a positive integer',
'BadSectionLength' => 'Section length must be an integer of 30 or more',
'BadSignalCheckColour' => 'Signal check colour must be a valid RGB colour string',
'BadStreamReplayBuffer'=> 'Stream replay buffer must be an integer of zero or more',
'BadWarmupCount' => 'Warmup frames must be an integer of zero or more',
'BadWebColour' => 'Web colour must be a valid web colour string',
'BadWidth' => 'Width must be set to a valid value',
'Bandwidth' => 'ËÁÎÁÌ',
'BlobPx' => 'ðËÓ ÏÂßÅËÔÁ',
'BlobSizes' => 'òÁÚÍÅÒ ÏÂßÅËÔÏ×',
'Blobs' => 'ëÏÌ-×Ï ÏÂßÅËÔÏ×',
'Brightness' => 'ñÒËÏÓÔØ',
'Buffers' => 'âÕÆÅÒÙ',
'CanAutoFocus' => 'Can Auto Focus',
'CanAutoGain' => 'Can Auto Gain',
'CanAutoIris' => 'Can Auto Iris',
'CanAutoWhite' => 'Can Auto White Bal.',
'CanAutoZoom' => 'Can Auto Zoom',
'CanFocus' => 'Can Focus',
'CanFocusAbs' => 'Can Focus Absolute',
'CanFocusCon' => 'Can Focus Continuous',
'CanFocusRel' => 'Can Focus Relative',
'CanGain' => 'Can Gain ',
'CanGainAbs' => 'Can Gain Absolute',
'CanGainCon' => 'Can Gain Continuous',
'CanGainRel' => 'Can Gain Relative',
'CanIris' => 'Can Iris',
'CanIrisAbs' => 'Can Iris Absolute',
'CanIrisCon' => 'Can Iris Continuous',
'CanIrisRel' => 'Can Iris Relative',
'CanMove' => 'Can Move',
'CanMoveAbs' => 'Can Move Absolute',
'CanMoveCon' => 'Can Move Continuous',
'CanMoveDiag' => 'Can Move Diagonally',
'CanMoveMap' => 'Can Move Mapped',
'CanMoveRel' => 'Can Move Relative',
'CanPan' => 'Can Pan' ,
'CanReset' => 'Can Reset',
'CanSetPresets' => 'Can Set Presets',
'CanSleep' => 'Can Sleep',
'CanTilt' => 'Can Tilt',
'CanWake' => 'Can Wake',
'CanWhite' => 'Can White Balance',
'CanWhiteAbs' => 'Can White Bal. Absolute',
'CanWhiteBal' => 'Can White Bal.',
'CanWhiteCon' => 'Can White Bal. Continuous',
'CanWhiteRel' => 'Can White Bal. Relative',
'CanZoom' => 'Can Zoom',
'CanZoomAbs' => 'Can Zoom Absolute',
'CanZoomCon' => 'Can Zoom Continuous',
'CanZoomRel' => 'Can Zoom Relative',
'Cancel' => 'ïÔÍÅÎÉÔØ',
'CancelForcedAlarm' => 'ïÔÍÅÎÉÔØ ÆÏÒÓÉÒÏ×ÁÎÎÕÀ ÔÒÅ×ÏÇÕ',
'CaptureHeight' => 'òÁÚÍÅÒ ÐÏ Y',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => 'òÅÖÉÍ ÚÁÈ×ÁÔÁ',
'CaptureWidth' => 'òÁÚÍÅÒ ÐÏ X',
'Cause' => 'Cause',
'CheckMethod' => 'íÅÔÏÄ ÐÒÏ×ÅÒËÉ ÔÒÅ×ÏÇÉ',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => '÷ÙÂÒÁÔØ ÆÉÌØÔÒ',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Choose Preset',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'úÁËÒÙÔØ',
'Colour' => 'ã×ÅÔ',
'Command' => 'Command',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Config',
'ConfiguredFor' => 'îÁÓÔÒÏÅÎ ÎÁ',
'ConfirmDeleteEvents' => 'Are you sure you wish to delete the selected events?',
'ConfirmPassword' => 'ðÏÄÔ×ÅÒÄÉÔÅ ÐÁÒÏÌØ',
'ConjAnd' => 'É',
'ConjOr' => 'ÉÌÉ',
'Console' => 'óÅÒ×ÅÒ',
'ContactAdmin' => 'ðÏÖÁÌÕÊÓÔÁ ÏÂÒÁÔÉÔÅÓØ Ë ×ÁÛÅÍÕ ÁÄÍÉÎÉÓÔÒÁÔÏÒÕ.',
'Continue' => 'Continue',
'Contrast' => 'ëÏÎÔÒÁÓÔ',
'Control' => 'Control',
'ControlAddress' => 'Control Address',
'ControlCap' => 'Control Capability',
'ControlCaps' => 'Control Capabilities',
'ControlDevice' => 'Control Device',
'ControlType' => 'Control Type',
'Controllable' => 'Controllable',
'Cycle' => 'Cycle',
'CycleWatch' => 'ãÉËÌÉÞÅÓËÉÊ ÐÒÏÓÍÏÔÒ',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'äÅÎØ',
'Debug' => 'Debug',
'DefaultRate' => 'Default Rate',
'DefaultScale' => 'Default Scale',
'DefaultView' => 'Default View',
'Delete' => 'õÄÁÌÉÔØ',
'DeleteAndNext' => 'õÄÁÌÉÔØ &amp; ÓÌÅÄ.',
'DeleteAndPrev' => 'õÄÁÌÉÔØ &amp; ÐÒÅÄ.',
'DeleteSavedFilter' => 'õÄÁÌÉÔØ ÓÏÈÒÁÎÅÎÎÙÊ ÆÉÌØÔÒ',
'Description' => 'ïÐÉÓÁÎÉÅ',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'ëÁÎÁÌ',
'DeviceFormat' => 'æÏÒÍÁÔ',
'DeviceNumber' => 'îÏÍÅÒ ÕÓÔÒÏÊÓÔ×Á',
'DevicePath' => 'Device Path',
'Devices' => 'Devices',
'Dimensions' => 'òÁÚÍÅÒÙ',
'DisableAlarms' => 'Disable Alarms',
'Disk' => 'Disk',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Please Donate',
'DonateAlready' => 'No, I\'ve already donated',
'DonateEnticement' => 'You\'ve been running ZoneMinder for a while now and hopefully are finding it a useful addition to your home or workplace security. Although ZoneMinder is, and will remain, free and open source, it costs money to develop and support. If you would like to help support future development and new features then please consider donating. Donating is, of course, optional but very much appreciated and you can donate as much or as little as you like.<br><br>If you would like to donate please select the option below or go to http://www.zoneminder.com/donate.html in your browser.<br><br>Thank you for using ZoneMinder and don\'t forget to visit the forums on ZoneMinder.com for support or suggestions about how to make your ZoneMinder experience even better.',
'DonateRemindDay' => 'Not yet, remind again in 1 day',
'DonateRemindHour' => 'Not yet, remind again in 1 hour',
'DonateRemindMonth' => 'Not yet, remind again in 1 month',
'DonateRemindNever' => 'No, I don\'t want to donate, never remind',
'DonateRemindWeek' => 'Not yet, remind again in 1 week',
'DonateYes' => 'Yes, I\'d like to donate now',
'Download' => 'Download',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'äÌÉÔÅÌØÎÏÓÔØ',
'Edit' => 'òÅÄÁËÔÉÒÏ×ÁÎÉÅ',
'Email' => 'Email',
'EnableAlarms' => 'Enable Alarms',
'Enabled' => 'ÒÁÚÒÅÛÅÎ',
'EnterNewFilterName' => '÷×ÅÄÉÔÅ ÎÏ×ÏÅ ÎÁÚ×ÁÎÉÅ ÆÉÌØÔÒÁ',
'Error' => 'ïÛÉÂËÁ',
'ErrorBrackets' => 'ïÛÉÂËÁ: ËÏÌÉÞÅÓÔ×Ï ÏÔËÒÙ×ÁÀÝÉÈ É ÚÁËÒÙ×ÁÀÝÉÈ ÓËÏÂÏË ÄÏÌÖÎÏ ÂÙÔØ ÏÄÉÎÁËÏ×ÙÍ',
'ErrorValidValue' => 'ïÛÉÂËÁ: ÐÒÏ×ÅÒØÔÅ ÞÔÏ ×ÓÅ ÔÅÒÍÙ ÉÍÅÀÔ ÄÅÊÓÔ×ÉÔÅÌØÎÏÅ ÚÎÁÞÅÎÉÅ',
'Etc' => 'É Ô.Ä.',
'Event' => 'óÏÂÙÔÉÅ',
'EventFilter' => 'æÉÌØÔÒ ÓÏÂÙÔÉÊ',
'EventId' => 'Event Id',
'EventName' => 'Event Name',
'EventPrefix' => 'Event Prefix',
'Events' => 'óÏÂÙÔÉÑ',
'Exclude' => 'éÓËÌÀÞÉÔØ',
'Execute' => 'Execute',
'Export' => 'Export',
'ExportDetails' => 'Export Event Details',
'ExportFailed' => 'Export Failed',
'ExportFormat' => 'Export File Format',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Export Frame Details',
'ExportImageFiles' => 'Export Image Files',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Export Other Files (if present)',
'ExportOptions' => 'Export Options',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Export Video Files (if present)',
'Exporting' => 'Exporting',
'FPS' => 'Ë/c',
'FPSReportInterval' => 'ðÅÒÉÏÄ ÏÂÎÏ×ÌÅÎÉÑ ÉÎÄÉËÁÃÉÉ ÓËÏÒÏÓÔÉ',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'Feed',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'File',
'FilterArchiveEvents' => 'Archive all matches',
'FilterDeleteEvents' => 'Delete all matches',
'FilterEmailEvents' => 'Email details of all matches',
'FilterExecuteEvents' => 'Execute command on all matches',
'FilterMessageEvents' => 'Message details of all matches',
'FilterPx' => 'ðËÓ ÆÉÌØÔÒÁ',
'FilterUnset' => 'You must specify a filter width and height',
'FilterUploadEvents' => 'Upload all matches',
'FilterVideoEvents' => 'Create video for all matches',
'Filters' => 'Filters',
'First' => 'ðÅÒ×ÙÊ',
'FlippedHori' => 'Flipped Horizontally',
'FlippedVert' => 'Flipped Vertically',
'Focus' => 'Focus',
'ForceAlarm' => '÷ËÌÀÞÉÔØ ÔÒÅ×ÏÇÕ',
'Format' => 'Format',
'Frame' => 'ëÁÄÒ',
'FrameId' => 'Id ËÁÄÒÁ',
'FrameRate' => 'óËÏÒÏÓÔØ',
'FrameSkip' => 'ðÒÏÐÕÓËÁÔØ ËÁÄÒÙ',
'Frames' => 'ËÁÄÒÙ',
'Func' => 'æÕÎË.',
'Function' => 'æÕÎËÃÉÑ',
'Gain' => 'Gain',
'General' => 'General',
'GenerateVideo' => 'çÅÎÅÒÉÒÏ×ÁÔØ ×ÉÄÅÏ',
'GeneratingVideo' => 'çÅÎÅÒÉÒÕÅÔÓÑ ×ÉÄÅÏ',
'GoToZoneMinder' => 'ðÅÒÅÊÔÉ ÎÁ ZoneMinder.com',
'Grey' => 'Þ/Â',
'Group' => 'Group',
'Groups' => 'Groups',
'HasFocusSpeed' => 'Has Focus Speed',
'HasGainSpeed' => 'Has Gain Speed',
'HasHomePreset' => 'Has Home Preset',
'HasIrisSpeed' => 'Has Iris Speed',
'HasPanSpeed' => 'Has Pan Speed',
'HasPresets' => 'Has Presets',
'HasTiltSpeed' => 'Has Tilt Speed',
'HasTurboPan' => 'Has Turbo Pan',
'HasTurboTilt' => 'Has Turbo Tilt',
'HasWhiteSpeed' => 'Has White Bal. Speed',
'HasZoomSpeed' => 'Has Zoom Speed',
'High' => 'ÛÉÒÏËÉÊ',
'HighBW' => 'ûÉÒÏËÉÊ ËÁÎÁÌ',
'Home' => 'Home',
'Hour' => 'þÁÓ',
'Hue' => 'ïÔÔÅÎÏË',
'Id' => 'Id',
'Idle' => 'Idle',
'Ignore' => 'éÇÎÏÒÉÒÏ×ÁÔØ',
'Image' => 'éÚÏÂÒÁÖÅÎÉÅ',
'ImageBufferSize' => 'òÁÚÍÅÒ ÂÕÆÅÒÁ ÉÚÏÂÒÁÖÅÎÉÑ',
'Images' => 'Images',
'In' => 'In',
'Include' => '÷ËÌÀÞÉÔØ',
'Inverted' => 'éÎ×ÅÒÔÉÒÏ×ÁÔØ',
'Iris' => 'Iris',
'KeyString' => 'Key String',
'Label' => 'Label',
'Language' => 'ñÚÙË',
'Last' => 'ðÏÓÌÅÄÎÉÊ',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'results only;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Limit to first', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Linked Monitors',
'List' => 'List',
'Load' => 'Load',
'Local' => 'ìÏËÁÌØÎÙÊ',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'ðÏÌØÚÏ×ÁÔÅÌØ',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => '÷ÈÏÄ × ÓÉÓÔÅÍÕ',
'Login' => '÷ÏÊÔÉ',
'Logout' => '÷ÙÊÔÉ',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'ÕÚËÉÊ',
'LowBW' => 'õÚËÉÊ ËÁÎÁÌ',
'Main' => 'Main',
'Man' => 'Man',
'Manual' => 'Manual',
'Mark' => 'íÅÔËÁ',
'Max' => 'íÁËÓ.',
'MaxBandwidth' => 'Max Bandwidth',
'MaxBrScore' => 'íÁËÓ.<br/>ÏÃÅÎËÁ',
'MaxFocusRange' => 'Max Focus Range',
'MaxFocusSpeed' => 'Max Focus Speed',
'MaxFocusStep' => 'Max Focus Step',
'MaxGainRange' => 'Max Gain Range',
'MaxGainSpeed' => 'Max Gain Speed',
'MaxGainStep' => 'Max Gain Step',
'MaxIrisRange' => 'Max Iris Range',
'MaxIrisSpeed' => 'Max Iris Speed',
'MaxIrisStep' => 'Max Iris Step',
'MaxPanRange' => 'Max Pan Range',
'MaxPanSpeed' => 'Max Pan Speed',
'MaxPanStep' => 'Max Pan Step',
'MaxTiltRange' => 'Max Tilt Range',
'MaxTiltSpeed' => 'Max Tilt Speed',
'MaxTiltStep' => 'Max Tilt Step',
'MaxWhiteRange' => 'Max White Bal. Range',
'MaxWhiteSpeed' => 'Max White Bal. Speed',
'MaxWhiteStep' => 'Max White Bal. Step',
'MaxZoomRange' => 'Max Zoom Range',
'MaxZoomSpeed' => 'Max Zoom Speed',
'MaxZoomStep' => 'Max Zoom Step',
'MaximumFPS' => 'ïÇÒÁÎÉÞÅÎÉÅ ÓËÏÒÏÓÔÉ ÚÁÐÉÓÉ (Ë/Ó)',
'Medium' => 'ÓÒÅÄÎÉÊ',
'MediumBW' => 'ïÂÙÞÎÙÊ ËÁÎÁÌ',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minimum alarm area should be less than maximum',
'MinAlarmAreaUnset' => 'You must specify the minimum alarm pixel count',
'MinBlobAreaLtMax' => 'íÉÎÉÍÁÌØÎÁÑ ÐÌÏÝÁÄØ ÏÂßÅËÔÁ ÄÏÌÖÎÁ ÂÙÔØ ÍÅÎØÛÅ ÞÅÍ ÍÁËÓÉÍÁÌØÎÁÑ ÐÌÏÝÁÄØ ÏÂßÅËÔÁ',
'MinBlobAreaUnset' => 'You must specify the minimum blob pixel count',
'MinBlobLtMinFilter' => 'Minimum blob area should be less than or equal to minimum filter area',
'MinBlobsLtMax' => 'íÉÎÉÍÁÌØÎÏÅ ÞÉÓÌÏ ÏÂßÅËÔÏ× ÄÏÌÖÎÏ ÂÙÔØ ÍÅÎØÛÅ ÞÅÍ ÍÁËÓÉÍÁÌØÎÏÅ ÞÉÓÌÏ ÏÂßÅËÔÏ×',
'MinBlobsUnset' => 'You must specify the minimum blob count',
'MinFilterAreaLtMax' => 'Minimum filter area should be less than maximum',
'MinFilterAreaUnset' => 'You must specify the minimum filter pixel count',
'MinFilterLtMinAlarm' => 'Minimum filter area should be less than or equal to minimum alarm area',
'MinFocusRange' => 'Min Focus Range',
'MinFocusSpeed' => 'Min Focus Speed',
'MinFocusStep' => 'Min Focus Step',
'MinGainRange' => 'Min Gain Range',
'MinGainSpeed' => 'Min Gain Speed',
'MinGainStep' => 'Min Gain Step',
'MinIrisRange' => 'Min Iris Range',
'MinIrisSpeed' => 'Min Iris Speed',
'MinIrisStep' => 'Min Iris Step',
'MinPanRange' => 'Min Pan Range',
'MinPanSpeed' => 'Min Pan Speed',
'MinPanStep' => 'Min Pan Step',
'MinPixelThresLtMax' => 'îÉÖÎÉÊ ÐÏÒÏÇ ËÏÌ-×Á ÐÉËÓÅÌÅÊ ÄÏÌÖÅÎ ÂÙÔØ ÎÉÖÅ ×ÅÒÈÎÅÇÏ ÐÏÒÏÇÁ ËÏÌ-×Á ÐÉËÓÅÌÅÊ',
'MinPixelThresUnset' => 'You must specify a minimum pixel threshold',
'MinTiltRange' => 'Min Tilt Range',
'MinTiltSpeed' => 'Min Tilt Speed',
'MinTiltStep' => 'Min Tilt Step',
'MinWhiteRange' => 'Min White Bal. Range',
'MinWhiteSpeed' => 'Min White Bal. Speed',
'MinWhiteStep' => 'Min White Bal. Step',
'MinZoomRange' => 'Min Zoom Range',
'MinZoomSpeed' => 'Min Zoom Speed',
'MinZoomStep' => 'Min Zoom Step',
'Misc' => 'òÁÚÎÏÅ',
'Monitor' => 'íÏÎÉÔÏÒ',
'MonitorIds' => 'Id&nbsp;íÏÎÉÔÏÒÏ×',
'MonitorPreset' => 'Monitor Preset',
'MonitorPresetIntro' => 'Select an appropriate preset from the list below.<br><br>Please note that this may overwrite any values you already have configured for this monitor.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'íÏÎÉÔÏÒÙ',
'Montage' => 'Montage',
'Month' => 'íÅÓÑÃ',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Move',
'MustBeGe' => 'ÄÏÌÖÎÏ ÂÙÔØ ÂÏÌØÛÅ ÉÌÉ ÒÁ×ÎÏ',
'MustBeLe' => 'ÄÏÌÖÎÏ ÂÙÔØ ÍÅÎØÛÅ ÉÌÉ ÒÁ×ÎÏ',
'MustConfirmPassword' => '÷Ù ÄÏÌÖÎÙ ÐÏÄÔ×ÅÒÄÉÔØ ÐÁÒÏÌØ',
'MustSupplyPassword' => '÷Ù ÄÏÌÖÎÙ ××ÅÓÔÉ ÐÁÒÏÌØ',
'MustSupplyUsername' => '÷Ù ÄÏÌÖÎÙ ××ÅÓÔÉ ÉÍÑ ÐÏÌØÚÏ×ÁÔÅÌÑ',
'Name' => 'éÍÑ',
'Near' => 'Near',
'Network' => 'óÅÔØ',
'New' => 'îÏ×.',
'NewGroup' => 'New Group',
'NewLabel' => 'New Label',
'NewPassword' => 'îÏ×ÙÊ ÐÁÒÏÌØ',
'NewState' => 'îÏ×ÏÅ ÓÏÓÔÏÑÎÉÅ',
'NewUser' => 'îÏ×ÙÊ ÐÏÌØÚÏ×ÁÔÅÌØ',
'Next' => 'óÌÅÄ.',
'No' => 'îÅÔ',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'üÔÏ ÓÏÂÙÔÉÅ ÎÅ ÓÏÄÅÖÉÔ ËÁÄÒÏ×',
'NoGroup' => 'No Group',
'NoSavedFilters' => 'ÎÅÔ ÓÏÈÒÁÎÅÎÎÙÈ ÆÉÌØÔÒÏ×',
'NoStatisticsRecorded' => 'óÔÁÔÉÓÔÉËÁ ÐÏ ÜÔÏÍÕ ÓÏÂÙÔÉÀ/ËÁÄÒÕ ÎÅ ÚÁÐÉÓÁÎÁ',
'None' => 'ÏÔÓÕÔÓÔ×ÕÅÔ',
'NoneAvailable' => 'ÎÅ ÄÏÓÔÕÐÎÙ',
'Normal' => 'îÏÒÍÁÌØÎÁÑ',
'Notes' => 'Notes',
'NumPresets' => 'Num Presets',
'Off' => 'Off',
'On' => 'On',
'OpEq' => 'ÒÁ×ÎÏ',
'OpGt' => 'ÂÏÌØÛÅ',
'OpGtEq' => 'ÂÏÌØÛÅ ÌÉÂÏ ÒÁ×ÎÏ',
'OpIn' => '× ÓÐÉÓËÅ',
'OpLt' => 'ÍÅÎØÛÅ',
'OpLtEq' => 'ÍÅÎØÛÅ ÉÌÉ ÒÁ×ÎÏ',
'OpMatches' => 'ÓÏ×ÐÁÄÁÅÔ',
'OpNe' => 'ÎÅ ÒÁ×ÎÏ',
'OpNotIn' => 'ÎÅ × ÓÐÉÓËÅ',
'OpNotMatches' => 'ÎÅ ÓÏ×ÐÁÄÁÅÔ',
'Open' => 'Open',
'OptionHelp' => 'OptionHelp',
'OptionRestartWarning' => 'üÔÉ ÉÚÍÅÎÅÎÉÑ ÐÏÄÅÊÓÔ×ÕÀÔ ÔÏÌØËÏ ÐÏÓÌÅ ÐÅÒÅÚÁÐÕÓËÁ ÐÒÏÇÒÁÍÍÙ.',
'Options' => 'ïÐÃÉÉ',
'OrEnterNewName' => 'ÉÌÉ ××ÅÄÉÔÅ ÎÏ×ÏÅ ÉÍÑ',
'Order' => 'Order',
'Orientation' => 'ïÒÉÅÎÔÁÃÉÑ',
'Out' => 'Out',
'OverwriteExisting' => 'ðÅÒÅÚÁÐÉÓÁÔØ ÓÕÝÅÓÔ×ÕÀÝÅÅ',
'Paged' => 'ðÏ ÓÔÒÁÎÉÃÁÍ',
'Pan' => 'Pan',
'PanLeft' => 'Pan Left',
'PanRight' => 'Pan Right',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'ðÁÒÁÍÅÒ',
'Password' => 'ðÁÒÏÌØ',
'PasswordsDifferent' => 'ðÁÒÏÌÉ ÎÅ ÓÏ×ÐÁÄÁÀÔ',
'Paths' => 'ðÕÔÉ',
'Pause' => 'Pause',
'Phone' => 'Phone',
'PhoneBW' => 'ôÅÌÅÆÏÎÎÁÑ ÌÉÎÉÑ',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Pixel Diff',
'Pixels' => '× ÐÉËÓÅÌÑÈ',
'Play' => 'Play',
'PlayAll' => 'Play All',
'PleaseWait' => 'ðÏÖÁÌÕÊÓÔÁ ÐÏÄÏÖÄÉÔÅ',
'Point' => 'Point',
'PostEventImageBuffer' => 'âÕÆÅÒ ÐÏÓÌÅ ÓÏÂÙÔÉÑ',
'PreEventImageBuffer' => 'âÕÆÅÒ ÄÏ ÓÏÂÙÔÉÑ',
'PreserveAspect' => 'Preserve Aspect Ratio',
'Preset' => 'Preset',
'Presets' => 'Presets',
'Prev' => 'ðÒÅÄ.',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protocol',
'Rate' => 'óËÏÒÏÓÔØ',
'Real' => 'òÅÁÌØÎÁÑ',
'Record' => 'Record',
'RefImageBlendPct' => 'ðÒÏÚÒÁÞÎÏÓÔØ ÏÐÏÒÎÏÇÏ ËÁÄÒÁ, %',
'Refresh' => 'ïÂÎÏ×ÉÔØ',
'Remote' => 'õÄÁÌÅÎÎÙÊ',
'RemoteHostName' => 'éÍÑ ÕÄÁÌÅÎÎÏÇÏ ÈÏÓÔÁ',
'RemoteHostPath' => 'ðÕÔØ ÎÁ ÕÄÁÌÅÎÎÏÍ ÈÏÓÔÅ',
'RemoteHostPort' => 'ÕÄÁÌÅÎÎÙÊ ÐÏÒÔ',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'ã×ÅÔÎÏÓÔØ ÎÁ ÕÄÁÌÅÎÎÏÍ ÈÏÓÔÅ',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => 'ðÅÒÅÉÍÅÎÏ×ÁÔØ',
'Replay' => 'Replay',
'ReplayAll' => 'All Events',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Single Event',
'Reset' => 'Reset',
'ResetEventCounts' => 'ïÂÎÕÌÉÔØ ÓÞÅÔÞÉË ÓÏÂÙÔÉÊ',
'Restart' => 'ðÅÒÅÚÁÐÕÓÔÉÔØ',
'Restarting' => 'ðÅÒÅÚÁÐÕÓËÁÅÔÓÑ',
'RestrictedCameraIds' => 'Id ÚÁÐÒÅÝÅÎÎÙÈ ËÁÍÅÒ',
'RestrictedMonitors' => 'Restricted Monitors',
'ReturnDelay' => 'Return Delay',
'ReturnLocation' => 'Return Location',
'Rewind' => 'Rewind',
'RotateLeft' => 'ðÏ×ÅÒÎÕÔØ ×ÌÅ×Ï',
'RotateRight' => 'ðÏ×ÅÒÎÕÔØ ×ÐÒÁ×Ï',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'òÅÖÉÍ ÒÁÂÏÔÙ',
'RunState' => 'óÏÓÔÏÑÎÉÅ',
'Running' => '÷ÙÐÏÌÎÑÅÔÓÑ',
'Save' => 'óÏÈÒÁÎÉÔØ',
'SaveAs' => 'óÏÈÒÁÎÉÔØ ËÁË',
'SaveFilter' => 'óÏÈÒÁÎÉÔØ ÆÉÌØÔÒ',
'Scale' => 'íÁÓÛÔÁÂ',
'Score' => 'ïÃÅÎËÁ',
'Secs' => 'óÅË.',
'Sectionlength' => 'äÌÉÎÁ ÓÅËÃÉÉ (× ËÁÄÒÁÈ)',
'Select' => 'Select',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Select Monitors',
'SelfIntersecting' => 'Polygon edges must not intersect',
'Set' => 'Set',
'SetNewBandwidth' => 'õÓÔÁÎÏ×ËÁ ÎÏ×ÏÊ ÛÉÒÉÎÁ ËÁÎÁÌÁ',
'SetPreset' => 'Set Preset',
'Settings' => 'îÁÓÔÒÏÊËÉ',
'ShowFilterWindow' => 'ðÏËÁÚÁÔØ ÏËÎÏ ÆÉÌØÔÒÁ',
'ShowTimeline' => 'Show Timeline',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Size',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Sleep',
'SortAsc' => 'Asc',
'SortBy' => 'Sort by',
'SortDesc' => 'Desc',
'Source' => 'éÓÔÏÞÎÉË',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'ôÉÐ ÉÓÔÏÞÎÉËÁ',
'Speed' => 'Speed',
'SpeedHigh' => 'High Speed',
'SpeedLow' => 'Low Speed',
'SpeedMedium' => 'Medium Speed',
'SpeedTurbo' => 'Turbo Speed',
'Start' => 'úÁÐÕÓÔÉÔØ',
'State' => 'óÏÓÔÏÑÎÉÅ',
'Stats' => 'óÔÁÔÉÓÔÉËÁ',
'Status' => 'óÔÁÔÕÓ',
'Step' => 'Step',
'StepBack' => 'Step Back',
'StepForward' => 'Step Forward',
'StepLarge' => 'Large Step',
'StepMedium' => 'Medium Step',
'StepNone' => 'No Step',
'StepSmall' => 'Small Step',
'Stills' => 'óÔÏÐ-ËÁÄÒÙ',
'Stop' => 'ïÓÔÁÎÏ×ÉÔØ',
'Stopped' => 'ïÓÔÁÎÏ×ÌÅÎ',
'Stream' => 'ðÏÔÏË',
'StreamReplayBuffer' => 'Stream Replay Image Buffer',
'Submit' => 'Submit',
'System' => 'óÉÓÔÅÍÁ',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Thumbnail',
'Tilt' => 'Tilt',
'Time' => '÷ÒÅÍÑ',
'TimeDelta' => 'ïÔÎÏÓÉÔÅÌØÎÏÅ ×ÒÅÍÑ',
'TimeStamp' => 'íÅÔËÁ ×ÒÅÍÅÎÉ',
'Timeline' => 'Timeline',
'Timestamp' => 'íÅÔËÁ ×ÒÅÍÅÎÉ',
'TimestampLabelFormat' => 'æÏÒÍÁÔ ÍÅÔËÉ',
'TimestampLabelX' => 'X-ËÏÏÒÄÉÎÁÔÁ ÍÅÔËÉ',
'TimestampLabelY' => 'Y-ËÏÏÒÄÉÎÁÔÁ ÍÅÔËÉ',
'Today' => 'Today',
'Tools' => 'éÎÓÔÒÕÍÅÎÔÙ',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'óÕÍÍ.<br/>ÏÃÅÎËÁ',
'TrackDelay' => 'Track Delay',
'TrackMotion' => 'Track Motion',
'Triggers' => 'ôÒÉÇÇÅÒÙ',
'TurboPanSpeed' => 'Turbo Pan Speed',
'TurboTiltSpeed' => 'Turbo Tilt Speed',
'Type' => 'ôÉÐ',
'Unarchive' => 'õÄ.&nbsp;ÉÚ&nbsp;ÁÒÈÉ×Á',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'åÄ. ÉÚÍÅÒÅÎÉÑ',
'Unknown' => 'Unknown',
'Update' => 'Update',
'UpdateAvailable' => 'äÏÓÔÕÐÎÏ ÏÂÎÏ×ÌÅÎÉÅ ZoneMinder',
'UpdateNotNecessary' => 'ïÂÎÏ×ÌÅÎÉÅ ÎÅ ÔÒÅÂÕÅÔÓÑ',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'éÓÐÏÌØÚÏ×ÁÔØ ÆÉÌØÔÒ',
'UseFilterExprsPost' => '&nbsp;×ÙÒÁÖÅÎÉÊ&nbsp;ÄÌÑ&nbsp;ÆÉÌØÔÒÁ', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'éÓÐÏÌ.&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'ðÏÌØÚÏ×ÁÔÅÌØ',
'Username' => 'éÍÑ ÐÏÌØÚÏ×ÁÔÅÌÑ',
'Users' => 'ðÏÌØÚÏ×ÁÔÅÌÉ',
'Value' => 'úÎÁÞÅÎÉÅ',
'Version' => '÷ÅÒÓÉÑ',
'VersionIgnore' => 'éÇÎÏÒÉÒÏ×ÁÔØ ÜÔÕ ×ÅÒÓÉÀ',
'VersionRemindDay' => 'îÁÐÏÍÎÉÔØ ÞÅÒÅÚ ÄÅÎØ',
'VersionRemindHour' => 'îÁÐÏÍÎÉÔØ ÞÅÒÅÚ ÞÁÓ',
'VersionRemindNever' => 'îÅ ÇÏ×ÏÒÉÔØ Ï ÎÏ×ÙÈ ×ÅÒÓÉÑÈ',
'VersionRemindWeek' => 'îÁÐÏÍÎÉÔØ ÞÅÒÅÚ ÎÅÄÅÌÀ',
'Video' => '÷ÉÄÅÏ',
'VideoFormat' => 'Video Format',
'VideoGenFailed' => 'ïÛÉÂËÁ ÇÅÎÅÒÁÃÉÉ ×ÉÄÅÏ!',
'VideoGenFiles' => 'Existing Video Files',
'VideoGenNoFiles' => 'No Video Files Found',
'VideoGenParms' => 'ðÁÒÁÍÅÔÒÙ ÇÅÎÅÒÁÃÉÉ ×ÉÄÅÏ',
'VideoGenSucceeded' => 'Video Generation Succeeded!',
'VideoSize' => 'òÁÚÍÅÒ ÉÚÏÂÒÁÖÅÎÉÑ',
'View' => 'ðÒÏÓÍÏÔÒ',
'ViewAll' => 'ðÒÏÓÍ. ×ÓÅ',
'ViewEvent' => 'View Event',
'ViewPaged' => 'ðÒÏÓÍ. ÐÏÓÔÒÁÎÉÞÎÏ',
'Wake' => 'Wake',
'WarmupFrames' => 'ëÁÄÒÙ ÒÁÚÏÇÒÅ×Á',
'Watch' => 'Watch',
'Web' => 'éÎÔÅÒÆÅÊÓ',
'WebColour' => 'Web Colour',
'Week' => 'îÅÄÅÌÑ',
'White' => 'White',
'WhiteBalance' => 'White Balance',
'Wide' => 'Wide',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10 Activation String',
'X10InputAlarmString' => 'X10 Input Alarm String',
'X10OutputAlarmString' => 'X10 Output Alarm String',
'Y' => 'Y',
'Yes' => 'äÁ',
'YouNoPerms' => 'õ ×ÁÓ ÎÅ ÄÏÓÔÁÔÏÞÎÏ ÐÒÁ× ÄÌÑ ÄÏÓÔÕÐÁ Ë ÜÔÏÍÕ ÒÅÓÕÒÓÕ.',
'Zone' => 'úÏÎÁ',
'ZoneAlarmColour' => 'ã×ÅÔ ÔÒÅ×ÏÇÉ (Red/Green/Blue)',
'ZoneArea' => 'Zone Area',
'ZoneFilterSize' => 'Filter Width/Height (pixels)',
'ZoneMinMaxAlarmArea' => 'Min/Max Alarmed Area',
'ZoneMinMaxBlobArea' => 'Min/Max Blob Area',
'ZoneMinMaxBlobs' => 'Min/Max Blobs',
'ZoneMinMaxFiltArea' => 'Min/Max Filtered Area',
'ZoneMinMaxPixelThres' => 'Min/Max Pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'úÏÎÙ',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zoom In',
'ZoomOut' => 'Zoom Out',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'ôÅËÕÝÉÊ ÐÏÌØÚÏ×ÁÔÅÌØ: \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'ðÏÓÌÅÄÎÉÅ %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'ðÏÓÌÅÄÎÑÑ ×ÅÒÓÉÑ: v%1$s, Õ ÷ÁÓ ÕÓÔÁÎÏ×ÌÅÎÁ: v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'æÕÎËÃÉÑ ÍÏÎÉÔÏÒÁ %1$s',
'RunningRecentVer' => 'õ ×ÁÓ ÕÓÔÁÎÏ×ÌÅÎÁ ÎÏ×ÅÊÛÁÑ ×ÅÒÓÉÑ ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
// --> actually, if written in 'translit', or russian words in english letters,
// the example would be ( 1=>"Kartoshek", 2=>"Katroshka", 3=>"Kartoshki"); :)
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 1=>'óÏÂÙÔÉÊ', 2=>'óÏÂÙÔÉÅ', 3=>'óÏÂÙÔÉÑ' ),
'Monitor' => array( 1=>'íÏÎÉÔÏÒÏ×', 2=>'íÏÎÉÔÏÒ', 3=>'íÏÎÉÔÏÒÁ' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
/*function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Error, unable to correlate variable language string' );
}*/
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
function zmVlang( $langVarArray, $count )
{
$secondlastdigit = ($count/10)%10;
$lastdigit = $count%10;
// Get rid of the special cases first, the teens
if ( $secondlastdigit == 1 && $lastdigit != 0 )
{
return( $langVarArray[1] );
}
switch ( $lastdigit )
{
case 0 :
case 5 :
case 6 :
case 7 :
case 8 :
case 9 :
{
return( $langVarArray[1] );
break;
}
case 1 :
{
return( $langVarArray[2] );
break;
}
case 2 :
case 3 :
case 4 :
{
return( $langVarArray[3] );
break;
}
}
die( 'Error, unable to correlate variable language string' );
}
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
// So for example, to override the help text for ZM_LANG_DEFAULT do
$OLANG = array(
// 'LANG_DEFAULT' => array(
// 'Prompt' => "This is a new prompt for this option",
// 'Help' => "This is some new help for this option which will be displayed in the popup window when the ? is clicked"
// ),
);
?>

View File

@ -1,844 +0,0 @@
<?php
//
// ZoneMinder web Swedish language file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
// ZoneMinder Swedish Translation by Mikael Carlsson
// Updated 2008-12 by Mikael Carlsson
// Notes for Translators
// 0. Get some credit, put your name in the line above (optional)
// 1. When composing the language tokens in your language you should try and keep to roughly the
// same length text if possible. Abbreviate where necessary as spacing is quite close in a number of places.
// 2. There are four types of string replacement
// a) Simple replacements are words or short phrases that are static and used directly. This type of
// replacement can be used 'as is'.
// b) Complex replacements involve some dynamic element being included and so may require substitution
// or changing into a different order. The token listed in this file will be passed through sprintf as
// a formatting string. If the dynamic element is a number you will usually need to use a variable
// replacement also as described below.
// c) Variable replacements are used in conjunction with complex replacements and involve the generation
// of a singular or plural noun depending on the number passed into the zmVlang function. See the
// the zmVlang section below for a further description of this.
// d) Optional strings which can be used to replace the prompts and/or help text for the Options section
// of the web interface. These are not listed below as they are quite large and held in the database
// so that they can also be used by the zmconfig.pl script. However you can build up your own list
// quite easily from the Config table in the database if necessary.
// 3. The tokens listed below are not used to build up phrases or sentences from single words. Therefore
// you can safely assume that a single word token will only be used in that context.
// 4. In new language files, or if you are changing only a few words or phrases it makes sense from a
// maintenance point of view to include the original language file and override the old definitions rather
// than copy all the language tokens across. To do this change the line below to whatever your base language
// is and uncomment it.
// require_once( 'zm_lang_en_gb.php' );
// You may need to change the character set here, if your web server does not already
// do this by default, uncomment this if required.
//
// Example
// header( "Content-Type: text/html; charset=iso-8859-1" );
// You may need to change your locale here if your default one is incorrect for the
// language described in this file, or if you have multiple languages supported.
// If you do need to change your locale, be aware that the format of this function
// is subtlely different in versions of PHP before and after 4.3.0, see
// http://uk2.php.net/manual/en/function.setlocale.php for details.
// Also be aware that changing the whole locale may affect some floating point or decimal
// arithmetic in the database, if this is the case change only the individual locale areas
// that don't affect this rather than all at once. See the examples below.
// Finally, depending on your setup, PHP may not enjoy have multiple locales in a shared
// threaded environment, if you get funny errors it may be this.
//
// Examples
// setlocale( 'LC_ALL', 'en_GB' ); All locale settings pre-4.3.0
// setlocale( LC_ALL, 'en_GB' ); All locale settings 4.3.0 and after
// setlocale( LC_CTYPE, 'en_GB' ); Character class settings 4.3.0 and after
// setlocale( LC_TIME, 'en_GB' ); Date and time formatting 4.3.0 and after
// Simple String Replacements
$SLANG = array(
'24BitColour' => '24 bitars färg',
'8BitGrey' => '8 bit gråskala',
'Action' => 'Action',
'Actual' => 'Verklig',
'AddNewControl' => 'Ny kontroll',
'AddNewMonitor' => 'Ny bevakare',
'AddNewUser' => 'Ny användare',
'AddNewZone' => 'Ny zon',
'Alarm' => 'Larm',
'AlarmBrFrames' => 'Larm<br/>ramar',
'AlarmFrame' => 'Larmram',
'AlarmFrameCount' => 'Larmramsräknare',
'AlarmLimits' => 'Larmgränser',
'AlarmMaximumFPS' => 'Max. ramar/s för larm',
'AlarmPx' => 'Larmpunkter',
'AlarmRGBUnset' => 'Du måste sätta en färg för RGB-larm',
'Alert' => 'Varning',
'All' => 'Alla',
'Apply' => 'Lägg till',
'ApplyingStateChange' => 'Aktivera statusändring',
'ArchArchived' => 'Arkivera endast',
'ArchUnarchived' => 'Endast ej arkiverade',
'Archive' => 'Arkiv',
'Archived' => 'Arkiverad',
'Area' => 'Område',
'AreaUnits' => 'Område (px/%)',
'AttrAlarmFrames' => 'Larmramar',
'AttrArchiveStatus' => 'Arkivstatus',
'AttrAvgScore' => 'Ung. värde',
'AttrCause' => 'Orsak',
'AttrDate' => 'Datum',
'AttrDateTime' => 'Datum/Tid',
'AttrDiskBlocks' => 'Diskblock',
'AttrDiskPercent' => 'Diskprocent',
'AttrDuration' => 'Längd',
'AttrFrames' => 'Ramar',
'AttrId' => 'Id',
'AttrMaxScore' => 'Max. värde',
'AttrMonitorId' => 'Bevakningsid',
'AttrMonitorName' => 'Bevakningsnamn',
'AttrName' => 'Namn',
'AttrNotes' => 'Notering',
'AttrSystemLoad' => 'Systemlast',
'AttrTime' => 'Tid',
'AttrTotalScore' => 'Totalvärde',
'AttrWeekday' => 'Veckodag',
'Auto' => 'Automatik',
'AutoStopTimeout' => 'Tidsutlösning för automatstop',
'Available' => 'Available', // Added - 2009-03-31
'AvgBrScore' => 'Ung.<br/>träff',
'Background' => 'Bakgrund',
'BackgroundFilter' => 'Kör filter i bakgrunden',
'BadAlarmFrameCount' => 'Ramantalet för larm måste vara ett heltal, minsta värdet är 1',
'BadAlarmMaxFPS' => 'Larm för bilder/s måste vara ett positivt heltal eller ett flyttal',
'BadChannel' => 'Kanalen måste vara ett heltal, noll eller högre',
'BadDevice' => 'Enheten måste sättas till ett giltigt värde',
'BadFPSReportInterval' => 'Buffern för ramintervallrapporten måste vara ett heltal på minst 0 eller högre',
'BadFormat' => 'Formatet måste vara ett heltal, noll eller högre',
'BadFrameSkip' => 'Värdet för ramöverhopp måste vara ett heltal på 0 eller högre',
'BadHeight' => 'Höjden måste sättas till ett giltigt värde',
'BadHost' => 'Detta fält ska innehålla en giltig ip-adress eller värdnamn, inkludera inte http://',
'BadImageBufferCount' => 'Bufferstorleken för avbilden måste vara ett heltal på minst 10 eller högre',
'BadLabelX' => 'Etiketten för X koordinaten måste sättas till ett heltal, 0 eller högre',
'BadLabelY' => 'Etiketten för Y koordinaten måste sättas till ett heltal, 0 eller högre',
'BadMaxFPS' => 'Max. ramar/s måste vara ett positivt heltal eller ett flyttal',
'BadNameChars' => 'Namn kan endast innehålla alfanumeriska tecken, bindestreck och understreck',
'BadPalette' => 'Palette must be set to a valid value', // Added - 2009-03-31
'BadPath' => 'Sökvägen måste innehålla ett giltigt värde',
'BadPort' => 'Porten måste innehålla ett giltigt nummer',
'BadPostEventCount' => 'Räknaren för efterhändelsen måste vara ett heltal på 0 eller högre',
'BadPreEventCount' => 'Räknaren för för-händelsen måste vara ett heltal på 0 eller högre, och mindre än bufferstorleken på avbilden',
'BadRefBlendPerc' => 'Mixprocenten för referensen måste hara ett positivt heltal',
'BadSectionLength' => 'Sektionslängden måste vara ett heltal på minst 30 eller högre',
'BadSignalCheckColour' => 'Kontrollfärgen på signalen måste vara en giltig RGB färgsträng',
'BadStreamReplayBuffer'=> 'Buffern för strömmande uppspelning måste vara ett heltal på 0 eller högre',
'BadWarmupCount' => 'Uppvärmingsramen måste vara ett heltal på 0 eller högre',
'BadWebColour' => 'Webbfärgen måste vara en giltig sträng för webbfärg',
'BadWidth' => 'Bredden måste sättas til ett giltigt värde',
'Bandwidth' => 'Bandbredd',
'BlobPx' => 'Blob Px',
'BlobSizes' => 'Blobstorlek',
'Blobs' => 'Blobbar',
'Brightness' => 'Ljusstyrka',
'Buffers' => 'Buffrar',
'CanAutoFocus' => 'Har autofokus',
'CanAutoGain' => 'Har autonivå',
'CanAutoIris' => 'Har autoiris',
'CanAutoWhite' => 'Har autovitbalans.',
'CanAutoZoom' => 'Har autozoom',
'CanFocus' => 'Har fokus',
'CanFocusAbs' => 'Har absolut fokus',
'CanFocusCon' => 'Har kontinuerlig fokus',
'CanFocusRel' => 'Har relativ fokus',
'CanGain' => 'Har nivå',
'CanGainAbs' => 'Har absolut nivå',
'CanGainCon' => 'Har kontinuerlig nivå',
'CanGainRel' => 'Har relativ nivå',
'CanIris' => 'Har iris',
'CanIrisAbs' => 'Har absolut iris',
'CanIrisCon' => 'Har kontinuerlig iris',
'CanIrisRel' => 'Har relativ iris',
'CanMove' => 'Har förflyttning',
'CanMoveAbs' => 'Har absolut förflyttning',
'CanMoveCon' => 'Har kontinuerlig förflyttning',
'CanMoveDiag' => 'Har diagonal förflyttning',
'CanMoveMap' => 'Har mappad förflyttning',
'CanMoveRel' => 'Har relativ förflyttning',
'CanPan' => 'Har panorering',
'CanReset' => 'Har återställning',
'CanSetPresets' => 'Har förinställningar',
'CanSleep' => 'Kan vila',
'CanTilt' => 'Kan tilta',
'CanWake' => 'Kan vakna',
'CanWhite' => 'Kan vitbalansera',
'CanWhiteAbs' => 'Har absolut vitbalans',
'CanWhiteBal' => 'Kan vitbalans',
'CanWhiteCon' => 'Kan kontinuerligt vitbalansera',
'CanWhiteRel' => 'Kan relativt vitbalansera',
'CanZoom' => 'Kan zooma',
'CanZoomAbs' => 'Kan zooma absolut',
'CanZoomCon' => 'Kan zooma kontinuerligt',
'CanZoomRel' => 'Kan zooma realativt',
'Cancel' => 'Ångra',
'CancelForcedAlarm' => 'Ångra tvingande larm',
'CaptureHeight' => 'Fångsthöjd',
'CaptureMethod' => 'Capture Method', // Added - 2009-02-08
'CapturePalette' => 'Fångstpalett',
'CaptureWidth' => 'Fångstbredd',
'Cause' => 'Orsak',
'CheckMethod' => 'Larmkontrollmetod',
'ChooseDetectedCamera' => 'Choose Detected Camera', // Added - 2009-03-31
'ChooseFilter' => 'Välj filter',
'ChooseLogFormat' => 'Choose a log format', // Added - 2011-06-17
'ChooseLogSelection' => 'Choose a log selection', // Added - 2011-06-17
'ChoosePreset' => 'Välj standard',
'Clear' => 'Clear', // Added - 2011-06-16
'Close' => 'Stäng',
'Colour' => 'Färg',
'Command' => 'Kommando',
'Component' => 'Component', // Added - 2011-06-16
'Config' => 'Konfigurera',
'ConfiguredFor' => 'Konfigurerad för',
'ConfirmDeleteEvents' => 'Är du säker på att du vill ta bort dom valda händelserna?',
'ConfirmPassword' => 'Bekräfta lösenord',
'ConjAnd' => 'och',
'ConjOr' => 'eller',
'Console' => 'Konsoll',
'ContactAdmin' => 'Kontakta din administratör för detaljer.',
'Continue' => 'Fortsätt',
'Contrast' => 'Kontrast',
'Control' => 'Kontroll',
'ControlAddress' => 'Kontrolladress',
'ControlCap' => 'Kontrollförmåga',
'ControlCaps' => 'Kontrollförmågor',
'ControlDevice' => 'Kontrollenhet',
'ControlType' => 'Kontrolltyp',
'Controllable' => 'Kontrollerbar',
'Cycle' => 'Period',
'CycleWatch' => 'Cycle Watch',
'DateTime' => 'Date/Time', // Added - 2011-06-16
'Day' => 'Dag',
'Debug' => 'Avlusa',
'DefaultRate' => 'Standardhastighet',
'DefaultScale' => 'Standardskala',
'DefaultView' => 'Standardvy',
'Delete' => 'Radera',
'DeleteAndNext' => 'Radera &amp; Nästa',
'DeleteAndPrev' => 'Radera &amp; Föreg.',
'DeleteSavedFilter' => 'Radera sparade filter',
'Description' => 'Beskrivning',
'DetectedCameras' => 'Detected Cameras', // Added - 2009-03-31
'Device' => 'Device', // Added - 2009-02-08
'DeviceChannel' => 'Enhetskanal',
'DeviceFormat' => 'Enhetsformat',
'DeviceNumber' => 'Enhetsnummer',
'DevicePath' => 'Enhetssökväg',
'Devices' => 'Enheter',
'Dimensions' => 'Dimensioner',
'DisableAlarms' => 'Avaktivera larm',
'Disk' => 'Disk',
'Display' => 'Display', // Added - 2011-01-30
'Displaying' => 'Displaying', // Added - 2011-06-16
'Donate' => 'Var vänlig och donera',
'DonateAlready' => 'Nej, Jag har redan donerat',
'DonateEnticement' => 'Du har kört ZoneMinder ett tag nu och förhoppningsvis har du sett att det fungerar bra hemma eller på ditt företag. Även om ZoneMinder är, och kommer att vara, fri programvara och öppen kallkod, så kostar det pengar att utveckla och underhålla. Om du vill hjälpa till med framtida utveckling och nya funktioner så var vanlig och bidrag med en slant. Bidragen är naturligtvis en option men mycket uppskattade och du kan bidra med precis hur mycket du vill.<br><br>Om du vill ge ett bidrag väljer du nedan eller surfar till http://www.zoneminder.com/donate.html.<br><br>Tack för att du använder ZoneMinder, glöm inte att besöka forumen på ZoneMinder.com för support och förslag om hur du får din ZoneMinder att fungera lite bättre.',
'DonateRemindDay' => 'Inte än, påminn om 1 dag',
'DonateRemindHour' => 'Inte än, påminn om en 1 timme',
'DonateRemindMonth' => 'Inte än, påminn om 1 månad',
'DonateRemindNever' => 'Nej, Jag vill inte donera, påminn mig inte mer',
'DonateRemindWeek' => 'Inte än, påminn om 1 vecka',
'DonateYes' => 'Ja, jag vill gärna donera nu',
'Download' => 'Ladda ner',
'DuplicateMonitorName' => 'Duplicate Monitor Name', // Added - 2009-03-31
'Duration' => 'Längd',
'Edit' => 'Redigera',
'Email' => 'E-post',
'EnableAlarms' => 'Aktivera larm',
'Enabled' => 'Aktiverad',
'EnterNewFilterName' => 'Mata in nytt filternamn',
'Error' => 'Fel',
'ErrorBrackets' => 'Fel, kontrollera att du har samma antal vänster som höger-hakar',
'ErrorValidValue' => 'Fel, kontrollera att alla parametrar har giltligt värde',
'Etc' => 'etc',
'Event' => 'Händelse',
'EventFilter' => 'Händelsefilter',
'EventId' => 'Händelse nr',
'EventName' => 'Händelsenamn',
'EventPrefix' => 'Händelseprefix',
'Events' => 'Händelser',
'Exclude' => 'Exkludera',
'Execute' => 'Utför',
'Export' => 'Exportera',
'ExportDetails' => 'Exportera händelsedetaljer',
'ExportFailed' => 'Exporten misslyckades',
'ExportFormat' => 'Filformat för exporter',
'ExportFormatTar' => 'Tar',
'ExportFormatZip' => 'Zip',
'ExportFrames' => 'Exportera ramdetaljer',
'ExportImageFiles' => 'Exportera bildfiler',
'ExportLog' => 'Export Log', // Added - 2011-06-17
'ExportMiscFiles' => 'Exportera andra filer (om dom finns)',
'ExportOptions' => 'Konfiguera export',
'ExportSucceeded' => 'Export Succeeded', // Added - 2009-02-08
'ExportVideoFiles' => 'Exportera videofiler (om dom finns)',
'Exporting' => 'Exporterar',
'FPS' => 'fps',
'FPSReportInterval' => 'FPS rapportintervall',
'FTP' => 'FTP',
'Far' => 'Far',
'FastForward' => 'Fast Forward',
'Feed' => 'Matning',
'Ffmpeg' => 'Ffmpeg', // Added - 2009-02-08
'File' => 'Fil',
'FilterArchiveEvents' => 'Arkivera alla träffar',
'FilterDeleteEvents' => 'Radera alla träffar',
'FilterEmailEvents' => 'Skicka e-post med detaljer om alla träffar',
'FilterExecuteEvents' => 'Utför kommando på alla träffar',
'FilterMessageEvents' => 'Meddela detaljer om alla träffar',
'FilterPx' => 'Filter Px',
'FilterUnset' => 'Du måste specificera filtrets bredd och höjd',
'FilterUploadEvents' => 'Ladda upp alla träffar',
'FilterVideoEvents' => 'Skapa video för alla träffar',
'Filters' => 'Filter',
'First' => 'Först',
'FlippedHori' => 'Vänd horisontellt',
'FlippedVert' => 'Vänd vertikalt',
'Focus' => 'Fokus',
'ForceAlarm' => 'Tvinga larm',
'Format' => 'Format',
'Frame' => 'Ram',
'FrameId' => 'Ram id',
'FrameRate' => 'Ram hastighet',
'FrameSkip' => 'Hoppa över ram',
'Frames' => 'Ramar',
'Func' => 'Funk',
'Function' => 'Funktion',
'Gain' => 'Nivå',
'General' => 'Generell',
'GenerateVideo' => 'Skapa video',
'GeneratingVideo' => 'Skapar video',
'GoToZoneMinder' => 'Gå till ZoneMinder.com',
'Grey' => 'Grå',
'Group' => 'Grupp',
'Groups' => 'Grupper',
'HasFocusSpeed' => 'Har focushastighet',
'HasGainSpeed' => 'Har nivåhastighet',
'HasHomePreset' => 'Har normalinställning',
'HasIrisSpeed' => 'Har irishastighet',
'HasPanSpeed' => 'Har panoramahastighet',
'HasPresets' => 'Har förinställningar',
'HasTiltSpeed' => 'Har tilthastighet',
'HasTurboPan' => 'Har turbopanorering',
'HasTurboTilt' => 'Har turbotilt',
'HasWhiteSpeed' => 'Har vitbalanshastighet',
'HasZoomSpeed' => 'Har Zoomhastighet',
'High' => 'Hög',
'HighBW' => 'Hög bandbredd',
'Home' => 'Hem',
'Hour' => 'Timme',
'Hue' => 'Hue',
'Id' => 'nr',
'Idle' => 'Vila',
'Ignore' => 'Ignorera',
'Image' => 'Bild',
'ImageBufferSize' => 'Bildbufferstorlek (ramar)',
'Images' => 'Images',
'In' => 'I',
'Include' => 'Inkludera',
'Inverted' => 'Inverterad',
'Iris' => 'Iris',
'KeyString' => 'Nyckelsträng',
'Label' => 'Etikett',
'Language' => 'Språk',
'Last' => 'Sist',
'Layout' => 'Layout', // Added - 2009-02-08
'Level' => 'Level', // Added - 2011-06-16
'LimitResultsPost' => 'resultaten;', // This is used at the end of the phrase 'Limit to first N results only'
'LimitResultsPre' => 'Begränsa till första', // This is used at the beginning of the phrase 'Limit to first N results only'
'Line' => 'Line', // Added - 2011-06-16
'LinkedMonitors' => 'Länkade övervakare',
'List' => 'Lista',
'Load' => 'Belastning',
'Local' => 'Lokal',
'Log' => 'Log', // Added - 2011-06-16
'LoggedInAs' => 'Inloggad som',
'Logging' => 'Logging', // Added - 2011-06-16
'LoggingIn' => 'Loggar in',
'Login' => 'Logga in',
'Logout' => 'Logga ut',
'Logs' => 'Logs', // Added - 2011-06-17
'Low' => 'Låg',
'LowBW' => 'Låg bandbredd',
'Main' => 'Huvudmeny',
'Man' => 'Man',
'Manual' => 'Manuell',
'Mark' => 'Markera',
'Max' => 'Max',
'MaxBandwidth' => 'Max bandbredd',
'MaxBrScore' => 'Max.<br/>Score',
'MaxFocusRange' => 'Max fokusområde',
'MaxFocusSpeed' => 'Max fokushastighet',
'MaxFocusStep' => 'Max fokussteg',
'MaxGainRange' => 'Max nivåområde',
'MaxGainSpeed' => 'Max nivåhastighet',
'MaxGainStep' => 'Max nivåsteg',
'MaxIrisRange' => 'Max irsiområde',
'MaxIrisSpeed' => 'Max irishastighet',
'MaxIrisStep' => 'Max irissteg',
'MaxPanRange' => 'Max panoramaområde',
'MaxPanSpeed' => 'Max panoramahastighet',
'MaxPanStep' => 'Max panoramasteg',
'MaxTiltRange' => 'Max tiltområde',
'MaxTiltSpeed' => 'Max tilthastighet',
'MaxTiltStep' => 'Max tiltsteg',
'MaxWhiteRange' => 'Max vitbalansområde',
'MaxWhiteSpeed' => 'Max vitbalanshastighet',
'MaxWhiteStep' => 'Max vitbalanssteg',
'MaxZoomRange' => 'Max zoomområde',
'MaxZoomSpeed' => 'Max zoomhastighet',
'MaxZoomStep' => 'Max zoomsteg',
'MaximumFPS' => 'Max ramar/s',
'Medium' => 'Mellan',
'MediumBW' => 'Mellan bandbredd',
'Message' => 'Message', // Added - 2011-06-16
'MinAlarmAreaLtMax' => 'Minsta larmarean skall vara mindre än största',
'MinAlarmAreaUnset' => 'Du måste ange minsta antal larmbildpunkter',
'MinBlobAreaLtMax' => 'Minsta blobarean skall vara mindre än högsta',
'MinBlobAreaUnset' => 'Du måste ange minsta antalet blobpixlar',
'MinBlobLtMinFilter' => 'Minsta blobarean skall vara mindre än eller lika med minsta filterarean',
'MinBlobsLtMax' => 'Minsta antalet blobbar skall vara mindre än största',
'MinBlobsUnset' => 'Du måste ange minsta antalet blobbar',
'MinFilterAreaLtMax' => 'Minsta filterarean skall vara mindre än högsta',
'MinFilterAreaUnset' => 'Du måste ange minsta antal filterbildpunkter',
'MinFilterLtMinAlarm' => 'Minsta filterarean skall vara mindre än eller lika med minsta larmarean',
'MinFocusRange' => 'Min fokusområde',
'MinFocusSpeed' => 'Min fokushastighet',
'MinFocusStep' => 'Min fokussteg',
'MinGainRange' => 'Min nivåområde',
'MinGainSpeed' => 'Min nivåhastighet',
'MinGainStep' => 'Min nivåsteg',
'MinIrisRange' => 'Min irisområde',
'MinIrisSpeed' => 'Min irishastighet',
'MinIrisStep' => 'Min irissteg',
'MinPanRange' => 'Min panoramaområde',
'MinPanSpeed' => 'Min panoramahastighet',
'MinPanStep' => 'Min panoramasteg',
'MinPixelThresLtMax' => 'Minsta tröskelvärde för bildpunkter ska vara mindre än högsta',
'MinPixelThresUnset' => 'Du måste ange minsta tröskelvärde för bildpunkter',
'MinTiltRange' => 'Min tiltområde',
'MinTiltSpeed' => 'Min tilthastighet',
'MinTiltStep' => 'Min tiltsteg',
'MinWhiteRange' => 'Min vitbalansområde',
'MinWhiteSpeed' => 'Min vitbalanshastighet',
'MinWhiteStep' => 'Min vitbalanssteg',
'MinZoomRange' => 'Min zoomområde',
'MinZoomSpeed' => 'Min zoomhastighet',
'MinZoomStep' => 'Min zoomsteg',
'Misc' => 'Övrigt',
'Monitor' => 'Bevakning',
'MonitorIds' => 'Bevakningsnr',
'MonitorPreset' => 'Förinställd bevakning',
'MonitorPresetIntro' => 'Välj en förinställning från listan.<br><br>Var medveten om att detta kan skriva över inställningar du redan gjort för denna bevakare.<br><br>',
'MonitorProbe' => 'Monitor Probe', // Added - 2009-03-31
'MonitorProbeIntro' => 'The list below shows detected analog and network cameras and whether they are already being used or available for selection.<br/><br/>Select the desired entry from the list below.<br/><br/>Please note that not all cameras may be detected and that choosing a camera here may overwrite any values you already have configured for the current monitor.<br/><br/>', // Added - 2009-03-31
'Monitors' => 'Bevakare',
'Montage' => 'Montera',
'Month' => 'Månad',
'More' => 'More', // Added - 2011-06-16
'Move' => 'Flytta',
'MustBeGe' => 'måste vara större än eller lika med',
'MustBeLe' => 'måste vara mindre än eller lika med',
'MustConfirmPassword' => 'Du måste bekräfta lösenordet',
'MustSupplyPassword' => 'Du måste ange ett lösenord',
'MustSupplyUsername' => 'Du måste ange ett användarnamn',
'Name' => 'Namn',
'Near' => 'Nära',
'Network' => 'Nätverk',
'New' => 'Ny',
'NewGroup' => 'Ny grupp',
'NewLabel' => 'Ny etikett',
'NewPassword' => 'Nytt lösenord',
'NewState' => 'Nytt läge',
'NewUser' => 'Ny användare',
'Next' => 'Nästa',
'No' => 'Nej',
'NoDetectedCameras' => 'No Detected Cameras', // Added - 2009-03-31
'NoFramesRecorded' => 'Det finns inga ramar inspelade för denna händelse',
'NoGroup' => 'Ingen grupp',
'NoSavedFilters' => 'Inga sparade filter',
'NoStatisticsRecorded' => 'Det finns ingen statistik inspelad för denna händelse/ram',
'None' => 'Ingen',
'NoneAvailable' => 'Ingen tillgänglig',
'Normal' => 'Normal',
'Notes' => 'Not.',
'NumPresets' => 'Antal förinställningar',
'Off' => 'Av',
'On' => 'På',
'OpEq' => 'lika med',
'OpGt' => 'större än',
'OpGtEq' => 'större än eller lika med',
'OpIn' => 'in set',
'OpLt' => 'mindre än',
'OpLtEq' => 'mindre än eller lika med',
'OpMatches' => 'matchar',
'OpNe' => 'inte lika med',
'OpNotIn' => 'inte i set',
'OpNotMatches' => 'matchar inte',
'Open' => 'Öppna',
'OptionHelp' => 'Optionhjälp',
'OptionRestartWarning' => 'Dessa ändringar kommer inte att vara implementerade\nnär systemet körs. När du är klar starta om\n ZoneMinder.',
'Options' => 'Alternativ',
'OrEnterNewName' => 'eller skriv in nytt namn',
'Order' => 'Sortera',
'Orientation' => 'Orientation',
'Out' => 'Ut',
'OverwriteExisting' => 'Skriv över',
'Paged' => 'Paged',
'Pan' => 'Panorera',
'PanLeft' => 'Panorera vänster',
'PanRight' => 'Panorera höger',
'PanTilt' => 'Pan/Tilt',
'Parameter' => 'Parameter',
'Password' => 'Lösenord',
'PasswordsDifferent' => 'Lösenorden skiljer sig åt',
'Paths' => 'Sökvägar',
'Pause' => 'Paus',
'Phone' => 'Mobil',
'PhoneBW' => 'Mobil bandbredd',
'Pid' => 'PID', // Added - 2011-06-16
'PixelDiff' => 'Skillnad i bildpunkter',
'Pixels' => 'bildpunkter',
'Play' => 'Spela',
'PlayAll' => 'Visa alla',
'PleaseWait' => 'Vänta...',
'Point' => 'Punkt',
'PostEventImageBuffer' => 'Post Event Image Count',
'PreEventImageBuffer' => 'Pre Event Image Count',
'PreserveAspect' => 'Bevara lägesförhållande',
'Preset' => 'Förinställning',
'Presets' => 'Förinställningar',
'Prev' => 'Föreg.',
'Probe' => 'Probe', // Added - 2009-03-31
'Protocol' => 'Protokol',
'Rate' => 'Hastighet',
'Real' => 'Verklig',
'Record' => 'Spela in',
'RefImageBlendPct' => 'Reference Image Blend %ge',
'Refresh' => 'Uppdatera',
'Remote' => 'Fjärr',
'RemoteHostName' => 'Fjärrnamn',
'RemoteHostPath' => 'Fjärrsökväg',
'RemoteHostPort' => 'Fjärrport',
'RemoteHostSubPath' => 'Remote Host SubPath', // Added - 2009-02-08
'RemoteImageColours' => 'Fjärrbildfärger',
'RemoteMethod' => 'Remote Method', // Added - 2009-02-08
'RemoteProtocol' => 'Remote Protocol', // Added - 2009-02-08
'Rename' => 'Byt namn',
'Replay' => 'Repris',
'ReplayAll' => 'Alla händelser',
'ReplayGapless' => 'Gapless Events',
'ReplaySingle' => 'Ensam händelse',
'Reset' => 'Återställ',
'ResetEventCounts' => 'Återställ händelseräknare',
'Restart' => 'Återstart',
'Restarting' => 'Återstartar',
'RestrictedCameraIds' => 'Begränsade kameranr.',
'RestrictedMonitors' => 'Begränsade bevakare',
'ReturnDelay' => 'Fördröjd retur',
'ReturnLocation' => 'Återvänd till position',
'Rewind' => 'Backa',
'RotateLeft' => 'Rotera vänster',
'RotateRight' => 'Rotera höger',
'RunLocalUpdate' => 'Please run zmupdate.pl to update', // Added - 2011-05-25
'RunMode' => 'Körläge',
'RunState' => 'Körläge',
'Running' => 'Körs',
'Save' => 'Spara',
'SaveAs' => 'Spara som',
'SaveFilter' => 'Spara filter',
'Scale' => 'Skala',
'Score' => 'Resultat',
'Secs' => 'Sek',
'Sectionlength' => 'Sektionslängd',
'Select' => 'Välj',
'SelectFormat' => 'Select Format', // Added - 2011-06-17
'SelectLog' => 'Select Log', // Added - 2011-06-17
'SelectMonitors' => 'Välj bevakare',
'SelfIntersecting' => 'Polygonändarna får inte överlappa',
'Set' => 'Ställ in',
'SetNewBandwidth' => 'Ställ in ny bandbredd',
'SetPreset' => 'Ställ in förinställning',
'Settings' => 'Inställningar',
'ShowFilterWindow' => 'Visa fönsterfilter',
'ShowTimeline' => 'Visa tidslinje',
'SignalCheckColour' => 'Signal Check Colour',
'Size' => 'Storlek',
'SkinDescription' => 'Change the default skin for this computer', // Added - 2011-01-30
'Sleep' => 'Vila',
'SortAsc' => 'Stigande',
'SortBy' => 'Sortera',
'SortDesc' => 'Fallande',
'Source' => 'Källa',
'SourceColours' => 'Source Colours', // Added - 2009-02-08
'SourcePath' => 'Source Path', // Added - 2009-02-08
'SourceType' => 'Källtyp',
'Speed' => 'Hastighet',
'SpeedHigh' => 'Höghastighet',
'SpeedLow' => 'Låghastighet',
'SpeedMedium' => 'Normalhastighet',
'SpeedTurbo' => 'Turbohastighet',
'Start' => 'Start',
'State' => 'Läge',
'Stats' => 'Statistik',
'Status' => 'Status',
'Step' => 'Steg',
'StepBack' => 'Stepga bakåt',
'StepForward' => 'Stega framåt',
'StepLarge' => 'Stora steg',
'StepMedium' => 'Normalsteg',
'StepNone' => 'Inga steg',
'StepSmall' => 'Små steg',
'Stills' => 'Stillbilder',
'Stop' => 'Stopp',
'Stopped' => 'Stoppad',
'Stream' => 'Strömmande',
'StreamReplayBuffer' => 'Buffert för strömmande uppspelning',
'Submit' => 'Skicka',
'System' => 'System',
'SystemLog' => 'System Log', // Added - 2011-06-16
'Tele' => 'Tele',
'Thumbnail' => 'Miniatyrer',
'Tilt' => 'Tilt',
'Time' => 'Tid',
'TimeDelta' => 'tidsdelta',
'TimeStamp' => 'Tidsstämpel',
'Timeline' => 'Tidslinje',
'Timestamp' => 'Tidsstämpel',
'TimestampLabelFormat' => 'Format på tidsstämpel',
'TimestampLabelX' => 'Värde på tidsstämpel X',
'TimestampLabelY' => 'Värde på tidsstämpel Y',
'Today' => 'Idag',
'Tools' => 'Verktyg',
'Total' => 'Total', // Added - 2011-06-16
'TotalBrScore' => 'Total<br/>Score',
'TrackDelay' => 'Spårfördröjning',
'TrackMotion' => 'Spåra rörelse',
'Triggers' => 'Triggers',
'TurboPanSpeed' => 'Turbo panoramahastighet',
'TurboTiltSpeed' => 'Turbo tilthastighet',
'Type' => 'Typ',
'Unarchive' => 'Packa upp',
'Undefined' => 'Undefined', // Added - 2009-02-08
'Units' => 'Enheter',
'Unknown' => 'Okänd',
'Update' => 'Uppdatera',
'UpdateAvailable' => 'En uppdatering till ZoneMinder finns tillgänglig.',
'UpdateNotNecessary' => 'Ingen uppdatering behövs.',
'Updated' => 'Updated', // Added - 2011-06-16
'Upload' => 'Upload', // Added - 2011-08-23
'UseFilter' => 'Använd filter',
'UseFilterExprsPost' => '&nbsp;filter&nbsp;expressions', // This is used at the end of the phrase 'use N filter expressions'
'UseFilterExprsPre' => 'Använd&nbsp;', // This is used at the beginning of the phrase 'use N filter expressions'
'User' => 'Användare',
'Username' => 'Användarnamn',
'Users' => 'Användare',
'Value' => 'Värde',
'Version' => 'Version',
'VersionIgnore' => 'Ignorera denna version',
'VersionRemindDay' => 'Påminn om 1 dag',
'VersionRemindHour' => 'Påminn om 1 timme',
'VersionRemindNever' => 'Påminn inte om nya versioner',
'VersionRemindWeek' => 'Påminn om en 1 vecka',
'Video' => 'Video',
'VideoFormat' => 'Videoformat',
'VideoGenFailed' => 'Videogenereringen misslyckades!',
'VideoGenFiles' => 'Befintliga videofiler',
'VideoGenNoFiles' => 'Inga videofiler',
'VideoGenParms' => 'Inställningar för videogenerering',
'VideoGenSucceeded' => 'Videogenereringen lyckades!',
'VideoSize' => 'Videostorlek',
'View' => 'Visa',
'ViewAll' => 'Visa alla',
'ViewEvent' => 'Visa händelse',
'ViewPaged' => 'Visa Paged',
'Wake' => 'Vakna',
'WarmupFrames' => 'Värm upp ramar',
'Watch' => 'Se',
'Web' => 'Webb',
'WebColour' => 'Webbfärg',
'Week' => 'Vecka',
'White' => 'Vit',
'WhiteBalance' => 'Vitbalans',
'Wide' => 'Vid',
'X' => 'X',
'X10' => 'X10',
'X10ActivationString' => 'X10 aktiveringssträng',
'X10InputAlarmString' => 'X10 larmingångssträng',
'X10OutputAlarmString' => 'X10 larmutgångssträng',
'Y' => 'J',
'Yes' => 'Ja',
'YouNoPerms' => 'Du har inte tillstånd till denna resurs.',
'Zone' => 'Zon',
'ZoneAlarmColour' => 'Larmfärg (Röd/Grön/Blå)',
'ZoneArea' => 'Zonarea',
'ZoneFilterSize' => 'Filterbredd/höjd (pixlar)',
'ZoneMinMaxAlarmArea' => 'Min/Max larmarea',
'ZoneMinMaxBlobArea' => 'Min/Max blobbarea',
'ZoneMinMaxBlobs' => 'Min/Max blobbar',
'ZoneMinMaxFiltArea' => 'Min/Max filterarea',
'ZoneMinMaxPixelThres' => 'Min/Max pixel Threshold (0-255)',
'ZoneMinderLog' => 'ZoneMinder Log', // Added - 2011-06-17
'ZoneOverloadFrames' => 'Overload Frame Ignore Count',
'Zones' => 'Zoner',
'Zoom' => 'Zoom',
'ZoomIn' => 'Zooma in',
'ZoomOut' => 'Zooma ut',
);
// Complex replacements with formatting and/or placements, must be passed through sprintf
$CLANG = array(
'CurrentLogin' => 'Aktuell inloggning är \'%1$s\'',
'EventCount' => '%1$s %2$s', // For example '37 Events' (from Vlang below)
'LastEvents' => 'Senaste %1$s %2$s', // For example 'Last 37 Events' (from Vlang below)
'LatestRelease' => 'Aktuell version är v%1$s, du har v%2$s.',
'MonitorCount' => '%1$s %2$s', // For example '4 Monitors' (from Vlang below)
'MonitorFunction' => 'Bevakare %1$s funktion',
'RunningRecentVer' => 'Du använder den senaste versionen av ZoneMinder, v%s.',
'VersionMismatch' => 'Version mismatch, system is version %1$s, database is %2$s.', // Added - 2011-05-25
);
// The next section allows you to describe a series of word ending and counts used to
// generate the correctly conjugated forms of words depending on a count that is associated
// with that word.
// This intended to allow phrases such a '0 potatoes', '1 potato', '2 potatoes' etc to
// conjugate correctly with the associated count.
// In some languages such as English this is fairly simple and can be expressed by assigning
// a count with a singular or plural form of a word and then finding the nearest (lower) value.
// So '0' of something generally ends in 's', 1 of something is singular and has no extra
// ending and 2 or more is a plural and ends in 's' also. So to find the ending for '187' of
// something you would find the nearest lower count (2) and use that ending.
//
// So examples of this would be
// $zmVlangPotato = array( 0=>'Potatoes', 1=>'Potato', 2=>'Potatoes' );
// $zmVlangSheep = array( 0=>'Sheep' );
//
// where you can have as few or as many entries in the array as necessary
// If your language is similar in form to this then use the same format and choose the
// appropriate zmVlang function below.
// If however you have a language with a different format of plural endings then another
// approach is required . For instance in Russian the word endings change continuously
// depending on the last digit (or digits) of the numerator. In this case then zmVlang
// arrays could be written so that the array index just represents an arbitrary 'type'
// and the zmVlang function does the calculation about which version is appropriate.
//
// So an example in Russian might be (using English words, and made up endings as I
// don't know any Russian!!)
// $zmVlangPotato = array( 1=>'Potati', 2=>'Potaton', 3=>'Potaten' );
//
// and the zmVlang function decides that the first form is used for counts ending in
// 0, 5-9 or 11-19 and the second form when ending in 1 etc.
//
// Variable arrays expressing plurality, see the zmVlang description above
$VLANG = array(
'Event' => array( 0=>'Händelser', 1=>'Händelsen', 2=>'Händelserna' ),
'Monitor' => array( 0=>'Bevakare', 1=>'Bevakare', 2=>'Bevakare' ),
);
// You will need to choose or write a function that can correlate the plurality string arrays
// with variable counts. This is used to conjugate the Vlang arrays above with a number passed
// in to generate the correct noun form.
//
// In languages such as English this is fairly simple
// Note this still has to be used with printf etc to get the right formating
function zmVlang( $langVarArray, $count )
{
krsort( $langVarArray );
foreach ( $langVarArray as $key=>$value )
{
if ( abs($count) >= $key )
{
return( $value );
}
}
die( 'Fel, kan inte relatera variabel språksträng' );
}
// This is an version that could be used in the Russian example above
// The rules are that the first word form is used if the count ends in
// 0, 5-9 or 11-19. The second form is used then the count ends in 1
// (not including 11 as above) and the third form is used when the
// count ends in 2-4, again excluding any values ending in 12-14.
//
// function zmVlang( $langVarArray, $count )
// {
// $secondlastdigit = substr( $count, -2, 1 );
// $lastdigit = substr( $count, -1, 1 );
// // or
// // $secondlastdigit = ($count/10)%10;
// // $lastdigit = $count%10;
//
// // Get rid of the special cases first, the teens
// if ( $secondlastdigit == 1 && $lastdigit != 0 )
// {
// return( $langVarArray[1] );
// }
// switch ( $lastdigit )
// {
// case 0 :
// case 5 :
// case 6 :
// case 7 :
// case 8 :
// case 9 :
// {
// return( $langVarArray[1] );
// break;
// }
// case 1 :
// {
// return( $langVarArray[2] );
// break;
// }
// case 2 :
// case 3 :
// case 4 :
// {
// return( $langVarArray[3] );
// break;
// }
// }
// die( 'Error, unable to correlate variable language string' );
// }
// This is an example of how the function is used in the code which you can uncomment and
// use to test your custom function.
//$monitors = array();
//$monitors[] = 1; // Choose any number
//echo sprintf( $zmClangMonitorCount, count($monitors), zmVlang( $zmVlangMonitor, count($monitors) ) );
// In this section you can override the default prompt and help texts for the options area
// These overrides are in the form show below where the array key represents the option name minus the initial ZM_
$OLANG = array(
'LANG_DEFAULT' => array(
'Prompt' => "Välj språk för ZoneMinder",
'Help' => "ZoneMinder kan använda annat språk än engelska i menyer och texter. Välj här det språk du vill använda till ZoneMinder."
),
);
?>

View File

@ -1,122 +0,0 @@
<?php
error_reporting( E_ALL );
$files = array();
if ( $dir = opendir( "." ) )
{
while ( ($file = readdir( $dir )) !== false )
{
if ( is_file( $file ) )
{
if ( preg_match( '/^.+_.+\.php$/', $file ) )
{
$files[] = $file;
}
}
}
closedir( $dir );
}
$modDate = strftime( "%Y-%m-%d" );
$termOffset = 23;
$commOffset = 24;
print( "Got ".count($files)." language files\n" );
require_once( 'en_gb.php' );
$enSLANG = $SLANG;
$enCLANG = $CLANG;
$enVLANG = $VLANG;
foreach ( $files as $file )
{
unset( $SLANG );
unset( $CLANG );
unset( $VLANG );
unset( $zmVlang );
if ( $file == "en_gb.php" )
continue;
if ( $file == "en_us.php" )
continue;
print( "Processing $file\n" );
$token = preg_replace( "/\s/", "", ucwords( preg_replace( "/_/", " ", basename( $file, ".php" ) ) ) );
$code = $fileCode = file_get_contents( $file );
$code = preg_replace( "/zmVlang/", "zmVlang".$token, $code );
$code = preg_replace( "/^header.*$/m", "", $code );
$code = preg_replace( "/^setlocale.*$/m", "", $code );
$tmpFile = $file.".tmp";
$newFile = $file.".new";
if ( $fp = fopen( $tmpFile, "w" ) )
{
fwrite( $fp, $code );
fclose( $fp );
}
require_once( $tmpFile );
unlink( $tmpFile );
updateSection( $fileCode, 'SLANG' );
updateSection( $fileCode, 'CLANG' );
updateSection( $fileCode, 'VLANG' );
if ( $fp = fopen( $newFile, "w" ) )
{
fwrite( $fp, $fileCode );
fclose( $fp );
}
rename( $newFile, $file );
}
function updateSection( &$code, $section )
{
global $termOffset, $commOffset, $modDate;
$pattern = '/^(.+'.$section.' = array\(\n)(.+)(\);.+?)/sU';
//echo "P:'$pattern'\n";
if ( !preg_match( $pattern, $code, $fileParts ) )
die( "Can't find '.$section.' array\n" );
//echo "F:'".$fileParts[2]."'\n";
if ( !preg_match_all( "/(\s+.+)\n/", $fileParts[2], $matches ) )
die( "Can't find '.$section.' terms\n" );
$terms = $matches[1];
$assocTerms = array();
foreach( $terms as $term )
{
if ( !preg_match( "/\s+'(.+)'\s*=>/", $term, $matches ) )
die( "Can't find term name in '$term'\n" );
$assocTerms[$matches[1]] = $term;
}
$enVar = $GLOBALS['en'.$section];
$langVar = $GLOBALS[$section];
foreach ( $enVar as $enName=>$enValue )
{
if ( empty($langVar[$enName]) )
{
print( "Got missing token '".$enName."'\n" );
$termPaddLen = max( $termOffset-(2+strlen($enName)), 0 );
$commPaddLen = max( $commOffset-(2+strlen($enValue)), 0 );
$assocTerms[$enName] = " '".$enName."'".str_repeat(" ",$termPaddLen)."=> '$enValue', ".str_repeat(" ",$commPaddLen)."// Added - $modDate";
}
}
foreach ( $langVar as $name=>$value )
{
if ( empty($enVar[$name]) )
{
print( "Got extraneous token '".$name."'\n" );
unset($assocTerms[$name]);
}
}
ksort( $assocTerms, SORT_STRING );
$code = $fileParts[1].join( "\n", array_values($assocTerms) )."\n".rtrim($fileParts[3])."\n";
}
?>

View File

@ -1,28 +0,0 @@
#!/bin/sh
#
# ==========================================================================
#
# ZoneMinder PHP Retagging Script, $Date$, $Revision$
# Copyright (C) 2003, 2004, 2005, 2006 Philip Coombes
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# ==========================================================================
#
# Short shell script for changing short open tags to long ones.
#
# ==========================================================================
#
perl swap.pl '<\?=' '<?php echo' *.php

View File

@ -1,63 +0,0 @@
#!/usr/bin/perl -w
#
# ==========================================================================
#
# ZoneMinder Find and Replace Utility, $Date$, $Revision$
# Copyright (C) 2003, 2004, 2005, 2006 Philip Coombes
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# ==========================================================================
#
# General purpose find and replace utility.
#
# ==========================================================================
#
use strict;
$| = 1;
exit if ( @ARGV < 3 );
my $from = shift @ARGV;
my $to = shift @ARGV;
foreach my $file ( @ARGV )
{
my $tmpfile = "${file}.tmp.swap";
open( FROMFILE, $file ) or die( "Can't open '$file' for reading" );
open( TOFILE, ">${tmpfile}" ) or die( "Can't open '$tmpfile' for writing" );
my $count = 0;
while( <FROMFILE> )
{
$count += s/$from/$to/g;
print( TOFILE );
}
close( FROMFILE );
close( TOFILE );
if ( $count )
{
rename( $tmpfile, $file ) or die( "Can't rename '$tmpfile' to '$file'" );
}
else
{
unlink( $tmpfile ) or die( "Can'delete rename '$tmpfile' to '$file'" );
}
if ( $count )
{
print( "Processed $file" );
print( ": $count changes" );
print( "\n" );
}
}

View File

@ -1,6 +0,0 @@
AUTOMAKE_OPTIONS = gnu
SUBDIRS = \
classic \
mobile \
xml

View File

@ -1,573 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/skins
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-dvi-recursive install-exec-recursive \
install-html-recursive install-info-recursive \
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
distdir
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
SUBDIRS = \
classic \
mobile \
xml
all: all-recursive
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/skins/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/skins/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
$(RECURSIVE_CLEAN_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-recursive
all-am: Makefile
installdirs: installdirs-recursive
installdirs-am:
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean-am: clean-generic mostlyclean-am
distclean: distclean-recursive
-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-tags
dvi: dvi-recursive
dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
install-data-am:
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic
pdf: pdf-recursive
pdf-am:
ps: ps-recursive
ps-am:
uninstall-am:
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
install-am install-strip tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am check check-am clean clean-generic ctags \
ctags-recursive distclean distclean-generic distclean-tags \
distdir dvi dvi-am html html-am info info-am install \
install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
installdirs-am maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
tags-recursive uninstall uninstall-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,15 +0,0 @@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/skins/classic
SUBDIRS = \
ajax \
css \
graphics \
includes \
js \
lang \
views
dist_web_DATA = \
skin.php

View File

@ -1,630 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/skins/classic
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-dvi-recursive install-exec-recursive \
install-html-recursive install-info-recursive \
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
distdir
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/skins/classic
SUBDIRS = \
ajax \
css \
graphics \
includes \
js \
lang \
views
dist_web_DATA = \
skin.php
all: all-recursive
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/skins/classic/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/skins/classic/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
$(RECURSIVE_CLEAN_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-recursive
all-am: Makefile $(DATA)
installdirs: installdirs-recursive
installdirs-am:
for dir in "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean-am: clean-generic mostlyclean-am
distclean: distclean-recursive
-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-tags
dvi: dvi-recursive
dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
install-data-am: install-dist_webDATA
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic
pdf: pdf-recursive
pdf-am:
ps: ps-recursive
ps-am:
uninstall-am: uninstall-dist_webDATA
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
install-am install-strip tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am check check-am clean clean-generic ctags \
ctags-recursive distclean distclean-generic distclean-tags \
distdir dvi dvi-am html html-am info info-am install \
install-am install-data install-data-am install-dist_webDATA \
install-dvi install-dvi-am install-exec install-exec-am \
install-html install-html-am install-info install-info-am \
install-man install-pdf install-pdf-am install-ps \
install-ps-am install-strip installcheck installcheck-am \
installdirs installdirs-am maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
uninstall-dist_webDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,5 +0,0 @@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/skins/classic/ajax
dist_web_DATA = # No files here

View File

@ -1,417 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/skins/classic/ajax
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/skins/classic/ajax
dist_web_DATA = # No files here
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/skins/classic/ajax/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/skins/classic/ajax/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-dist_webDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-dist_webDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
install-dist_webDATA install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am uninstall uninstall-am uninstall-dist_webDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,8 +0,0 @@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/skins/classic/css
dist_web_DATA = \
skin.css \
control.css \
export.css

View File

@ -1,421 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/skins/classic/css
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/skins/classic/css
dist_web_DATA = \
skin.css \
control.css \
export.css
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/skins/classic/css/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/skins/classic/css/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-dist_webDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-dist_webDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
install-dist_webDATA install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am uninstall uninstall-am uninstall-dist_webDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,147 +0,0 @@
.ptzControls {
vertical-align: top;
margin: 10px auto 0;
width: 300px;
}
.ptzControls input.ptzTextBtn {
margin-top: 2px;
width: 40px;
}
.ptzControls .controlsPanel {
margin: 0 auto;
}
.ptzControls input[type=image] {
border: 0px;
}
.ptzControls .controlsPanel .arrowControl {
width: 40px;
height: 180px;
margin: 0 4px;
}
.ptzControls .controlsPanel .arrowControl input {
display: block;
}
.ptzControls .controlsPanel .longArrowBtn {
width: 32px;
height: 48px;
margin: 0 auto;
cursor: pointer;
}
/*
* This is a bit of a hack as these lines should be in the above
* section but that messes up layout on IE6
*/
/*
.ptzControls .controlsPanel > div > div.longArrowBtn {
left: 50%;
margin-left: -16px;
}
*/
.ptzControls .controlsPanel .upBtn {
background: url("../graphics/arrow-l-u.gif") no-repeat 0 0;
}
.ptzControls .controlsPanel .downBtn {
background: url("../graphics/arrow-l-d.gif") no-repeat 0 0;
}
.ptzControls .controlsPanel .focusControls {
float: left;
}
.ptzControls .controlsPanel .zoomControls {
float: left;
}
.ptzControls .controlsPanel .irisControls {
float: right;
}
.ptzControls .controlsPanel .whiteControls {
float: right;
}
.ptzControls .controlsPanel .pantiltPanel {
margin: 0 auto;
height: 180px;
}
.ptzControls .controlsPanel .pantiltPanel .pantiltControls .pantiltButtons {
margin: 5px auto;
border: 1px solid #006699;
text-align: center;
padding: 1px;
width: 96px;
height: 96px;
}
.ptzControls .controlsPanel .pantiltPanel .pantiltControls .arrowBtn {
width: 32px;
height: 32px;
cursor: pointer;
float: left;
}
.ptzControls .controlsPanel .pantiltPanel .pantiltControls .upLeftBtn {
background: url("../graphics/arrow-ul.gif") no-repeat 0 0;
}
.ptzControls .controlsPanel .pantiltPanel .pantiltControls .upBtn {
background: url("../graphics/arrow-u.gif") no-repeat 0 0;
}
.ptzControls .controlsPanel .pantiltPanel .pantiltControls .upRightBtn {
background: url("../graphics/arrow-ur.gif") no-repeat 0 0;
}
.ptzControls .controlsPanel .pantiltPanel .pantiltControls .leftBtn {
background: url("../graphics/arrow-l.gif") no-repeat 0 0;
}
.ptzControls .controlsPanel .pantiltPanel .pantiltControls .centerBtn {
background: url("../graphics/center.gif") no-repeat 0 0;
}
.ptzControls .controlsPanel .pantiltPanel .pantiltControls .rightBtn {
background: url("../graphics/arrow-r.gif") no-repeat 0 0;
}
.ptzControls .controlsPanel .pantiltPanel .pantiltControls .downLeftBtn {
background: url("../graphics/arrow-dl.gif") no-repeat 0 0;
}
.ptzControls .controlsPanel .pantiltPanel .pantiltControls .downBtn {
background: url("../graphics/arrow-d.gif") no-repeat 0 0;
}
.ptzControls .controlsPanel .pantiltPanel .pantiltControls .downRightBtn {
background: url("../graphics/arrow-dr.gif") no-repeat 0 0;
}
.ptzControls .controlsPanel .pantiltPanel .powerControls {
margin: 0 auto;
}
.ptzControls .presetControls {
margin: 0 auto;
}
.ptzControls .presetControls input {
margin: 1px;
}
.ptzControls .presetControls input.ptzNumBtn {
padding: 1px 2px;
width: 24px;
color: #ffffff;
text-align: center;
background-color: #016A9D;
}

View File

@ -1,54 +0,0 @@
body {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size:10px;
font-weight: normal
color: #333333;
}
table {
border-collapse: collapse;
}
th, td {
border: 1px solid #7f7fb2;
text-align: center;
padding: 2px 4px;
}
a:link {
color: #7f7fb2;
text-decoration: none
}
a:visited {
color: #7f7fb2;
text-decoration: none
}
a:hover {
color: #666699;
text-decoration: underline
}
img.thumb {
width: 40px;
}
td.monoRow {
line-height: 200%;
text-align: center;
vertical-align: middle;
}
#eventFrames tr.alarm {
background-color: #fa8072;
}
#eventFrames tr.bulk {
background-color: #cccccc;
}
#eventFrames tr.normal {
background-color: #ffffff;
}

View File

@ -1,439 +0,0 @@
/*
* ZoneMinder Base Stylesheet, $Date$, $Revision$
* Copyright (C) 2001-2008 Philip Coombes
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) input[type=password], any later version.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
/*
* Primary look and feel styles
*/
body {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #333333;
font-weight: normal;
text-align: center;
}
h1 {
font-family: inherit;
font-size: 120%;
color: #000066;
font-weight: bold;
text-align: center;
}
h2 {
font-family: inherit;
font-size: 110%;
color: #000066;
font-weight: bold;
}
h3 {
font-family: inherit;
font-size: 100%;
color: #016A9d;
font-weight: bold;
}
h4 {
font-family: inherit;
font-size: 100%;
color: #016A9d;
}
p {
font-family: inherit;
font-size: 100%;
color: #333333;
font-weight: normal;
}
th {
font-weight: bold;
color: #016A9d;
}
a:link {
color: #7f7fb2;
text-decoration: none;
}
a:visited {
color: #7f7fb2;
text-decoration: none;
}
a:hover {
color: #666699;
text-decoration: underline;
}
label {
margin-right: 4px;
}
input,textarea,select,button {
border: 1px #7f7fb2 solid;
font-family: inherit;
font-size: 100%;
color: #333333;
}
input[type=text], input[type=password], textarea {
padding: 1px;
}
input.noborder {
border: 0;
}
input[disabled] {
color: #888888;
}
img.normal {
border: white solid 1px;
}
img.alarm {
border: red solid 1px;
}
hr {
height: 1px;
width: 100%;
border: 0;
color: #7f7fb2;
background-color: #7f7fb2;
}
/*
* Tabbed headings
*/
ul.tabList {
float: left;
list-style: none;
padding: 0;
margin: 0 0 -4px 0;
white-space: nowrap;
text-align: left;
}
ul.tabList li {
float: left;
border: 1px solid;
color: #333333;
border: #7f7fb2 solid 1px;
border-bottom-width: 0;
margin: 0 2px 0 0;
background: #dddddd;
text-align: center;
padding: 3px 4px;
}
ul.tabList li a {
text-decoration: none;
}
ul.tabList li:hover {
background-color: #eeeeee;
}
ul.tabList li.active {
background-color: #ffffff;
border-bottom: #7f7fb2 dotted 1px;
}
ul.tabList li.active a {
font-weight: bold;
}
/*
* Major league table for multiple inputs or presentation
*/
#content table.major {
margin: 4px auto;
width: 100%;
border-collapse: collapse;
}
#content table.major tr.highlight {
background-color: #eeeeee;
}
#content table.major thead tr th {
padding-top: 6px;
padding-bottom: 6px;
vertical-align: middle;
}
#content table.major tfoot td {
padding-top: 6px;
padding-bottom: 6px;
vertical-align: middle;
}
#content table.major th, #content table.major td {
border: 1px solid #7f7fb2;
padding: 3px;
text-align: left;
}
#content table.major th {
vertical-align: bottom;
}
#content table.major td {
vertical-align: middle;
}
#content table.major th[scope=row] {
padding: 4px 3px 3px;
vertical-align: top;
}
#content table.major .colMark, #content table.major .colSelect {
text-align: center;
}
/*
* Lesser table for very simple forms
*/
#content table.minor {
width: 200px;
margin: 0 auto;
}
#content table.minor td {
padding: 4px;
}
#content table.minor .colLeft {
width: 50%;
text-align: right;
}
#content table.minor .colRight {
width: 50%;
text-align: left;
}
#content table.minor input[type=submit]
{
margin-top: 8px;
padding: 0 2px;
font-size: 120%;
}
.overlay {
font-size: 11px;
}
.overlay fieldset {
background-color: #f8f8f8;
}
.validation-advice {
padding: 4px;
color: #dc143c;
}
fieldset {
border: 1px solid black;
padding: 4px;
margin-bottom: 8px;
border-radius: 2px;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
}
fieldset > legend {
padding: 0 2px;
}
/*
* Behavior classes
*/
.alarm, .errorText {
color: #dc143c;
}
.alert, .warnText {
color: #ff8c00;
}
.ok, .infoText {
color: #688e23;
}
.fakelink {
color: #7f7fb2;
cursor: pointer;
}
.fakelink:hover {
color: #336699;
text-decoration: none;
}
/*
* Generic useful classes, especially with mootools
*/
.hidden {
display: none;
}
.invisible {
visibility: hidden;
}
.nowrap {
white-space: nowrap;
}
div.clear {
clear: both;
}
/*
.table-th-sort {
font-style:italic;
}
td.table-td-sort {
font-style:italic;
}
*/
th.table-th-sort {
margin-right: 12px;
}
th.table-th-sort span.table-th-sort-span {
float: right;
width: 12px;
height: 12px;
background: url("../graphics/arrow-s-u.gif") no-repeat 0 0;
}
th.table-th-sort-rev span.table-th-sort-span {
float: right;
width: 12px;
height: 12px;
background: url("../graphics/arrow-s-d.gif") no-repeat 0 0;
}
.table-tr-odd {
background-color: #f8f8f8;
}
/*
* Primary layout styles
*/
#page {
width: 100%;
}
#header {
width: 96%;
line-height: 24px;
margin: 8px auto;
text-align: left;
}
#header h2 {
left: 0;
}
#header h2.floating {
float: left;
}
#headerControl {
width: 50%;
text-align: center;
margin: 0 auto;
}
#headerButtons {
float: right;
}
#headerButtons a {
margin-left: 8px;
}
#headerButtons input {
margin-left: 4px;
}
#content {
width: 96%;
margin: 8px auto;
line-height: 130%;
text-align: center;
}
#content p {
margin-top: 4px;
}
#content p.textblock {
text-align: justify;
padding: 4px;
}
#content p.textblock br {
margin-bottom: 8px;
}
/*
#contentDiv {
margin: 0 auto 8px;
line-height: 140%;
text-align: center;
}
*/
#content > input[type=submit], #content > input[type=button], #content > button {
margin-top: 8px;
}
#content table input[type=submit], #content table input[type=button], #content table button {
margin-top: 0;
}
#contentButtons {
margin-top: 8px;
float: right;
}
#contentButtons input {
margin-left: 8px;
margin-bottom: 4px;
}
#footer {
width: 96%;
margin: 8px auto;
}

View File

@ -1,23 +0,0 @@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/skins/classic/graphics
dist_web_DATA = \
arrow-d.gif \
arrow-dl.gif \
arrow-dr.gif \
arrow-l-d.gif \
arrow-l.gif \
arrow-l-u.gif \
arrow-r.gif \
arrow-s-d.gif \
arrow-s-u.gif \
arrow-u.gif \
arrow-ul.gif \
arrow-ur.gif \
center.gif \
point-g.gif \
point-o.gif \
point-r.gif \
seq-d.gif \
seq-u.gif

View File

@ -1,436 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/skins/classic/graphics
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/skins/classic/graphics
dist_web_DATA = \
arrow-d.gif \
arrow-dl.gif \
arrow-dr.gif \
arrow-l-d.gif \
arrow-l.gif \
arrow-l-u.gif \
arrow-r.gif \
arrow-s-d.gif \
arrow-s-u.gif \
arrow-u.gif \
arrow-ul.gif \
arrow-ur.gif \
center.gif \
point-g.gif \
point-o.gif \
point-r.gif \
seq-d.gif \
seq-u.gif
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/skins/classic/graphics/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/skins/classic/graphics/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-dist_webDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-dist_webDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
install-dist_webDATA install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am uninstall uninstall-am uninstall-dist_webDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 232 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 263 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 538 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 524 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 284 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 265 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 203 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 286 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 282 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 621 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 B

View File

@ -1,11 +0,0 @@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/skins/classic/includes
dist_web_DATA = \
init.php \
config.php \
functions.php \
control_functions.php \
export_functions.php \
timeline_functions.php

View File

@ -1,424 +0,0 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
subdir = web/skins/classic/includes
DIST_COMMON = $(dist_web_DATA) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
for p in $$list; do echo "$$p $$p"; done | \
sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
$(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
if (++n[$$2] == $(am__install_max)) \
{ print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
END { for (dir in files) print dir, files[dir] }'
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(webdir)"
DATA = $(dist_web_DATA)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BINDIR = @BINDIR@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CGI_PREFIX = @CGI_PREFIX@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MMAP = @ENABLE_MMAP@
EXEEXT = @EXEEXT@
EXTRA_LIBS = @EXTRA_LIBS@
EXTRA_PERL_LIB = @EXTRA_PERL_LIB@
FFMPEG_CFLAGS = @FFMPEG_CFLAGS@
FFMPEG_LIBS = @FFMPEG_LIBS@
FFMPEG_PREFIX = @FFMPEG_PREFIX@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBDIR = @LIBDIR@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_ARCH = @LIB_ARCH@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MYSQL_CFLAGS = @MYSQL_CFLAGS@
MYSQL_LIBS = @MYSQL_LIBS@
MYSQL_PREFIX = @MYSQL_PREFIX@
OBJEXT = @OBJEXT@
OPT_FFMPEG = @OPT_FFMPEG@
OPT_NETPBM = @OPT_NETPBM@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_BUILD = @PATH_BUILD@
PATH_FFMPEG = @PATH_FFMPEG@
PATH_NETPBM = @PATH_NETPBM@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PERL_MM_PARMS = @PERL_MM_PARMS@
POW_LIB = @POW_LIB@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
SYSCONFDIR = @SYSCONFDIR@
TIME_BUILD = @TIME_BUILD@
VERSION = @VERSION@
WEB_GROUP = @WEB_GROUP@
WEB_HOST = @WEB_HOST@
WEB_PREFIX = @WEB_PREFIX@
WEB_USER = @WEB_USER@
ZM_CONFIG = @ZM_CONFIG@
ZM_DB_HOST = @ZM_DB_HOST@
ZM_DB_NAME = @ZM_DB_NAME@
ZM_DB_PASS = @ZM_DB_PASS@
ZM_DB_USER = @ZM_DB_USER@
ZM_HAS_GNUTLS = @ZM_HAS_GNUTLS@
ZM_HAS_GNUTLS_OPENSSL = @ZM_HAS_GNUTLS_OPENSSL@
ZM_HAS_V4L = @ZM_HAS_V4L@
ZM_HAS_V4L1 = @ZM_HAS_V4L1@
ZM_HAS_V4L2 = @ZM_HAS_V4L2@
ZM_LOGDIR = @ZM_LOGDIR@
ZM_MYSQL_ENGINE = @ZM_MYSQL_ENGINE@
ZM_PCRE = @ZM_PCRE@
ZM_PID = @ZM_PID@
ZM_RUNDIR = @ZM_RUNDIR@
ZM_SSL_LIB = @ZM_SSL_LIB@
ZM_TMPDIR = @ZM_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build_alias = @build_alias@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host_alias = @host_alias@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = gnu
webdir = @WEB_PREFIX@/skins/classic/includes
dist_web_DATA = \
init.php \
config.php \
functions.php \
control_functions.php \
export_functions.php \
timeline_functions.php
all: all-am
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu web/skins/classic/includes/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu web/skins/classic/includes/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-dist_webDATA: $(dist_web_DATA)
@$(NORMAL_INSTALL)
test -z "$(webdir)" || $(MKDIR_P) "$(DESTDIR)$(webdir)"
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
done | $(am__base_list) | \
while read files; do \
echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(webdir)'"; \
$(INSTALL_DATA) $$files "$(DESTDIR)$(webdir)" || exit $$?; \
done
uninstall-dist_webDATA:
@$(NORMAL_UNINSTALL)
@list='$(dist_web_DATA)'; test -n "$(webdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(webdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(webdir)" && rm -f $$files
tags: TAGS
TAGS:
ctags: CTAGS
CTAGS:
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(DATA)
installdirs:
for dir in "$(DESTDIR)$(webdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic mostlyclean-am
distclean: distclean-am
-rm -f Makefile
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am: install-dist_webDATA
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-dist_webDATA
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic distclean \
distclean-generic distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am \
install-dist_webDATA install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
pdf-am ps ps-am uninstall uninstall-am uninstall-dist_webDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,112 +0,0 @@
<?php
//
// ZoneMinder HTML configuration file, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
$rates = array(
"10000" => "100x",
"5000" => "50x",
"2500" => "25x",
"1000" => "10x",
"400" => "4x",
"200" => "2x",
"100" => $SLANG['Real'],
"50" => "1/2x",
"25" => "1/4x",
);
$scales = array(
"400" => "4x",
"300" => "3x",
"200" => "2x",
"150" => "1.5x",
"100" => $SLANG['Actual'],
"75" => "3/4x",
"50" => "1/2x",
"33" => "1/3x",
"25" => "1/4x",
);
$bwArray = array(
"high" => $SLANG['High'],
"medium" => $SLANG['Medium'],
"low" => $SLANG['Low']
);
switch ( $_COOKIE['zmBandwidth'] )
{
case "high" :
{
define( "ZM_WEB_REFRESH_MAIN", ZM_WEB_H_REFRESH_MAIN ); // How often (in seconds) the main console window refreshes
define( "ZM_WEB_REFRESH_CYCLE", ZM_WEB_H_REFRESH_CYCLE ); // How often the cycle watch windows swaps to the next monitor
define( "ZM_WEB_REFRESH_IMAGE", ZM_WEB_H_REFRESH_IMAGE ); // How often the watched image is refreshed (if not streaming)
define( "ZM_WEB_REFRESH_STATUS", ZM_WEB_H_REFRESH_STATUS ); // How often the little status frame refreshes itself in the watch window
define( "ZM_WEB_REFRESH_EVENTS", ZM_WEB_H_REFRESH_EVENTS ); // How often the event listing is refreshed in the watch window, only for recent events
define( "ZM_WEB_CAN_STREAM", ZM_WEB_H_CAN_STREAM ); // Override the automatic detection of browser streaming capability
define( "ZM_WEB_STREAM_METHOD", ZM_WEB_H_STREAM_METHOD ); // Which method should be used to send video streams to your browser
define( "ZM_WEB_DEFAULT_SCALE", ZM_WEB_H_DEFAULT_SCALE ); // What the default scaling factor applied to 'live' or 'event' views is (%)
define( "ZM_WEB_DEFAULT_RATE", ZM_WEB_H_DEFAULT_RATE ); // What the default replay rate factor applied to 'event' views is (%)
define( "ZM_WEB_VIDEO_BITRATE", ZM_WEB_H_VIDEO_BITRATE ); // What the bitrate of any streamed video should be
define( "ZM_WEB_VIDEO_MAXFPS", ZM_WEB_H_VIDEO_MAXFPS ); // What the maximum frame rate of any streamed video should be
define( "ZM_WEB_SCALE_THUMBS", ZM_WEB_H_SCALE_THUMBS ); // Image scaling for thumbnails, bandwidth versus cpu in rescaling
define( "ZM_WEB_EVENTS_VIEW", ZM_WEB_H_EVENTS_VIEW ); // What the default view of multiple events should be.
define( "ZM_WEB_SHOW_PROGRESS", ZM_WEB_H_SHOW_PROGRESS ); // Whether to show the progress of replay in event view.
define( "ZM_WEB_AJAX_TIMEOUT", ZM_WEB_H_AJAX_TIMEOUT ); // Timeout to use for Ajax requests, no timeout used if unset
break;
}
case "medium" :
{
define( "ZM_WEB_REFRESH_MAIN", ZM_WEB_M_REFRESH_MAIN ); // How often (in seconds) the main console window refreshes
define( "ZM_WEB_REFRESH_CYCLE", ZM_WEB_M_REFRESH_CYCLE ); // How often the cycle watch windows swaps to the next monitor
define( "ZM_WEB_REFRESH_IMAGE", ZM_WEB_M_REFRESH_IMAGE ); // How often the watched image is refreshed (if not streaming)
define( "ZM_WEB_REFRESH_STATUS", ZM_WEB_M_REFRESH_STATUS ); // How often the little status frame refreshes itself in the watch window
define( "ZM_WEB_REFRESH_EVENTS", ZM_WEB_M_REFRESH_EVENTS ); // How often the event listing is refreshed in the watch window, only for recent events
define( "ZM_WEB_CAN_STREAM", ZM_WEB_M_CAN_STREAM ); // Override the automatic detection of browser streaming capability
define( "ZM_WEB_STREAM_METHOD", ZM_WEB_M_STREAM_METHOD ); // Which method should be used to send video streams to your browser
define( "ZM_WEB_DEFAULT_SCALE", ZM_WEB_M_DEFAULT_SCALE ); // What the default scaling factor applied to 'live' or 'event' views is (%)
define( "ZM_WEB_DEFAULT_RATE", ZM_WEB_M_DEFAULT_RATE ); // What the default replay rate factor applied to 'event' views is (%)
define( "ZM_WEB_VIDEO_BITRATE", ZM_WEB_M_VIDEO_BITRATE ); // What the bitrate of any streamed video should be
define( "ZM_WEB_VIDEO_MAXFPS", ZM_WEB_M_VIDEO_MAXFPS ); // What the maximum frame rate of any streamed video should be
define( "ZM_WEB_SCALE_THUMBS", ZM_WEB_M_SCALE_THUMBS ); // Image scaling for thumbnails, bandwidth versus cpu in rescaling
define( "ZM_WEB_EVENTS_VIEW", ZM_WEB_M_EVENTS_VIEW ); // What the default view of multiple events should be.
define( "ZM_WEB_SHOW_PROGRESS", ZM_WEB_M_SHOW_PROGRESS ); // Whether to show the progress of replay in event view.
define( "ZM_WEB_AJAX_TIMEOUT", ZM_WEB_M_AJAX_TIMEOUT ); // Timeout to use for Ajax requests, no timeout used if unset
break;
}
case "low" :
{
define( "ZM_WEB_REFRESH_MAIN", ZM_WEB_L_REFRESH_MAIN ); // How often (in seconds) the main console window refreshes
define( "ZM_WEB_REFRESH_CYCLE", ZM_WEB_L_REFRESH_CYCLE ); // How often the cycle watch windows swaps to the next monitor
define( "ZM_WEB_REFRESH_IMAGE", ZM_WEB_L_REFRESH_IMAGE ); // How often the watched image is refreshed (if not streaming)
define( "ZM_WEB_REFRESH_STATUS", ZM_WEB_L_REFRESH_STATUS ); // How often the little status frame refreshes itself in the watch window
define( "ZM_WEB_REFRESH_EVENTS", ZM_WEB_L_REFRESH_EVENTS ); // How often the event listing is refreshed in the watch window, only for recent events
define( "ZM_WEB_CAN_STREAM", ZM_WEB_L_CAN_STREAM ); // Override the automatic detection of browser streaming capability
define( "ZM_WEB_STREAM_METHOD", ZM_WEB_L_STREAM_METHOD ); // Which method should be used to send video streams to your browser
define( "ZM_WEB_DEFAULT_SCALE", ZM_WEB_L_DEFAULT_SCALE ); // What the default scaling factor applied to 'live' or 'event' views is (%)
define( "ZM_WEB_DEFAULT_RATE", ZM_WEB_L_DEFAULT_RATE ); // What the default replay rate factor applied to 'event' views is (%)
define( "ZM_WEB_VIDEO_BITRATE", ZM_WEB_L_VIDEO_BITRATE ); // What the bitrate of any streamed video should be
define( "ZM_WEB_VIDEO_MAXFPS", ZM_WEB_L_VIDEO_MAXFPS ); // What the maximum frame rate of any streamed video should be
define( "ZM_WEB_SCALE_THUMBS", ZM_WEB_L_SCALE_THUMBS ); // Image scaling for thumbnails, bandwidth versus cpu in rescaling
define( "ZM_WEB_EVENTS_VIEW", ZM_WEB_L_EVENTS_VIEW ); // What the default view of multiple events should be.
define( "ZM_WEB_SHOW_PROGRESS", ZM_WEB_L_SHOW_PROGRESS ); // Whether to show the progress of replay in event view.
define( "ZM_WEB_AJAX_TIMEOUT", ZM_WEB_L_AJAX_TIMEOUT ); // Timeout to use for Ajax requests, no timeout used if unset
break;
}
}
?>

View File

@ -1,390 +0,0 @@
<?php
//
// ZoneMinder web control function library, $Date$, $Revision$
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
function getControlCommands( $monitor )
{
$cmds = array();
$cmds['Wake'] = "wake";
$cmds['Sleep'] = "sleep";
$cmds['Reset'] = "reset";
$cmds['PresetSet'] = "presetSet";
$cmds['PresetGoto'] = "presetGoto";
$cmds['PresetHome'] = "presetHome";
if ( !empty($monitor['CanZoom']) )
{
if ( $monitor['CanZoomCon'] )
$cmds['ZoomRoot'] = "zoomCon";
elseif ( $monitor['CanZoomRel'] )
$cmds['ZoomRoot'] = "zoomRel";
elseif ( $monitor['CanZoomAbs'] )
$cmds['ZoomRoot'] = "zoomAbs";
$cmds['ZoomTele'] = $cmds['ZoomRoot']."Tele";
$cmds['ZoomWide'] = $cmds['ZoomRoot']."Wide";
$cmds['ZoomStop'] = "zoomStop";
$cmds['ZoomAuto'] = "zoomAuto";
$cmds['ZoomMan'] = "zoomMan";
}
if ( !empty($monitor['CanFocus']) )
{
if ( $monitor['CanFocusCon'] )
$cmds['FocusRoot'] = "focusCon";
elseif ( $monitor['CanFocusRel'] )
$cmds['FocusRoot'] = "focusRel";
elseif ( $monitor['CanFocusAbs'] )
$cmds['FocusRoot'] = "focusAbs";
$cmds['FocusFar'] = $cmds['FocusRoot']."Far";
$cmds['FocusNear'] = $cmds['FocusRoot']."Near";
$cmds['FocusStop'] = "focusStop";
$cmds['FocusAuto'] = "focusAuto";
$cmds['FocusMan'] = "focusMan";
}
if ( !empty($monitor['CanIris']) )
{
if ( $monitor['CanIrisCon'] )
$cmds['IrisRoot'] = "irisCon";
elseif ( $monitor['CanIrisRel'] )
$cmds['IrisRoot'] = "irisRel";
elseif ( $monitor['CanIrisAbs'] )
$cmds['IrisRoot'] = "irisAbs";
$cmds['IrisOpen'] = $cmds['IrisRoot']."Open";
$cmds['IrisClose'] = $cmds['IrisRoot']."Close";
$cmds['IrisStop'] = "irisStop";
$cmds['IrisAuto'] = "irisAuto";
$cmds['IrisMan'] = "irisMan";
}
if ( !empty($monitor['CanWhite']) )
{
if ( $monitor['CanWhiteCon'] )
$cmds['WhiteRoot'] = "whiteCon";
elseif ( $monitor['CanWhiteRel'] )
$cmds['WhiteRoot'] = "whiteRel";
elseif ( $monitor['CanWhiteAbs'] )
$cmds['WhiteRoot'] = "whiteAbs";
$cmds['WhiteIn'] = $cmds['WhiteRoot']."In";
$cmds['WhiteOut'] = $cmds['WhiteRoot']."Out";
$cmds['WhiteAuto'] = "whiteAuto";
$cmds['WhiteMan'] = "whiteMan";
}
if ( !empty($monitor['CanGain']) )
{
if ( $monitor['CanGainCon'] )
$cmds['GainRoot'] = "gainCon";
elseif ( $monitor['CanGainRel'] )
$cmds['GainRoot'] = "gainRel";
elseif ( $monitor['CanGainAbs'] )
$cmds['GainRoot'] = "gainAbs";
$cmds['GainUp'] = $cmds['GainRoot']."Up";
$cmds['GainDown'] = $cmds['GainRoot']."Down";
$cmds['GainAuto'] = "gainAuto";
$cmds['GainMan'] = "gainMan";
}
if ( !empty($monitor['CanMove']) )
{
if ( $monitor['CanMoveCon'] )
{
$cmds['MoveRoot'] = "moveCon";
$cmds['Center'] = "moveStop";
}
elseif ( $monitor['CanMoveRel'] )
{
$cmds['MoveRoot'] = "moveRel";
$cmds['Center'] = $cmds['PresetHome'];
}
elseif ( $monitor['CanMoveAbs'] )
{
$cmds['MoveRoot'] = "moveAbs";
$cmds['Center'] = $cmds['PresetHome'];
}
$cmds['MoveUp'] = $cmds['MoveRoot']."Up";
$cmds['MoveDown'] = $cmds['MoveRoot']."Down";
$cmds['MoveLeft'] = $cmds['MoveRoot']."Left";
$cmds['MoveRight'] = $cmds['MoveRoot']."Right";
$cmds['MoveUpLeft'] = $cmds['MoveRoot']."UpLeft";
$cmds['MoveUpRight'] = $cmds['MoveRoot']."UpRight";
$cmds['MoveDownLeft'] = $cmds['MoveRoot']."DownLeft";
$cmds['MoveDownRight'] = $cmds['MoveRoot']."DownRight";
}
return( $cmds );
}
function controlFocus( $monitor, $cmds )
{
global $SLANG;
ob_start();
?>
<div class="arrowControl focusControls">
<div class="arrowLabel"><?= $SLANG['Near'] ?></div>
<div class="longArrowBtn upBtn" onclick="controlCmd('<?= $cmds['FocusNear'] ?>',event,0,-1)"></div>
<div class="arrowCenter"<?php if ( $monitor['CanFocusCon'] ) { ?> onclick="controlCmd('<?= $cmds['FocusStop'] ?>')"<?php } ?>><?= $SLANG['Focus'] ?></div>
<div class="longArrowBtn downBtn" onclick="controlCmd('<?= $cmds['FocusFar'] ?>',event,0,1)"></div>
<div class="arrowLabel"><?= $SLANG['Far'] ?></div>
<?php
if ( $monitor['CanAutoFocus'] )
{
?>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Auto'] ?>" onclick="controlCmd('<?= $cmds['FocusAuto'] ?>')"/>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Man'] ?>" onclick="controlCmd('<?= $cmds['FocusMan'] ?>')"/>
<?php
}
?>
</div>
<?php
return( ob_get_clean() );
}
function controlZoom( $monitor, $cmds )
{
global $SLANG;
ob_start();
?>
<div class="arrowControl zoomControls">
<div class="arrowLabel"><?= $SLANG['Tele'] ?></div>
<div class="longArrowBtn upBtn" onclick="controlCmd('<?= $cmds['ZoomTele'] ?>',event,0,-1)"></div>
<div class="arrowCenter"<?php if ( $monitor['CanZoomCon'] ) { ?> onclick="controlCmd('<?= $cmds['ZoomStop'] ?>')"<?php } ?>><?= $SLANG['Zoom'] ?></div>
<div class="longArrowBtn downBtn" onclick="controlCmd('<?= $cmds['ZoomWide'] ?>',event,0,1)"></div>
<div class="arrowLabel"><?= $SLANG['Wide'] ?></div>
<?php
if ( $monitor['CanAutoZoom'] )
{
?>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Auto'] ?>" onclick="controlCmd('<?= $cmds['ZoomAuto'] ?>')"/>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Man'] ?>" onclick="controlCmd('<?= $cmds['ZoomMan'] ?>')"/>
<?php
}
?>
</div><?php
return( ob_get_clean() );
}
function controlIris( $monitor, $cmds )
{
global $SLANG;
ob_start();
?>
<div class="arrowControl irisControls">
<div class="arrowLabel"><?= $SLANG['Open'] ?></div>
<div class="longArrowBtn upBtn" onclick="controlCmd('<?= $cmds['IrisOpen'] ?>',event,0,-1)"></div>
<div class="arrowCenter"<?php if ( $monitor['CanIrisCon'] ) { ?> onclick="controlCmd('<?= $cmds['IrisStop'] ?>')"<?php } ?>><?= $SLANG['Iris'] ?></div>
<div class="longArrowBtn downBtn" onclick="controlCmd('<?= $cmds['IrisClose'] ?>',event,0,1)"></div>
<div class="arrowLabel"><?= $SLANG['Close'] ?></div>
<?php
if ( $monitor['CanAutoIris'] )
{
?>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Auto'] ?>" onclick="controlCmd('<?= $cmds['IrisAuto'] ?>')"/>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Man'] ?>" onclick="controlCmd('<?= $cmds['IrisMan'] ?>')"/>
<?php
}
?>
</div>
<?php
return( ob_get_clean() );
}
function controlWhite( $monitor, $cmds )
{
global $SLANG;
ob_start();
?>
<div class="arrowControl whiteControls">
<div class="arrowLabel"><?= $SLANG['In'] ?></div>
<div class="longArrowBtn upBtn" onclick="controlCmd('<?= $cmds['WhiteIn'] ?>',event,0,-1)"></div>
<div class="arrowCenter"<?php if ( $monitor['CanWhiteCon'] ) { ?> onclick="controlCmd('<?= $cmds['WhiteStop'] ?>')"<?php } ?>><?= $SLANG['White'] ?></div>
<div class="longArrowBtn downBtn" onclick="controlCmd('<?= $cmds['WhiteOut'] ?>',event,0,1)"></div>
<div class="arrowLabel"><?= $SLANG['Out'] ?></div>
<?php
if ( $monitor['CanAutoWhite'] )
{
?>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Auto'] ?>" onclick="controlCmd('<?= $cmds['WhiteAuto'] ?>')"/>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Man'] ?>" onclick="controlCmd('<?= $cmds['WhiteMan'] ?>')"/>
<?php
}
?>
</div>
<?php
return( ob_get_clean() );
}
function controlPanTilt( $monitor, $cmds )
{
global $SLANG;
ob_start();
?>
<div class="pantiltControls">
<div class="pantilLabel"><?= $SLANG['PanTilt'] ?></div>
<div class="pantiltButtons">
<?php
$hasPan = $monitor['CanPan'];
$hasTilt = $monitor['CanTilt'];
$hasDiag = $hasPan && $hasTilt && $monitor['CanMoveDiag'];
?>
<div class="arrowBtn upLeftBtn<?= $hasDiag?'':' invisible' ?>" onclick="controlCmd('<?= $cmds['MoveUpLeft'] ?>',event,-1,-1)"></div>
<div class="arrowBtn upBtn<?= $hasTilt?'':' invisible' ?>" onclick="controlCmd('<?= $cmds['MoveUp'] ?>',event,0,-1)"></div>
<div class="arrowBtn upRightBtn<?= $hasDiag?'':' invisible' ?>" onclick="controlCmd('<?= $cmds['MoveUpRight'] ?>',event,1,-1)"></div>
<div class="arrowBtn leftBtn<?= $hasPan?'':' invisible' ?>" onclick="controlCmd('<?= $cmds['MoveLeft'] ?>',event,1,0)"></div>
<div class="arrowBtn centerBtn" onclick="controlCmd('<?= $cmds['Center'] ?>')"></div>
<div class="arrowBtn rightBtn<?= $hasPan?'':' invisible' ?>" onclick="controlCmd('<?= $cmds['MoveRight'] ?>',event,1,0)"></div>
<div class="arrowBtn downLeftBtn<?= $hasDiag?'':' invisible' ?>" onclick="controlCmd('<?= $cmds['MoveDownLeft'] ?>',event,-1,1)"></div>
<div class="arrowBtn downBtn<?= $hasTilt?'':' invisible' ?>" onclick="controlCmd('<?= $cmds['MoveDown'] ?>',event,0,1)"></div>
<div class="arrowBtn downRightBtn<?= $hasDiag?'':' invisible' ?>" onclick="controlCmd('<?= $cmds['MoveDownRight'] ?>',event,1,1)"></div>
</div>
</div>
<?php
return( ob_get_clean() );
}
function controlPresets( $monitor, $cmds )
{
global $SLANG;
define( "MAX_PRESETS", "12" );
$sql = "select * from ControlPresets where MonitorId = '".$monitor['Id']."'";
$labels = array();
foreach( dbFetchAll( $sql ) as $row )
{
$labels[$row['Preset']] = $row['Label'];
}
$presetBreak = (int)(($monitor['NumPresets']+1)/((int)(($monitor['NumPresets']-1)/MAX_PRESETS)+1));
ob_start();
?>
<div class="presetControls">
<!--<div><?= $SLANG['Presets'] ?></div>-->
<div>
<?php
for ( $i = 1; $i <= $monitor['NumPresets']; $i++ )
{
?><input type="button" class="ptzNumBtn" title="<?= isset($labels[$i])?$labels[$i]:"" ?>" value="<?= $i ?>" onclick="controlCmd('<?= $cmds['PresetGoto'] ?><?= $i ?>');"/><?php
if ( $i && (($i%$presetBreak) == 0) )
{
?><br/><?php
}
}
?>
</div>
<div>
<?php
if ( $monitor['HasHomePreset'] )
{
?>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Home'] ?>" onclick="controlCmd('<?= $cmds['PresetHome'] ?>');"/>
<?php
}
if ( canEdit( 'Monitors') && $monitor['CanSetPresets'] )
{
?>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Set'] ?>" onclick="createPopup( '?view=controlpreset&amp;mid=<?= $monitor['Id'] ?>', 'zmPreset', 'preset' );"/>
<?php
}
?>
</div>
</div>
<?php
return( ob_get_clean() );
}
function controlPower( $monitor, $cmds )
{
global $SLANG;
ob_start();
?>
<div class="powerControls">
<div class="powerLabel"><?= $SLANG['Control'] ?></div>
<div>
<?php
if ( $monitor['CanWake'] )
{
?>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Wake'] ?>" onclick="controlCmd('<?= $cmds['Wake'] ?>')"/>
<?php
}
if ( $monitor['CanSleep'] )
{
?>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Sleep'] ?>" onclick="controlCmd('<?= $cmds['Sleep'] ?>')"/>
<?php
}
if ( $monitor['CanReset'] )
{
?>
<input type="button" class="ptzTextBtn" value="<?= $SLANG['Reset'] ?>" onclick="controlCmd('<?= $cmds['Reset'] ?>')"/>
<?php
}
?>
</div>
</div>
<?php
return( ob_get_clean() );
}
function ptzControls( $monitor )
{
$cmds = getControlCommands( $monitor );
ob_start();
?>
<div class="controlsPanel">
<?php
if ( $monitor['CanFocus'] )
echo controlFocus( $monitor, $cmds );
if ( $monitor['CanZoom'] )
echo controlZoom( $monitor, $cmds );
if ( $monitor['CanIris'] )
echo controlIris( $monitor, $cmds );
if ( $monitor['CanWhite'] )
echo controlWhite( $monitor, $cmds );
if ( $monitor['CanMove'] || ( $monitor['CanWake'] || $monitor['CanSleep'] || $monitor['CanReset'] ) )
{
?>
<div class="pantiltPanel">
<?php
if ( $monitor['CanMove'] )
echo controlPanTilt( $monitor, $cmds );
if ( $monitor['CanWake'] || $monitor['CanSleep'] || $monitor['CanReset'] )
echo controlPower( $monitor, $cmds );
?>
</div>
<?php
}
?>
</div>
<?php
if ( $monitor['HasPresets'] )
echo controlPresets( $monitor, $cmds );
return( ob_get_clean() );
}
?>

File diff suppressed because it is too large Load Diff

View File

@ -1,112 +0,0 @@
<?php
//
// ZoneMinder web function library, $Date: 2008-07-08 16:06:45 +0100 (Tue, 08 Jul 2008) $, $Revision: 2484 $
// Copyright (C) 2001-2008 Philip Coombes
//
// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License
// as published by the Free Software Foundation; either version 2
// of the License, or (at your option) any later version.
//
// This program 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
//
function xhtmlHeaders( $file, $title )
{
$skinCssFile = getSkinFile( 'css/skin.css' );
$skinCssPhpFile = getSkinFile( 'css/skin.css.php' );
$skinJsFile = getSkinFile( 'js/skin.js' );
$skinJsPhpFile = getSkinFile( 'js/skin.js.php' );
$basename = basename( $file, '.php' );
$viewCssFile = getSkinFile( 'views/css/'.$basename.'.css' );
$viewCssPhpFile = getSkinFile( 'views/css/'.$basename.'.css.php' );
$viewJsFile = getSkinFile( 'views/js/'.$basename.'.js' );
$viewJsPhpFile = getSkinFile( 'views/js/'.$basename.'.js.php' );
extract( $GLOBALS, EXTR_OVERWRITE );
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title><?= ZM_WEB_TITLE_PREFIX ?> - <?= validHtmlStr($title) ?></title>
<link rel="icon" type="image/ico" href="graphics/favicon.ico"/>
<link rel="shortcut icon" href="graphics/favicon.ico"/>
<link rel="stylesheet" href="css/reset.css" type="text/css"/>
<link rel="stylesheet" href="css/overlay.css" type="text/css"/>
<link rel="stylesheet" href="<?= $skinCssFile ?>" type="text/css" media="screen"/>
<?php
if ( $viewCssFile )
{
?>
<link rel="stylesheet" href="<?= $viewCssFile ?>" type="text/css" media="screen"/>
<?php
}
if ( $viewCssPhpFile )
{
?>
<style type="text/css">
/*<![CDATA[*/
<?php
require_once( $viewCssPhpFile );
?>
/*]]>*/
</style>
<?php
}
?>
<script type="text/javascript" src="tools/mootools/mootools-core.js"></script>
<script type="text/javascript" src="tools/mootools/mootools-more.js"></script>
<script type="text/javascript" src="js/mootools.ext.js"></script>
<script type="text/javascript" src="js/logger.js"></script>
<script type="text/javascript" src="js/overlay.js"></script>
<?php
if ( $skinJsPhpFile )
{
?>
<script type="text/javascript">
//<![CDATA[
<!--
<?php
require_once( $skinJsPhpFile );
?>
//-->
//]]>
</script>
<?php
}
if ( $viewJsPhpFile )
{
?>
<script type="text/javascript">
//<![CDATA[
<!--
<?php
require_once( $viewJsPhpFile );
?>
//-->
//]]>
</script>
<?php
}
?>
<script type="text/javascript" src="<?= $skinJsFile ?>"></script>
<?php
if ( $viewJsFile )
{
?>
<script type="text/javascript" src="<?= $viewJsFile ?>"></script>
<?php
}
?>
</head>
<?php
}
?>

Some files were not shown because too many files have changed in this diff Show More