# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR Free Software Foundation, Inc. # # Translators: # Gediminas Paulauskas , 2000,2002 # Moo, 2015-2016 msgid "" msgstr "" "Project-Id-Version: Mageia\n" "POT-Creation-Date: 2019-10-17 18:26+0300\n" "PO-Revision-Date: 2018-06-07 17:38+0000\n" "Last-Translator: Moo\n" "Language-Team: Lithuanian (http://www.transifex.com/MageiaLinux/mageia/" "language/lt/)\n" "Language: lt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < " "11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? " "1 : n % 1 != 0 ? 2: 3);\n" #: ../control-center:98 #, c-format msgid "Mageia" msgstr "Mageia" #: ../control-center:108 ../control-center:113 #, c-format msgid "%s Control Center" msgstr "%s valdymo centras" #: ../control-center:114 ../control-center:734 #, c-format msgid "Loading... Please wait" msgstr "Įkeliama... Prašome palaukti" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:159 ../control-center:163 #, c-format msgid "Software Management" msgstr "Programinės įrangos tvarkytuvė" #: ../control-center:174 ../control-center:362 ../control-center:397 #: ../control-center:548 #, c-format msgid "Others" msgstr "" #: ../control-center:184 #, c-format msgid "Server wizards" msgstr "Serverio vedikliai" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:187 ../control-center:190 #, c-format msgid "Sharing" msgstr "Dalijimasis" #: ../control-center:193 #, c-format msgid "Configure FTP" msgstr "Konfigūruoti FTP" #: ../control-center:194 #, c-format msgid "Set up an FTP server" msgstr "FTP serverio nustatymas" #: ../control-center:196 #, c-format msgid "Configure Samba" msgstr "Konfigūruoti Samba" #: ../control-center:197 #, c-format msgid "" "Set up a file and print server for workstations running Linux and non-Linux " "systems" msgstr "" "Failų ir spausdinimo serverių nustatymas kompiuteriams, dirbantiems su Linux " "ir ne su Linux sistemomis" #: ../control-center:199 #, c-format msgid "Manage Samba share" msgstr "Valdyti Samba dalijimą" #: ../control-center:200 #, c-format msgid "Manage, create special share, create public/user share" msgstr "" "Tvarkyti, sukurti specialųjį dalijimą, sukurti viešą/naudotojo dalijimą" #: ../control-center:202 #, c-format msgid "Configure web server" msgstr "Konfigūruoti saityno serverį" #: ../control-center:203 #, c-format msgid "Set up a web server" msgstr "Nustatyti saityno serverį" #: ../control-center:205 #, c-format msgid "Configure installation server" msgstr "Konfigūruoti įdiegimo serverį" #: ../control-center:206 #, c-format msgid "Set up server for network installations of %s" msgstr "Serverio nustatymas %s įdiegimui per tinklą" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:216 ../control-center:219 #, c-format msgid "Network Services" msgstr "Tinklo paslaugos" #: ../control-center:222 #, c-format msgid "Configure DHCP" msgstr "Konfigūruoti DHCP" #: ../control-center:223 #, c-format msgid "Set up a DHCP server" msgstr "DHCP serverio nustatymas" #: ../control-center:225 #, c-format msgid "Configure DNS" msgstr "Konfigūruoti DNS" #: ../control-center:226 #, c-format msgid "Set up a DNS server (network name resolution)" msgstr "DND serverio nustatymas (tinklo vardų raiška)" #: ../control-center:228 #, c-format msgid "Configure proxy" msgstr "Konfigūruoti tarpinį serverį" #: ../control-center:229 #, c-format msgid "Configure a web caching proxy server" msgstr "Konfigūruoti web spartinimo tarpinį serverį" #: ../control-center:231 #, c-format msgid "Configure time" msgstr "Konfigūruoti laiką" #: ../control-center:232 #, c-format msgid "" "Set the time of the server to be synchronized with an external time server" msgstr "" "Laiko nustatymas serveriui, kuris bus sinchronizuotas su išoriniu laiko " "serveriu" #: ../control-center:234 ../control-center:235 #, c-format msgid "OpenSSH daemon configuration" msgstr "OpenSSH programos konfigūracija" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #. -PO: this message is already translated in drakx domain from which MCC will searchs it: #: ../control-center:246 ../control-center:249 ../lib/MDV/Control_Center.pm:65 #, c-format msgid "Authentication" msgstr "Atpažinimas" #: ../control-center:253 #, c-format msgid "Configure NIS and Autofs" msgstr "Konfigūruoti NIS ir Autofs" #: ../control-center:254 #, c-format msgid "Configure the NIS and Autofs services" msgstr "Konfigūruoti NIS ir Autofs paslaugas" #: ../control-center:256 #, c-format msgid "Configure LDAP" msgstr "Konfigūruoti LDAP" #: ../control-center:257 #, c-format msgid "Configure the LDAP directory services" msgstr "Konfigūruoti LDAP katalogų paslaugas" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:268 ../control-center:271 #, c-format msgid "Groupware" msgstr "Grupinis darbas" #: ../control-center:274 #, c-format msgid "Configure news" msgstr "Konfigūruoti naujienas" #: ../control-center:275 #, c-format msgid "Configure a newsgroup server" msgstr "Konfigūruoti naujienų grupės serverį" #: ../control-center:277 #, c-format msgid "Configure groupware" msgstr "Konfigūruoti grupinį darbą" #: ../control-center:278 #, c-format msgid "Configure a groupware server" msgstr "Konfigūruoti grupinio darbo serverį" #: ../control-center:280 #, c-format msgid "Configure mail" msgstr "Konfigūruoti paštą" #: ../control-center:281 #, c-format msgid "Configure the Internet Mail services" msgstr "Konfigūruoti Interneto pašto paslaugas" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:293 ../control-center:296 #, c-format msgid "Online Administration" msgstr "Administravimas per tinklą" #: ../control-center:312 #, c-format msgid "Local administration" msgstr "Vietinis administravimas" #: ../control-center:313 #, c-format msgid "Configure the local machine via web interface" msgstr "Vietinio kompiuterio konfigūravimas per web sąsają" #: ../control-center:313 #, c-format msgid "You don't seem to have webmin installed. Local config is disabled" msgstr "Atrodo, kad jūs neįdiegėte webmin. Vietinis konfigūravimas uždraustas" #: ../control-center:315 #, c-format msgid "Remote administration" msgstr "Nuotolinis administravimas" #: ../control-center:316 #, c-format msgid "Click here if you want to configure a remote box via Web interface" msgstr "Jei norite per Web sąsają konfigūruoti nuotolinį langą, spauskite čia" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:330 #, c-format msgid "Hardware" msgstr "Įranga" #: ../control-center:333 #, c-format msgid "Manage your hardware" msgstr "" #: ../control-center:340 #, c-format msgid "Configure graphics" msgstr "" #: ../control-center:347 #, c-format msgid "Configure mouse and keyboard" msgstr "" #: ../control-center:354 #, c-format msgid "Configure printing and scanning" msgstr "" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:372 ../drakxconf:33 #, c-format msgid "Network & Internet" msgstr "Tinklas ir Internetas" #: ../control-center:375 ../lib/MDV/Control_Center.pm:404 #, c-format msgid "Manage your network devices" msgstr "" #: ../control-center:388 #, c-format msgid "Personalize and Secure your network" msgstr "" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:407 #, c-format msgid "System" msgstr "Sistema" #: ../control-center:410 #, c-format msgid "Manage system services" msgstr "" #: ../control-center:418 #, c-format msgid "Localization" msgstr "Localizacija" #: ../control-center:425 #, c-format msgid "Administration tools" msgstr "Administravimo įrankiai" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:442 #, c-format msgid "Network Sharing" msgstr "" #: ../control-center:445 #, c-format msgid "Configure Windows(R) shares" msgstr "" #: ../control-center:452 #, c-format msgid "Configure NFS shares" msgstr "" #: ../control-center:459 #, c-format msgid "Configure WebDAV shares" msgstr "" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:469 ../control-center:472 #, c-format msgid "Local disks" msgstr "" #: ../control-center:496 #, c-format msgid "CD-ROM (%s)" msgstr "CD-ROM (%s)" #: ../control-center:497 #, c-format msgid "Set where your \"%s\" CD-ROM drive is mounted" msgstr "" #: ../control-center:499 #, c-format msgid "DVD-ROM (%s)" msgstr "DVD-ROM (%s)" #: ../control-center:500 #, c-format msgid "Set where your \"%s\" DVD-ROM drive is mounted" msgstr "" #: ../control-center:502 #, c-format msgid "CD/DVD burner (%s)" msgstr "" #: ../control-center:503 #, c-format msgid "Set where your \"%s\" CD/DVD burner is mounted" msgstr "" #: ../control-center:505 #, c-format msgid "ZIP drive" msgstr "ZIP įrenginys" #: ../control-center:506 #, c-format msgid "Set where your ZIP drive is mounted" msgstr "Nustatykite, kur sumontuotas ZIP įrenginys" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:518 ../control-center:521 #, c-format msgid "Security" msgstr "Saugumas" #. -PO: please keep the following message very short: it must fit in the left list of MCC!!! #: ../control-center:536 #, c-format msgid "Boot" msgstr "Įkrovimas" #: ../control-center:539 #, c-format msgid "Configure boot steps" msgstr "" #: ../control-center:559 #, c-format msgid "Additional wizards" msgstr "Papildomi vedliai" #: ../control-center:628 #, c-format msgid "_File" msgstr "_Failas" #: ../control-center:629 #, c-format msgid "_Quit" msgstr "Bai_gti" #. -PO: "" must _NOT_ be translated. This is a keyboard shortcut for "Quit". #. -PO: you just have to select the proper letter for your language (eg: english: "Quit" => "Q") #: ../control-center:632 #, c-format msgid "Q" msgstr "Q" #: ../control-center:633 #, c-format msgid "_Options" msgstr "Parin_ktys" #: ../control-center:634 ../control-center:635 #, c-format msgid "_Help" msgstr "_Pagalba" #: ../control-center:635 #, c-format msgid "H" msgstr "" #: ../control-center:636 #, c-format msgid "_Release notes" msgstr "_Laidos informacija" #: ../control-center:637 #, c-format msgid "What's _New?" msgstr "Kas _naujo?" #: ../control-center:638 #, c-format msgid "_Errata" msgstr "_Errata" #: ../control-center:639 #, c-format msgid "_Report Bug" msgstr "Pranešti apie _klaidą" #: ../control-center:642 #, c-format msgid "_About..." msgstr "_Apie..." #: ../control-center:645 #, c-format msgid "Display _Logs" msgstr "Rodyti _išrašus" #: ../control-center:655 #, c-format msgid "Expert mode in _wizards" msgstr "Eksperto veiksena _vedliuose" #: ../control-center:742 #, c-format msgid "Cancel" msgstr "Atšaukti" #: ../control-center:762 #, c-format msgid "%s Control Center %s [on %s]" msgstr "%s valdymo centras %s [čia: %s]" #: ../control-center:1083 #, c-format msgid "Error" msgstr "Klaida" #: ../control-center:1083 #, c-format msgid "Impossible to run unknown '%s' program" msgstr "Neįmanoma paleisti nežinomos '%s' programos" #: ../control-center:1098 #, c-format msgid "The modifications done in the current module won't be saved." msgstr "Esamo modulio pakeitimai nebus išsaugoti" #: ../control-center:1186 #, c-format msgid "cannot fork: %s" msgstr "negaliu vykdyti fork komandos: %s" #: ../control-center:1218 #, c-format msgid "cannot fork and exec \"%s\" since it is not executable" msgstr "negaliu vykdyti fork ir exec komandų \"%s\" nes jis nėra vykdomasis" #: ../control-center:1331 #, c-format msgid "This program has exited abnormally" msgstr "Ši programa buvo uždaryta nenormaliai" #: ../control-center:1340 #, c-format msgid "Warning" msgstr "Įspėjimas" #: ../control-center:1350 ../drakconsole:38 #, c-format msgid "Close" msgstr "Užverti" #: ../control-center:1357 #, c-format msgid "About - %s Control Center" msgstr "Apie - %s valdymo centras" #: ../control-center:1365 #, c-format msgid "Authors: " msgstr "Autoriai: " #. -PO: this is used as "language: translator" in credits part of the about dialog: #: ../control-center:1389 #, c-format msgid "- %s: %s\n" msgstr "- %s: %s\n" #: ../control-center:1404 #, c-format msgid "" "_: NAME OF TRANSLATORS\n" "Your names" msgstr "" "_: NAME OF TRANSLATORS\n" "Jūsų vardai" #: ../control-center:1406 #, c-format msgid "" "_: EMAIL OF TRANSLATORS\n" "Your emails" msgstr "" "_: EMAIL OF TRANSLATORS\n" "Jūsų el. pašto adresai" #: ../control-center:1408 #, c-format msgid "Translator: " msgstr "Vertėjas:" #. -PO: Here, first %s will be replaced by 'Mageia' #. -PO: second %s will be replaced by the version (eg: "Mageia 1 (Free) Control Center") #: ../control-center:1417 #, c-format msgid "%s %s (%s) Control Center" msgstr "%s %s (%s) valdymo centras" #. -PO: here %s is eg: "1999-2008" #: ../control-center:1422 #, c-format msgid "Copyright (C) %s Mandriva SA" msgstr "Autorinės teisės © %s Mandriva SA" #: ../control-center:1422 #, c-format msgid "Copyright (C) %s Mageia" msgstr "Autorių Teisės (C) %s Mageia" #: ../control-center:1428 #, c-format msgid "Authors" msgstr "Autoriai" #: ../control-center:1429 #, c-format msgid "Mageia Contributors" msgstr "Mageia talkininkai" #: ../drakconsole:34 #, c-format msgid "DrakConsole" msgstr "DrakConsole" #: ../drakxconf:30 #, c-format msgid "Display" msgstr "Rodyti" #: ../drakxconf:31 #, c-format msgid "Keyboard" msgstr "Klaviatūra" #: ../drakxconf:32 #, c-format msgid "Mouse" msgstr "Pelė" #: ../drakxconf:34 #, c-format msgid "Users and groups" msgstr "Vartotojai ir grupės" #: ../drakxconf:35 #, c-format msgid "Services" msgstr "Paslaugos" #: ../drakxconf:36 #, c-format msgid "Firewall" msgstr "Užkarda" #: ../drakxconf:37 #, fuzzy, c-format msgid "Firewall6" msgstr "Užkarda" #: ../drakxconf:38 #, c-format msgid "Boot loader" msgstr "Paleidyklė" #: ../drakxconf:39 #, c-format msgid "Auto Install" msgstr "Automatinis įdiegimas" #: ../drakxconf:40 #, c-format msgid "Internet connection sharing" msgstr "Interneto prieigos dalinimasis" #: ../drakxconf:41 #, c-format msgid "3D Desktop effects" msgstr "3D darbalaukio efektai" #: ../drakxconf:42 #, c-format msgid "Partitions" msgstr "Skirsniai" #: ../drakxconf:45 #, c-format msgid "Control Center" msgstr "Valdymo centras" #: ../drakxconf:45 #, c-format msgid "Choose the tool you want to use" msgstr "Pasirinkite, kurį įrankį naudosite" #: ../lib/MDV/Control_Center.pm:53 ../lib/MDV/Control_Center.pm:54 #, c-format msgid "Configure 3D Desktop effects" msgstr "" #: ../lib/MDV/Control_Center.pm:66 #, c-format msgid "" "Select the authentication method (local, NIS, LDAP, Windows Domain, ...)" msgstr "" "Pasirinkite atpažinimo metodą (vietinis, NIS, LDAP, Windows domenas, ...)" #: ../lib/MDV/Control_Center.pm:75 #, c-format msgid "Set up autologin to automatically log in" msgstr "" #: ../lib/MDV/Control_Center.pm:76 #, c-format msgid "Enable autologin and select the user to automatically log in" msgstr "" "Įgalinti automatinį prisijungimą ir parinkti vartotoją, kuriam bus suteiktos " "automatinio prisijungimo teisės" #: ../lib/MDV/Control_Center.pm:85 #, c-format msgid "Snapshots" msgstr "" #: ../lib/MDV/Control_Center.pm:95 #, c-format msgid "Set up boot system" msgstr "" #: ../lib/MDV/Control_Center.pm:96 #, c-format msgid "Set up how the system boots" msgstr "Nustatyti, kaip sistema įsikraus" #: ../lib/MDV/Control_Center.pm:105 ../lib/MDV/Control_Center.pm:106 #, c-format msgid "Share the Internet connection with other local machines" msgstr "Dalintis Inerneto prieiga su kitais vietiniais kompiuteriais" #: ../lib/MDV/Control_Center.pm:115 ../lib/MDV/Control_Center.pm:116 #, c-format msgid "Set up a new network interface (LAN, ISDN, ADSL, ...)" msgstr "Nustatyti naują tinklo sąsają (LAN, ISDN, ADSL, ...)" #: ../lib/MDV/Control_Center.pm:125 #, c-format msgid "Internet access" msgstr "Interneto prieiga" #: ../lib/MDV/Control_Center.pm:126 #, c-format msgid "Alter miscellaneous internet settings" msgstr "Pakeisti įvairias Interneto nuostatas" #: ../lib/MDV/Control_Center.pm:135 ../lib/MDV/Control_Center.pm:136 #, c-format msgid "Open a console as administrator" msgstr "" #: ../lib/MDV/Control_Center.pm:146 ../lib/MDV/Control_Center.pm:147 #, c-format msgid "Manage date and time" msgstr "" #: ../lib/MDV/Control_Center.pm:156 #, c-format msgid "Set up display manager" msgstr "" #: ../lib/MDV/Control_Center.pm:157 #, c-format msgid "Choose the display manager that enables to select which user to log in" msgstr "" "Pasirinkite ekrano tvarkyklę, kurios pagalba galėsite pasirinkti, kurio " "vartotojo vardu prisijungti" #: ../lib/MDV/Control_Center.pm:166 ../lib/MDV/Control_Center.pm:167 #, c-format msgid "Configure a fax server" msgstr "Fakso serverio konfigūravimas" #: ../lib/MDV/Control_Center.pm:176 #, c-format msgid "Set up your personal firewall" msgstr "" #: ../lib/MDV/Control_Center.pm:177 #, c-format msgid "" "Set up a personal firewall in order to protect the computer and the network" msgstr "Nustatyti asmeninę užkardą kompiuterio ir tinklo apsaugai" #: ../lib/MDV/Control_Center.pm:186 #, c-format msgid "Set up your personal IPv6 firewall" msgstr "" #: ../lib/MDV/Control_Center.pm:187 #, fuzzy, c-format msgid "" "Set up a personal IPv6 firewall in order to protect the computer and the " "network" msgstr "Nustatyti asmeninę užkardą kompiuterio ir tinklo apsaugai" #: ../lib/MDV/Control_Center.pm:196 ../lib/MDV/Control_Center.pm:197 #, c-format msgid "Manage, add and remove fonts. Import Windows(TM) fonts" msgstr "Tvarkyti, įtraukti ir pašalinti šriftus. Importuoti Windows® šriftus" #: ../lib/MDV/Control_Center.pm:206 ../lib/MDV/Control_Center.pm:207 #, c-format msgid "Set up the graphical server" msgstr "Nustatyti grafinį serverį" #: ../lib/MDV/Control_Center.pm:216 #, c-format msgid "Manage disk partitions" msgstr "" #: ../lib/MDV/Control_Center.pm:217 #, c-format msgid "Create, delete and resize hard disk partitions" msgstr "Sukurti, pakeisti dydį ir ištrinti kietojo disko skirsnius" #: ../lib/MDV/Control_Center.pm:226 ../lib/MDV/Control_Center.pm:227 #, c-format msgid "Browse and configure hardware" msgstr "" #: ../lib/MDV/Control_Center.pm:237 ../lib/MDV/Control_Center.pm:238 #, c-format msgid "Sound Configuration" msgstr "" #: ../lib/MDV/Control_Center.pm:247 #, c-format msgid "Hosts definitions" msgstr "Stočių aprašai" #: ../lib/MDV/Control_Center.pm:248 #, c-format msgid "Manage hosts definitions" msgstr "Valdyti stočių aprašus" #: ../lib/MDV/Control_Center.pm:257 #, c-format msgid "Install & Remove Software" msgstr "Įdiegti ir šalinti programinę įrangą" #: ../lib/MDV/Control_Center.pm:258 #, c-format msgid "Install, uninstall software" msgstr "" #: ../lib/MDV/Control_Center.pm:268 #, c-format msgid "Advanced setup for network interfaces and firewall" msgstr "" #: ../lib/MDV/Control_Center.pm:269 #, c-format msgid "Set up network interfaces failover and firewall replication" msgstr "" #: ../lib/MDV/Control_Center.pm:278 ../lib/MDV/Control_Center.pm:279 #, c-format msgid "Set up the keyboard layout" msgstr "Nustatyti klaviatūros išdėstymą" #: ../lib/MDV/Control_Center.pm:288 #, c-format msgid "Kolab" msgstr "Kolab" #: ../lib/MDV/Control_Center.pm:289 #, c-format msgid "Set up a groupware server" msgstr "Nustatyti grupinio darbo serverį" #: ../lib/MDV/Control_Center.pm:298 #, c-format msgid "Manage localization for your system" msgstr "" #: ../lib/MDV/Control_Center.pm:299 #, c-format msgid "Select the language and the country or region of the system" msgstr "Nustatyti šalies ar regiono kalbą sistemai" #: ../lib/MDV/Control_Center.pm:307 ../lib/MDV/Control_Center.pm:308 #, c-format msgid "View and search system logs" msgstr "Peržiūrėti ir ieškoti sistemos išrašų" #: ../lib/MDV/Control_Center.pm:317 #, c-format msgid "Manage connections" msgstr "Tvarkyti ryšius" #: ../lib/MDV/Control_Center.pm:318 #, c-format msgid "Reconfigure a network interface" msgstr "Pakeisti tinklo sąsajos konfigūravimą" #: ../lib/MDV/Control_Center.pm:327 #, c-format msgid "Manage computer group" msgstr "Tvarkyti kompiuterių grupę" #: ../lib/MDV/Control_Center.pm:328 #, c-format msgid "Manage installed software packages on a group of computers" msgstr "Tvarkyti įdiegtos programinės įrangos paketus kompiuterių grupėje" #: ../lib/MDV/Control_Center.pm:336 #, c-format msgid "Configure authentication for Mageia tools" msgstr "" #: ../lib/MDV/Control_Center.pm:337 #, c-format msgid "" "Define authentication required to access individual Mageia configuration " "tools " msgstr "" #: ../lib/MDV/Control_Center.pm:345 #, c-format msgid "Update your system" msgstr "" #: ../lib/MDV/Control_Center.pm:346 #, c-format msgid "" "Look at available updates and apply any fixes or upgrades to installed " "packages" msgstr "" "Peržiūrėti galimus atnaujinimus ir pataisyti arba atnaujinti įdiegtus paketus" #: ../lib/MDV/Control_Center.pm:356 ../lib/MDV/Control_Center.pm:357 #, c-format msgid "Import Windows(TM) documents and settings" msgstr "" #: ../lib/MDV/Control_Center.pm:365 #, c-format msgid "Writing ISO Images on a USB device or formatting" msgstr "" #: ../lib/MDV/Control_Center.pm:366 #, c-format msgid "Writing a ISO Image on a USB device or formatting the device" msgstr "" #: ../lib/MDV/Control_Center.pm:374 #, c-format msgid "Monitor connections" msgstr "Kontroliuoti ryšius" #: ../lib/MDV/Control_Center.pm:375 #, c-format msgid "Monitor the network connections" msgstr "Kontroliuoti tinklo ryšius" #: ../lib/MDV/Control_Center.pm:384 ../lib/MDV/Control_Center.pm:385 #, c-format msgid "Set up the pointer device (mouse, touchpad)" msgstr "Nustatyti žymeklio įtaisą (pelę, žymeklio valdymo aikštelę)" #: ../lib/MDV/Control_Center.pm:393 ../lib/MDV/Control_Center.pm:394 #, c-format msgid "Parental Controls" msgstr "" #: ../lib/MDV/Control_Center.pm:403 #, c-format msgid "Network Center" msgstr "" #: ../lib/MDV/Control_Center.pm:413 #, c-format msgid "Manage different network profiles" msgstr "" #: ../lib/MDV/Control_Center.pm:414 #, c-format msgid "Activate and manage network profiles" msgstr "" #: ../lib/MDV/Control_Center.pm:423 #, c-format msgid "Access NFS shared drives and directories" msgstr "" #: ../lib/MDV/Control_Center.pm:424 #, c-format msgid "Set NFS mount points" msgstr "Nustatyti NFS sukūrimo taškus" #: ../lib/MDV/Control_Center.pm:433 #, c-format msgid "Share drives and directories using NFS" msgstr "" #: ../lib/MDV/Control_Center.pm:434 #, c-format msgid "Manage NFS shares" msgstr "Valdyti NFS dalijimus" #: ../lib/MDV/Control_Center.pm:444 #, c-format msgid "Package Stats" msgstr "Paketo statistika" #: ../lib/MDV/Control_Center.pm:445 #, c-format msgid "Show statistics about usage of installed software packages" msgstr "Rodyti įdiegtos programinės įrangos paketų naudojimo statistiką" #: ../lib/MDV/Control_Center.pm:454 #, c-format msgid "Share your hard disk partitions" msgstr "" #: ../lib/MDV/Control_Center.pm:455 #, c-format msgid "Set up sharing of your hard disk partitions" msgstr "Nustatyti dalijimąsi kietojo disko skirsniais" #: ../lib/MDV/Control_Center.pm:464 ../lib/MDV/Control_Center.pm:466 #, c-format msgid "Set up the printer(s), the print job queues, ..." msgstr "Nustatyti spausdintuvą(-us), spausdinimo darbų eiles, ..." #: ../lib/MDV/Control_Center.pm:476 #, c-format msgid "Scheduled tasks" msgstr "Planuotos užduotys" #: ../lib/MDV/Control_Center.pm:477 #, c-format msgid "Schedule programs to run periodically or at given times" msgstr "Sudaryti programų periodinio ar tam tikru laiku paleidimo planą" #: ../lib/MDV/Control_Center.pm:486 #, c-format msgid "Proxy" msgstr "Tarpinis serveris" #: ../lib/MDV/Control_Center.pm:487 #, c-format msgid "Set up a proxy server for files and web browsing" msgstr "Nustatyti įgaliotąjį serverį failų ir saityno naršymui" #: ../lib/MDV/Control_Center.pm:495 #, c-format msgid "Remote Control (Linux/Unix, Windows)" msgstr "Nuotolinis valdymas (Linux/Unix, Windows)" #: ../lib/MDV/Control_Center.pm:496 #, c-format msgid "Remote Control of another machine (Linux/Unix, Windows)" msgstr "Kito kompiuterio nuotolinis valdymas (Linux/Unix, Windows)" #: ../lib/MDV/Control_Center.pm:505 #, c-format msgid "Remove a connection" msgstr "Pašalinti ryšį" #: ../lib/MDV/Control_Center.pm:506 #, c-format msgid "Delete a network interface" msgstr "Ištrinti tinklo sąsają" #: ../lib/MDV/Control_Center.pm:516 ../lib/MDV/Control_Center.pm:517 #, c-format msgid "Wireless connection" msgstr "Bevielis ryšys" #: ../lib/MDV/Control_Center.pm:526 #, c-format msgid "Access Windows (SMB) shared drives and directories" msgstr "" #: ../lib/MDV/Control_Center.pm:527 #, c-format msgid "Configuration of Windows (Samba) shared drives and directories" msgstr "" #: ../lib/MDV/Control_Center.pm:536 #, c-format msgid "Share drives and directories with Windows (SMB) systems" msgstr "" #: ../lib/MDV/Control_Center.pm:537 #, c-format msgid "Manage configuration of Samba" msgstr "Samba valdymo konfigūracija" #: ../lib/MDV/Control_Center.pm:546 ../lib/MDV/Control_Center.pm:547 #, c-format msgid "Set up scanner" msgstr "Nustatyti skaitytuvą" #: ../lib/MDV/Control_Center.pm:556 #, c-format msgid "Configure system security, permissions and audit" msgstr "" #: ../lib/MDV/Control_Center.pm:557 #, c-format msgid "Set the system security level, periodic security audit and permissions" msgstr "" #: ../lib/MDV/Control_Center.pm:567 ../lib/MDV/Control_Center.pm:568 #, c-format msgid "Manage system services by enabling or disabling them" msgstr "" #: ../lib/MDV/Control_Center.pm:577 #, c-format msgid "Configure media sources for install and update" msgstr "" #: ../lib/MDV/Control_Center.pm:578 #, c-format msgid "Select from where software packages are downloaded " msgstr "" #: ../lib/MDV/Control_Center.pm:588 #, c-format msgid "Configure updates frequency" msgstr "" #. -PO: here power means electrical power #. -PO: UPS==Uninterruptible power supply #: ../lib/MDV/Control_Center.pm:599 ../lib/MDV/Control_Center.pm:602 #, c-format msgid "Set up a UPS for power monitoring" msgstr "UPS nustatymas elektros energijos kontrolei" #: ../lib/MDV/Control_Center.pm:612 #, c-format msgid "Manage users on system" msgstr "" #: ../lib/MDV/Control_Center.pm:613 #, c-format msgid "Add, remove or change users of the system" msgstr "Įtraukti, pašalinti arba pakeisti sistemos vartotojus" #: ../lib/MDV/Control_Center.pm:623 ../lib/MDV/Control_Center.pm:624 #, c-format msgid "Configure VPN connection to secure network access" msgstr "" #: ../lib/MDV/Control_Center.pm:633 #, c-format msgid "Access WebDAV shared drives and directories" msgstr "Prieiti WebDAV padalintus diskus ir vietas" #: ../lib/MDV/Control_Center.pm:634 #, c-format msgid "Set WebDAV mount points" msgstr "Nustatyti WebDAV sukūrimo taškus" #: ../menus_launcher.pl:19 ../menus_launcher.pl:40 #, c-format msgid "Menu Configuration Center" msgstr "Meniu konfigūravimo centras" #: ../menus_launcher.pl:27 #, c-format msgid "System menu" msgstr "Sistemos meniu" #: ../menus_launcher.pl:28 ../menus_launcher.pl:35 #, c-format msgid "Configure..." msgstr "Konfigūruoti..." #: ../menus_launcher.pl:30 #, c-format msgid "User menu" msgstr "Vartotojo meniu" #: ../menus_launcher.pl:40 #, c-format msgid "" "\n" "\n" "Choose which menu you want to configure" msgstr "" "\n" "\n" "Pasirinkite, kurį meniu norite konfigūruoti" #: ../data/autologin.desktop.in.h:1 msgid "Autologin" msgstr "Automatinis prisijungimas" #: ../data/clock.desktop.in.h:1 msgid "Date and time" msgstr "Data ir laikas" #: ../data/connection.desktop.in.h:1 msgid "New connection" msgstr "Naujas ryšys" #: ../data/drakautoinst.desktop.in.h:1 msgid "Auto Install floppy" msgstr "Automatinio įdiegimo diskelis" #: ../data/drakboot.desktop.in.h:1 msgid "Boot Loading" msgstr "Įkrovimo įkėlimas" #: ../data/drakcronat.desktop.in.h:1 msgid "Programs scheduling" msgstr "Programų plano sudarymas" #: ../data/drakdm.desktop.in.h:1 msgid "Display manager" msgstr "Vaizdo valdyklė" #: ../data/drakfloppy.desktop.in.h:1 msgid "Boot floppy" msgstr "Įkrovimo diskelis" #: ../data/drakfont.desktop.in.h:1 msgid "Fonts" msgstr "Šriftai" #: ../data/drakperm.desktop.in.h:1 msgid "Permissions" msgstr "Leidimai" #: ../data/draksec.desktop.in.h:1 msgid "Levels and Checks" msgstr "Lygiai ir patikrinimai" #: ../data/drakxtv.desktop.in.h:1 msgid "TV Cards" msgstr "TV plokštės" #: ../data/fileshare.desktop.in.h:1 msgid "Partition Sharing" msgstr "Dalijimasis skirsniu" #: ../data/harddrive.desktop.in.h:1 msgid "Hard Drives" msgstr "Kietieji diskai" #: ../data/logdrake.desktop.in.h:1 msgid "Logs" msgstr "Serverio išrašai" #: ../data/menudrake.desktop.in.h:1 msgid "Menus" msgstr "Meniu" #: ../data/MountPoints.directory.in.h:1 msgid "Mount Points" msgstr "Sukūrimo taškai" #: ../data/nfs.desktop.in.h:1 msgid "NFS mount points" msgstr "NFS sukūrimo taškai" #: ../data/printerdrake.desktop.in.h:1 msgid "Printers" msgstr "Spausdintuvai" #: ../data/proxy.desktop.in.h:1 msgid "Proxy Configuration" msgstr "Tarpinio serverio konfigūravimas" #: ../data/removable.desktop.in.h:1 msgid "Removable devices" msgstr "Kilnojami įtaisai" #: ../data/remove-connection.desktop.in.h:1 msgid "Remove Connection" msgstr "Pašalinti ryšį" #: ../data/samba.desktop.in.h:1 msgid "Samba mount points" msgstr "Samba sukūrimo taškai" #: ../data/scannerdrake.desktop.in.h:1 msgid "Scanners" msgstr "Skaitytuvai" #: ../data/SystemConfig.directory.in.h:1 msgid "System Settings" msgstr "Sistemos nuostatos" #: ../data/userdrake.desktop.in.h:1 msgid "Users and Groups" msgstr "Vartotojai ir grupės" #: ../data/webdav.desktop.in.h:1 msgid "WebDAV mount points" msgstr "WebDAV sukūrimo taškai" #: ../data/XFDrake.desktop.in.h:1 msgid "Graphical server" msgstr "Grafinis serveris" #: ../data/XFDrake-Monitor.desktop.in.h:1 msgid "Monitor" msgstr "Vaizduoklis" #: ../data/XFDrake-Resolution.desktop.in.h:1 msgid "Screen Resolution" msgstr "Ekrano raiška" #: ../drakconf.desktop.in.h:1 msgid "Mageia Control Center" msgstr "Mageia Valdymo Centras" #: ../polkit/org.mageia.drakconf.policy.in.h:1 msgid "Run Mageia Control Center GUI" msgstr "" #: ../polkit/org.mageia.drakconf.policy.in.h:2 msgid "Authentication is required to run Mageia Control Center GUI" msgstr "" #: ../polkit/org.mageia.drakxconf.policy.in.h:1 msgid "Run Mageia Control Center" msgstr "" #: ../polkit/org.mageia.drakxconf.policy.in.h:2 msgid "Authentication is required to run Mageia Control Center" msgstr "" n846'>846 847 848
<?php
/**
*
* This file is part of the phpBB Forum Software package.
*
* @copyright (c) phpBB Limited <https://www.phpbb.com>
* @license GNU General Public License, version 2 (GPL-2.0)
*
* For full copyright and license information, please see
* the docs/CREDITS.txt file.
*
*/

namespace phpbb;

/**
* Base user class
*
* This is the overarching class which contains (through session extend)
* all methods utilised for user functionality during a session.
*/
class user extends \phpbb\session
{
	/**
	 * @var \phpbb\language\language
	 */
	protected $language;

	var $style = array();
	var $date_format;

	/**
	* DateTimeZone object holding the timezone of the user
	*/
	public $timezone;

	/**
	* @var string Class name of datetime object
	*/
	protected $datetime;

	var $lang_name = false;
	var $lang_id = false;
	var $lang_path;
	var $img_lang;
	var $img_array = array();

	/** @var bool */
	protected $is_setup_flag;

	// Able to add new options (up to id 31)
	var $keyoptions = array('viewimg' => 0, 'viewflash' => 1, 'viewsmilies' => 2, 'viewsigs' => 3, 'viewavatars' => 4, 'viewcensors' => 5, 'attachsig' => 6, 'bbcode' => 8, 'smilies' => 9, 'sig_bbcode' => 15, 'sig_smilies' => 16, 'sig_links' => 17);

	/**
	* Constructor to set the lang path
	*
	* @param \phpbb\language\language	$lang			phpBB's Language loader
	* @param string						$datetime_class	Class name of datetime class
	*/
	function __construct(\phpbb\language\language $lang, $datetime_class)
	{
		global $phpbb_root_path;

		$this->lang_path = $phpbb_root_path . 'language/';
		$this->language = $lang;
		$this->datetime = $datetime_class;

		$this->is_setup_flag = false;
	}

	/**
	 * Returns whether user::setup was called
	 *
	 * @return bool
	 */
	public function is_setup()
	{
		return $this->is_setup_flag;
	}

	/**
	 * Magic getter for BC compatibility
	 *
	 * Implement array access for user::lang.
	 *
	 * @param string	$param_name	Name of the BC component the user want to access
	 *
	 * @return array	The appropriate array
	 *
	 * @deprecated 3.2.0-dev (To be removed: 4.0.0)
	 */
	public function __get($param_name)
	{
		if ($param_name === 'lang')
		{
			return $this->language->get_lang_array();
		}
		else if ($param_name === 'help')
		{
			$help_array = $this->language->get_lang_array();
			return $help_array['__help'];
		}

		return array();
	}

	/**
	* Setup basic user-specific items (style, language, ...)
	*/
	function setup($lang_set = false, $style_id = false)
	{
		global $db, $request, $template, $config, $auth, $phpEx, $phpbb_root_path, $cache;
		global $phpbb_dispatcher, $phpbb_container;

		$this->language->set_default_language($config['default_lang']);

		if ($this->data['user_id'] != ANONYMOUS)
		{
			$user_lang_name = (file_exists($this->lang_path . $this->data['user_lang'] . "/common.$phpEx")) ? $this->data['user_lang'] : basename($config['default_lang']);
			$user_date_format = $this->data['user_dateformat'];
			$user_timezone = $this->data['user_timezone'];
		}
		else
		{
			$lang_override = $request->variable('language', '');
			if ($lang_override)
			{
				$this->set_cookie('lang', $lang_override, 0, false);
			}
			else
			{
				$lang_override = $request->variable($config['cookie_name'] . '_lang', '', true, \phpbb\request\request_interface::COOKIE);
			}

			if ($lang_override)
			{
				$use_lang = basename($lang_override);
				$user_lang_name = (file_exists($this->lang_path . $use_lang . "/common.$phpEx")) ? $use_lang : basename($config['default_lang']);
				$this->data['user_lang'] = $user_lang_name;
			}
			else
			{
				$user_lang_name = basename($config['default_lang']);
			}

			$user_date_format = $config['default_dateformat'];
			$user_timezone = $config['board_timezone'];

			/**
			* If a guest user is surfing, we try to guess his/her language first by obtaining the browser language
			* If re-enabled we need to make sure only those languages installed are checked
			* Commented out so we do not loose the code.

			if ($request->header('Accept-Language'))
			{
				$accept_lang_ary = explode(',', $request->header('Accept-Language'));

				foreach ($accept_lang_ary as $accept_lang)
				{
					// Set correct format ... guess full xx_YY form
					$accept_lang = substr($accept_lang, 0, 2) . '_' . strtoupper(substr($accept_lang, 3, 2));
					$accept_lang = basename($accept_lang);

					if (file_exists($this->lang_path . $accept_lang . "/common.$phpEx"))
					{
						$user_lang_name = $config['default_lang'] = $accept_lang;
						break;
					}
					else
					{
						// No match on xx_YY so try xx
						$accept_lang = substr($accept_lang, 0, 2);
						$accept_lang = basename($accept_lang);

						if (file_exists($this->lang_path . $accept_lang . "/common.$phpEx"))
						{
							$user_lang_name = $config['default_lang'] = $accept_lang;
							break;
						}
					}
				}
			}
			*/
		}

		$user_data = $this->data;
		$lang_set_ext = array();

		/**
		* Event to load language files and modify user data on every page
		*
		* Note: To load language file with this event, see description
		* of lang_set_ext variable.
		*
		* @event core.user_setup
		* @var	array	user_data			Array with user's data row
		* @var	string	user_lang_name		Basename of the user's langauge
		* @var	string	user_date_format	User's date/time format
		* @var	string	user_timezone		User's timezone, should be one of
		*							http://www.php.net/manual/en/timezones.php
		* @var	mixed	lang_set			String or array of language files
		* @var	array	lang_set_ext		Array containing entries of format
		* 					array(
		* 						'ext_name' => (string) [extension name],
		* 						'lang_set' => (string|array) [language files],
		* 					)
		* 					For performance reasons, only load translations
		* 					that are absolutely needed globally using this
		* 					event. Use local events otherwise.
		* @var	mixed	style_id			Style we are going to display
		* @since 3.1.0-a1
		*/
		$vars = array(
			'user_data',
			'user_lang_name',
			'user_date_format',
			'user_timezone',
			'lang_set',
			'lang_set_ext',
			'style_id',
		);
		extract($phpbb_dispatcher->trigger_event('core.user_setup', compact($vars)));

		$this->data = $user_data;
		$this->lang_name = $user_lang_name;
		$this->date_format = $user_date_format;

		$this->language->set_user_language($user_lang_name);

		try
		{
			$this->timezone = new \DateTimeZone($user_timezone);
		}
		catch (\Exception $e)
		{
			// If the timezone the user has selected is invalid, we fall back to UTC.
			$this->timezone = new \DateTimeZone('UTC');
		}

		$this->add_lang($lang_set);
		unset($lang_set);

		foreach ($lang_set_ext as $ext_lang_pair)
		{
			$this->add_lang_ext($ext_lang_pair['ext_name'], $ext_lang_pair['lang_set']);
		}
		unset($lang_set_ext);

		$style_request = $request->variable('style', 0);
		if ($style_request && (!$config['override_user_style'] || $auth->acl_get('a_styles')) && !defined('ADMIN_START'))
		{
			global $SID, $_EXTRA_URL;

			$style_id = $style_request;
			$SID .= '&amp;style=' . $style_id;
			$_EXTRA_URL = array('style=' . $style_id);
		}
		else
		{
			// Set up style
			$style_id = ($style_id) ? $style_id : ((!$config['override_user_style']) ? $this->data['user_style'] : $config['default_style']);
		}

		$sql = 'SELECT *
			FROM ' . STYLES_TABLE . " s
			WHERE s.style_id = $style_id";
		$result = $db->sql_query($sql, 3600);
		$this->style = $db->sql_fetchrow($result);
		$db->sql_freeresult($result);

		// Fallback to user's standard style
		if (!$this->style && $style_id != $this->data['user_style'])
		{
			$style_id = $this->data['user_style'];

			$sql = 'SELECT *
				FROM ' . STYLES_TABLE . " s
				WHERE s.style_id = $style_id";
			$result = $db->sql_query($sql, 3600);
			$this->style = $db->sql_fetchrow($result);
			$db->sql_freeresult($result);
		}

		// Fallback to board's default style
		if (!$this->style)
		{
			// Verify default style exists in the database
			$sql = 'SELECT style_id
				FROM ' . STYLES_TABLE . '
				WHERE style_id = ' . (int) $config['default_style'];
			$result = $db->sql_query($sql);
			$style_id = (int) $db->sql_fetchfield('style_id');
			$db->sql_freeresult($result);

			if ($style_id > 0)
			{
				$db->sql_transaction('begin');

				// Update $user row
				$sql = 'SELECT *
					FROM ' . STYLES_TABLE . '
					WHERE style_id = ' . (int) $config['default_style'];
				$result = $db->sql_query($sql);
				$this->style = $db->sql_fetchrow($result);
				$db->sql_freeresult($result);

				// Update user style preference
				$sql = 'UPDATE ' . USERS_TABLE . '
					SET user_style = ' . (int) $style_id . '
					WHERE user_id = ' . (int) $this->data['user_id'];
				$db->sql_query($sql);

				$db->sql_transaction('commit');
			}
		}

		// This should never happen
		if (!$this->style)
		{
			trigger_error($this->language->lang('NO_STYLE_DATA', $this->data['user_style'], $this->data['user_id']), E_USER_ERROR);
		}

		// Now parse the cfg file and cache it
		$parsed_items = $cache->obtain_cfg_items($this->style);

		$check_for = array(
			'pagination_sep'    => (string) ', '
		);

		foreach ($check_for as $key => $default_value)
		{
			$this->style[$key] = (isset($parsed_items[$key])) ? $parsed_items[$key] : $default_value;
			settype($this->style[$key], gettype($default_value));

			if (is_string($default_value))
			{
				$this->style[$key] = htmlspecialchars($this->style[$key]);
			}
		}

		$template->set_style();

		$this->img_lang = $this->lang_name;

		// Call phpbb_user_session_handler() in case external application want to "bend" some variables or replace classes...
		// After calling it we continue script execution...
		phpbb_user_session_handler();

		/**
		* Execute code at the end of user setup
		*
		* @event core.user_setup_after
		* @since 3.1.6-RC1
		*/
		$phpbb_dispatcher->dispatch('core.user_setup_after');

		// If this function got called from the error handler we are finished here.
		if (defined('IN_ERROR_HANDLER'))
		{
			return;
		}

		// Disable board if the install/ directory is still present
		// For the brave development army we do not care about this, else we need to comment out this every time we develop locally
		if (!$phpbb_container->getParameter('allow_install_dir') && !defined('ADMIN_START') && !defined('IN_INSTALL') && !defined('IN_LOGIN') && file_exists($phpbb_root_path . 'install') && !is_file($phpbb_root_path . 'install'))
		{
			// Adjust the message slightly according to the permissions
			if ($auth->acl_gets('a_', 'm_') || $auth->acl_getf_global('m_'))
			{
				$message = 'REMOVE_INSTALL';
			}
			else
			{
				$message = (!empty($config['board_disable_msg'])) ? $config['board_disable_msg'] : 'BOARD_DISABLE';
			}
			trigger_error($message);
		}

		// Is board disabled and user not an admin or moderator?
		if ($config['board_disable'] && !defined('IN_INSTALL') && !defined('IN_LOGIN') && !defined('SKIP_CHECK_DISABLED') && !$auth->acl_gets('a_', 'm_') && !$auth->acl_getf_global('m_'))
		{
			if ($this->data['is_bot'])
			{
				send_status_line(503, 'Service Unavailable');
			}

			$message = (!empty($config['board_disable_msg'])) ? $config['board_disable_msg'] : 'BOARD_DISABLE';
			trigger_error($message);
		}

		// Is load exceeded?
		if ($config['limit_load'] && $this->load !== false)
		{
			if ($this->load > floatval($config['limit_load']) && !defined('IN_LOGIN') && !defined('IN_ADMIN'))
			{
				// Set board disabled to true to let the admins/mods get the proper notification
				$config['board_disable'] = '1';

				if (!$auth->acl_gets('a_', 'm_') && !$auth->acl_getf_global('m_'))
				{
					if ($this->data['is_bot'])
					{
						send_status_line(503, 'Service Unavailable');
					}
					trigger_error('BOARD_UNAVAILABLE');
				}
			}
		}

		if (isset($this->data['session_viewonline']))
		{
			// Make sure the user is able to hide his session
			if (!$this->data['session_viewonline'])
			{
				// Reset online status if not allowed to hide the session...
				if (!$auth->acl_get('u_hideonline'))
				{
					$sql = 'UPDATE ' . SESSIONS_TABLE . '
						SET session_viewonline = 1
						WHERE session_user_id = ' . $this->data['user_id'];
					$db->sql_query($sql);
					$this->data['session_viewonline'] = 1;
				}
			}
			else if (!$this->data['user_allow_viewonline'])
			{
				// the user wants to hide and is allowed to  -> cloaking device on.
				if ($auth->acl_get('u_hideonline'))
				{
					$sql = 'UPDATE ' . SESSIONS_TABLE . '
						SET session_viewonline = 0
						WHERE session_user_id = ' . $this->data['user_id'];
					$db->sql_query($sql);
					$this->data['session_viewonline'] = 0;
				}
			}
		}

		// Does the user need to change their password? If so, redirect to the
		// ucp profile reg_details page ... of course do not redirect if we're already in the ucp
		if (!defined('IN_ADMIN') && !defined('ADMIN_START') && $config['chg_passforce'] && !empty($this->data['is_registered']) && $auth->acl_get('u_chgpasswd') && $this->data['user_passchg'] < time() - ($config['chg_passforce'] * 86400))
		{
			if (strpos($this->page['query_string'], 'mode=reg_details') === false && $this->page['page_name'] != "ucp.$phpEx")
			{
				redirect(append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=profile&amp;mode=reg_details'));
			}
		}

		$this->is_setup_flag = true;

		return;
	}

	/**
	* More advanced language substitution
	* Function to mimic sprintf() with the possibility of using phpBB's language system to substitute nullar/singular/plural forms.
	* Params are the language key and the parameters to be substituted.
	* This function/functionality is inspired by SHS` and Ashe.
	*
	* Example call: <samp>$user->lang('NUM_POSTS_IN_QUEUE', 1);</samp>
	*
	* If the first parameter is an array, the elements are used as keys and subkeys to get the language entry:
	* Example: <samp>$user->lang(array('datetime', 'AGO'), 1)</samp> uses $user->lang['datetime']['AGO'] as language entry.
	*
	* @deprecated 3.2.0-dev (To be removed 4.0.0)
	*/
	function lang()
	{
		$args = func_get_args();
		return call_user_func_array(array($this->language, 'lang'), $args);
	}

	/**
	* Determine which plural form we should use.
	* For some languages this is not as simple as for English.
	*
	* @param $number        int|float   The number we want to get the plural case for. Float numbers are floored.
	* @param $force_rule    mixed   False to use the plural rule of the language package
	*                               or an integer to force a certain plural rule
	* @return int|bool     The plural-case we need to use for the number plural-rule combination, false if $force_rule
	* 					   was invalid.
	*
	* @deprecated: 3.2.0-dev (To be removed: 4.0.0)
	*/
	function get_plural_form($number, $force_rule = false)
	{
		return $this->language->get_plural_form($number, $force_rule);
	}

	/**
	* Add Language Items - use_db and use_help are assigned where needed (only use them to force inclusion)
	*
	* @param mixed $lang_set specifies the language entries to include
	* @param bool $use_db internal variable for recursion, do not use	@deprecated 3.2.0-dev (To be removed: 4.0.0)
	* @param bool $use_help internal variable for recursion, do not use	@deprecated 3.2.0-dev (To be removed: 4.0.0)
	* @param string $ext_name The extension to load language from, or empty for core files
	*
	* Examples:
	* <code>
	* $lang_set = array('posting', 'help' => 'faq');
	* $lang_set = array('posting', 'viewtopic', 'help' => array('bbcode', 'faq'))
	* $lang_set = array(array('posting', 'viewtopic'), 'help' => array('bbcode', 'faq'))
	* $lang_set = 'posting'
	* $lang_set = array('help' => 'faq', 'db' => array('help:faq', 'posting'))
	* </code>
	*
	* Note: $use_db and $use_help should be removed. The old function was kept for BC purposes,
	* 		so the BC logic is handled here.
	*
	* @deprecated: 3.2.0-dev (To be removed: 4.0.0)
	*/
	function add_lang($lang_set, $use_db = false, $use_help = false, $ext_name = '')
	{
		if (is_array($lang_set))
		{
			foreach ($lang_set as $key => $lang_file)
			{
				// Please do not delete this line.
				// We have to force the type here, else [array] language inclusion will not work
				$key = (string) $key;

				if ($key == 'db')
				{
					// This is never used
					$this->add_lang($lang_file, true, $use_help, $ext_name);
				}
				else if ($key == 'help')
				{
					$this->add_lang($lang_file, $use_db, true, $ext_name);
				}
				else if (!is_array($lang_file))
				{
					$this->set_lang($lang_file, $use_help, $ext_name);
				}
				else
				{
					$this->add_lang($lang_file, $use_db, $use_help, $ext_name);
				}
			}
			unset($lang_set);
		}
		else if ($lang_set)
		{
			$this->set_lang($lang_set, $use_help, $ext_name);
		}
	}

	/**
	 * BC function for loading language files
	 *
	 * @deprecated 3.2.0-dev (To be removed: 4.0.0)
	 */
	private function set_lang($lang_set, $use_help, $ext_name)
	{
		if (empty($ext_name))
		{
			$ext_name = null;
		}

		if ($use_help && strpos($lang_set, '/') !== false)
		{
			$component = dirname($lang_set) . '/help_' . basename($lang_set);

			if ($component[0] === '/')
			{
				$component = substr($component, 1);
			}
		}
		else
		{
			$component = (($use_help) ? 'help_' : '') . $lang_set;
		}

		$this->language->add_lang($component, $ext_name);
	}

	/**
	* Add Language Items from an extension - use_db and use_help are assigned where needed (only use them to force inclusion)
	*
	* @param string $ext_name The extension to load language from, or empty for core files
	* @param mixed $lang_set specifies the language entries to include
	* @param bool $use_db internal variable for recursion, do not use
	* @param bool $use_help internal variable for recursion, do not use
	*
	* Note: $use_db and $use_help should be removed. Kept for BC purposes.
	*
	* @deprecated: 3.2.0-dev (To be removed: 4.0.0)
	*/
	function add_lang_ext($ext_name, $lang_set, $use_db = false, $use_help = false)
	{
		if ($ext_name === '/')
		{
			$ext_name = '';
		}

		$this->add_lang($lang_set, $use_db, $use_help, $ext_name);
	}

	/**
	* Format user date
	*
	* @param int $gmepoch unix timestamp
	* @param string $format date format in date() notation. | used to indicate relative dates, for example |d m Y|, h:i is translated to Today, h:i.
	* @param bool $forcedate force non-relative date format.
	*
	* @return mixed translated date
	*/
	function format_date($gmepoch, $format = false, $forcedate = false)
	{
		global $phpbb_dispatcher;
		static $utc;

		if (!isset($utc))
		{
			$utc = new \DateTimeZone('UTC');
		}

		$format_date_override = false;
		$function_arguments = func_get_args();
		/**
		* Execute code and/or override format_date()
		*
		* To override the format_date() function generated value
		* set $format_date_override to new return value
		*
		* @event core.user_format_date_override
		* @var DateTimeZone	utc Is DateTimeZone in UTC
		* @var array function_arguments is array comprising a function's argument list
		* @var string format_date_override Shall we return custom format (string) or not (false)
		* @since 3.2.1-RC1
		*/
		$vars = array('utc', 'function_arguments', 'format_date_override');
		extract($phpbb_dispatcher->trigger_event('core.user_format_date_override', compact($vars)));

		if (!$format_date_override)
		{
			$time = new $this->datetime($this, '@' . (int) $gmepoch, $utc);
			$time->setTimezone($this->timezone);

			return $time->format($format, $forcedate);
		}
		else
		{
			return $format_date_override;
		}
	}

	/**
	* Create a \phpbb\datetime object in the context of the current user
	*
	* @since 3.1
	* @param string $time String in a format accepted by strtotime().
	* @param DateTimeZone $timezone Time zone of the time.
	* @return \phpbb\datetime Date time object linked to the current users locale
	*/
	public function create_datetime($time = 'now', \DateTimeZone $timezone = null)
	{
		$timezone = $timezone ?: $this->timezone;
		return new $this->datetime($this, $time, $timezone);
	}

	/**
	* Get the UNIX timestamp for a datetime in the users timezone, so we can store it in the database.
	*
	* @param	string			$format		Format of the entered date/time
	* @param	string			$time		Date/time with the timezone applied
	* @param	DateTimeZone	$timezone	Timezone of the date/time, falls back to timezone of current user
	* @return	int			Returns the unix timestamp
	*/
	public function get_timestamp_from_format($format, $time, \DateTimeZone $timezone = null)
	{
		$timezone = $timezone ?: $this->timezone;
		$date = \DateTime::createFromFormat($format, $time, $timezone);
		return ($date !== false) ? $date->format('U') : false;
	}

	/**
	* Get language id currently used by the user
	*/
	function get_iso_lang_id()
	{
		global $config, $db;

		if (!empty($this->lang_id))
		{
			return $this->lang_id;
		}

		if (!$this->lang_name)
		{
			$this->lang_name = $config['default_lang'];
		}

		$sql = 'SELECT lang_id
			FROM ' . LANG_TABLE . "
			WHERE lang_iso = '" . $db->sql_escape($this->lang_name) . "'";
		$result = $db->sql_query($sql);
		$this->lang_id = (int) $db->sql_fetchfield('lang_id');
		$db->sql_freeresult($result);

		return $this->lang_id;
	}

	/**
	* Get users profile fields
	*/
	function get_profile_fields($user_id)
	{
		global $db;

		if (isset($this->profile_fields))
		{
			return;
		}

		$sql = 'SELECT *
			FROM ' . PROFILE_FIELDS_DATA_TABLE . "
			WHERE user_id = $user_id";
		$result = $db->sql_query_limit($sql, 1);
		$this->profile_fields = (!($row = $db->sql_fetchrow($result))) ? array() : $row;
		$db->sql_freeresult($result);
	}

	/**
	* Specify/Get image
	*/
	function img($img, $alt = '')
	{
		$title = '';

		if ($alt)
		{
			$alt = $this->language->lang($alt);
			$title = ' title="' . $alt . '"';
		}
		return '<span class="imageset ' . $img . '"' . $title . '>' . $alt . '</span>';
	}

	/**
	* Get option bit field from user options.
	*
	* @param int $key option key, as defined in $keyoptions property.
	* @param int $data bit field value to use, or false to use $this->data['user_options']
	* @return bool true if the option is set in the bit field, false otherwise
	*/
	function optionget($key, $data = false)
	{
		$var = ($data !== false) ? $data : $this->data['user_options'];
		return phpbb_optionget($this->keyoptions[$key], $var);
	}

	/**
	* Set option bit field for user options.
	*
	* @param int $key Option key, as defined in $keyoptions property.
	* @param bool $value True to set the option, false to clear the option.
	* @param int $data Current bit field value, or false to use $this->data['user_options']
	* @return int|bool If $data is false, the bit field is modified and
	*                  written back to $this->data['user_options'], and
	*                  return value is true if the bit field changed and
	*                  false otherwise. If $data is not false, the new
	*                  bitfield value is returned.
	*/
	function optionset($key, $value, $data = false)
	{
		$var = ($data !== false) ? $data : $this->data['user_options'];

		$new_var = phpbb_optionset($this->keyoptions[$key], $value, $var);

		if ($data === false)
		{
			if ($new_var != $var)
			{
				$this->data['user_options'] = $new_var;
				return true;
			}
			else
			{
				return false;
			}
		}
		else
		{
			return $new_var;
		}
	}

	/**
	* Function to make the user leave the NEWLY_REGISTERED system group.
	* @access public
	*/
	function leave_newly_registered()
	{
		if (empty($this->data['user_new']))
		{
			return false;
		}

		if (!function_exists('remove_newly_registered'))
		{
			global $phpbb_root_path, $phpEx;

			include($phpbb_root_path . 'includes/functions_user.' . $phpEx);
		}
		if ($group = remove_newly_registered($this->data['user_id'], $this->data))
		{
			$this->data['group_id'] = $group;

		}
		$this->data['user_permissions'] = '';
		$this->data['user_new'] = 0;

		return true;
	}

	/**
	* Returns all password protected forum ids the user is currently NOT authenticated for.
	*
	* @return array     Array of forum ids
	* @access public
	*/
	function get_passworded_forums()
	{
		global $db;

		$sql = 'SELECT f.forum_id, fa.user_id
			FROM ' . FORUMS_TABLE . ' f
			LEFT JOIN ' . FORUMS_ACCESS_TABLE . " fa
				ON (fa.forum_id = f.forum_id
					AND fa.session_id = '" . $db->sql_escape($this->session_id) . "')
			WHERE f.forum_password <> ''";
		$result = $db->sql_query($sql);

		$forum_ids = array();
		while ($row = $db->sql_fetchrow($result))
		{
			$forum_id = (int) $row['forum_id'];

			if ($row['user_id'] != $this->data['user_id'])
			{
				$forum_ids[$forum_id] = $forum_id;
			}
		}
		$db->sql_freeresult($result);

		return $forum_ids;
	}
}