mirror of
https://github.com/kremalicious/umami.git
synced 2024-11-15 09:45:04 +01:00
Merge branch 'dev' of https://github.com/umami-software/umami into dev
This commit is contained in:
commit
54b018f7ba
@ -32,9 +32,13 @@ export default function HamburgerButton() {
|
||||
label: formatMessage(labels.users),
|
||||
url: '/settings/users',
|
||||
},
|
||||
{
|
||||
label: formatMessage(labels.profile),
|
||||
url: '/settings/profile',
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
cloudMode && {
|
||||
label: formatMessage(labels.profile),
|
||||
url: '/settings/profile',
|
||||
},
|
||||
|
@ -9,7 +9,8 @@ import styles from './WorldMap.module.css';
|
||||
import useCountryNames from 'hooks/useCountryNames';
|
||||
import useLocale from 'hooks/useLocale';
|
||||
import HoverTooltip from './HoverTooltip';
|
||||
import { formatLongNumber } from '../../lib/format';
|
||||
import { formatLongNumber } from 'lib/format';
|
||||
import { percentFilter } from 'lib/filters';
|
||||
|
||||
function WorldMap({ data, className }) {
|
||||
const { basePath } = useRouter();
|
||||
@ -26,10 +27,11 @@ function WorldMap({ data, className }) {
|
||||
);
|
||||
const { locale } = useLocale();
|
||||
const countryNames = useCountryNames(locale);
|
||||
const metrics = useMemo(() => (data ? percentFilter(data) : []), [data]);
|
||||
|
||||
function getFillColor(code) {
|
||||
if (code === 'AQ') return;
|
||||
const country = data?.find(({ x }) => x === code);
|
||||
const country = metrics?.find(({ x }) => x === code);
|
||||
|
||||
if (!country) {
|
||||
return colors.fillColor;
|
||||
@ -46,7 +48,7 @@ function WorldMap({ data, className }) {
|
||||
|
||||
function handleHover(code) {
|
||||
if (code === 'AQ') return;
|
||||
const country = data?.find(({ x }) => x === code);
|
||||
const country = metrics?.find(({ x }) => x === code);
|
||||
setTooltip(`${countryNames[code]}: ${formatLongNumber(country?.y || 0)} visitors`);
|
||||
}
|
||||
|
||||
|
@ -10,6 +10,7 @@ export const labels = defineMessages({
|
||||
leave: { id: 'label.leave', defaultMessage: 'Leave' },
|
||||
users: { id: 'label.users', defaultMessage: 'Users' },
|
||||
createUser: { id: 'label.create-user', defaultMessage: 'Create user' },
|
||||
deleteUser: { id: 'label.delete-users', defaultMessage: 'Delete user' },
|
||||
username: { id: 'label.username', defaultMessage: 'Username' },
|
||||
password: { id: 'label.password', defaultMessage: 'Password' },
|
||||
role: { id: 'label.role', defaultMessage: 'Role' },
|
||||
@ -113,6 +114,8 @@ export const labels = defineMessages({
|
||||
editDashboard: { id: 'label.edit-dashboard', defaultMessage: 'Edit dashboard' },
|
||||
title: { id: 'label.title', defaultMessage: 'Title' },
|
||||
view: { id: 'label.view', defaultMessage: 'View' },
|
||||
cities: { id: 'label.cities', defaultMessage: 'Cities' },
|
||||
regions: { id: 'label.regions', defaultMessage: 'Regions' },
|
||||
});
|
||||
|
||||
export const messages = defineMessages({
|
||||
|
30
components/metrics/CitiesTable.js
Normal file
30
components/metrics/CitiesTable.js
Normal file
@ -0,0 +1,30 @@
|
||||
import MetricsTable from './MetricsTable';
|
||||
import { emptyFilter } from 'lib/filters';
|
||||
import FilterLink from 'components/common/FilterLink';
|
||||
import useLocale from 'hooks/useLocale';
|
||||
import useMessages from 'hooks/useMessages';
|
||||
|
||||
export default function CitiesTable({ websiteId, ...props }) {
|
||||
const { locale } = useLocale();
|
||||
const { formatMessage, labels } = useMessages();
|
||||
|
||||
function renderLink({ x }) {
|
||||
return (
|
||||
<div className={locale}>
|
||||
<FilterLink id="city" value={x} />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
return (
|
||||
<MetricsTable
|
||||
{...props}
|
||||
title={formatMessage(labels.cities)}
|
||||
type="city"
|
||||
metric={formatMessage(labels.visitors)}
|
||||
websiteId={websiteId}
|
||||
dataFilter={emptyFilter}
|
||||
renderLabel={renderLink}
|
||||
/>
|
||||
);
|
||||
}
|
@ -1,11 +1,10 @@
|
||||
import MetricsTable from './MetricsTable';
|
||||
import { percentFilter } from 'lib/filters';
|
||||
import FilterLink from 'components/common/FilterLink';
|
||||
import useCountryNames from 'hooks/useCountryNames';
|
||||
import useLocale from 'hooks/useLocale';
|
||||
import useMessages from 'hooks/useMessages';
|
||||
|
||||
export default function CountriesTable({ websiteId, onDataLoad, ...props }) {
|
||||
export default function CountriesTable({ websiteId, ...props }) {
|
||||
const { locale } = useLocale();
|
||||
const countryNames = useCountryNames(locale);
|
||||
const { formatMessage, labels } = useMessages();
|
||||
@ -25,7 +24,6 @@ export default function CountriesTable({ websiteId, onDataLoad, ...props }) {
|
||||
type="country"
|
||||
metric={formatMessage(labels.visitors)}
|
||||
websiteId={websiteId}
|
||||
onDataLoad={data => onDataLoad?.(percentFilter(data))}
|
||||
renderLabel={renderLink}
|
||||
/>
|
||||
);
|
||||
|
@ -29,7 +29,7 @@ export default function MetricsTable({
|
||||
const {
|
||||
resolveUrl,
|
||||
router,
|
||||
query: { url, referrer, os, browser, device, country },
|
||||
query: { url, referrer, os, browser, device, country, region, city },
|
||||
} = usePageQuery();
|
||||
const { formatMessage, labels } = useMessages();
|
||||
const { get, useQuery } = useApi();
|
||||
@ -37,7 +37,7 @@ export default function MetricsTable({
|
||||
const { data, isLoading, isFetched, error } = useQuery(
|
||||
[
|
||||
'websites:metrics',
|
||||
{ websiteId, type, modified, url, referrer, os, browser, device, country },
|
||||
{ websiteId, type, modified, url, referrer, os, browser, device, country, region, city },
|
||||
],
|
||||
() =>
|
||||
get(`/websites/${websiteId}/metrics`, {
|
||||
@ -50,6 +50,8 @@ export default function MetricsTable({
|
||||
browser,
|
||||
device,
|
||||
country,
|
||||
region,
|
||||
city,
|
||||
}),
|
||||
{ onSuccess: onDataLoad, retryDelay: delay || DEFAULT_ANIMATION_DURATION },
|
||||
);
|
||||
|
31
components/metrics/RegionsTable.js
Normal file
31
components/metrics/RegionsTable.js
Normal file
@ -0,0 +1,31 @@
|
||||
import MetricsTable from './MetricsTable';
|
||||
import { emptyFilter } from 'lib/filters';
|
||||
import FilterLink from 'components/common/FilterLink';
|
||||
import useLocale from 'hooks/useLocale';
|
||||
import useMessages from 'hooks/useMessages';
|
||||
import regions from 'public/iso-3166-2.json';
|
||||
|
||||
export default function RegionsTable({ websiteId, ...props }) {
|
||||
const { locale } = useLocale();
|
||||
const { formatMessage, labels } = useMessages();
|
||||
|
||||
function renderLink({ x }) {
|
||||
return (
|
||||
<div className={locale}>
|
||||
<FilterLink id="region" value={x} label={regions[x] || x} />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
return (
|
||||
<MetricsTable
|
||||
{...props}
|
||||
title={formatMessage(labels.regions)}
|
||||
type="region"
|
||||
metric={formatMessage(labels.visitors)}
|
||||
websiteId={websiteId}
|
||||
dataFilter={emptyFilter}
|
||||
renderLabel={renderLink}
|
||||
/>
|
||||
);
|
||||
}
|
@ -33,13 +33,16 @@ export default function WebsiteChart({
|
||||
const { startDate, endDate, unit, value, modified } = dateRange;
|
||||
const [timezone] = useTimezone();
|
||||
const {
|
||||
query: { url, referrer, os, browser, device, country, title },
|
||||
query: { url, referrer, os, browser, device, country, region, city, title },
|
||||
} = usePageQuery();
|
||||
const { get, useQuery } = useApi();
|
||||
const { ref, isSticky } = useSticky({ enabled: stickyHeader });
|
||||
|
||||
const { data, isLoading, error } = useQuery(
|
||||
['websites:pageviews', { websiteId, modified, url, referrer, os, browser, device, country }],
|
||||
[
|
||||
'websites:pageviews',
|
||||
{ websiteId, modified, url, referrer, os, browser, device, country, region, city, title },
|
||||
],
|
||||
() =>
|
||||
get(`/websites/${websiteId}/pageviews`, {
|
||||
startAt: +startDate,
|
||||
@ -52,6 +55,9 @@ export default function WebsiteChart({
|
||||
browser,
|
||||
device,
|
||||
country,
|
||||
region,
|
||||
city,
|
||||
title,
|
||||
}),
|
||||
{ onSuccess: onDataLoad },
|
||||
);
|
||||
@ -82,7 +88,7 @@ export default function WebsiteChart({
|
||||
</WebsiteHeader>
|
||||
<FilterTags
|
||||
websiteId={websiteId}
|
||||
params={{ url, referrer, os, browser, device, country, title }}
|
||||
params={{ url, referrer, os, browser, device, country, region, city, title }}
|
||||
/>
|
||||
<Row
|
||||
ref={ref}
|
||||
|
@ -19,7 +19,7 @@ export default function TeamDeleteForm({ teamId, teamName, onSave, onClose }) {
|
||||
return (
|
||||
<Form onSubmit={handleSubmit} error={error}>
|
||||
<p>
|
||||
<FormattedMessage {...messages.confirmDelete} values={{ name: <b>{teamName}</b> }} />
|
||||
<FormattedMessage {...messages.confirmDelete} values={{ target: <b>{teamName}</b> }} />
|
||||
</p>
|
||||
<FormButtons flex>
|
||||
<SubmitButton variant="danger" disabled={isLoading}>
|
||||
|
@ -16,7 +16,9 @@ import useMessages from 'hooks/useMessages';
|
||||
export default function UserEditForm({ userId, data, onSave }) {
|
||||
const { formatMessage, labels, messages } = useMessages();
|
||||
const { post, useMutation } = useApi();
|
||||
const { mutate, error } = useMutation(({ username }) => post(`/users/${userId}`, { username }));
|
||||
const { mutate, error } = useMutation(({ username, password, role }) =>
|
||||
post(`/users/${userId}`, { username, password, role }),
|
||||
);
|
||||
|
||||
const handleSubmit = async data => {
|
||||
mutate(data, {
|
||||
|
@ -52,7 +52,7 @@ export default function UsersTable({ data = [], onDelete }) {
|
||||
</Icon>
|
||||
<Text>{formatMessage(labels.delete)}</Text>
|
||||
</Button>
|
||||
<Modal>
|
||||
<Modal title={formatMessage(labels.deleteUser)}>
|
||||
{close => (
|
||||
<UserDeleteForm
|
||||
userId={row.id}
|
||||
|
@ -13,7 +13,7 @@ import useMessages from 'hooks/useMessages';
|
||||
const CONFIRM_VALUE = 'DELETE';
|
||||
|
||||
export default function WebsiteDeleteForm({ websiteId, onSave, onClose }) {
|
||||
const { formatMessage, labels, messages } = useMessages();
|
||||
const { formatMessage, labels, messages, FormattedMessage } = useMessages();
|
||||
const { del, useMutation } = useApi();
|
||||
const { mutate, error } = useMutation(data => del(`/websites/${websiteId}`, data));
|
||||
|
||||
@ -28,7 +28,12 @@ export default function WebsiteDeleteForm({ websiteId, onSave, onClose }) {
|
||||
|
||||
return (
|
||||
<Form onSubmit={handleSubmit} error={error}>
|
||||
<p>{formatMessage(messages.deleteWebsite, { confirmation: CONFIRM_VALUE })}</p>
|
||||
<p>
|
||||
<FormattedMessage
|
||||
{...messages.deleteWebsite}
|
||||
values={{ confirmation: <b>{CONFIRM_VALUE}</b> }}
|
||||
/>
|
||||
</p>
|
||||
<FormRow label={formatMessage(labels.confirm)}>
|
||||
<FormInput name="confirmation" rules={{ validate: value => value === CONFIRM_VALUE }}>
|
||||
<TextField autoComplete="off" />
|
||||
|
@ -3,6 +3,8 @@ import Link from 'next/link';
|
||||
import { GridRow, GridColumn } from 'components/layout/Grid';
|
||||
import BrowsersTable from 'components/metrics/BrowsersTable';
|
||||
import CountriesTable from 'components/metrics/CountriesTable';
|
||||
import RegionsTable from 'components/metrics/RegionsTable';
|
||||
import CitiesTable from 'components/metrics/CitiesTable';
|
||||
import DevicesTable from 'components/metrics/DevicesTable';
|
||||
import LanguagesTable from 'components/metrics/LanguagesTable';
|
||||
import OSTable from 'components/metrics/OSTable';
|
||||
@ -26,6 +28,8 @@ const views = {
|
||||
device: DevicesTable,
|
||||
screen: ScreenTable,
|
||||
country: CountriesTable,
|
||||
region: RegionsTable,
|
||||
city: CitiesTable,
|
||||
language: LanguagesTable,
|
||||
event: EventsTable,
|
||||
query: QueryParametersTable,
|
||||
@ -69,6 +73,16 @@ export default function WebsiteMenuView({ websiteId, websiteDomain }) {
|
||||
label: formatMessage(labels.countries),
|
||||
url: resolveUrl({ view: 'country' }),
|
||||
},
|
||||
{
|
||||
key: 'region',
|
||||
label: formatMessage(labels.regions),
|
||||
url: resolveUrl({ view: 'region' }),
|
||||
},
|
||||
{
|
||||
key: 'city',
|
||||
label: formatMessage(labels.cities),
|
||||
url: resolveUrl({ view: 'city' }),
|
||||
},
|
||||
{
|
||||
key: 'language',
|
||||
label: formatMessage(labels.languages),
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "اجراءات",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "إضافة موقع",
|
||||
"label.administrator": "مدير عام؟",
|
||||
"label.admin": "مدير عام؟",
|
||||
"label.all": "الكل",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "المتصفحات",
|
||||
"label.cancel": "إلغاء",
|
||||
"label.change-password": "تغيير كلمة المرور",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "تأكيد كلمة المرور",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "التحويلات",
|
||||
"label.refresh": "تحديث",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "اجباري",
|
||||
"label.reset": "اعادة تعيين",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "اسم المستخدم",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "عرض التفاصيل",
|
||||
"label.views": "مشاهدات",
|
||||
"label.visitors": "زوار",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Дзеянні",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Дадаць сайт",
|
||||
"label.administrator": "Адміністратар",
|
||||
"label.admin": "Адміністратар",
|
||||
"label.all": "Усё",
|
||||
"label.all-time": "Увесь час",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Браўзеры",
|
||||
"label.cancel": "Адмена",
|
||||
"label.change-password": "Змяніць пароль",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Падцвердзіць пароль",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referrers",
|
||||
"label.refresh": "Аднавіць",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Абавязкова",
|
||||
"label.reset": "Скінуць",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Імя карыстальніка",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Пабачыць дэталі",
|
||||
"label.views": "Прагляды",
|
||||
"label.visitors": "Наведвальнікі",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "অ্যাকশনস",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "ওয়েবসাইট যুক্ত করুন",
|
||||
"label.administrator": "অ্যাডমিন",
|
||||
"label.admin": "অ্যাডমিন",
|
||||
"label.all": "সবগুলো",
|
||||
"label.all-time": "সব সময়",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "ব্রাউজার",
|
||||
"label.cancel": "বাতিল",
|
||||
"label.change-password": "পাসওয়ার্ড পরিবর্তন করুন",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "পাসওয়ার্ড নিশ্চিত করুন",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "রেফারার্স",
|
||||
"label.refresh": "রিফ্রেশ",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "প্রয়োজনীয়",
|
||||
"label.reset": "রিসেট",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "ব্যবহারকারীর নাম",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "বিস্তারিত দেখুন",
|
||||
"label.views": "ভিউস",
|
||||
"label.visitors": "পরিদর্শনার্থী",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Accions",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Afegeix lloc web",
|
||||
"label.administrator": "Administrador",
|
||||
"label.admin": "Administrador",
|
||||
"label.all": "Tots",
|
||||
"label.all-time": "Sempre",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Navegadors",
|
||||
"label.cancel": "Cancel·la",
|
||||
"label.change-password": "Canvia la contrasenya",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Confirma la contrasenya",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referents",
|
||||
"label.refresh": "Refresca",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Obligatori",
|
||||
"label.reset": "Restableix",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Nom d'usuari",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Veure els detalls",
|
||||
"label.views": "Vistes",
|
||||
"label.visitors": "Visitants",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Akce",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Přidat web",
|
||||
"label.administrator": "Administrátor",
|
||||
"label.admin": "Administrátor",
|
||||
"label.all": "Vše",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Prohlížeč",
|
||||
"label.cancel": "Zrušit",
|
||||
"label.change-password": "Změnit heslo",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Potvrdit heslo",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Odkazy",
|
||||
"label.refresh": "Obnovit",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Vyžadováno",
|
||||
"label.reset": "Reset",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Uživatelské jméno",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Zobrazit detaily",
|
||||
"label.views": "Zobrazení",
|
||||
"label.visitors": "Návštěvy",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Handlinger",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Tilføj hjemmeside",
|
||||
"label.administrator": "Administrator",
|
||||
"label.admin": "Administrator",
|
||||
"label.all": "Alle",
|
||||
"label.all-time": "Altid",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Browsere",
|
||||
"label.cancel": "Afvis",
|
||||
"label.change-password": "Skift adgangskode",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Godkendt adgangskode",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Henvisninger",
|
||||
"label.refresh": "Opdater",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Påkrævet",
|
||||
"label.reset": "Nulstil",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Brugernavn",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Vis detajler",
|
||||
"label.views": "Visninger",
|
||||
"label.visitors": "Besøgende",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Aktione",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Websiite hinzuefüege",
|
||||
"label.administrator": "Administrator",
|
||||
"label.admin": "Administrator",
|
||||
"label.all": "Alli",
|
||||
"label.all-time": "Gesamte Zitruum",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Browser",
|
||||
"label.cancel": "Abbreche",
|
||||
"label.change-password": "Passwort ändere",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Passwort widerhole",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referrer",
|
||||
"label.refresh": "Aktualisiere",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Erforderlich",
|
||||
"label.reset": "Zruggsetze",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Benutzername",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Details azeige",
|
||||
"label.views": "Ufrüef",
|
||||
"label.visitors": "Bsuecher",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Aktionen",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Webseite hinzufügen",
|
||||
"label.administrator": "Administrator",
|
||||
"label.admin": "Administrator",
|
||||
"label.all": "Alle",
|
||||
"label.all-time": "Gesamter Zeitraum",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Browser",
|
||||
"label.cancel": "Abbrechen",
|
||||
"label.change-password": "Passwort ändern",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Passwort wiederholen",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referrer",
|
||||
"label.refresh": "Aktualisieren",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Erforderlich",
|
||||
"label.reset": "Zurücksetzen",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Benutzername",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Details anzeigen",
|
||||
"label.views": "Aufrufe",
|
||||
"label.visitors": "Besucher",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Ενέργειες",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Προσθήκη ιστότοπου",
|
||||
"label.administrator": "Διαχειριστής",
|
||||
"label.admin": "Διαχειριστής",
|
||||
"label.all": "All",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Προγράμματα περιήγησης",
|
||||
"label.cancel": "Ακύρωση",
|
||||
"label.change-password": "Αλλαγή κωδικού",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Επιβεβαίωση κωδικού",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Παραπομπές",
|
||||
"label.refresh": "Ανανέωση",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Απαιτείται",
|
||||
"label.reset": "Επαναφορά",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Όνομα χρήστη",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Λεπτομέρειες",
|
||||
"label.views": "Προβολές",
|
||||
"label.visitors": "Επισκέπτες",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Actions",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Add website",
|
||||
"label.administrator": "Administrator",
|
||||
"label.admin": "Administrator",
|
||||
"label.all": "All",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Browsers",
|
||||
"label.cancel": "Cancel",
|
||||
"label.change-password": "Change password",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Confirm password",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referrers",
|
||||
"label.refresh": "Refresh",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Required",
|
||||
"label.reset": "Reset",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Username",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "View details",
|
||||
"label.views": "Views",
|
||||
"label.visitors": "Visitors",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Actions",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Add website",
|
||||
"label.administrator": "Administrator",
|
||||
"label.admin": "Administrator",
|
||||
"label.all": "All",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Browsers",
|
||||
"label.cancel": "Cancel",
|
||||
"label.change-password": "Change password",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Confirm password",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referrers",
|
||||
"label.refresh": "Refresh",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Required",
|
||||
"label.reset": "Reset",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Username",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "View details",
|
||||
"label.views": "Views",
|
||||
"label.visitors": "Visitors",
|
||||
@ -113,7 +116,7 @@
|
||||
"message.confirm-delete": "Are you sure you want to delete {target}?",
|
||||
"message.confirm-leave": "Are you sure you want to leave {target}?",
|
||||
"message.confirm-reset": "Are you sure you want to reset {target}'s statistics?",
|
||||
"message.delete-website": "Delete website",
|
||||
"message.delete-website": "To delete this website, type {confirmation} in the box below to confirm.",
|
||||
"message.delete-website-warning": "All associated data will be deleted as well.",
|
||||
"message.error": "Something went wrong.",
|
||||
"message.event-log": "{event} on {url}",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Acciones",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Agregar sitio",
|
||||
"label.administrator": "Administrador",
|
||||
"label.admin": "Administrador",
|
||||
"label.all": "Todos",
|
||||
"label.all-time": "Todos los tiempos",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Navegadores",
|
||||
"label.cancel": "Cancelar",
|
||||
"label.change-password": "Cambiar contraseña",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Confirmar contraseña",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referido desde",
|
||||
"label.refresh": "Actualizar",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Obligatorio",
|
||||
"label.reset": "Reiniciar",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Nombre de usuario",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Ver detalles",
|
||||
"label.views": "Vistas",
|
||||
"label.visitors": "Visitantes",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "اقدامات",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "افزودن وبسایت",
|
||||
"label.administrator": "مدیر",
|
||||
"label.admin": "مدیر",
|
||||
"label.all": "همه",
|
||||
"label.all-time": "همه زمان",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "مروگرها",
|
||||
"label.cancel": "انصراف",
|
||||
"label.change-password": "تغییر رمز",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "تایید رمز",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "ارجاع دهندگان",
|
||||
"label.refresh": "بهروزرسانی",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "ضروری",
|
||||
"label.reset": "بازنشانی",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "نام کاربری",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "مشاهدهی جزئیات",
|
||||
"label.views": "بازدید",
|
||||
"label.visitors": "بازدیدکننده",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Toiminnat",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Lisää verkkosivu",
|
||||
"label.administrator": "Järjestelmänvalvoja",
|
||||
"label.admin": "Järjestelmänvalvoja",
|
||||
"label.all": "Kaikki",
|
||||
"label.all-time": "Alusta lähtien",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Selaimet",
|
||||
"label.cancel": "Peruuta",
|
||||
"label.change-password": "Vaihda salasana",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Vahvista salasana",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Viittaajat",
|
||||
"label.refresh": "Päivitä",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Vaaditaan",
|
||||
"label.reset": "Nollaa",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Käyttäjänimi",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Katso tiedot",
|
||||
"label.views": "Näyttökerrat",
|
||||
"label.visitors": "Vierailijat",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Gerðir",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Legg heimasíðu afturat",
|
||||
"label.administrator": "Fyrisitari",
|
||||
"label.admin": "Fyrisitari",
|
||||
"label.all": "Alt",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Kagar",
|
||||
"label.cancel": "Strika",
|
||||
"label.change-password": "Skift loyniorð",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Vátta loyniorð",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Framsendingar",
|
||||
"label.refresh": "Endurskapa",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Kravt",
|
||||
"label.reset": "Nulstilla",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Brúkaranavn",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Vís frágreiðing",
|
||||
"label.views": "Sýningar",
|
||||
"label.visitors": "Vitjandi",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Actions",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Ajouter un site",
|
||||
"label.administrator": "Administrateur",
|
||||
"label.admin": "Administrateur",
|
||||
"label.all": "Tout",
|
||||
"label.all-time": "Toutes les données",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Navigateurs",
|
||||
"label.cancel": "Annuler",
|
||||
"label.change-password": "Changer le mot de passe",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Confirmation du mot de passe",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Sources",
|
||||
"label.refresh": "Rafraîchir",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Requis",
|
||||
"label.reset": "Réinitialiser",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Nom d'utilisateur",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Voir les details",
|
||||
"label.views": "Vues",
|
||||
"label.visitors": "Visiteurs",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Accións",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Engadir sitio web",
|
||||
"label.administrator": "Administradora",
|
||||
"label.admin": "Administradora",
|
||||
"label.all": "Todo",
|
||||
"label.all-time": "Sempre",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Navegadores",
|
||||
"label.cancel": "Cancelar",
|
||||
"label.change-password": "Mudar contrasinal",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Confirmar contrasinal",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Orixes",
|
||||
"label.refresh": "Actualizar",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Requerido",
|
||||
"label.reset": "Restablecer",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Identificador",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Ver detalles",
|
||||
"label.views": "Visualizacións",
|
||||
"label.visitors": "Visitantes",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "פעולות",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "הוספת אתר",
|
||||
"label.administrator": "מנהל",
|
||||
"label.admin": "מנהל",
|
||||
"label.all": "הכל",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "דפדפנים",
|
||||
"label.cancel": "ביטול",
|
||||
"label.change-password": "שינוי סיסמה",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "אישור סיסמה",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "מפנים",
|
||||
"label.refresh": "רענון",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "נדרש",
|
||||
"label.reset": "איפוס",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "שם משתמש",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "פרטים נוספים",
|
||||
"label.views": "צפיות",
|
||||
"label.visitors": "מבקרים",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "कार्य",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "वेबसाइट",
|
||||
"label.administrator": "प्रशासक",
|
||||
"label.admin": "प्रशासक",
|
||||
"label.all": "सब",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "वेब ब्राउज़र",
|
||||
"label.cancel": "रद्द करें",
|
||||
"label.change-password": "पासवर्ड बदलें",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "पासवर्ड की पुष्टि कीजिये",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "सन्दर्भदाता",
|
||||
"label.refresh": "रिफ्रेश",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "अपेक्षित",
|
||||
"label.reset": "रीसेट",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "उपयोगकर्ता नाम",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "विवरण देखें",
|
||||
"label.views": "दृश्य",
|
||||
"label.visitors": "आगंतुकों",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Műveletek",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Weboldal hozzáadása",
|
||||
"label.administrator": "Adminisztrátor",
|
||||
"label.admin": "Adminisztrátor",
|
||||
"label.all": "Összes",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Böngészők",
|
||||
"label.cancel": "Mégsem",
|
||||
"label.change-password": "Jelszó módosítása",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Jelszó megerősítése",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Hivatkozók",
|
||||
"label.refresh": "Frissítés",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Kötelező",
|
||||
"label.reset": "Visszaállítás",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Felhasználónév",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Részletek",
|
||||
"label.views": "Megtekintések",
|
||||
"label.visitors": "Látogatók",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Aksi",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Tambah situs web",
|
||||
"label.administrator": "Pengelola",
|
||||
"label.admin": "Pengelola",
|
||||
"label.all": "Semua",
|
||||
"label.all-time": "Semua waktu",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Peramban",
|
||||
"label.cancel": "Batal",
|
||||
"label.change-password": "Ganti kata sandi",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Konfirmasi kata sandi",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Perujuk",
|
||||
"label.refresh": "Segarkan",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Wajib",
|
||||
"label.reset": "Atur ulang",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Nama pengguna",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Lihat Detil",
|
||||
"label.views": "Tampilan",
|
||||
"label.visitors": "Pengunjung",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Azioni",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Aggiungi sito",
|
||||
"label.administrator": "Amministratore",
|
||||
"label.admin": "Amministratore",
|
||||
"label.all": "Tutto",
|
||||
"label.all-time": "Sempre",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Browser",
|
||||
"label.cancel": "Annulla",
|
||||
"label.change-password": "Modifica password",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Conferma password",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referrers",
|
||||
"label.refresh": "Ricarica",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Obbligatorio",
|
||||
"label.reset": "Reset",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Nome utente",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Vedi dettagli",
|
||||
"label.views": "Visualizzazioni",
|
||||
"label.visitors": "Visitatori",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "アクション",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Webサイトの追加",
|
||||
"label.administrator": "管理者",
|
||||
"label.admin": "管理者",
|
||||
"label.all": "すべて表示",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "ブラウザ",
|
||||
"label.cancel": "キャンセル",
|
||||
"label.change-password": "パスワード変更",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "パスワード(確認)",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "リファラー",
|
||||
"label.refresh": "更新",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "必須",
|
||||
"label.reset": "リセット",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "ユーザー名",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "詳細を見る",
|
||||
"label.views": "閲覧数",
|
||||
"label.visitors": "訪問者数",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "សកម្មភាព",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "បន្ថែមគេហទំព័រ",
|
||||
"label.administrator": "អ្នកគ្រប់គ្រង",
|
||||
"label.admin": "អ្នកគ្រប់គ្រង",
|
||||
"label.all": "ទាំងអស់",
|
||||
"label.all-time": "គ្រប់ពេល",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "កម្មវិធី",
|
||||
"label.cancel": "បោះបង់",
|
||||
"label.change-password": "ផ្លាស់ប្តូរពាក្យសម្ងាត់",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "បញ្ជាក់ពាក្យសម្ងាត់",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "អ្នកណែនាំ",
|
||||
"label.refresh": "ផ្ទុកឡើងវិញ",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "ទាមទារ",
|
||||
"label.reset": "កំណត់ឡើងវិញ",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "ឈ្មោះអ្នកប្រើប្រាស់",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "មើលព័ត៌មានលម្អិត",
|
||||
"label.views": "អ្នកចូលមើល",
|
||||
"label.visitors": "អ្នកទស្សនា",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "액션",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "웹사이트 추가",
|
||||
"label.administrator": "관리자",
|
||||
"label.admin": "관리자",
|
||||
"label.all": "전체",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "브라우저",
|
||||
"label.cancel": "취소",
|
||||
"label.change-password": "비밀번호 변경",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "비밀번호 확인",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "리퍼러",
|
||||
"label.refresh": "새로고침",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "필수",
|
||||
"label.reset": "리셋",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "사용자명",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "상세보기",
|
||||
"label.views": "조회수",
|
||||
"label.visitors": "방문객",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Veiksmai",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Pridėti svetainę",
|
||||
"label.administrator": "Administratorius",
|
||||
"label.admin": "Administratorius",
|
||||
"label.all": "Visi",
|
||||
"label.all-time": "Visas laikotarpis",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Naršyklės",
|
||||
"label.cancel": "Atšaukti",
|
||||
"label.change-password": "Pakeisti slaptažodį",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Patvirtinti slaptažodį",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referrers",
|
||||
"label.refresh": "Atnaujinti",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Reikalinga",
|
||||
"label.reset": "Atstatyti",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Vartotojo vardas",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Peržiūrėti detaliau",
|
||||
"label.views": "Peržiūros",
|
||||
"label.visitors": "Lankytojai",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Үйлдлүүд",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Веб нэмэх",
|
||||
"label.administrator": "Админ",
|
||||
"label.admin": "Админ",
|
||||
"label.all": "Бүх",
|
||||
"label.all-time": "Бүх цаг үеийн",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Хөтөч",
|
||||
"label.cancel": "Цуцлах",
|
||||
"label.change-password": "Нууц үг солих",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Шинэ нууц үгээ давтах",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Чиглүүлэгч",
|
||||
"label.refresh": "Сэргээх",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Шаардлагатай",
|
||||
"label.reset": "Хуучин хэвд нь оруулах",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Хэрэглэгчийн нэр",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Дэлгэрүүлж харах",
|
||||
"label.views": "Үзсэн",
|
||||
"label.visitors": "Зочин",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Aksi",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Tambah laman web",
|
||||
"label.administrator": "Pentadbir",
|
||||
"label.admin": "Pentadbir",
|
||||
"label.all": "Semua",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Pelayar web",
|
||||
"label.cancel": "Batal",
|
||||
"label.change-password": "Tukar kata laluan",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Sahkan kata laluan",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Perujuk",
|
||||
"label.refresh": "Muat semula",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Diperlukan",
|
||||
"label.reset": "Tetapkan semula",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Nama pengguna",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Lihat butiran",
|
||||
"label.views": "Lawatan",
|
||||
"label.visitors": "Pelawat",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Handlinger",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Legg til nettsted",
|
||||
"label.administrator": "Administrator",
|
||||
"label.admin": "Administrator",
|
||||
"label.all": "Alle",
|
||||
"label.all-time": "Noensinne",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Nettlesere",
|
||||
"label.cancel": "Avvis",
|
||||
"label.change-password": "Bytt passord",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Godkjenn passord",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referanser",
|
||||
"label.refresh": "Oppdater",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Påkrevd",
|
||||
"label.reset": "Nullstill",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Brukernavn",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Vis detaljer",
|
||||
"label.views": "Visninger",
|
||||
"label.visitors": "Besøkende",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Acties",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Website toevoegen",
|
||||
"label.administrator": "Administrator",
|
||||
"label.admin": "Administrator",
|
||||
"label.all": "Alles",
|
||||
"label.all-time": "Onbeperkt",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Browsers",
|
||||
"label.cancel": "Annuleren",
|
||||
"label.change-password": "Wachtwoord wijzigen",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Wachtwoord bevestigen",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Verwijzers",
|
||||
"label.refresh": "Vernieuwen",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Verplicht",
|
||||
"label.reset": "Resetten",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Gebruikersnaam",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Meer details",
|
||||
"label.views": "Weergaven",
|
||||
"label.visitors": "Bezoekers",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Działania",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Dodaj witrynę",
|
||||
"label.administrator": "Administrator",
|
||||
"label.admin": "Administrator",
|
||||
"label.all": "Wszystkie",
|
||||
"label.all-time": "Cały czas",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Przeglądarki",
|
||||
"label.cancel": "Anuluj",
|
||||
"label.change-password": "Zmień hasło",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Potwierdź hasło",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Źródła odsyłające",
|
||||
"label.refresh": "Odśwież",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Wymagany",
|
||||
"label.reset": "Zresetuj",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Nazwa użytkownika",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Pokaż szczegóły",
|
||||
"label.views": "Wyświetlenia",
|
||||
"label.visitors": "Odwiedzający",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Ações",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Adicionar site",
|
||||
"label.administrator": "Administrador",
|
||||
"label.admin": "Administrador",
|
||||
"label.all": "Todos",
|
||||
"label.all-time": "Todo o período",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Navegadores",
|
||||
"label.cancel": "Cancelar",
|
||||
"label.change-password": "Alterar a senha",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Confirme a nova senha",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referências",
|
||||
"label.refresh": "Atualizar",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Obrigatório",
|
||||
"label.reset": "Redefinir",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Nome de usuário",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Ver detalhes",
|
||||
"label.views": "Visualizações",
|
||||
"label.visitors": "Visitantes",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Ações",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Adicionar website",
|
||||
"label.administrator": "Administrador",
|
||||
"label.admin": "Administrador",
|
||||
"label.all": "Todos",
|
||||
"label.all-time": "Todo o tempo",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Navegadores",
|
||||
"label.cancel": "Cancelar",
|
||||
"label.change-password": "Alterar senha",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Confirmar senha",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Referenciadores",
|
||||
"label.refresh": "Atualizar",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Obrigatório",
|
||||
"label.reset": "Repor",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Nome de utilizador",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Ver detalhes",
|
||||
"label.views": "Visualizações",
|
||||
"label.visitors": "Visitantes",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Acțiuni",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Adăugare site web",
|
||||
"label.administrator": "Administrator",
|
||||
"label.admin": "Administrator",
|
||||
"label.all": "Toate",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Browsere",
|
||||
"label.cancel": "Anulează",
|
||||
"label.change-password": "Schimbare parolă",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Confirmare parolă",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Site-uri de proveniență",
|
||||
"label.refresh": "Reîmprospătare",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Obligatoriu",
|
||||
"label.reset": "Resetează",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Nume utilizator",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Vizualizare detalii",
|
||||
"label.views": "Vizualizări",
|
||||
"label.visitors": "Vizitatori",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Действия",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Добавить сайт",
|
||||
"label.administrator": "Администратор",
|
||||
"label.admin": "Администратор",
|
||||
"label.all": "Все",
|
||||
"label.all-time": "Все время",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Браузеры",
|
||||
"label.cancel": "Отменить",
|
||||
"label.change-password": "Изменить пароль",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Подтвердить пароль",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Источники",
|
||||
"label.refresh": "Обновить",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Обязательное",
|
||||
"label.reset": "Сбросить",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Имя пользователя",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Посмотреть детали",
|
||||
"label.views": "Просмотры",
|
||||
"label.visitors": "Посетители",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Akcie",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Pridať web",
|
||||
"label.administrator": "Administrátor",
|
||||
"label.admin": "Administrátor",
|
||||
"label.all": "Všetko",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Prehliadač",
|
||||
"label.cancel": "Zrušiť",
|
||||
"label.change-password": "Zmeniť heslo",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Potvrdiť heslo",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Odkazy",
|
||||
"label.refresh": "Obnoviť",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Povinné",
|
||||
"label.reset": "Reset",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Užívateľské meno",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Zobraziť detaily",
|
||||
"label.views": "Zobrazení",
|
||||
"label.visitors": "Návštevy",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Dejanja",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Dodaj spletno mesto",
|
||||
"label.administrator": "Administrator",
|
||||
"label.admin": "Administrator",
|
||||
"label.all": "Vse",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Brskalniki",
|
||||
"label.cancel": "Prekliči",
|
||||
"label.change-password": "Zamenjaj geslo",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Potrditev gesla",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Viri",
|
||||
"label.refresh": "Osveži",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Zahtevano",
|
||||
"label.reset": "Ponastavi",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Uporabniško ime",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Prikaži podrobnosti",
|
||||
"label.views": "Ogledi",
|
||||
"label.visitors": "Obiskovalci",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Händelser",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Lägg till webbsajt",
|
||||
"label.administrator": "Administratör",
|
||||
"label.admin": "Administratör",
|
||||
"label.all": "Alla",
|
||||
"label.all-time": "Sedan början",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Webbläsare",
|
||||
"label.cancel": "Avbryt",
|
||||
"label.change-password": "Byt lösenord",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Bekräfta lösenord",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Hänvisare",
|
||||
"label.refresh": "Uppdatera",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Krävs",
|
||||
"label.reset": "Återställ",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Användarnamn",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Visa detaljer",
|
||||
"label.views": "Visningar",
|
||||
"label.visitors": "Besökare",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "செயல்கள்",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "வலைத்தளத்தைச் சேர்க்க",
|
||||
"label.administrator": "நிர்வாகியைச் சேர்க்க",
|
||||
"label.admin": "நிர்வாகியைச் சேர்க்க",
|
||||
"label.all": "எல்லாம்",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "உலாவிகள்",
|
||||
"label.cancel": "ரத்துசெய்",
|
||||
"label.change-password": "கடவுச்சொல்லை மாற்று",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "கடவுச்சொல்லை உறுதிப்படுத்தவும்",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "குறிப்பிடுவோர்",
|
||||
"label.refresh": "புதுப்பிப்பு",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "தேவையானவை",
|
||||
"label.reset": "மீட்டமை",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "பயனர்பெயர்",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "விபரங்களை பார்",
|
||||
"label.views": "பார்வைகள்",
|
||||
"label.visitors": "பார்வையாளர்கள்",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "การกระทำ",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "เพิ่มเว็บไซต์",
|
||||
"label.administrator": "ผู้ดูแลระบบ",
|
||||
"label.admin": "ผู้ดูแลระบบ",
|
||||
"label.all": "ทั้งหมด",
|
||||
"label.all-time": "ทุกช่วงเวลา",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "เบราว์เซอร์",
|
||||
"label.cancel": "ยกเลิก",
|
||||
"label.change-password": "เปลี่ยนรหัสผ่าน",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "ยืนยันรหัสผ่าน",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "แหล่งที่มา",
|
||||
"label.refresh": "รีเฟรช",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "ต้องการ",
|
||||
"label.reset": "รีเซต",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "ชื่อผู้ใช้",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "แสดงรายละเอียด",
|
||||
"label.views": "การเข้าชม",
|
||||
"label.visitors": "ผู้เข้าชม",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Hareketler",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Web sitesi ekle",
|
||||
"label.administrator": "Yönetici",
|
||||
"label.admin": "Yönetici",
|
||||
"label.all": "Tümü",
|
||||
"label.all-time": "All time",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Tarayıcılar",
|
||||
"label.cancel": "İptal",
|
||||
"label.change-password": "Şifre değiştir",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Parolayı onayla",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Yönlendirenler",
|
||||
"label.refresh": "Yenile",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Zorunlu alan",
|
||||
"label.reset": "Sıfırla",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Kullanıcı adı",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Detayı incele",
|
||||
"label.views": "Görüntüleme",
|
||||
"label.visitors": "Ziyaretçi",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Дії",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Додати сайт",
|
||||
"label.administrator": "Адміністратор",
|
||||
"label.admin": "Адміністратор",
|
||||
"label.all": "Всі",
|
||||
"label.all-time": "Весь час",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Браузери",
|
||||
"label.cancel": "Відмінити",
|
||||
"label.change-password": "Змінити пароль",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Підтвердити пароль",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Джерела",
|
||||
"label.refresh": "Оновити",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Обов'язкове",
|
||||
"label.reset": "Скинути",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Ім'я користувача",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Переглянути деталі",
|
||||
"label.views": "Перегляди",
|
||||
"label.visitors": "Відвідувачі",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "اعمال",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "ویب سائٹ کا اضافہ کریں",
|
||||
"label.administrator": "منتظم",
|
||||
"label.admin": "منتظم",
|
||||
"label.all": "تمام",
|
||||
"label.all-time": "تمام وقت",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "براؤزرز",
|
||||
"label.cancel": "منسوخ",
|
||||
"label.change-password": "پاس ورڈ تبدیل کریں",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "پاس ورڈ کی تصدیق کریں",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "بھیجنے والے",
|
||||
"label.refresh": "تازہ دم کریں",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "درکار ہے",
|
||||
"label.reset": "دوبارہ ترتیب دیں",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "صارف نام",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "تفصیلات دیکھیں",
|
||||
"label.views": "مناظر",
|
||||
"label.visitors": "زائرین",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "Hành động",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "Thêm website",
|
||||
"label.administrator": "Quản trị",
|
||||
"label.admin": "Quản trị",
|
||||
"label.all": "Tất cả",
|
||||
"label.all-time": "Toàn thời gian",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "Trình duyệt",
|
||||
"label.cancel": "Huỷ bỏ",
|
||||
"label.change-password": "Đổi mật khẩu",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "Xác nhận mật khẩu",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "Liên kết giới thiệu",
|
||||
"label.refresh": "Làm mới",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "Yêu cầu",
|
||||
"label.reset": "Tái thiết lập",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "Tên đăng nhập",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "Xem chi tiết",
|
||||
"label.views": "Xem",
|
||||
"label.visitors": "Khách",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "用户行为",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "添加网站",
|
||||
"label.administrator": "管理员",
|
||||
"label.admin": "管理员",
|
||||
"label.all": "所有",
|
||||
"label.all-time": "所有时间段",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "浏览器",
|
||||
"label.cancel": "取消",
|
||||
"label.change-password": "更新密码",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "确认密码",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "来源域名",
|
||||
"label.refresh": "刷新",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "必填",
|
||||
"label.reset": "重置",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "用户名",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "查看更多",
|
||||
"label.views": "浏览量",
|
||||
"label.visitors": "访客",
|
||||
|
@ -3,7 +3,7 @@
|
||||
"label.actions": "用戶行為",
|
||||
"label.activity-log": "Activity log",
|
||||
"label.add-website": "增加網站",
|
||||
"label.administrator": "管理員",
|
||||
"label.admin": "管理員",
|
||||
"label.all": "所有",
|
||||
"label.all-time": "所有時間段",
|
||||
"label.analytics": "Analytics",
|
||||
@ -13,6 +13,7 @@
|
||||
"label.browsers": "瀏覽器",
|
||||
"label.cancel": "取消",
|
||||
"label.change-password": "更新密碼",
|
||||
"label.cities": "Cities",
|
||||
"label.clear-all": "Clear all",
|
||||
"label.confirm": "Confirm",
|
||||
"label.confirm-password": "確認密碼",
|
||||
@ -70,6 +71,7 @@
|
||||
"label.referrers": "指入域名",
|
||||
"label.refresh": "刷新",
|
||||
"label.regenerate": "Regenerate",
|
||||
"label.regions": "Regions",
|
||||
"label.remove": "Remove",
|
||||
"label.required": "必填",
|
||||
"label.reset": "重置",
|
||||
@ -103,6 +105,7 @@
|
||||
"label.user": "User",
|
||||
"label.username": "用户名",
|
||||
"label.users": "Users",
|
||||
"label.view": "View",
|
||||
"label.view-details": "查看更多",
|
||||
"label.views": "頁面流量",
|
||||
"label.visitors": "獨立訪客",
|
||||
|
@ -95,17 +95,11 @@ export async function canViewWebsite({ user, shareToken }: Auth, websiteId: stri
|
||||
return false;
|
||||
}
|
||||
|
||||
export async function canCreateWebsite({ user }: Auth, teamId?: string) {
|
||||
export async function canCreateWebsite({ user }: Auth) {
|
||||
if (user.isAdmin) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (teamId) {
|
||||
const teamUser = await getTeamUser(teamId, user.id);
|
||||
|
||||
return hasPermission(teamUser?.role, PERMISSIONS.websiteCreate);
|
||||
}
|
||||
|
||||
return hasPermission(user.role, PERMISSIONS.websiteCreate);
|
||||
}
|
||||
|
||||
|
@ -37,10 +37,9 @@ export const SESSION_COLUMNS = [
|
||||
'os',
|
||||
'device',
|
||||
'screen',
|
||||
'country',
|
||||
'language',
|
||||
'subdivision1',
|
||||
'subdivision2',
|
||||
'country',
|
||||
'region',
|
||||
'city',
|
||||
];
|
||||
|
||||
@ -50,6 +49,7 @@ export const FILTER_COLUMNS = {
|
||||
title: 'page_title',
|
||||
query: 'url_query',
|
||||
event: 'event_name',
|
||||
region: 'subdivision1',
|
||||
};
|
||||
|
||||
export const EVENT_TYPE = {
|
||||
|
@ -43,6 +43,7 @@ export interface User {
|
||||
id: string;
|
||||
username: string;
|
||||
password?: string;
|
||||
role: string;
|
||||
createdAt?: Date;
|
||||
}
|
||||
|
||||
|
@ -45,7 +45,10 @@ export default async (
|
||||
|
||||
const token = createSecureToken({ userId: user.id }, secret());
|
||||
|
||||
return ok(res, { token, user });
|
||||
return ok(res, {
|
||||
token,
|
||||
user: { id: user.id, username: user.username, createdAt: user.createdAt },
|
||||
});
|
||||
}
|
||||
|
||||
return unauthorized(res, 'message.incorrect-username-password');
|
||||
|
@ -23,9 +23,9 @@ export default async (
|
||||
return unauthorized(res);
|
||||
}
|
||||
|
||||
const websites = await deleteTeamWebsite(teamId, websiteId);
|
||||
await deleteTeamWebsite(teamId, websiteId);
|
||||
|
||||
return ok(res, websites);
|
||||
return ok(res);
|
||||
}
|
||||
|
||||
return methodNotAllowed(res);
|
||||
|
@ -10,7 +10,6 @@ export interface TeamWebsiteRequestQuery {
|
||||
}
|
||||
|
||||
export interface TeamWebsiteRequestBody {
|
||||
teamWebsiteId?: string;
|
||||
websiteIds?: string[];
|
||||
}
|
||||
|
||||
@ -21,9 +20,6 @@ export default async (
|
||||
await useAuth(req, res);
|
||||
|
||||
const { id: teamId } = req.query;
|
||||
const {
|
||||
user: { id: userId },
|
||||
} = req.auth;
|
||||
|
||||
if (req.method === 'GET') {
|
||||
if (!(await canViewTeam(req.auth, teamId))) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
import { NextApiRequestQueryBody, User } from 'lib/types';
|
||||
import { NextApiRequestQueryBody, Roles, User } from 'lib/types';
|
||||
import { canDeleteUser, canUpdateUser, canViewUser } from 'lib/auth';
|
||||
import { useAuth } from 'lib/middleware';
|
||||
import { NextApiResponse } from 'next';
|
||||
@ -12,6 +12,7 @@ export interface UserRequestQuery {
|
||||
export interface UserRequestBody {
|
||||
username: string;
|
||||
password: string;
|
||||
role: Roles;
|
||||
}
|
||||
|
||||
export default async (
|
||||
@ -40,17 +41,20 @@ export default async (
|
||||
return unauthorized(res);
|
||||
}
|
||||
|
||||
const { username, password } = req.body;
|
||||
const { username, password, role } = req.body;
|
||||
|
||||
const user = await getUser({ id });
|
||||
|
||||
const data: any = {};
|
||||
|
||||
// Only admin can change these fields
|
||||
if (password && isAdmin) {
|
||||
if (password) {
|
||||
data.password = hashPassword(password);
|
||||
}
|
||||
|
||||
if (role && isAdmin) {
|
||||
data.role = role;
|
||||
}
|
||||
|
||||
// Only admin can change these fields
|
||||
if (username && isAdmin) {
|
||||
data.username = username;
|
||||
|
@ -41,15 +41,17 @@ export default async (
|
||||
|
||||
const { name, domain, shareId } = req.body;
|
||||
|
||||
let website;
|
||||
|
||||
try {
|
||||
await updateWebsite(websiteId, { name, domain, shareId });
|
||||
website = await updateWebsite(websiteId, { name, domain, shareId });
|
||||
} catch (e: any) {
|
||||
if (e.message.includes('Unique constraint') && e.message.includes('share_id')) {
|
||||
return serverError(res, 'That share ID is already taken.');
|
||||
}
|
||||
}
|
||||
|
||||
return ok(res);
|
||||
return ok(res, website);
|
||||
}
|
||||
|
||||
if (req.method === 'DELETE') {
|
||||
|
@ -20,8 +20,7 @@ export interface WebsiteMetricsRequestQuery {
|
||||
browser: string;
|
||||
device: string;
|
||||
country: string;
|
||||
subdivision1: string;
|
||||
subdivision2: string;
|
||||
region: string;
|
||||
city: string;
|
||||
}
|
||||
|
||||
@ -46,8 +45,7 @@ export default async (
|
||||
browser,
|
||||
device,
|
||||
country,
|
||||
subdivision1,
|
||||
subdivision2,
|
||||
region,
|
||||
city,
|
||||
} = req.query;
|
||||
|
||||
@ -66,8 +64,7 @@ export default async (
|
||||
browser,
|
||||
device,
|
||||
country,
|
||||
subdivision1,
|
||||
subdivision2,
|
||||
region,
|
||||
city,
|
||||
};
|
||||
|
||||
@ -111,8 +108,7 @@ export default async (
|
||||
browser,
|
||||
device,
|
||||
country,
|
||||
subdivision1,
|
||||
subdivision2,
|
||||
region,
|
||||
city,
|
||||
};
|
||||
|
||||
|
@ -10,7 +10,6 @@ const unitTypes = ['year', 'month', 'hour', 'day'];
|
||||
|
||||
export interface WebsitePageviewRequestQuery {
|
||||
id: string;
|
||||
websiteId: string;
|
||||
startAt: number;
|
||||
endAt: number;
|
||||
unit: string;
|
||||
|
@ -7,7 +7,6 @@ import { getWebsiteStats } from 'queries';
|
||||
|
||||
export interface WebsiteStatsRequestQuery {
|
||||
id: string;
|
||||
type: string;
|
||||
startAt: number;
|
||||
endAt: number;
|
||||
url: string;
|
||||
|
@ -10,7 +10,6 @@ export interface WebsitesRequestBody {
|
||||
name: string;
|
||||
domain: string;
|
||||
shareId: string;
|
||||
teamId?: string;
|
||||
}
|
||||
|
||||
export default async (
|
||||
@ -31,9 +30,9 @@ export default async (
|
||||
}
|
||||
|
||||
if (req.method === 'POST') {
|
||||
const { name, domain, shareId, teamId } = req.body;
|
||||
const { name, domain, shareId } = req.body;
|
||||
|
||||
if (!(await canCreateWebsite(req.auth, teamId))) {
|
||||
if (!(await canCreateWebsite(req.auth))) {
|
||||
return unauthorized(res);
|
||||
}
|
||||
|
||||
@ -44,11 +43,7 @@ export default async (
|
||||
shareId,
|
||||
};
|
||||
|
||||
if (teamId) {
|
||||
data.teamId = teamId;
|
||||
} else {
|
||||
data.userId = userId;
|
||||
}
|
||||
data.userId = userId;
|
||||
|
||||
const website = await createWebsite(data);
|
||||
|
||||
|
@ -10,7 +10,7 @@ export default function LogoutPage({ disabled }) {
|
||||
|
||||
useEffect(() => {
|
||||
async function logout() {
|
||||
await post('/logout');
|
||||
await post('/auth/logout');
|
||||
}
|
||||
|
||||
if (!disabled) {
|
||||
|
@ -758,7 +758,15 @@
|
||||
"message.delete-website": [
|
||||
{
|
||||
"type": 0,
|
||||
"value": "Delete website"
|
||||
"value": "To delete this website, type "
|
||||
},
|
||||
{
|
||||
"type": 1,
|
||||
"value": "confirmation"
|
||||
},
|
||||
{
|
||||
"type": 0,
|
||||
"value": " in the box below to confirm."
|
||||
}
|
||||
],
|
||||
"message.delete-website-warning": [
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -17,6 +17,7 @@ export async function getUser(
|
||||
username: true,
|
||||
password: includePassword,
|
||||
role: true,
|
||||
createdAt: true,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
@ -13,7 +13,6 @@ export async function getEventMetrics(
|
||||
endDate: Date;
|
||||
timezone: string;
|
||||
unit: string;
|
||||
column: string;
|
||||
filters: {
|
||||
url: string;
|
||||
eventName: string;
|
||||
@ -40,7 +39,6 @@ async function relationalQuery(
|
||||
endDate: Date;
|
||||
timezone: string;
|
||||
unit: string;
|
||||
column: string;
|
||||
filters: {
|
||||
url: string;
|
||||
eventName: string;
|
||||
|
@ -137,7 +137,7 @@ async function clickhouseQuery(data: {
|
||||
session_id: sessionId,
|
||||
event_id: eventId,
|
||||
country: country ? country : null,
|
||||
subdivision1: subdivision1 ? subdivision1 : null,
|
||||
subdivision1: country && subdivision1 ? `${country}-${subdivision1}` : null,
|
||||
subdivision2: subdivision2 ? subdivision2 : null,
|
||||
city: city ? city : null,
|
||||
url_path: urlPath?.substring(0, URL_LENGTH),
|
||||
|
@ -18,7 +18,37 @@ export async function createSession(args: Prisma.SessionCreateInput) {
|
||||
}
|
||||
|
||||
async function relationalQuery(data: Prisma.SessionCreateInput) {
|
||||
return prisma.client.session.create({ data });
|
||||
const {
|
||||
id,
|
||||
websiteId,
|
||||
hostname,
|
||||
browser,
|
||||
os,
|
||||
device,
|
||||
screen,
|
||||
language,
|
||||
country,
|
||||
subdivision1,
|
||||
subdivision2,
|
||||
city,
|
||||
} = data;
|
||||
|
||||
return prisma.client.session.create({
|
||||
data: {
|
||||
id,
|
||||
websiteId,
|
||||
hostname,
|
||||
browser,
|
||||
os,
|
||||
device,
|
||||
screen,
|
||||
language,
|
||||
country,
|
||||
subdivision1: country && subdivision1 ? `${country}-${subdivision1}` : null,
|
||||
subdivision2,
|
||||
city,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
async function clickhouseQuery(data: {
|
||||
|
Loading…
Reference in New Issue
Block a user