Index: /branches/newtoken/sql/restore_database.sh
===================================================================
--- /branches/newtoken/sql/restore_database.sh	(revision 1250)
+++ /branches/newtoken/sql/restore_database.sh	(revision 1250)
@@ -0,0 +1,89 @@
+#!/bin/bash
+DATABASE_NAME="wifidog";
+USERNAME="wifidog";
+SUPERUSER="postgres";
+FILENAME=$1;
+
+if [ -z $FILENAME ] ; then
+echo "You must specify a filename as the first argument"
+exit 1
+fi
+
+echo "Do I need to delete the current $DATABASE_NAME database before restoring from $FILENAME? (y/n)"
+read delete_confirm
+if [ $delete_confirm = "y" -o $delete_confirm = "Y" ] ; then
+cmd="dropdb -U $SUPERUSER $DATABASE_NAME" 
+echo $cmd
+$cmd
+retval=$?
+if [[ $retval -ne 0 ]] ; then
+    echo "Unable to delete the database"
+    exit 1
+fi
+else
+echo "Not trying to delete database $DATABASE_NAME"
+fi
+
+echo "Do I need to create the user $USERNAME before restoring from $FILENAME? (y/n)"
+read create_user_confirm
+if [ $create_user_confirm = "y" -o $create_user_confirm = "Y" ] ; then
+cmd="createuser -U $SUPERUSER --no-superuser --no-createdb --no-createrole --pwprompt $USERNAME" 
+echo $cmd
+$cmd
+retval=$?
+if [[ $retval -ne 0 ]] ; then
+    echo "Unable to create user $USERNAME "
+    exit 1
+fi
+else
+echo "Not trying to create user $USERNAME"
+fi
+
+echo "Creating database"
+
+cmd="createdb -U $SUPERUSER $DATABASE_NAME --encoding=UTF-8 --owner=$USERNAME"
+echo $cmd
+$cmd
+retval=$?
+if [[ $retval -ne 0 ]] ; then
+    echo "Unable to create the database, you probably need to delete the existing database"
+    exit 1
+fi
+
+
+echo "Do I need to add the plpgsql language to database (as the admin user)? (y/n)"
+read add_plpgsql_confirm
+if [ $add_plpgsql_confirm = "y" -o $add_plpgsql_confirm = "Y" ] ; then
+cmd="createlang -U $SUPERUSER plpgsql $DATABASE_NAME"
+echo $cmd
+$cmd
+retval=$?
+if [[ $retval -ne 0 ]] ; then
+    echo "Unable to create the plpgsql language, you may need to install the module"
+    exit 1
+fi
+else
+echo "Not trying to add plpgsql"
+fi
+
+echo "Restoring database"
+cmd="pg_restore -U $SUPERUSER -d $DATABASE_NAME -v $FILENAME"
+echo $cmd
+$cmd
+retval=$?
+#if [[ $retval -ne 0 ]] ; then
+#    echo "Unable to restore the database completely"
+#    exit 1
+#fi
+
+echo "Vacuuming database"
+sql="VACUUM ANALYZE;"
+cmd="psql -U $SUPERUSER -d $DATABASE_NAME --command \"$sql\""
+echo $cmd
+eval $cmd
+retval=$?
+if [[ $retval -ne 0 ]] ; then
+    echo "Unable to restore the database completely"
+    exit 1
+fi
+exit $?
Index: /branches/newtoken/sql/sync_sql_for_svn.sh
===================================================================
--- /branches/newtoken/sql/sync_sql_for_svn.sh	(revision 1250)
+++ /branches/newtoken/sql/sync_sql_for_svn.sh	(revision 1250)
@@ -0,0 +1,6 @@
+#!/bin/sh
+echo "Note:  You will be prompted for a password several times; enter the wifidog database user's password"
+sh dump_initial_data_postgres.sh > wifidog-postgres-initial-data.sql
+chmod a+r wifidog-postgres-initial-data.sql
+sh dump_schema_postgres.sh > wifidog-postgres-schema.sql
+chmod a+r wifidog-postgres-schema.sql
Index: /branches/newtoken/sql/backup_database.sh
===================================================================
--- /branches/newtoken/sql/backup_database.sh	(revision 1281)
+++ /branches/newtoken/sql/backup_database.sh	(revision 1281)
@@ -0,0 +1,18 @@
+#!/bin/bash
+DATABASE_NAME="wifidog";
+USERNAME="wifidog";
+FILENAME=$1;
+
+if [ -z $FILENAME ] ; then
+echo "You must specify a filename as the first argument"
+exit 1
+fi
+
+$cmd="pg_dump --blobs --file=$FILENAME --format=c -i -O -o -v --compress=3 -U $USERNAME $DATABASE_NAME"
+echo $cmd
+$cmd
+retval=$?
+if [[ $retval -ne 0 ]] ; then
+    echo "Unable to dump the database"
+    exit 1
+fi
Index: /branches/newtoken/sql/dump_schema_postgres.sh
===================================================================
--- /branches/newtoken/sql/dump_schema_postgres.sh	(revision 514)
+++ /branches/newtoken/sql/dump_schema_postgres.sh	(revision 514)
@@ -0,0 +1,2 @@
+#!/bin/sh
+pg_dump wifidog --username=wifidog -s -C -x -O
Index: /branches/newtoken/sql/dump_initial_data_postgres.sh
===================================================================
--- /branches/newtoken/sql/dump_initial_data_postgres.sh	(revision 1316)
+++ /branches/newtoken/sql/dump_initial_data_postgres.sh	(revision 1316)
@@ -0,0 +1,22 @@
+#!/bin/sh
+echo "\connect wifidog;"
+echo "BEGIN;"
+
+pg_dump -a -D --username=wifidog -t token_status
+pg_dump -a -D --username=wifidog -t venue_types
+pg_dump -a -D --username=wifidog -t node_deployment_status
+pg_dump -a -D --username=wifidog -t content_available_display_areas
+pg_dump -a -D --username=wifidog -t content_available_display_pages
+pg_dump -a -D --username=wifidog -t stakeholder_types
+
+echo "INSERT INTO networks (network_id, network_authenticator_class, network_authenticator_params) VALUES ('default-network', 'AuthenticatorLocalUser', '\'default-network\'');";
+echo "INSERT INTO nodes (network_id, node_id, gw_id, name) VALUES ('default-network', 'default', 'default', 'My first node');"
+echo "INSERT INTO virtual_hosts (virtual_host_id, hostname, default_network) VALUES ('DEFAULT_VHOST', 'localhost', 'default-network');";
+echo "INSERT INTO server (server_id, default_virtual_host) VALUES ('SERVER_ID', 'DEFAULT_VHOST');";
+echo "INSERT into roles (role_id, stakeholder_type_id) VALUES ('SERVER_OWNER', 'Server');";
+echo "INSERT into roles (role_id, stakeholder_type_id) VALUES ('NETWORK_OWNER', 'Network');";
+
+pg_dump -a -D --username=wifidog -t schema_info
+pg_dump -a -D --username=wifidog -t locales
+
+echo "COMMIT;"
Index: /branches/newtoken/sql/vacuum_last_resort_backup_restore_database.sh
===================================================================
--- /branches/newtoken/sql/vacuum_last_resort_backup_restore_database.sh	(revision 1281)
+++ /branches/newtoken/sql/vacuum_last_resort_backup_restore_database.sh	(revision 1281)
@@ -0,0 +1,60 @@
+#!/bin/bash
+DATABASE_NAME="wifidog";
+USERNAME="wifidog";
+SUPERUSER="postgres";
+FILENAME=$1;
+
+if [ -z $FILENAME ] ; then
+echo "You must specify a filename as the first argument"
+exit 1
+fi
+
+cmd="pg_dump --blobs --file=$FILENAME --format=c -i -v --compress=3 -U $SUPERUSER $DATABASE_NAME"
+echo $cmd
+$cmd
+retval=$?
+if [[ $retval -ne 0 ]] ; then
+    echo "Unable to dump the database, I can't proceed without a valid backup"
+    exit 1
+fi
+
+cmd="dropdb -U $SUPERUSER $DATABASE_NAME" 
+echo $cmd
+$cmd
+retval=$?
+if [[ $retval -ne 0 ]] ; then
+    echo "Unable to delete the database"
+    exit 1
+fi
+
+echo "Creating database"
+
+cmd="createdb -U $SUPERUSER $DATABASE_NAME --encoding=UTF-8 --owner=$USERNAME"
+echo $cmd
+$cmd
+retval=$?
+if [[ $retval -ne 0 ]] ; then
+    echo "Unable to create the database, you probably need to delete the existing database"
+    exit 1
+fi
+echo "Restoring database"
+cmd="pg_restore -U $SUPERUSER -d $DATABASE_NAME -v $FILENAME"
+echo $cmd
+$cmd
+retval=$?
+#if [[ $retval -ne 0 ]] ; then
+#    echo "Unable to restore the database completely"
+#    exit 1
+#fi
+
+echo "Vacuuming database"
+sql="VACUUM ANALYZE;"
+cmd="psql -U $SUPERUSER -d $DATABASE_NAME --command \"$sql\""
+echo $cmd
+eval $cmd
+retval=$?
+if [[ $retval -ne 0 ]] ; then
+    echo "Unable to restore the database completely"
+    exit 1
+fi
+exit $?
Index: /branches/newtoken/sql/wifidog-postgres-initial-data.sql
===================================================================
--- /branches/newtoken/sql/wifidog-postgres-initial-data.sql	(revision 1356)
+++ /branches/newtoken/sql/wifidog-postgres-initial-data.sql	(revision 1356)
@@ -0,0 +1,252 @@
+BEGIN;
+--
+-- PostgreSQL database dump
+--
+
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = off;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET escape_string_warning = off;
+
+SET search_path = public, pg_catalog;
+
+--
+-- Data for Name: token_status; Type: TABLE DATA; Schema: public; Owner: wifidog
+--
+
+INSERT INTO token_status (token_status) VALUES ('UNUSED');
+INSERT INTO token_status (token_status) VALUES ('INUSE');
+INSERT INTO token_status (token_status) VALUES ('USED');
+
+
+--
+-- PostgreSQL database dump complete
+--
+
+--
+-- PostgreSQL database dump
+--
+
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = off;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET escape_string_warning = off;
+
+SET search_path = public, pg_catalog;
+
+--
+-- Data for Name: venue_types; Type: TABLE DATA; Schema: public; Owner: wifidog
+--
+
+INSERT INTO venue_types (venue_type) VALUES ('Airline');
+INSERT INTO venue_types (venue_type) VALUES ('Airport Terminal/Lounge');
+INSERT INTO venue_types (venue_type) VALUES ('Bus Station');
+INSERT INTO venue_types (venue_type) VALUES ('Business/Conference Center');
+INSERT INTO venue_types (venue_type) VALUES ('Cafe/Coffee Shop');
+INSERT INTO venue_types (venue_type) VALUES ('Camp Ground');
+INSERT INTO venue_types (venue_type) VALUES ('Community Network');
+INSERT INTO venue_types (venue_type) VALUES ('Convention Center');
+INSERT INTO venue_types (venue_type) VALUES ('Cruise Ship');
+INSERT INTO venue_types (venue_type) VALUES ('Copy Center/Business Services');
+INSERT INTO venue_types (venue_type) VALUES ('Entertainment Venues');
+INSERT INTO venue_types (venue_type) VALUES ('Gas/Petrol Station');
+INSERT INTO venue_types (venue_type) VALUES ('Hospital');
+INSERT INTO venue_types (venue_type) VALUES ('Hotel');
+INSERT INTO venue_types (venue_type) VALUES ('Internet Cafe');
+INSERT INTO venue_types (venue_type) VALUES ('Kiosk');
+INSERT INTO venue_types (venue_type) VALUES ('Library');
+INSERT INTO venue_types (venue_type) VALUES ('Marina/Harbour');
+INSERT INTO venue_types (venue_type) VALUES ('Motorway Travel Center/TruckStop');
+INSERT INTO venue_types (venue_type) VALUES ('Office Building/Complex');
+INSERT INTO venue_types (venue_type) VALUES ('Other');
+INSERT INTO venue_types (venue_type) VALUES ('Park');
+INSERT INTO venue_types (venue_type) VALUES ('Pay Phone/Booth');
+INSERT INTO venue_types (venue_type) VALUES ('Port/Ferry Terminal');
+INSERT INTO venue_types (venue_type) VALUES ('Residential Housing/Apt Bldg');
+INSERT INTO venue_types (venue_type) VALUES ('Restaurant/Bar/Pub');
+INSERT INTO venue_types (venue_type) VALUES ('School/University');
+INSERT INTO venue_types (venue_type) VALUES ('Shopping Center');
+INSERT INTO venue_types (venue_type) VALUES ('Sports Arena/Venue');
+INSERT INTO venue_types (venue_type) VALUES ('Store/Retail Shop');
+INSERT INTO venue_types (venue_type) VALUES ('Train');
+INSERT INTO venue_types (venue_type) VALUES ('Train/Rail Station');
+INSERT INTO venue_types (venue_type) VALUES ('Water Travel');
+INSERT INTO venue_types (venue_type) VALUES ('Wi-Fi Zone');
+
+
+--
+-- PostgreSQL database dump complete
+--
+
+--
+-- PostgreSQL database dump
+--
+
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = off;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET escape_string_warning = off;
+
+SET search_path = public, pg_catalog;
+
+--
+-- Data for Name: node_deployment_status; Type: TABLE DATA; Schema: public; Owner: wifidog
+--
+
+INSERT INTO node_deployment_status (node_deployment_status) VALUES ('DEPLOYED');
+INSERT INTO node_deployment_status (node_deployment_status) VALUES ('IN_PLANNING');
+INSERT INTO node_deployment_status (node_deployment_status) VALUES ('IN_TESTING');
+INSERT INTO node_deployment_status (node_deployment_status) VALUES ('NON_WIFIDOG_NODE');
+INSERT INTO node_deployment_status (node_deployment_status) VALUES ('PERMANENTLY_CLOSED');
+INSERT INTO node_deployment_status (node_deployment_status) VALUES ('TEMPORARILY_CLOSED');
+
+
+--
+-- PostgreSQL database dump complete
+--
+
+--
+-- PostgreSQL database dump
+--
+
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = off;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET escape_string_warning = off;
+
+SET search_path = public, pg_catalog;
+
+--
+-- Data for Name: content_available_display_areas; Type: TABLE DATA; Schema: public; Owner: wifidog
+--
+
+INSERT INTO content_available_display_areas (display_area) VALUES ('page_header');
+INSERT INTO content_available_display_areas (display_area) VALUES ('page_footer');
+INSERT INTO content_available_display_areas (display_area) VALUES ('left_area_middle');
+INSERT INTO content_available_display_areas (display_area) VALUES ('left_area_bottom');
+INSERT INTO content_available_display_areas (display_area) VALUES ('main_area_top');
+INSERT INTO content_available_display_areas (display_area) VALUES ('main_area_middle');
+INSERT INTO content_available_display_areas (display_area) VALUES ('main_area_bottom');
+INSERT INTO content_available_display_areas (display_area) VALUES ('right_area_top');
+INSERT INTO content_available_display_areas (display_area) VALUES ('right_area_middle');
+INSERT INTO content_available_display_areas (display_area) VALUES ('right_area_bottom');
+INSERT INTO content_available_display_areas (display_area) VALUES ('left_area_top');
+
+
+--
+-- PostgreSQL database dump complete
+--
+
+--
+-- PostgreSQL database dump
+--
+
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = off;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET escape_string_warning = off;
+
+SET search_path = public, pg_catalog;
+
+--
+-- Data for Name: content_available_display_pages; Type: TABLE DATA; Schema: public; Owner: wifidog
+--
+
+INSERT INTO content_available_display_pages (display_page) VALUES ('login');
+INSERT INTO content_available_display_pages (display_page) VALUES ('portal');
+INSERT INTO content_available_display_pages (display_page) VALUES ('everywhere');
+
+
+--
+-- PostgreSQL database dump complete
+--
+
+--
+-- PostgreSQL database dump
+--
+
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = off;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET escape_string_warning = off;
+
+SET search_path = public, pg_catalog;
+
+--
+-- Data for Name: stakeholder_types; Type: TABLE DATA; Schema: public; Owner: wifidog
+--
+
+INSERT INTO stakeholder_types (stakeholder_type_id) VALUES ('Node');
+INSERT INTO stakeholder_types (stakeholder_type_id) VALUES ('Network');
+INSERT INTO stakeholder_types (stakeholder_type_id) VALUES ('Server');
+INSERT INTO stakeholder_types (stakeholder_type_id) VALUES ('Content');
+
+
+--
+-- PostgreSQL database dump complete
+--
+
+INSERT INTO networks (network_id, network_authenticator_class, network_authenticator_params) VALUES ('default-network', 'AuthenticatorLocalUser', '\'default-network\'');
+INSERT INTO nodes (network_id, node_id, gw_id, name) VALUES ('default-network', 'default', 'default', 'My first node');
+INSERT INTO virtual_hosts (virtual_host_id, hostname, default_network) VALUES ('DEFAULT_VHOST', 'localhost', 'default-network');
+INSERT INTO server (server_id, default_virtual_host) VALUES ('SERVER_ID', 'DEFAULT_VHOST');
+INSERT into roles (role_id, stakeholder_type_id) VALUES ('SERVER_OWNER', 'Server');
+INSERT into roles (role_id, stakeholder_type_id) VALUES ('NETWORK_OWNER', 'Network');
+--
+-- PostgreSQL database dump
+--
+
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = off;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET escape_string_warning = off;
+
+SET search_path = public, pg_catalog;
+
+--
+-- Data for Name: schema_info; Type: TABLE DATA; Schema: public; Owner: wifidog
+--
+
+INSERT INTO schema_info (tag, value) VALUES ('schema_version', '62');
+
+
+--
+-- PostgreSQL database dump complete
+--
+
+--
+-- PostgreSQL database dump
+--
+
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = off;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET escape_string_warning = off;
+
+SET search_path = public, pg_catalog;
+
+--
+-- Data for Name: locales; Type: TABLE DATA; Schema: public; Owner: wifidog
+--
+
+INSERT INTO locales (locales_id) VALUES ('fr');
+INSERT INTO locales (locales_id) VALUES ('en');
+INSERT INTO locales (locales_id) VALUES ('de');
+INSERT INTO locales (locales_id) VALUES ('pt');
+INSERT INTO locales (locales_id) VALUES ('ja');
+INSERT INTO locales (locales_id) VALUES ('es');
+
+
+--
+-- PostgreSQL database dump complete
+--
+
+COMMIT;
Index: /branches/newtoken/sql/wifidog-postgres-schema.sql
===================================================================
--- /branches/newtoken/sql/wifidog-postgres-schema.sql	(revision 1360)
+++ /branches/newtoken/sql/wifidog-postgres-schema.sql	(revision 1360)
@@ -0,0 +1,2031 @@
+--
+-- PostgreSQL database dump
+--
+
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = off;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET escape_string_warning = off;
+
+--
+-- Name: wifidog; Type: DATABASE; Schema: -; Owner: -
+--
+
+CREATE DATABASE wifidog WITH TEMPLATE = template0 ENCODING = 'UTF8';
+
+
+\connect wifidog
+
+SET client_encoding = 'UTF8';
+SET standard_conforming_strings = off;
+SET check_function_bodies = false;
+SET client_min_messages = warning;
+SET escape_string_warning = off;
+
+--
+-- Name: SCHEMA public; Type: COMMENT; Schema: -; Owner: -
+--
+
+COMMENT ON SCHEMA public IS 'Standard public schema';
+
+
+--
+-- Name: plpgsql; Type: PROCEDURAL LANGUAGE; Schema: -; Owner: -
+--
+
+CREATE PROCEDURAL LANGUAGE plpgsql;
+
+
+SET search_path = public, pg_catalog;
+
+SET default_tablespace = '';
+
+SET default_with_oids = true;
+
+--
+-- Name: connections; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE connections (
+    conn_id integer NOT NULL,
+    token_id character varying(32) DEFAULT ''::character varying NOT NULL,
+    timestamp_in timestamp without time zone,
+    node_id character varying(32),
+    node_ip character varying(15),
+    timestamp_out timestamp without time zone,
+    user_id character varying(45) DEFAULT ''::character varying NOT NULL,
+    user_mac character varying(18),
+    user_ip character varying(16),
+    last_updated timestamp without time zone NOT NULL,
+    incoming bigint,
+    outgoing bigint,
+    max_total_bytes integer,
+    max_incoming_bytes integer,
+    max_outgoing_bytes integer,
+    expiration_date timestamp without time zone,
+    logout_reason integer
+);
+
+
+--
+-- Name: connections_conn_id_seq; Type: SEQUENCE; Schema: public; Owner: -
+--
+
+CREATE SEQUENCE connections_conn_id_seq
+    INCREMENT BY 1
+    NO MAXVALUE
+    NO MINVALUE
+    CACHE 1;
+
+
+--
+-- Name: connections_conn_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
+--
+
+ALTER SEQUENCE connections_conn_id_seq OWNED BY connections.conn_id;
+
+
+--
+-- Name: content; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content (
+    content_id text NOT NULL,
+    content_type text NOT NULL,
+    title text,
+    description text,
+    project_info text,
+    creation_timestamp timestamp without time zone DEFAULT now(),
+    is_persistent boolean DEFAULT false,
+    long_description text,
+    title_is_displayed boolean DEFAULT true NOT NULL,
+    last_update_timestamp timestamp without time zone DEFAULT now() NOT NULL,
+    CONSTRAINT content_type_not_empty_string CHECK ((content_type <> ''::text))
+);
+
+
+--
+-- Name: content_available_display_areas; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_available_display_areas (
+    display_area text NOT NULL
+);
+
+
+--
+-- Name: content_available_display_pages; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_available_display_pages (
+    display_page text NOT NULL
+);
+
+
+SET default_with_oids = false;
+
+--
+-- Name: content_clickthrough_log; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_clickthrough_log (
+    user_id text NOT NULL,
+    content_id text NOT NULL,
+    first_clickthrough_timestamp timestamp without time zone DEFAULT now() NOT NULL,
+    node_id text NOT NULL,
+    destination_url text NOT NULL,
+    num_clickthrough integer DEFAULT 1 NOT NULL,
+    last_clickthrough_timestamp timestamp without time zone DEFAULT now() NOT NULL,
+    CONSTRAINT content_clickthrough_log_destination_url_check CHECK ((destination_url <> ''::text))
+);
+
+
+SET default_with_oids = true;
+
+--
+-- Name: content_display_log; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_display_log (
+    user_id text NOT NULL,
+    content_id text NOT NULL,
+    first_display_timestamp timestamp without time zone DEFAULT now() NOT NULL,
+    node_id text NOT NULL,
+    last_display_timestamp timestamp without time zone DEFAULT now() NOT NULL,
+    num_display integer DEFAULT 1 NOT NULL
+);
+
+
+--
+-- Name: content_embedded_content; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_embedded_content (
+    embedded_content_id text NOT NULL,
+    embedded_file_id text,
+    fallback_content_id text,
+    parameters text,
+    attributes text
+);
+
+
+--
+-- Name: content_file; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_file (
+    files_id text NOT NULL,
+    filename text,
+    mime_type text,
+    remote_size bigint,
+    url text,
+    data_blob oid,
+    local_binary_size bigint
+);
+
+
+--
+-- Name: content_file_image; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_file_image (
+    pictures_id text NOT NULL,
+    width integer,
+    height integer,
+    hyperlink_url text
+);
+
+
+--
+-- Name: content_flickr_photostream; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_flickr_photostream (
+    flickr_photostream_id text NOT NULL,
+    api_key text,
+    photo_selection_mode text DEFAULT 'PSM_GROUP'::text NOT NULL,
+    user_id text,
+    user_name text,
+    tags text,
+    tag_mode character varying(10) DEFAULT 'any'::character varying,
+    group_id text,
+    random boolean DEFAULT true NOT NULL,
+    min_taken_date timestamp without time zone,
+    max_taken_date timestamp without time zone,
+    photo_batch_size integer DEFAULT 10,
+    photo_count integer DEFAULT 1,
+    display_title boolean DEFAULT true NOT NULL,
+    display_description boolean DEFAULT false NOT NULL,
+    display_tags boolean DEFAULT false NOT NULL,
+    preferred_size text,
+    requests_cache text,
+    cache_update_timestamp timestamp without time zone,
+    api_shared_secret text,
+    photo_display_mode text DEFAULT 'PDM_GRID'::text NOT NULL
+);
+
+
+--
+-- Name: content_group; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_group (
+    content_group_id text NOT NULL,
+    content_changes_on_mode text DEFAULT 'ALWAYS'::text NOT NULL,
+    content_ordering_mode text DEFAULT 'RANDOM'::text NOT NULL,
+    display_num_elements integer DEFAULT 1 NOT NULL,
+    allow_repeat text DEFAULT 'YES'::text NOT NULL,
+    CONSTRAINT display_at_least_one_element CHECK ((display_num_elements > 0))
+);
+
+
+--
+-- Name: content_group_element; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_group_element (
+    content_group_element_id text NOT NULL,
+    content_group_id text NOT NULL,
+    display_order integer DEFAULT 1,
+    displayed_content_id text,
+    force_only_allowed_node boolean,
+    valid_from_timestamp timestamp without time zone,
+    valid_until_timestamp timestamp without time zone
+);
+
+
+--
+-- Name: content_group_element_has_allowed_nodes; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_group_element_has_allowed_nodes (
+    content_group_element_id text NOT NULL,
+    node_id text NOT NULL,
+    allowed_since timestamp without time zone DEFAULT now()
+);
+
+
+--
+-- Name: content_has_owners; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_has_owners (
+    content_id text NOT NULL,
+    user_id text NOT NULL,
+    is_author boolean DEFAULT false NOT NULL,
+    owner_since timestamp without time zone DEFAULT now()
+);
+
+
+--
+-- Name: content_iframe; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_iframe (
+    iframes_id text NOT NULL,
+    url text,
+    width integer,
+    height integer
+);
+
+
+SET default_with_oids = false;
+
+--
+-- Name: content_key_value_pairs; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_key_value_pairs (
+    content_id text NOT NULL,
+    "key" text NOT NULL,
+    value text
+);
+
+
+SET default_with_oids = true;
+
+--
+-- Name: content_langstring_entries; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_langstring_entries (
+    langstring_entries_id text NOT NULL,
+    langstrings_id text,
+    locales_id text,
+    value text DEFAULT ''::text
+);
+
+
+--
+-- Name: content_rss_aggregator; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_rss_aggregator (
+    content_id text NOT NULL,
+    number_of_display_items integer DEFAULT 10 NOT NULL,
+    algorithm_strength real DEFAULT 0.75 NOT NULL,
+    max_item_age interval,
+    feed_expansion text DEFAULT 'FIRST'::text NOT NULL,
+    feed_ordering text DEFAULT 'REVERSE_DATE'::text NOT NULL,
+    display_empty_feeds boolean DEFAULT true NOT NULL
+);
+
+
+--
+-- Name: content_rss_aggregator_feeds; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_rss_aggregator_feeds (
+    content_id text NOT NULL,
+    url text NOT NULL,
+    bias real DEFAULT 1 NOT NULL,
+    default_publication_interval integer,
+    title text
+);
+
+
+SET default_with_oids = false;
+
+--
+-- Name: content_shoutbox_messages; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_shoutbox_messages (
+    message_content_id text NOT NULL,
+    shoutbox_id text NOT NULL,
+    origin_node_id text NOT NULL,
+    author_user_id text NOT NULL,
+    creation_date timestamp without time zone DEFAULT now()
+);
+
+
+--
+-- Name: content_type_filters; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE content_type_filters (
+    content_type_filter_id text NOT NULL,
+    content_type_filter_label text,
+    content_type_filter_rules text NOT NULL,
+    CONSTRAINT content_type_filter_rules_not_empty_string CHECK ((content_type_filter_rules <> ''::text))
+);
+
+
+SET default_with_oids = true;
+
+--
+-- Name: locales; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE locales (
+    locales_id text NOT NULL
+);
+
+
+--
+-- Name: network_has_content; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE network_has_content (
+    network_id text NOT NULL,
+    content_id text NOT NULL,
+    subscribe_timestamp timestamp without time zone DEFAULT now() NOT NULL,
+    display_page text DEFAULT 'portal'::text NOT NULL,
+    display_area text DEFAULT 'main_area_middle'::text NOT NULL,
+    display_order integer DEFAULT 1 NOT NULL
+);
+
+
+SET default_with_oids = false;
+
+--
+-- Name: network_has_profile_templates; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE network_has_profile_templates (
+    network_id text NOT NULL,
+    profile_template_id text NOT NULL
+);
+
+
+--
+-- Name: stakeholders; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE stakeholders (
+    user_id text NOT NULL,
+    role_id text NOT NULL,
+    object_id text NOT NULL,
+    CONSTRAINT user_has_roles_objct_id_not_empty_string CHECK ((object_id <> ''::text))
+);
+
+
+--
+-- Name: network_stakeholders; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE network_stakeholders (
+)
+INHERITS (stakeholders);
+
+
+SET default_with_oids = true;
+
+--
+-- Name: networks; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE networks (
+    network_id text NOT NULL,
+    network_authenticator_class text NOT NULL,
+    network_authenticator_params text,
+    name text DEFAULT 'Unnamed network'::text NOT NULL,
+    creation_date date DEFAULT now() NOT NULL,
+    homepage_url text,
+    tech_support_email text,
+    validation_grace_time interval DEFAULT '00:20:00'::interval NOT NULL,
+    validation_email_from_address text DEFAULT 'validation@wifidognetwork'::text NOT NULL,
+    allow_multiple_login boolean DEFAULT false NOT NULL,
+    allow_splash_only_nodes boolean DEFAULT false NOT NULL,
+    allow_custom_portal_redirect boolean DEFAULT false NOT NULL,
+    gmaps_initial_latitude numeric(16,6),
+    gmaps_initial_longitude numeric(16,6),
+    gmaps_initial_zoom_level integer,
+    gmaps_map_type text DEFAULT 'G_NORMAL_MAP'::text NOT NULL,
+    theme_pack text,
+    connection_limit_window interval,
+    connection_limit_network_max_total_bytes bigint,
+    connection_limit_network_max_usage_duration interval,
+    connection_limit_node_max_total_bytes bigint,
+    connection_limit_node_max_usage_duration interval,
+    CONSTRAINT networks_gmaps_map_type CHECK ((gmaps_map_type <> ''::text)),
+    CONSTRAINT networks_name CHECK ((name <> ''::text)),
+    CONSTRAINT networks_network_authenticator_class CHECK ((network_authenticator_class <> ''::text)),
+    CONSTRAINT networks_validation_email_from_address CHECK ((validation_email_from_address <> ''::text))
+);
+
+
+SET default_with_oids = false;
+
+--
+-- Name: node_deployment_status; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE node_deployment_status (
+    node_deployment_status character varying(32) NOT NULL
+);
+
+
+SET default_with_oids = true;
+
+--
+-- Name: node_has_content; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE node_has_content (
+    node_id text NOT NULL,
+    content_id text NOT NULL,
+    subscribe_timestamp timestamp without time zone DEFAULT now() NOT NULL,
+    display_page text DEFAULT 'portal'::text NOT NULL,
+    display_area text DEFAULT 'main_area_middle'::text NOT NULL,
+    display_order integer DEFAULT 1 NOT NULL
+);
+
+
+SET default_with_oids = false;
+
+--
+-- Name: node_stakeholders; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE node_stakeholders (
+)
+INHERITS (stakeholders);
+
+
+SET default_with_oids = true;
+
+--
+-- Name: nodes; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE nodes (
+    node_id character varying(32) DEFAULT ''::character varying NOT NULL,
+    name text,
+    last_heartbeat_ip character varying(16),
+    last_heartbeat_timestamp timestamp without time zone DEFAULT now(),
+    creation_date date DEFAULT now(),
+    home_page_url text,
+    last_heartbeat_user_agent text,
+    description text,
+    map_url text,
+    public_phone_number text,
+    public_email text,
+    mass_transit_info text,
+    node_deployment_status character varying(32) DEFAULT 'IN_PLANNING'::character varying NOT NULL,
+    venue_type text DEFAULT 'Other'::text,
+    max_monthly_incoming bigint,
+    max_monthly_outgoing bigint,
+    quota_reset_day_of_month integer,
+    latitude numeric(16,6),
+    longitude numeric(16,6),
+    civic_number text,
+    street_name text,
+    city text,
+    province text,
+    country text,
+    postal_code text,
+    network_id text NOT NULL,
+    last_paged timestamp without time zone,
+    is_splash_only_node boolean DEFAULT false,
+    custom_portal_redirect_url text,
+    gw_id text NOT NULL,
+    last_heartbeat_sys_uptime integer,
+    last_heartbeat_wifidog_uptime integer,
+    last_heartbeat_sys_memfree integer,
+    last_heartbeat_sys_load real,
+    connection_limit_node_max_total_bytes_override bigint,
+    connection_limit_node_max_usage_duration_override interval
+);
+
+
+SET default_with_oids = false;
+
+--
+-- Name: permissions; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE permissions (
+    permission_id text NOT NULL,
+    stakeholder_type_id text NOT NULL,
+    CONSTRAINT permission_rules_id_not_empty_string CHECK ((permission_id <> ''::text))
+);
+
+
+--
+-- Name: profile_fields; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE profile_fields (
+    profile_field_id text NOT NULL,
+    profile_id text,
+    profile_template_field_id text,
+    content_id text,
+    last_modified timestamp without time zone DEFAULT now()
+);
+
+
+--
+-- Name: profile_template_fields; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE profile_template_fields (
+    profile_template_field_id text NOT NULL,
+    profile_template_id text NOT NULL,
+    display_label_content_id text,
+    admin_label_content_id text,
+    content_type_filter_id text,
+    display_order integer DEFAULT 1,
+    semantic_id text
+);
+
+
+--
+-- Name: profile_templates; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE profile_templates (
+    profile_template_id text NOT NULL,
+    profile_template_label text,
+    creation_date timestamp without time zone DEFAULT now()
+);
+
+
+--
+-- Name: profiles; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE profiles (
+    profile_id text NOT NULL,
+    profile_template_id text,
+    creation_date timestamp without time zone DEFAULT now(),
+    is_visible boolean DEFAULT true
+);
+
+
+--
+-- Name: role_has_permissions; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE role_has_permissions (
+    role_id text NOT NULL,
+    permission_id text NOT NULL
+);
+
+
+--
+-- Name: roles; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE roles (
+    role_id text NOT NULL,
+    role_description_content_id text,
+    is_system_role boolean DEFAULT false NOT NULL,
+    stakeholder_type_id text NOT NULL,
+    role_creation_date timestamp without time zone DEFAULT now(),
+    CONSTRAINT roles_rules_id_not_empty_string CHECK ((role_id <> ''::text))
+);
+
+
+SET default_with_oids = true;
+
+--
+-- Name: schema_info; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE schema_info (
+    tag text NOT NULL,
+    value text
+);
+
+
+SET default_with_oids = false;
+
+--
+-- Name: server; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE server (
+    server_id text NOT NULL,
+    creation_date date DEFAULT now() NOT NULL,
+    default_virtual_host text NOT NULL
+);
+
+
+--
+-- Name: server_stakeholders; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE server_stakeholders (
+)
+INHERITS (stakeholders);
+
+
+--
+-- Name: stakeholder_types; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE stakeholder_types (
+    stakeholder_type_id text NOT NULL,
+    CONSTRAINT stakeholder_types_id_not_empty_string CHECK ((stakeholder_type_id <> ''::text))
+);
+
+
+--
+-- Name: token_lots; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE token_lots (
+    token_lot_id text NOT NULL,
+    token_lot_comment text,
+    token_lot_creation_date timestamp without time zone DEFAULT now() NOT NULL
+);
+
+
+SET default_with_oids = true;
+
+--
+-- Name: token_status; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE token_status (
+    token_status character varying(10) NOT NULL
+);
+
+
+SET default_with_oids = false;
+
+--
+-- Name: token_templates; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE token_templates (
+    token_template_id text NOT NULL,
+    token_template_network text NOT NULL,
+    token_template_creation_date timestamp without time zone DEFAULT now() NOT NULL,
+    token_max_incoming_data integer,
+    token_max_outgoing_data integer,
+    token_max_total_data integer,
+    token_max_connection_duration interval,
+    token_max_usage_duration interval,
+    token_max_wall_clock_duration interval,
+    token_max_age interval,
+    token_is_reusable boolean DEFAULT true
+);
+
+
+--
+-- Name: tokens; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE tokens (
+    token_id text NOT NULL,
+    token_template_id text,
+    token_status text,
+    token_lot_id text,
+    token_creation_date timestamp without time zone DEFAULT now() NOT NULL,
+    token_issuer text NOT NULL,
+    token_owner text
+);
+
+
+--
+-- Name: tokens_template_valid_nodes; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE tokens_template_valid_nodes (
+    token_template_id text NOT NULL,
+    token_valid_at_node text NOT NULL
+);
+
+
+SET default_with_oids = true;
+
+--
+-- Name: user_has_content; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE user_has_content (
+    user_id text NOT NULL,
+    content_id text NOT NULL,
+    subscribe_timestamp timestamp without time zone DEFAULT now() NOT NULL
+);
+
+
+SET default_with_oids = false;
+
+--
+-- Name: user_has_profiles; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE user_has_profiles (
+    user_id text NOT NULL,
+    profile_id text NOT NULL
+);
+
+
+SET default_with_oids = true;
+
+--
+-- Name: users; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE users (
+    user_id character varying(45) NOT NULL,
+    pass character varying(32) DEFAULT ''::character varying NOT NULL,
+    email character varying(255) DEFAULT ''::character varying NOT NULL,
+    account_status integer,
+    validation_token character varying(64) DEFAULT ''::character varying NOT NULL,
+    reg_date timestamp without time zone DEFAULT now() NOT NULL,
+    username text,
+    account_origin text NOT NULL,
+    never_show_username boolean DEFAULT false,
+    prefered_locale text,
+    open_id_url text,
+    CONSTRAINT check_user_not_empty CHECK (((user_id)::text <> ''::text))
+);
+
+
+SET default_with_oids = false;
+
+--
+-- Name: venue_types; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE venue_types (
+    venue_type text NOT NULL
+);
+
+
+--
+-- Name: venues; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE venues (
+    name text NOT NULL,
+    description text
+);
+
+
+--
+-- Name: virtual_hosts; Type: TABLE; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE TABLE virtual_hosts (
+    virtual_host_id text NOT NULL,
+    hostname text NOT NULL,
+    creation_date date DEFAULT now() NOT NULL,
+    ssl_available boolean DEFAULT false NOT NULL,
+    gmaps_api_key text,
+    default_network text NOT NULL,
+    CONSTRAINT virtual_hosts_hostname_check CHECK ((hostname <> ''::text))
+);
+
+
+--
+-- Name: conn_id; Type: DEFAULT; Schema: public; Owner: -
+--
+
+ALTER TABLE connections ALTER COLUMN conn_id SET DEFAULT nextval('connections_conn_id_seq'::regclass);
+
+
+--
+-- Name: connections_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY connections
+    ADD CONSTRAINT connections_pkey PRIMARY KEY (conn_id);
+
+
+--
+-- Name: content_available_display_areas_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_available_display_areas
+    ADD CONSTRAINT content_available_display_areas_pkey PRIMARY KEY (display_area);
+
+
+--
+-- Name: content_clickthrough_log_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_clickthrough_log
+    ADD CONSTRAINT content_clickthrough_log_pkey PRIMARY KEY (content_id, user_id, node_id, destination_url);
+
+
+--
+-- Name: content_display_location_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_available_display_pages
+    ADD CONSTRAINT content_display_location_pkey PRIMARY KEY (display_page);
+
+
+--
+-- Name: content_display_log_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_display_log
+    ADD CONSTRAINT content_display_log_pkey PRIMARY KEY (content_id, user_id, node_id);
+
+
+--
+-- Name: content_group_element_has_allowed_nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_group_element_has_allowed_nodes
+    ADD CONSTRAINT content_group_element_has_allowed_nodes_pkey PRIMARY KEY (content_group_element_id, node_id);
+
+
+--
+-- Name: content_group_element_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_group_element
+    ADD CONSTRAINT content_group_element_pkey PRIMARY KEY (content_group_element_id);
+
+
+--
+-- Name: content_group_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_group
+    ADD CONSTRAINT content_group_pkey PRIMARY KEY (content_group_id);
+
+
+--
+-- Name: content_has_owners_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_has_owners
+    ADD CONSTRAINT content_has_owners_pkey PRIMARY KEY (content_id, user_id);
+
+
+--
+-- Name: content_key_value_pairs_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_key_value_pairs
+    ADD CONSTRAINT content_key_value_pairs_pkey PRIMARY KEY (content_id, "key");
+
+
+--
+-- Name: content_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content
+    ADD CONSTRAINT content_pkey PRIMARY KEY (content_id);
+
+
+--
+-- Name: content_rss_aggregator_feeds_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_rss_aggregator_feeds
+    ADD CONSTRAINT content_rss_aggregator_feeds_pkey PRIMARY KEY (content_id, url);
+
+
+--
+-- Name: content_rss_aggregator_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_rss_aggregator
+    ADD CONSTRAINT content_rss_aggregator_pkey PRIMARY KEY (content_id);
+
+
+--
+-- Name: content_shoutbox_messages_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_shoutbox_messages
+    ADD CONSTRAINT content_shoutbox_messages_pkey PRIMARY KEY (message_content_id);
+
+
+--
+-- Name: content_type_filters_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_type_filters
+    ADD CONSTRAINT content_type_filters_pkey PRIMARY KEY (content_type_filter_id);
+
+
+--
+-- Name: files_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_file
+    ADD CONSTRAINT files_pkey PRIMARY KEY (files_id);
+
+
+--
+-- Name: flickr_photostream_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_flickr_photostream
+    ADD CONSTRAINT flickr_photostream_pkey PRIMARY KEY (flickr_photostream_id);
+
+
+--
+-- Name: iframes_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_iframe
+    ADD CONSTRAINT iframes_pkey PRIMARY KEY (iframes_id);
+
+
+--
+-- Name: langstring_entries_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_langstring_entries
+    ADD CONSTRAINT langstring_entries_pkey PRIMARY KEY (langstring_entries_id);
+
+
+--
+-- Name: locales_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY locales
+    ADD CONSTRAINT locales_pkey PRIMARY KEY (locales_id);
+
+
+--
+-- Name: network_has_content_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY network_has_content
+    ADD CONSTRAINT network_has_content_pkey PRIMARY KEY (network_id, content_id);
+
+
+--
+-- Name: network_has_profile_templates_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY network_has_profile_templates
+    ADD CONSTRAINT network_has_profile_templates_pkey PRIMARY KEY (network_id, profile_template_id);
+
+
+--
+-- Name: network_stakeholders_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY network_stakeholders
+    ADD CONSTRAINT network_stakeholders_pkey PRIMARY KEY (user_id, role_id, object_id);
+
+
+--
+-- Name: networks_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY networks
+    ADD CONSTRAINT networks_pkey PRIMARY KEY (network_id);
+
+
+--
+-- Name: node_deployment_status_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY node_deployment_status
+    ADD CONSTRAINT node_deployment_status_pkey PRIMARY KEY (node_deployment_status);
+
+
+--
+-- Name: node_has_content_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY node_has_content
+    ADD CONSTRAINT node_has_content_pkey PRIMARY KEY (node_id, content_id);
+
+
+--
+-- Name: node_stakeholders_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY node_stakeholders
+    ADD CONSTRAINT node_stakeholders_pkey PRIMARY KEY (user_id, role_id, object_id);
+
+
+--
+-- Name: nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY nodes
+    ADD CONSTRAINT nodes_pkey PRIMARY KEY (node_id);
+
+
+--
+-- Name: permissions_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY permissions
+    ADD CONSTRAINT permissions_pkey PRIMARY KEY (permission_id);
+
+
+--
+-- Name: pictures_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY content_file_image
+    ADD CONSTRAINT pictures_pkey PRIMARY KEY (pictures_id);
+
+
+--
+-- Name: profile_fields_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY profile_fields
+    ADD CONSTRAINT profile_fields_pkey PRIMARY KEY (profile_field_id);
+
+
+--
+-- Name: profile_template_fields_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY profile_template_fields
+    ADD CONSTRAINT profile_template_fields_pkey PRIMARY KEY (profile_template_field_id);
+
+
+--
+-- Name: profile_templates_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY profile_templates
+    ADD CONSTRAINT profile_templates_pkey PRIMARY KEY (profile_template_id);
+
+
+--
+-- Name: profiles_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY profiles
+    ADD CONSTRAINT profiles_pkey PRIMARY KEY (profile_id);
+
+
+--
+-- Name: role_has_permissions_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY role_has_permissions
+    ADD CONSTRAINT role_has_permissions_pkey PRIMARY KEY (role_id, permission_id);
+
+
+--
+-- Name: roles_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY roles
+    ADD CONSTRAINT roles_pkey PRIMARY KEY (role_id);
+
+
+--
+-- Name: schema_info_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY schema_info
+    ADD CONSTRAINT schema_info_pkey PRIMARY KEY (tag);
+
+
+--
+-- Name: server_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY server
+    ADD CONSTRAINT server_pkey PRIMARY KEY (server_id);
+
+
+--
+-- Name: server_stakeholders_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY server_stakeholders
+    ADD CONSTRAINT server_stakeholders_pkey PRIMARY KEY (user_id, role_id, object_id);
+
+
+--
+-- Name: stakeholder_types_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY stakeholder_types
+    ADD CONSTRAINT stakeholder_types_pkey PRIMARY KEY (stakeholder_type_id);
+
+
+--
+-- Name: stakeholders_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY stakeholders
+    ADD CONSTRAINT stakeholders_pkey PRIMARY KEY (user_id, role_id, object_id);
+
+
+--
+-- Name: token_lots_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY token_lots
+    ADD CONSTRAINT token_lots_pkey PRIMARY KEY (token_lot_id);
+
+
+--
+-- Name: token_status_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY token_status
+    ADD CONSTRAINT token_status_pkey PRIMARY KEY (token_status);
+
+
+--
+-- Name: token_templates_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY token_templates
+    ADD CONSTRAINT token_templates_pkey PRIMARY KEY (token_template_id);
+
+
+--
+-- Name: tokens_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY tokens
+    ADD CONSTRAINT tokens_pkey PRIMARY KEY (token_id);
+
+
+--
+-- Name: tokens_template_valid_nodes_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY tokens_template_valid_nodes
+    ADD CONSTRAINT tokens_template_valid_nodes_pkey PRIMARY KEY (token_template_id, token_valid_at_node);
+
+
+--
+-- Name: user_has_content_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY user_has_content
+    ADD CONSTRAINT user_has_content_pkey PRIMARY KEY (user_id, content_id);
+
+
+--
+-- Name: user_has_profiles_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY user_has_profiles
+    ADD CONSTRAINT user_has_profiles_pkey PRIMARY KEY (user_id, profile_id);
+
+
+--
+-- Name: users_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY users
+    ADD CONSTRAINT users_pkey PRIMARY KEY (user_id);
+
+
+--
+-- Name: venue_types_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY venue_types
+    ADD CONSTRAINT venue_types_pkey PRIMARY KEY (venue_type);
+
+
+--
+-- Name: virtual_hosts_hostname_key; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY virtual_hosts
+    ADD CONSTRAINT virtual_hosts_hostname_key UNIQUE (hostname);
+
+
+--
+-- Name: virtual_hosts_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: 
+--
+
+ALTER TABLE ONLY virtual_hosts
+    ADD CONSTRAINT virtual_hosts_pkey PRIMARY KEY (virtual_host_id);
+
+
+--
+-- Name: idx_connections_node_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_connections_node_id ON connections USING btree (node_id);
+
+
+--
+-- Name: idx_connections_timestamp_in; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_connections_timestamp_in ON connections USING btree (timestamp_in);
+
+
+--
+-- Name: idx_connections_user_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_connections_user_id ON connections USING btree (user_id);
+
+
+--
+-- Name: idx_connections_user_mac; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_connections_user_mac ON connections USING btree (user_mac);
+
+
+--
+-- Name: idx_content_display_log; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_content_display_log ON content_display_log USING btree (last_display_timestamp);
+
+
+--
+-- Name: idx_content_group_element_content_group_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_content_group_element_content_group_id ON content_group_element USING btree (content_group_id);
+
+
+--
+-- Name: idx_content_group_element_valid_from_timestamp; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_content_group_element_valid_from_timestamp ON content_group_element USING btree (valid_from_timestamp);
+
+
+--
+-- Name: idx_content_group_element_valid_until_timestamp; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_content_group_element_valid_until_timestamp ON content_group_element USING btree (valid_until_timestamp);
+
+
+--
+-- Name: idx_gw_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE UNIQUE INDEX idx_gw_id ON nodes USING btree (gw_id);
+
+
+--
+-- Name: idx_nodes_node_deployment_status; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_nodes_node_deployment_status ON nodes USING btree (node_deployment_status);
+
+
+--
+-- Name: idx_token; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_token ON connections USING btree (token_id);
+
+
+--
+-- Name: idx_token_status; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_token_status ON tokens USING btree (token_status);
+
+
+--
+-- Name: idx_unique_username_and_account_origin; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE UNIQUE INDEX idx_unique_username_and_account_origin ON users USING btree (username, account_origin);
+
+
+--
+-- Name: idx_users_topen_id_url; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX idx_users_topen_id_url ON users USING btree (open_id_url);
+
+
+--
+-- Name: profile_template_fields_semantic_id; Type: INDEX; Schema: public; Owner: -; Tablespace: 
+--
+
+CREATE INDEX profile_template_fields_semantic_id ON profile_template_fields USING btree (semantic_id);
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY users
+    ADD CONSTRAINT "$1" FOREIGN KEY (prefered_locale) REFERENCES locales(locales_id) ON UPDATE CASCADE ON DELETE SET NULL;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content
+    ADD CONSTRAINT "$1" FOREIGN KEY (title) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_has_owners
+    ADD CONSTRAINT "$1" FOREIGN KEY (content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_langstring_entries
+    ADD CONSTRAINT "$1" FOREIGN KEY (langstrings_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_group
+    ADD CONSTRAINT "$1" FOREIGN KEY (content_group_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_group_element
+    ADD CONSTRAINT "$1" FOREIGN KEY (content_group_element_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_group_element_has_allowed_nodes
+    ADD CONSTRAINT "$1" FOREIGN KEY (content_group_element_id) REFERENCES content_group_element(content_group_element_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY user_has_content
+    ADD CONSTRAINT "$1" FOREIGN KEY (user_id) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY node_has_content
+    ADD CONSTRAINT "$1" FOREIGN KEY (node_id) REFERENCES nodes(node_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY network_has_content
+    ADD CONSTRAINT "$1" FOREIGN KEY (content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_display_log
+    ADD CONSTRAINT "$1" FOREIGN KEY (user_id) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_file_image
+    ADD CONSTRAINT "$1" FOREIGN KEY (pictures_id) REFERENCES content_file(files_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_iframe
+    ADD CONSTRAINT "$1" FOREIGN KEY (iframes_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_rss_aggregator
+    ADD CONSTRAINT "$1" FOREIGN KEY (content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_rss_aggregator_feeds
+    ADD CONSTRAINT "$1" FOREIGN KEY (content_id) REFERENCES content_rss_aggregator(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $2; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content
+    ADD CONSTRAINT "$2" FOREIGN KEY (description) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: $2; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_has_owners
+    ADD CONSTRAINT "$2" FOREIGN KEY (user_id) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $2; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_langstring_entries
+    ADD CONSTRAINT "$2" FOREIGN KEY (locales_id) REFERENCES locales(locales_id) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: $2; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_group_element
+    ADD CONSTRAINT "$2" FOREIGN KEY (content_group_id) REFERENCES content_group(content_group_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $2; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_group_element_has_allowed_nodes
+    ADD CONSTRAINT "$2" FOREIGN KEY (node_id) REFERENCES nodes(node_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $2; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY user_has_content
+    ADD CONSTRAINT "$2" FOREIGN KEY (content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $2; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY node_has_content
+    ADD CONSTRAINT "$2" FOREIGN KEY (content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $2; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_display_log
+    ADD CONSTRAINT "$2" FOREIGN KEY (content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $2; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY network_has_content
+    ADD CONSTRAINT "$2" FOREIGN KEY (display_area) REFERENCES content_available_display_areas(display_area) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $3; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content
+    ADD CONSTRAINT "$3" FOREIGN KEY (project_info) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: $3; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_group_element
+    ADD CONSTRAINT "$3" FOREIGN KEY (displayed_content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $3; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_display_log
+    ADD CONSTRAINT "$3" FOREIGN KEY (node_id) REFERENCES nodes(node_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $3; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY node_has_content
+    ADD CONSTRAINT "$3" FOREIGN KEY (display_area) REFERENCES content_available_display_areas(display_area) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: $5; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content
+    ADD CONSTRAINT "$5" FOREIGN KEY (long_description) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: account_origin_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY users
+    ADD CONSTRAINT account_origin_fkey FOREIGN KEY (account_origin) REFERENCES networks(network_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: content_clickthrough_log_content_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_clickthrough_log
+    ADD CONSTRAINT content_clickthrough_log_content_id_fkey FOREIGN KEY (content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: content_clickthrough_log_node_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_clickthrough_log
+    ADD CONSTRAINT content_clickthrough_log_node_id_fkey FOREIGN KEY (node_id) REFERENCES nodes(node_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: content_clickthrough_log_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_clickthrough_log
+    ADD CONSTRAINT content_clickthrough_log_user_id_fkey FOREIGN KEY (user_id) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: content_key_value_pairs_content_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_key_value_pairs
+    ADD CONSTRAINT content_key_value_pairs_content_id_fkey FOREIGN KEY (content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: content_shoutbox_messages_author_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_shoutbox_messages
+    ADD CONSTRAINT content_shoutbox_messages_author_user_id_fkey FOREIGN KEY (author_user_id) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: content_shoutbox_messages_message_content_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_shoutbox_messages
+    ADD CONSTRAINT content_shoutbox_messages_message_content_id_fkey FOREIGN KEY (message_content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: content_shoutbox_messages_origin_node_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_shoutbox_messages
+    ADD CONSTRAINT content_shoutbox_messages_origin_node_id_fkey FOREIGN KEY (origin_node_id) REFERENCES nodes(node_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: content_shoutbox_messages_shoutbox_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_shoutbox_messages
+    ADD CONSTRAINT content_shoutbox_messages_shoutbox_id_fkey FOREIGN KEY (shoutbox_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: display_location_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY network_has_content
+    ADD CONSTRAINT display_location_fkey FOREIGN KEY (display_page) REFERENCES content_available_display_pages(display_page) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: display_location_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY node_has_content
+    ADD CONSTRAINT display_location_fkey FOREIGN KEY (display_page) REFERENCES content_available_display_pages(display_page) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: fk_network; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY network_stakeholders
+    ADD CONSTRAINT fk_network FOREIGN KEY (object_id) REFERENCES networks(network_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: fk_network; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY server_stakeholders
+    ADD CONSTRAINT fk_network FOREIGN KEY (object_id) REFERENCES server(server_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: fk_node_deployment_status; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY nodes
+    ADD CONSTRAINT fk_node_deployment_status FOREIGN KEY (node_deployment_status) REFERENCES node_deployment_status(node_deployment_status) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: fk_nodes; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY connections
+    ADD CONSTRAINT fk_nodes FOREIGN KEY (node_id) REFERENCES nodes(node_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: fk_nodes; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY node_stakeholders
+    ADD CONSTRAINT fk_nodes FOREIGN KEY (object_id) REFERENCES nodes(node_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: fk_roles; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY network_stakeholders
+    ADD CONSTRAINT fk_roles FOREIGN KEY (role_id) REFERENCES roles(role_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: fk_roles; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY node_stakeholders
+    ADD CONSTRAINT fk_roles FOREIGN KEY (role_id) REFERENCES roles(role_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: fk_roles; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY server_stakeholders
+    ADD CONSTRAINT fk_roles FOREIGN KEY (role_id) REFERENCES roles(role_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: fk_tokens; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY connections
+    ADD CONSTRAINT fk_tokens FOREIGN KEY (token_id) REFERENCES tokens(token_id) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: fk_users; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY connections
+    ADD CONSTRAINT fk_users FOREIGN KEY (user_id) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: fk_venue_types; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY nodes
+    ADD CONSTRAINT fk_venue_types FOREIGN KEY (venue_type) REFERENCES venue_types(venue_type) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: flickr_photostream_content_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY content_flickr_photostream
+    ADD CONSTRAINT flickr_photostream_content_fkey FOREIGN KEY (flickr_photostream_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: network_has_profile_templates_network_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY network_has_profile_templates
+    ADD CONSTRAINT network_has_profile_templates_network_id_fkey FOREIGN KEY (network_id) REFERENCES networks(network_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: network_has_profile_templates_profile_template_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY network_has_profile_templates
+    ADD CONSTRAINT network_has_profile_templates_profile_template_id_fkey FOREIGN KEY (profile_template_id) REFERENCES profile_templates(profile_template_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: network_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY network_has_content
+    ADD CONSTRAINT network_id_fkey FOREIGN KEY (network_id) REFERENCES networks(network_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: network_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY nodes
+    ADD CONSTRAINT network_id_fkey FOREIGN KEY (network_id) REFERENCES networks(network_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: permissions_stakeholder_type_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY permissions
+    ADD CONSTRAINT permissions_stakeholder_type_id_fkey FOREIGN KEY (stakeholder_type_id) REFERENCES stakeholder_types(stakeholder_type_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: profile_fields_content_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY profile_fields
+    ADD CONSTRAINT profile_fields_content_id_fkey FOREIGN KEY (content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: profile_fields_profile_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY profile_fields
+    ADD CONSTRAINT profile_fields_profile_id_fkey FOREIGN KEY (profile_id) REFERENCES profiles(profile_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: profile_fields_profile_template_field_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY profile_fields
+    ADD CONSTRAINT profile_fields_profile_template_field_id_fkey FOREIGN KEY (profile_template_field_id) REFERENCES profile_template_fields(profile_template_field_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: profile_template_fields_admin_label_content_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY profile_template_fields
+    ADD CONSTRAINT profile_template_fields_admin_label_content_id_fkey FOREIGN KEY (admin_label_content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: profile_template_fields_content_type_filter_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY profile_template_fields
+    ADD CONSTRAINT profile_template_fields_content_type_filter_id_fkey FOREIGN KEY (content_type_filter_id) REFERENCES content_type_filters(content_type_filter_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: profile_template_fields_display_label_content_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY profile_template_fields
+    ADD CONSTRAINT profile_template_fields_display_label_content_id_fkey FOREIGN KEY (display_label_content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: profile_template_fields_profile_template_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY profile_template_fields
+    ADD CONSTRAINT profile_template_fields_profile_template_id_fkey FOREIGN KEY (profile_template_id) REFERENCES profile_templates(profile_template_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: profiles_profile_template_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY profiles
+    ADD CONSTRAINT profiles_profile_template_id_fkey FOREIGN KEY (profile_template_id) REFERENCES profile_templates(profile_template_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: role_has_permissions_permission_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY role_has_permissions
+    ADD CONSTRAINT role_has_permissions_permission_id_fkey FOREIGN KEY (permission_id) REFERENCES permissions(permission_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: role_has_permissions_role_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY role_has_permissions
+    ADD CONSTRAINT role_has_permissions_role_id_fkey FOREIGN KEY (role_id) REFERENCES roles(role_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: roles_role_description_content_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY roles
+    ADD CONSTRAINT roles_role_description_content_id_fkey FOREIGN KEY (role_description_content_id) REFERENCES content(content_id) ON UPDATE CASCADE ON DELETE SET NULL;
+
+
+--
+-- Name: roles_stakeholder_type_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY roles
+    ADD CONSTRAINT roles_stakeholder_type_id_fkey FOREIGN KEY (stakeholder_type_id) REFERENCES stakeholder_types(stakeholder_type_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: server_default_virtual_host_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY server
+    ADD CONSTRAINT server_default_virtual_host_fkey FOREIGN KEY (default_virtual_host) REFERENCES virtual_hosts(virtual_host_id) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: stakeholders_role_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY stakeholders
+    ADD CONSTRAINT stakeholders_role_id_fkey FOREIGN KEY (role_id) REFERENCES roles(role_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: stakeholders_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY stakeholders
+    ADD CONSTRAINT stakeholders_user_id_fkey FOREIGN KEY (user_id) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: token_templates_token_template_network_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY token_templates
+    ADD CONSTRAINT token_templates_token_template_network_fkey FOREIGN KEY (token_template_network) REFERENCES networks(network_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: tokens_template_valid_nodes_token_template_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY tokens_template_valid_nodes
+    ADD CONSTRAINT tokens_template_valid_nodes_token_template_id_fkey FOREIGN KEY (token_template_id) REFERENCES token_templates(token_template_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: tokens_template_valid_nodes_token_valid_at_node_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY tokens_template_valid_nodes
+    ADD CONSTRAINT tokens_template_valid_nodes_token_valid_at_node_fkey FOREIGN KEY (token_valid_at_node) REFERENCES nodes(node_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: tokens_token_issuer_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY tokens
+    ADD CONSTRAINT tokens_token_issuer_fkey FOREIGN KEY (token_issuer) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: tokens_token_lot_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY tokens
+    ADD CONSTRAINT tokens_token_lot_id_fkey FOREIGN KEY (token_lot_id) REFERENCES token_lots(token_lot_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: tokens_token_owner_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY tokens
+    ADD CONSTRAINT tokens_token_owner_fkey FOREIGN KEY (token_owner) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: tokens_token_status_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY tokens
+    ADD CONSTRAINT tokens_token_status_fkey FOREIGN KEY (token_status) REFERENCES token_status(token_status) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- Name: tokens_token_template_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY tokens
+    ADD CONSTRAINT tokens_token_template_id_fkey FOREIGN KEY (token_template_id) REFERENCES token_templates(token_template_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: user_has_profiles_profile_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY user_has_profiles
+    ADD CONSTRAINT user_has_profiles_profile_id_fkey FOREIGN KEY (profile_id) REFERENCES profiles(profile_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: user_has_profiles_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY user_has_profiles
+    ADD CONSTRAINT user_has_profiles_user_id_fkey FOREIGN KEY (user_id) REFERENCES users(user_id) ON UPDATE CASCADE ON DELETE CASCADE;
+
+
+--
+-- Name: virtual_hosts_default_network_fkey; Type: FK CONSTRAINT; Schema: public; Owner: -
+--
+
+ALTER TABLE ONLY virtual_hosts
+    ADD CONSTRAINT virtual_hosts_default_network_fkey FOREIGN KEY (default_network) REFERENCES networks(network_id) ON UPDATE CASCADE ON DELETE RESTRICT;
+
+
+--
+-- PostgreSQL database dump complete
+--
+
Index: /branches/newtoken/doc/createDoc.sh
===================================================================
--- /branches/newtoken/doc/createDoc.sh	(revision 994)
+++ /branches/newtoken/doc/createDoc.sh	(revision 994)
@@ -0,0 +1,16 @@
+#!/bin/sh
+#
+# Creates the WiFiDog documentation
+# =================================
+#
+# Requirements to create the documentation:
+# - PEAR::PhpDocumentor version 1.3+ must be installed
+# - the stable version doesn't support PHP5 code
+# - install PEAR::PhpDocumentor version 1.3 this way:
+#   pear install PhpDocumentor-beta
+# - memory_limit flag in php.ini must be larger than 8 MB (at least 16 MB recommended)
+#
+# On systems running newer version of PHP (5.1.x) you'll need to use the CVS version
+# of PhpDocumentor, currently!
+
+phpdoc -dh off -pp on -j off -p off -s on -ti "WiFiDog Documentation" -dn WiFiDogAuthServer -po WiFiDogAuthServer -o  HTML:frames:default -t . -d ../wifidog,. -i *.html,*.gif,*.jpg,*.png,*.css,*.js,*.sh,*.mo,*.po,*.pl,*.txt,*.xml,*.tpl,local.config.php,*/FCKeditor/*,*/magpie/*,*/smarty/*,*/local_content/*,*/locale/*,*/tmp/*
Index: /branches/newtoken/doc/tutorials/WiFiDogAuthServer.pkg.ini
===================================================================
--- /branches/newtoken/doc/tutorials/WiFiDogAuthServer.pkg.ini	(revision 913)
+++ /branches/newtoken/doc/tutorials/WiFiDogAuthServer.pkg.ini	(revision 913)
@@ -0,0 +1,2 @@
+[Linked Tutorials]
+manual
Index: /branches/newtoken/doc/tutorials/WiFiDogAuthServer/WiFiDogAuthServer.pkg
===================================================================
--- /branches/newtoken/doc/tutorials/WiFiDogAuthServer/WiFiDogAuthServer.pkg	(revision 1328)
+++ /branches/newtoken/doc/tutorials/WiFiDogAuthServer/WiFiDogAuthServer.pkg	(revision 1328)
@@ -0,0 +1,29 @@
+<refentry id="{@id}">
+ <refnamediv>
+  <refname>{@link http://www.wifidog.org/ WiFiDog Authentication Server 1.0.0m2} Manual</refname>
+  <refpurpose>Introduction to WiFiDog Authentication Server</refpurpose>
+ </refnamediv>
+ <refsynopsisdiv>
+  <para>WiFiDog Athentication Server documentation authors</para>
+  <authorgroup>
+   <author>
+    Max Horvath
+    <authorblurb>
+     {@link mailto:max.horvath@freenet.de max.horvath@freenet.de}
+    </authorblurb>
+   </author>
+  </authorgroup>
+ </refsynopsisdiv>
+ <refsect1 id="{@id intro}">
+  <refsect2 id="{@id documentation}">
+   <title>Documentation</title>
+   <para>The WiFiDog project is a complete and embeddable captive portal solution for wireless community groups or individuals who wish to open a free Hotspot while still preventing abuse of their Internet connection.</para>
+   <para>The WiFiDog project was started by {@link http://www.ilesansfil.org/ Ile sans fil} and is currently {@link http://auth.ilesansfil.org/ in production}. Existing captive portal solutions were either almost impossible to embed ({@link http://lists.nocat.net/mailman/listinfo NoCat}, which relies on Perl, GnuPG , OpenSSL ), or only designed to display disclaimers with no access control at all (NoCatSplash and others). WiFiDog is designed to have optional centralized access control, full bandwidth accounting, node heartbeating and local content specific to each hotspot. It does not rely on a JavaScript window, so it works with any platform with a web browser, including PDAs and cellphones. It is developed in C to make it easy to include in embedded systems (It has been designed for the {@link http://www.linksys.com/servlet/Satellite?childpagename=US%2FLayout&packedargs=c%3DL_Product_C2%26cid%3D1127782957298&pagename=Linksys%2FCommon%2FVisitorWrapper Linksys WRT54G}, but runs on any recent Linux platform). A typical install only takes 30kb on i386, and a fully functionnal install could be made in under 10 kb if necessary.</para>
+  </refsect2>
+  <refsect2 id="{@id bug-reporting}">
+   <title>Bugs and Features (guaranteed to be separate entities...)</title>
+   <para>If you think you've found a bug in WiFiDog Authentication Server, please check our bug tracker online at {@link http://dev.wifidog.org/report http://dev.wifidog.org/report}, the bug may have already been fixed.  If you don't find it, please submit a bug, and we will attempt to fix it as quickly as possible.</para>
+   <para>If there is a feature you're dying to have, check our feature tracker at {@link http://dev.wifidog.org/report http://dev.wifidog.org/report}. Please don't hesitate to look right at the source code and help apply your feature.  We love that, and can easily give you access to the Subversion server.</para>
+  </refsect2>
+ </refsect1>
+</refentry>
Index: /branches/newtoken/INSTALL
===================================================================
--- /branches/newtoken/INSTALL	(revision 1176)
+++ /branches/newtoken/INSTALL	(revision 1176)
@@ -0,0 +1,102 @@
+PREREQUISITES
+=============
+
+- PHP 5.x (http://www.php.net)
+- PHP's mbstring extention installed
+- PHP's php-xml extention installed (Required if RSS support is on)
+- PHP's dom extension installed (Required if you want to export the list of
+  Hotspots as a RSS feed)
+- PHP's curl extension installed (Required if you want to use Phlickr)
+- PHP compiled with gettext support (Will be autodetected if unavailable, but
+  you will loose internationalization)
+- PostgreSQL 7.4+ (http://www.posgresql.org/)
+- Smarty template engine (http://smarty.php.net/)
+- Magpierss (http://magpierss.sourceforge.net/) (Required for RSS support. RSS
+  support must be manually disabled if you do not install it)
+- FCKeditor 2.3+ (http://www.fckeditor.net/) (Required if you want to edit
+  content with a HTML text editor aka WYSIWYG editor)
+- FPDF 1.53+ (http://www.fpdf.org/) (Required if you want to export the node
+  list into a PDF file)
+- PEAR (if you need RADIUS auth support, see below)
+- Phlickr 0.2.5+ installed as a PEAR package (http://phlickr.sourceforge.net/)
+  (required if you want to use the content class accessing Flickr photo albums)
+- PEAR packages radius, Auth_RADIUS and Crypt_CHAP (required if you need RADIUS
+  support)
+- PEAR packages Image_Graph-alpha Image_Canvas-alpha Image_Color (required if
+  you want to generate graphical statistics)
+- PEAR package Cache_Lite (required if you want to use WiFiDogs caching
+  capabilities)
+- PEAR package HTML_Safe-beta (required if you want to ensure that HTML enabled
+  input in various content classes will be filtered)
+
+INSTALLATION
+============
+
+Open with your browser the following URL:
+http://www.domain.com/wifidogPATH/install.php
+
+Replace www.domain.com by your domain and wifidogPATH by the right path.
+
+install.php will validate, install, create and configure all the stuff you need
+to have a working auth-server.
+
+WIKI
+====
+
+More detailed installation instructions can be found on our homepage at:
+http://www.wifidog.org/
+
+RADIUS AUTHENTICATION SUPPORT SECTION
+=====================================
+
+The following section only needs to be followed if you want RADIUS support.
+
+You'll need to install PEAR and several PEAR and PHP modules.  The procedure
+below is for PHP 5.0.2 under Mandrake 10.1. You WILL need to adapt it under
+other distributions.
+
+All necessary RPM packages are available in the contrib urpmi source. If you
+don't have a contrib source already, you can add one with the command:
+
+urpmi.addmedia contrib http://gulus.usherbrooke.ca/pub/distro/Mandrakelinux/official/10.1/i586/media/contrib with media_info/hdlist.cz
+
+You'll need the following packages:
+libphp5-commons
+php5-cli
+php5-devel
+php5-xml
+php5-xmlrpc ---> depends on libxmlrpc
+php5-mhash
+php5-mcrypt
+
+The following command should install them all and resolve dependencies:
+
+urpmi php5-cli php5-devel php5-xml php5-xmlrpc php5-mhash php5-mcrypt
+
+To install PEAR, run this in a shell:
+"lynx -source http://go-pear.org | php5"
+
+WARNING:
+--------
+You must have PHP5 CLI with php5ize installed
+
+NB: By default Mandrake renames the PHP binaries with a 5 suffix. You should
+    create symbolic links so that you can use standard scripts:
+
+    ln -s /usr/bin/php5 /usr/bin/php
+    ln -s /usr/bin/php5ize /usr/bin/phpize
+
+Now you'll need a few packages, you can let PEAR install them automatically:
+
+pear install radius Auth_RADIUS Crypt_CHAP
+
+BACKUP AND RESTORE
+==================
+
+To backup:
+	/sql/backup_database.sh wifidog_backup.sql
+
+To restore from a backup:
+	/sql/restore_database.sh wifidog_backup.sql
+
+Enjoy!
Index: /branches/newtoken/CHANGELOG
===================================================================
--- /branches/newtoken/CHANGELOG	(revision 1436)
+++ /branches/newtoken/CHANGELOG	(revision 1436)
@@ -0,0 +1,2893 @@
+# $Id$
+
+2009-12-17
+ * Code refactoring: Network, NodeGroup, Node inherit from HotspotGraphElement (#677)
+
+2009-12-08
+ * Added the concept of node group and hierarchy (in a not too clean way to start with, I will refactor the code before adding new functionalities to nodes and groups) (#246)
+ * Login and signup and logout script now receive the mac address as parameter (#675)
+ * Initial abuse control verification now made with the mac address (#676)
+ 
+2009-10-30 Geneviève Bastien <gbastien@versatic.net>
+  * Network can now be set as case insensitive.  Emails are now never case sensitive and usernames' case sensitivity is consistent with network settings (#616)
+  * Yet again some tab alignment
+  
+2009-10-02 Geneviève Bastien <gbastien@versatic.net>
+  * Email address format now corresponds to newer standard RFC2822 (#624)
+  * Corrected typos and tab alignment
+
+2009-09-18 Geneviève Bastien <gbastien@versatic.net>
+  * Fixed #502 (Note: this fix works only if all gateways have config value SSLAvailable Yes, or else the server determines that even though the connection originated from HTTP by those gateways, it should use SSL and in this case, the port is not right.  Should need a way to specify port in Wifidog Virtual Hosts or get the apache port)
+  * Some realignment of tabs while documenting
+
+2009-08-20 Genevieve Bastien <gbastien@versatic.net>
+  * Updated dependencies  #599
+  * Now gets the temp dir of the OS instead of hardcoding the /tmp dir in the install script #588
+
+2009-07-26 Robin Jones
+	* Addded New Geocoders Yahoo and Google.
+	* Geocoder now defaults to google if no country specific Geocoder is found (in future, this will be made selectable by network)
+	* Fixed Postcode search on Find Hotspot Map #436
+	* Added search for user by email closes #417
+	* Added validation to networkID to stop database errors, closes #458
+	
+
+2009-07-10 Benoit Grégoire <benoitg@coeus.ca>
+	* Fix bug editing user profiles introduced in [1339].
+
+2009-07-03 Benoit Grégoire <benoitg@coeus.ca>
+	* Refactor signup.php.  The code flow is still annoyingly unclear and complex, but the file is shorter and hopefully easier to debug (and hopefully fixes #593)
+
+2009-06-26 Benoit Grégoire <benoitg@coeus.ca>
+	* Updated greek translation by bill@e-texnologia.gr and strzol@gmail.com, still needs some work.
+	
+2009-06-25 Benoit Grégoire <benoitg@coeus.ca>
+	* Fix #559
+	* Fix #574
+	* Fix bug introduced in 2009-06-23 patch for signing up new users.
+	
+2009-06-23 Benoit Grégoire <benoitg@coeus.ca>
+	* Commit another slightly modified patch contributed by Zap Sherbrooke:  Allow generating publicly accessible statistics for the various nodes.  Enabled node per node.  Note that a cron must be setup for those stats to actually be generated.
+
+2009-06-09 Benoit Grégoire <benoitg@coeus.ca>
+	* Commit slightly modified patch contributed by Zap Sherbrooke:  Allow using the multiple account feature while keeping a common userbase.  Enabled in server configuration.
+
+2008-10-13 Robin Jones
+	* fixed #498 curley brace missing in portal.php
+
+2008-10-02 Robin Jones
+	* Support for redirecting to the users original URL instead of portal
+
+2008-09-23 Robin Jones
+	* Oops, forgot to include new style sheet into the previous commit.
+	* Made Login template easier to edit using CSS and added example to NetworkFusion theme pack, This closes #343 .
+
+2008-08-31 Robin Jones
+	* Created ability to have a themes setting file to define commonly asked for features.
+	* Created a new "Network Theme Pack" to show off the settings file and improve the user experience.
+
+2008-08-31 Robin Jones
+	* Updated some table row elements to support Odd/Even CSS. This also closes #382
+
+2008-08-28 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix #492
+
+2008-08-13 Robin Jones
+	* Fixed dependency change for Smarty reported by cristian@lalineapeluda.com
+
+2008-08-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* Updated Spanish translation by jlms77@gmail.com
+
+2008-07-13 Benoit Grégoire  <benoitg@coeus.ca>
+	* Add new Catalan translation by Christian Lorenzo cristian@lalineapeluda.com
+	* Rebuild transaltions and initial schema.
+
+2008-06-12 Benoit Grégoire  <benoitg@coeus.ca>
+	* Add NODE_PERM_BYPASS_DYNAMIC_ABUSE_CONTROL permission.  User is allowed to exceed dynamic abuse control limits at this node.
+	* Stakeholder selector UI tweaks
+
+2008-06-12 Benoit Grégoire  <benoitg@coeus.ca>
+	* Use bigint for dynamic abuse control byte values
+	* UIAllowedBandwidth:  Format values in a human-readable way
+
+2008-06-10 Benoit Grégoire  <benoitg@coeus.ca>
+	* Authenticator.php:  Fix SQL error closing connections.
+	* auth/index.php:  Probably fix the "Access denied" message when user click twice problem that resurfaced.
+	* At long last, implement operational Dynamic abuse control (out of the embryo of the token architecture)!  Configurable in Network preferences if you have the permissions.  Unlike static limits, this is a sliding window (typically a month) during which user have a bandwidth and connection duration limit, per node, and totalled throughout the network.
+	* UIAllowedBandwidth:  New, simplistic content type to show the user how much of his allocation he consumed.  Off course, the goal is actually to make it into a pretty graph....
+
+2008-06-10 Benoit Grégoire  <benoitg@coeus.ca>
+	* Begin implementing http://dev.wifidog.org/wiki/doc/developer/TokenArchitecture.  This is a first step:  SQL schema changes, and adapt the current functionnality to the new schema to have a baseline.  Everything should work as before, please notify me if you notice anything strange...
+
+2008-04-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fixed dependencies on simplepie.  Simplepie removed a stable branch from their SVN.  Why on earth would one do that!?!?
+	* For an existing install, you may want to remove the feedpressreview and simplepie directories and re-install them from the Dependencies page under the "Server" menu.  
+	
+2008-04-02 Robin Jones
+        * Fixed #325 password validation
+        * Added a new banner for the install script
+
+2008-04-01 Benoit Grégoire  <benoitg@coeus.ca>
+	* Apply patch from dc.ml@oxys.net to allow commas in authentication parameter strings.  This is sometimes necessary for LDAP, and fixes #342
+
+2008-03-31 Robin Jones
+        * Minor install script improvements, including making changelog accessible and colour in the permissions tables
+
+2008-03-21 Benoit Grégoire  <benoitg@coeus.ca>
+	* generic_object_admin.php (and others):  Fix bug reported by  Jerry DeFoe (ProfileTemplates couldn't be created) + some UI tweaks.
+	
+2008-03-21 Benoit Grégoire  <benoitg@coeus.ca>
+	* hotspot_status.php:  Fix bug in XSLT procesing.
+
+2008-03-15 Benoit Grégoire  <benoitg@coeus.ca>
+	* Content.php:  Eliminate the generation of a large number of useless SQL queries when getting Content metadata.
+	* User.php: Do the same thing for getCurrentUser()
+	
+2008-03-12 Benoit Grégoire  <benoitg@coeus.ca>
+    * Major performance improvement in content manager for content groups picking items with limits on how many times they can be displayed.
+	* Improve performance of Content::getLastDisplayedTimestamp(), will mostly show when using the RSS aggregator, especially when postgres has little memory
+	
+2008-03-06 Benoit Grégoire  <benoitg@coeus.ca>
+    * Fix #438.  Not Node::getNumOnlineUsers() will count every users connected (once for every account), except the splash-only user + every mac adresses connecting as the splash-only user.
+	* Network::getNumOnlineUsers() use the same counting method
+	* Network.php:  Reformat variables names according to coding standards.
+	
+2008-03-02 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix #431: Don't even display the Signup button if none of the networks allow signing up.  Allow Authenticators to define the signup URL themselves.
+
+2008-02-27 Damien Raude-Morvan <drazzib@drazzib.com>
+    * Update french translation
+
+2008-02-12 Max Horváth  <max.horvath@freenet.de>
+    * Fixed issue in install.php when POSIX is unavailable to PHP
+    * Fixed package name of Cache_Lite in Dependency class
+    * Updated mail address of Max Horváth
+
+2008-01-16 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix #42 (Node cannot be renamed)
+
+2008-01-16 Benoit Grégoire  <benoitg@coeus.ca>
+	* Temporary patch for problem introduced in [1319]:  the menu did not display where main_area_top is empty (which is actually most places in the admin interface).  This shouldn't have been done in the first place, as it doesn't fix the problem the menu cause of theming, and worse causes people to edit MainUI_Display.tpl, causing such errors.  A network config option should have been provided to allow selecting in what area the menu goes.
+
+2008-01-13 Benoit Grégoire  <benoitg@coeus.ca>
+	* Permission.php:  Fix typo that caused "Tried to check if an object of class Server has a permission of type Network" errors.  Changed the id from NETWORK_PERM_ADD_NEW_NODE to NETWORK_PERM_ADD_NODE so it will auto-delete the corrupted permission.
+
+2008-01-11 Benoit Grégoire  <benoitg@coeus.ca>
+	* Use the Dependency system to include PHPMailer and tweak Mail.php.  You'll need to re-run the Dpenedency stage of the install script. This allows:  Translating PHPMailer error messages, Actually having PHPMailer error messages, and displaying them properly.
+
+2008-01-09 Benoit Grégoire  <benoitg@coeus.ca>
+	* Add gettext calls, fixes #413
+
+2008-01-06 Benoit Grégoire  <benoitg@coeus.ca>
+	* Some more work on the permission system.  At long last, close #358
+
+2008-01-05 Benoit Grégoire  <benoitg@coeus.ca>
+	* French translation update from Frederic Sheedy (sheedf@gmail.com).  Closes #411
+
+2007-12-30 Benoit Grégoire  <benoitg@coeus.ca>
+	* Workaround IE6 braindeadness in the base theme.  Closes  #406.  Credit goes to Frederic Sheedy (sheedf@gmail.com)
+
+2007-12-23 Benoit Grégoire  <benoitg@coeus.ca>
+	* Node.php:  Fix bug in setCurrentNode() reported by Vacio
+	* install.php, Dependency.php:  Commit install script improvements by Robin Jones
+
+2007-11-29 Benoit Grégoire  <benoitg@coeus.ca>
+	* signup.tpl, lost_username.tpl, lost_password.tpl, resend_validation.tpl:  Move the error div near the button for coherence with the login page (and for the same reason).  In fact it was worse than the login page used to be:  the error message during signup could appear completely below the page for a user with a low resolution screeen (or big font), giving the form the apereance of doing absolutely nothing (it stumped even me as I was trying to help a user).
+
+2007-11-23 Benoit Grégoire  <benoitg@coeus.ca>
+	* UIUserList.php: Don't force it to be persistent, it prevented users from deleting it.
+
+2007-11-15 Benoit Grégoire  <benoitg@coeus.ca>
+	* Menu.php: Make individual submenus, and individual menu items CSS-targetable.
+
+2007-11-05 Benoit Grégoire  <benoitg@coeus.ca>
+	* Commit most of Robin Jones install script improvements.
+
+2007-10-22 Benoit Grégoire  <benoitg@coeus.ca>
+	* Major security fix:  Fix the authenticator for a security breach where a user could get Internet access using an empty username.  LocalUser and LDAP were definitely vulnerable, RADIUS may have been.
+
+2007-10-01 Benoit Grégoire  <benoitg@coeus.ca>
+	* Remove Array type hinting in Security.php. It's not supported in PHP < 5.1.  Fixes  #393
+
+2007-10-01 Benoit Grégoire  <benoitg@coeus.ca>
+	* Commited slightly modified patch by Robin Jones to implement #184
+
+2007-09-25 Benoit Grégoire  <benoitg@coeus.ca>
+	* Menu.php:  Fix a number of improper call time pass by reference
+
+2007-09-24 Benoit Grégoire  <benoitg@coeus.ca>
+	* locale/gensmarty.pl:  Heads up translators:  There was a bug in the regex; about 20 strings in the smarty templates were missed.
+	* Updated french translation
+
+2007-09-20 Benoit Grégoire  <benoitg@coeus.ca>
+	* install.php:  Hopefully fix #384, and remove pages unlikely to be implemented for 1.0
+
+2007-09-18 Benoit Grégoire  <benoitg@coeus.ca>
+	* portal/index.php:  Add a call to garbage_collect() to fix #367
+
+2007-09-17 Benoit Grégoire  <benoitg@coeus.ca>
+	* SmartyWifidog:  If ANY of the mandatory dependencies (not just smarty) are missing, user will be redirected to the install script
+	* Move Smarty detection and install to common framework.  Take this opportunity to move to upgrade to latest Smarty since people will have to re-run the install script anyway.
+	* Fix #381 by applying patch from leandro@texnet.it, mea-culpa, I didn't know I broke the install script.
+
+2007-09-12 Benoit Grégoire  <benoitg@coeus.ca>
+	* Scratch a few itches:  Fix the link from node admin to stats, minor CSS fixes
+
+2007-09-11 Benoit Grégoire  <benoitg@coeus.ca>
+	* VitrualHost.php: Close #373: Apply patch from leandro@texnet.it to fix mispelled table name in delete() method
+	* Close #374:  Add preliminary italian translation from leandro@texnet.it
+
+2007-09-10 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix #370:  Dropdown Javascript menus didn't retract in Internet Explorer.  My thanks to Robin Jones for at least proposing a solution to the problem, even if it didn't work in this case.  The problem turned out to be a wrong regex in the IE workaround javascript.
+
+2007-09-09 Benoit Grégoire  <benoitg@coeus.ca>
+	* Early OpenID support.  The auth server can now be used as an identity provider, with your profile page as the identity URL
+
+2007-09-08 Benoit Grégoire  <benoitg@coeus.ca>
+	* Dependencies installation:  Improve layout, add embryo of unified install sytem (currently works for tarballs).  Improve error output.
+	* Add dependencies for future OpenId support
+	* AbstractDb:  Make sure to throw an exception, avoiding a blank page when trying to access the index page on a auth server that hasn't been setup.  Patch by Mathieu Bruno.
+
+2007-09-04 Benoit Grégoire  <benoitg@coeus.ca>
+	* cron/page.php:  Improve script to output what it did.
+	* fix typo in Node::DEPRECATEDgetTechnicalOfficers(), that prevented getting the users to page in case a node is down.
+	* Delete leftover login.tpl
+	* Apply patch from leandro@texnet.it to fix #371
+
+2007-08-30 Benoit Grégoire  <benoitg@coeus.ca>
+	* install.php:  Experimental fix for #353
+
+2007-08-28 Benoit Grégoire  <benoitg@coeus.ca>
+	* install.php:  Fix bug that would manifest as a blank page at the "Checking Dependency" stage if PHP's postgres module was not installed.  Thanks to drfense for providing an account on a server where the bug occured.
+
+2007-08-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* Added vacuum_last_resort_fix_backup_restore_database.sh.  This is DANGEROUS, and should only be run when your neglected (or had problem with) your VACCUMs,
+	your database has become slow as molases, and VACUUM FULL is not an option because your db has grown too big.
+
+2007-08-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* install.php:  Fix #368: Correct the svn source for SimplePie 1.0, the 1.0b2 branch was unexpectedly renamed.
+	Note that this forces a rather disruptive change.  To update an existing install, you'll need to run the following commands:
+	cd lib/simplepie
+	svn switch http://svn.simplepie.org/simplepie/branches/1.0/
+	But this also requires a recent feedpressreview (revision 13), so you'll also need to run:
+	cd lib/feedpressreview
+	svn update
+
+2007-08-06 Benoit Grégoire  <benoitg@coeus.ca>
+	* Allow users with NETWORK_PERM_EDIT_ANY_NODE_CONFIG to edit gateway id's
+
+2007-08-05 Damien Raude-Morvan <drazzib@drazzib.com>
+	* Security.php : A permission can be acquired by a user via multiples roles, this means
+	that, for the moment, we have to use DISTINCT to check if a user had correct permission
+	(otherwise the SQL request is invalid : subrequest return more than one line).
+	* Locale.php : If the browser send Accept-Value header without any quality (i.e. q=x.y)
+	we have to use order of the locales to select between them (and don't use a rand() number).
+
+2007-08-04 Benoit Grégoire  <benoitg@coeus.ca>
+	* Portugese (from portugal) translation contributed by MiguelCMA
+	* locale/gen.sh:  Major change to .po file generation.  Now uses msgmerge so we won't completely throw away previous efforts by translators (will preserve comments, and use fuzzy translation).  It's also much faster (seconds instead of minutes), and produces less strings to translate.
+
+2007-08-03 Damien Raude-Morvan <drazzib@drazzib.com>
+	* init_php.php : Fix #363 by applying patch from Leandro to correctly set timezone info in Wifidog
+	if set in configuration (allow Wifidog to work not only in Canada :).
+
+2007-07-26 Benoit Grégoire  <benoitg@coeus.ca>
+	* DependenciesList::hook_menu():  Fix menu path conflict with Server::hook_menu();
+	* Server::getAdminUI(): Add output to help debug timezone problems.
+
+2007-07-25 Benoit Grégoire  <benoitg@coeus.ca>
+	* VirtualHost.php:  Fix critical problem preventing new Virtual Hosts from being created.  Thanks to Miguel for pointing this out!ssss
+	* StatisticGraph.php:  Fix a bad return by reference that prevented graphs from being displayed.  Thanks to Daniel Lemay for finding it.
+	* Content.php:  Fix warning when selecting owners. Fix dangling metadata objects when deleting an object.
+	* Statistics::getDateRangeUI():  Make days end a minute before midnight, not a minute before noon, DOH!
+	* import_user_database.php:  Fix permission call systax error.  That does't mean the script works as a whole, it hasn't been maintained for years.
+	* DependenciesList.php:  Make it extend GenericDataObject after all.  Fixes problem displaying it in the generic editor.
+
+2007-07-22 Benoit Grégoire  <benoitg@coeus.ca>
+	* generic_object_admin.pgp:  Fix problems when creating new content objects.  Fix problems including the content type classes.
+	* Avatar.php:  Make the resampling code support any format available to GD, not just jpeg.
+
+2007-07-22 Benoit Grégoire  <benoitg@coeus.ca>
+	* More schema compatibility defensive coding.  Comment out all SET commands in the schema
+
+2007-07-22 Benoit Grégoire  <benoitg@coeus.ca>
+	* install.php:  Fix #215
+
+2007-07-21 Benoit Grégoire  <benoitg@coeus.ca>
+	* AnonymisedDataExport.php:  Work around the huge memory requirements this report used to have.
+	* install.php:  Strip create procedural language from schema, that requires superuser anyway.
+					Strip a few other things to hopefully allow it to work again with postgresql 7.4, but I need the full output of the commant "psql -f wifidog-postgres-schema.sql", run from the sql directory of a svn checkout, from someone still running 7.4, otherwise I can't do much.
+	* DependenciesList.php:  New class.  Allow seeing the dependency list once the server is installed.  A small step towards centralized dependency installation.
+
+2007-07-20 Benoit Grégoire  <benoitg@coeus.ca>
+	* At long last, implement #9:  Automatic new node creation.  When attempting to login from an unknown node, the user (if he has the permissions) will be prompted to create the node, or "steal" en existing one (for hardware swaps).
+	* Refactor Node:getSelectNodeUI().
+	* Menu.php:  Fix small oversight causing menu not to clear.
+
+2007-07-19 Benoit Grégoire  <benoitg@coeus.ca>
+	UIUserList fixes:
+	* Node::getRecentUsers():  Get the 5 most recent users, not some random users in the last week.  Also, exclude users currently logged-in.
+	* Node::getActiveUsers():  Function was unbearably slow, now limit the search space to the last 3 months.  Get the 5 user who connected on the most differents days, instead of users with the worst wireless card ;)
+	* schema_validate.php: Add index for timestamp_in on connection table.
+
+2007-07-17 Benoit Grégoire  <benoitg@coeus.ca>
+	* Use last_heartbeat_sys_uptime untill #354 is fixed
+
+2007-07-16  Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix display of wifidog uptime in node list
+	* Preliminary skinning of the menu
+	* Network::getNumOnlineUsers():  Fix #40 by counting active connexion tokens, not distinct user id's.  That way users logged in twice (splash-only, or username if allowed in network config) will be counted twice.
+	* UIUserList_getUserUI.tpl:  Fix #337
+	* Node.php:  Improve getCurrentRealNode()
+	* Implement #4:  Allow the user to easily come back to the portal by typing in the root auth server adress from a hotspot.
+	* Log the system information sent with the gateway since almost forever:  sys_uptime, sys_memfree, sys_load, wifidog_uptime
+	* NodeStatus.php:  Include the above information
+	* node_list.html:  Include wifidog_uptime if the hotspot is up.
+	* Menu.php:  Sort menus alphabetically according to the user's locale.  TODO:  Implement menu weights.
+	* NodeLists:  Only list node types that have dependencies met in the menu.  Refactor the NodeLists for proper object-orientation.
+
+2007-07-12  Benoit Grégoire  <benoitg@coeus.ca>
+	* MainUI.php:  Fix label problem in language chooser.
+
+2007-07-12  Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix #291 by adding a proper warning and location of documentation
+	* Fix #336:  Add Swedish translation by Christian Svensson <blue ATT cmd.nu>
+
+2007-07-12  Benoit Grégoire  <benoitg@coeus.ca>
+	-This is a behemoth "the road to 1.0"  commit.  I've been working on this for 6 months,
+	and it's reached the point where others can help.  Those are very far reaching changes, please
+	notify me if anything isn't working right (and im sure I can't have caught everything).
+    * Completely revamp exception handling, all exceptions are now trapped and handled centrally.
+    * Major changes in the login process to allow repeating a request after a time out or missing permission exception.
+    * New user roles architecture,  as described in https://dev.wifidog.org/wiki/doc/developer/UserRolesArchitecture
+ 	Mostly complete.  Missing parts are Content stakeholders, system roles and "su" functionnality.
+ 	I need help replacing all the DEPRECATED* methods.  Please read the wiki page above for instructions.
+	* generic_object_admin.php:  More work towards making it generic once again.
+	* GenericDataObject:  New class.  Eventually, most classes should extend this, instead of directly implementing GenericObject
+	* Menu.php:  Finally a uniform Menuing system to replace the mismatch of links that made wifidog
+	impossible to navigate.  It's not very sophisticated yet, but it IS permission aware
+	Loosely inspired from Drupal's menuing system.  HTML is slightly modified "Son of suckerfish",
+	so will be easy to style (althouh I haven't had time yet).
+	Actual menus are added in the hook_menu methods of each class.
+	* VirtualHost.php:  Finally properly split off Virtual Hosts, and make Server a singleton.
+	* install.php:  Do the bare minimum changes so it's still possible to setup a wifidog auth server.
+	However, install.php still needs 1- A good overhaull, 2- A way to install sample databases instead of the minimal one.
+	-Other changes
+    * Unbreak signup link for non-javascript enabled devices
+	* FlickrPhotostream:  Check CURL, which is a mandatory dependency of Flickr
+    * AbstractDb:  Improve debuging features
+    * *:getObject():  Hopefully improve performance of class caching by making sure
+    that we do not manipulate different objects.  Otherwise copies would be generated as soon as we change properties, wasting much memory.
+	* Add dependency check for XSL module for hotspot_status.php.
+	* Some work towards respecting the coding style: http://dev.wifidog.org/wiki/doc/developer/CodingStandard
+	* wifidog/admin/index.php:  Delete admin page.  There is no longuer a concept of a separate admin section.  Menu will depend on your access level.
+
+2007-07-11  Benoit Gréoire  <benoitg@coeus.ca>
+	* path_defines_url_content.php: Fix #348
+
+2007-07-03  Benoit Gréoire  <benoitg@coeus.ca>
+	* wifidog/signup.php:  Notify the user of the allowed characters.
+	* Add Bulgarian translation from "Nikola Petrov" <nvp.online A T gmail.com>
+	* config_available_languages:  Centralize the list there so that there is only one to modify everytime we add a translation
+
+2007-06-12  Benoit Gréoire  <benoitg@coeus.ca>
+	* IE6 layout workarounds (not perfect, but better)
+	* HTML validation of the login and portal pages
+	* Apply patch from tdb@timothy86.orangehome.co.uk, fixes #334
+
+2007-05-30  Benoit Gréoire  <benoitg@coeus.ca>
+	* VisitsPerMonth.php, VisitePerWeekday.php:  Fix small sql bug when selecting a single user
+
+2007-05-28  Benoit Gréoire  <benoitg@coeus.ca>
+	* ActiveUserReport.php:  Merge new report from my development tree.  Gives a breakdown of how many users actually use the network.
+
+2007-05-22  Benoit Gréoire  <benoitg@coeus.ca>
+	* Reverse part of [1230], hotspot_network_name was already available as standardised variable networkName, and hotspot_network_url as networkWebSiteURL.
+	* Reverse part of [1231]:  remove script tag, banning it was the reason the sag striping code was put in in the first place.  We may want to consider creating a RawHTMLContent Content Type.
+
+2007-05-22  Benoit Gréoire  <benoitg@coeus.ca>
+    * locales/el/: Add new greek translation contributed by Nikola Petrov
+
+2007-05-17 François Proulx <francois.proulx@gmail.com>
+	* WARNING: This has not been fully tested. Full testing to be completed on 2006-05-18
+	  but I'm pretty confident that it works pretty well.
+	* Added automatic resize on Avatars
+	* Added FavoriteHotspots content (mostly used for Profiles)
+	* Added new features to Content and File
+	* Fixed URL regexp bug in HyperlinkUtils
+	* Updated French translations
+	* Updates profiles template
+	* TODO: Add getNewUI et processNewUI to FavoriteHotspots to simplify input
+
+2007-05-03  Benoit Gréoire  <benoitg@coeus.ca>
+    * MainUI_ToolContent.tpl: Make preferences_link, login_link, and logout_link CSS targetable.  Get rid of some deprecated CSS.
+
+2007-04-25  Benoit Gréoire  <benoitg@coeus.ca>
+    * ShoutBox.php:  The shout form wasn't displayed whent there weren't any Shouts yet, doh!
+
+2007-04-24 Benoit Grégoire  <benoitg@coeus.ca>
+	* AuthenticatorRadius.php:  Fix RADIUS dependency detection bug related to case sensitivity
+
+2007-04-19  Benoit Grégoire  <benoitg@coeus.ca>
+	* RssAggregator.php:  Fix bug saving the max item age.
+	* Forgot to remove a bunch of links to faq.php.
+
+2007-04-03 Benoit Grégoire  <benoitg@coeus.ca>
+	* AnonymisedDataExport.php:  New report.  Adds the ability to export anonymised SQL data for academic research.
+
+2007-03-20 Benoit Grégoire  <benoitg@coeus.ca>
+	* Shoutbox.php: Allow limiting the number of characters entered for a shout.
+	(Ideally, this would also need to be enforced at db write level).
+	Move the shout form in the list.
+	Allow choosing the number of shouts displayed.
+	Make the size of the shout field configurable from the admin interface
+	Put the date of the shout before the username.
+	* User.php:  Make the entire "edit profile" link CSS targetable, including the parentesis.
+
+2007-03-20 Benoit Grégoire  <benoitg@coeus.ca>
+	* ProfileTemplateField.php:  Only allow simple content types as metadata.
+	* Langstring.php:  Fix bug:  one couldn't change the language of a string without changing the actual text.
+	* Content.php:  Add isExactContentType() method.
+	* Profile-related visual and UI tweaks
+
+2007-03-20 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix #304:  For some reason the Smarty assignement to userName used getListUI() instead of getUsername()???
+	* Add HyperLink content type
+	* Add UIUserList content type (work towards #158)
+	* portal/index.php:  Finish refactoring Smarty usage.
+
+2007-03-17 Benoit Grégoire  <benoitg@coeus.ca>
+	* install.php: Make sure we are in the right directory when uncompressing Smarty
+	* Avatar.php:  Don't allow user to hyperlink the image.
+	* ProfileTemplate:  Display how many profiles will be affected when deleting a template field.
+	* User.php:  Don't show the profile creation button if the network has no profile template.
+	 Don't hyperlink the username if the user has no profile.
+
+2007-03-16 Benoit Grégoire  <benoitg@coeus.ca>
+	* Lots of work on profiles.  The HTML and CSS are not final, but #18 can be considered closed.
+	* ProfileField::getContentField():  Fix bug where the object wouldn't refresh properly.
+	* Content:  Delicate refactoring of the UI to create new content.
+	The content object now supports directly adding the actual values of a new
+ 	Content in getNewContentUI(), if the content filter only allows a single content type.
+ 	For this to work, the Content type must overload the getNewUI() method.
+ 	This saves many mouse clicks for form style interface, like profiles.
+ 	* User:  Don't create profile automatically.
+ 	* Don't show profiles when user is invisible.
+	* Langstring, SimpleString, HTMLEditor: Support getNewUI().  As a result of these changes, SmartyTemplate, SimpleSmartyTemplate, Stylesheet also get it for free.
+	* Add new standard Smarty value userOriginallyRequestedURL.
+ Note that this does NOT fix #266
+	* Add new standard Smarty value nodeWebSiteURL
+	* Some work towards #158
+	 1- The "Use the Internet" link pointing to the originally requested URL is no longuer a part of every portal.  To restore that functionnality, paste the following code in a SmartyTemplate in the Content manager.
+	{if $userOriginallyRequestedURL}
+		<a href='{$userOriginallyRequestedURL}'>Take me where I originally wanted to go</a>
+	{/if}
+	2- The "Where am I" link is gone.  It made little sense to have that content common to all groups.  To restore it, pu it inline in your login page, link a html page on your auth server, or link a Content display page.
+	3- Same with the link to the Network.  To restore the unctionnality, paste the following code in a SmartyTemplate:
+	<a class="administration" href="{$networkWebSiteURL}"><img class="administration" src="{$common_images_url}lien_ext.gif">&nbsp;{$networkName}</a>
+	* ContentTypeFilter:  Saving still wasn't neutral.  Strip the array indexes to fix it.
+
+2007-03-03 Benoit Grégoire  <benoitg@coeus.ca>
+	* CSS tweaks for RSS feeds.
+	* Fix detection of HTML Safe.
+	* Avatar.php:  Don't allow editing the picture size.
+	* ContentGroup:  In some cases, the same element could be picked twice in the same display.
+	Make sure that doesn't happen.  Also, implement the option to not rotate content at all,
+	usefull when showing all elements simultaneously in a specific order. Closes #294
+
+2007-02-24 Damien Raude-Morvan <drazzib@drazzib.com>
+	* Fix main SQL request in Node::getSelectNodeUI() to use
+	  table alias in ORDER BY and SELECT. This disambiguation
+	  is necessary when using a join on a table containing
+	  another 'node_id' field.
+
+ 2007-02-24 Max Horvath <max.horvath@freenet.de>
+        * Updated dependencies list (completion of all required components)
+        * Dramatic speedup of PEAR and PECL modules detection by dependencies class
+
+2007-02-25 Benoit Grégoire  <benoitg@coeus.ca>
+	-* rev [1182], [1183], [1184]  are repository fix commits.  If anyone have problem with their lib directory when upgrading, contact me.
+
+2007-02-24 Max Horvath <max.horvath@freenet.de>
+	* Fix ticket #300: SYSTEM_PATH not being respected in config.php.
+
+2007-02-07 Damien Raude-Morvan <drazzib@drazzib.com>
+	* Fix ticket #298 : php-ldap module is lowercase in Dependencies array,
+	  update Dependencies::check() calls.
+
+2007-02-05 Damien Raude-Morvan <drazzib@drazzib.com>
+	* Try to fix ticket #295 and #297 by including parent class (Content.php) in
+	  File.php.
+	* ... and remove unnecessary include of Avatar content type in User.php: All
+	  contents types are included by Content.php getAvailableContentTypes() call.
+
+2007-01-28 François Proulx <francois.proulx@gmail.com>
+	* First iteration of user profiles completed.
+	* Need to improve Avatar admin UI
+
+2007-01-19 Benoit Grégoire  <benoitg@coeus.ca>
+	* dump_initial_data_postgres.sh:  Initial node wasn't setup correctly.
+	* INSTALL:  Fix some obsolete instructions for database backup and restore
+
+2007-01-18 Benoit Grégoire  <benoitg@coeus.ca>
+	* Updated french translation curtesy of http://zapquebec.org
+
+2007-01-16 François Proulx <francois.proulx@gmail.com>
+	* ContentTypeFilter : Now supports filters stored in the DB, backward compatible
+	* ProfileTemplate, ProfileTemplateField, Profile : profiles support
+	* Update schema to 53 for profiles
+	* Network, User : Added support for profiles (not implemented for Network)
+	* TODO: Integration in portal
+
+2007-01-16 Benoit Grégoire  <benoitg@coeus.ca>
+	* A few more steps towards a real user manager
+	* Move password change to preferences.
+	* InterfaceElements:  Begin moving away from a raw HTML generator and towards a more semantic one as discussed with Max Horvath.
+	* It is now possible for an administrator to manually validate or lock-out a user
+	* Add new SimpleString content type
+	* SmartyWifidog.php:  Fix #282 with a slightly dirty workround to the chicken and the egg smarty variables assignment problem.
+		We now extend the fetch method and do our assignment there instead of in the constructor.
+
+2007-01-15 Benoit Grégoire  <benoitg@coeus.ca>
+	* Sync initial schema and translations
+	* Minor spelling fixes
+
+2007-01-14 Benoit Grégoire  <benoitg@coeus.ca>
+	* Dependencies.php, AuthenticatorRadius.php:  Fix bug #287 (Dependencies not being detected properly)
+	* Content.php: Make hasDisplayableMetadata() consider Authors, and make it a bit faster.
+
+2007-01-13 Benoit Grégoire  <benoitg@coeus.ca>
+	* Content.php:  Add setUserUIMainDisplayContent() and setUserUIMainInteractionArea()
+	to simplify writing subclasses and port all content subclasses to the new API.
+	* Content.php:  Add a new callcack method, isTextualContent(), to be used by
+	ContentFilters.  Indicates that the content is suitable to store plain text.
+	* ContentGroup.php:  No longer warn about empty ContentGroup in getUserUI(),
+	as this may now be perfectly normal if all content has expired.
+	* Rework the classes and css for user_ui_main_outer, isSimpleContent has been
+	eliminated and hasDisplayableMetadata is now defined is metadata is available.
+	This should allow better HTML consistency and simpler CSS, and be closer to what
+	people expect by default.  Content without metadata will display without
+	borders or background, and without margins when inside another content.
+	* smarty.resource.string.php:  Add a setter function,
+	smarty_resource_string_add_string() that must be used before calling the smarty
+	 function.  Using the name as the the template was far to brittle.  This makes
+	 the SmartyTemplate content much more reliable, and quite possibly faster.
+	* ShoutBox: A very basic but already extensible implementation of the
+	shoutbox use case.  Shows the last five shouts.  Can connect to another web
+	site through a javascript extension.
+	* SimpleSmartyTemplate:  Add a simple version of the SmartyTemplate content
+	type
+
+2007-01-03 Benoit Grégoire  <benoitg@coeus.ca>
+	* FormSelectGenerator.php: Fix incorrect $this reference in isPresent().  The bug would only manifest
+	 itself from the FlickrPhotostream's admin interface.
+	* page.php:  Fix missing retrieval of DB instance.
+
+2007-01-03 Benoit Grégoire  <benoitg@coeus.ca>
+	* Yet more Smarty cleanup, add some docs, add Smarty variables to access the physical node a user is connected to.
+	* RssAggregator.php:  Fix bug in setMaxItemAge() method when setting a null value
+	* Cache.php:  Performance optimization when caching is disabled.
+	* Fix bug where num online users in the portal was broken.
+
+2007-01-02 François Proulx <francois.proulx@gmail.com>
+	* Updated the SQL schema initial schema
+
+2006-12-31 Benoit Grégoire  <benoitg@coeus.ca>
+	* More Smarty cleanup
+	* Content.php:  Bugfix:  metadata wasn't deleted along with the rest of the
+	content upon deletion.
+
+2006-12-30 Benoit Grégoire  <benoitg@coeus.ca>
+	* install.php:  Move path verification to the first page, and make it clearer.  Fix PHP warnings.
+	* wifidog/include/smarty.resource.string.php:  A smarty resource plugin to parse a smarty template from a string
+	* SmartyTemplate:  Very basic but functionnal commit of the new Smarty content type.
+	IMPORTANT NOTE:  This will eventually obsolete IFrameRest, which will be removed.
+	* Continue cleaning-up/standardizing Smarty variable usage.
+
+2006-12-12 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix all PHP 5.2 compatibility issues I could find.  This needs further testing
+
+2006-12-12 Pascal Charest <pascal.charest@gmail.com>
+	* install.php: Remove obsolete Phlickr installation references
+
+2006-12-12 Benoit Grégoire  <benoitg@coeus.ca>
+	* install.php, Dependencies.php:  Centralize Dependency detection (next is to centralize
+	dependency installation code).
+	* config.php: Remove more obsolete config directives.
+
+2006-12-11 Benoit Grégoire  <benoitg@coeus.ca>
+	* install.php:  Fix a few problems caused by obsolete magpierss detection code.
+	* install.php, config.php:  Remove the obsolete PHLICKR_SUPPORT option.
+
+2006-11-30 Benoit Grégoire  <benoitg@coeus.ca>
+	* schema_validate.php:  Mute annoying ob_flush() notices.
+	* Node.php:  Add missing default parameter to getSelectNodeUI()
+	* get_stylesheet:  Fix date calculations that broke download.
+
+2006-11-29 Benoit Grégoire  <benoitg@coeus.ca>
+	Sync with my main developpement environement:
+	* Performance optimization pass:  Collect a few low hagning fruits
+	by implementing basic instance caching for classes Server, Network, Nodes, Content and User.
+	 It's no replacement for a real ORM, but is cuts way down on duplicate SQL queries and
+	 object instanciation for a single request.
+	* Langstring.php:  Slight performance optimization for admin interface, support for proper modification date.
+	* File.php:  Update to use unified content modification date.
+	* get_stylesheet.php:  Implement browser caching
+	* ContentGroup.php:  Get rid of is_locative and is_artistic metadata.  Will eventually be replaced by something better.
+	Allow editing of expired content elements
+	* Node.php, Utils.php:  Sort by case insensitive name, and show gateway id in node selectors
+	* BannerAdGroup.php:  Support group constraint of image size for all images in the group.
+	* ContentReport.php:  Finish basic content reporting.
+	Note that for content that displayed before the logging fixes commited 2006-11-14, the display count will be underestimated:
+	Display before then was only counted once per user per node.  Also File clickthrough wasn't logged (includes hyperlinked pictures).
+	* Content.php:  Implement a Key-Value Pair infrastructure.  In the future, this will often allow adding new content types without
+	having to modify the schema.  See the Content class documentation.
+	* Fix various small UI issues.
+
+2006-11-29 Benoit Grégoire  <benoitg@coeus.ca>
+	* common.php:  Fix the value of SESS_NODE_ID_VAR, it got overwritten by SESS_GW_ID_VAR.
+	Caused problems with logout.
+
+2006-11-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* Try to fix #270:
+	* DateTime.php:  Rename class to DateTimeWD because of the stunt they pulled in PHP 5.2
+	* Content and derived classes:  Make all constructors protected.
+
+2006-11-26 Benoit Grégoire  <benoitg@coeus.ca>
+	* lost_username.tpl, lost_password.tpl, resend_validation.tpl:  Fix #259 by commenting out
+	all Javascript. I hate removing outside contributions, but the lost_username,
+	lost password and re-send validation email have been broken for months and no one
+	stepped-in to fix it.
+
+2006-11-23 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix bug in node creation
+	* Add error message for geocoder when you didn't set the country
+	* Clarify error messages and description for the geocoder.
+	* Make the google-map locator for nodes use the network center coordinates.
+	  This change makes it usable when you didn't use the geocoder first.
+	* Show the gateway id in the technical nodelist.
+
+2006-11-22 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix minor problems with template using obsolete constants
+	* Delete a bunch of unused templates
+
+2006-11-22 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix broken auth
+	* Fix broken portal when called from gateway
+
+2006-11-22 Benoit Grégoire  <benoitg@coeus.ca>
+	* Major schema update (this one is going to make your database grind for a while, sorry
+	about that...)
+	Fix a long standing design problem with the node table, where the ID could be changed.
+	This caused performance problems when replacing gateways, and caused problems when
+	exporting data to other systems.  Among other things, it will allow us to finally
+	 finish the JiWire output.
+	* Stylesheet.php:  New content type.  Takes advantage of two pass content display to create stylesheets to be used only at a specific node, or with a specific content.
+
+2006-11-21 Benoit Grégoire  <benoitg@coeus.ca>
+	* Change schema update method.  Will now do one transaction
+	 per schema version, allowing each schema to assume that
+	  the current schema is the previous one.  Also allows not
+	  starting over when there is a problem.
+	  Fixes schema update problems with the last commit
+
+2006-11-21 Benoit Grégoire  <benoitg@coeus.ca>
+	* RssAggregator.php:  At long last, sync with FeedPressReview 2.0
+	 http://projects.coeus.ca/feedpressreview/ (formerly rsspressreview)  and
+	  make most of it's features directly available from the web interface.
+	This gives us:
+	-Now based on SimplePie http://simplepie.org/ (magpie was no longuer maintained)
+	-Now unobtrusively displays almost all item and feed metadata
+	-Supports images
+	-Supports podcasts and enclosures
+	-More accurate algorithm
+	-Criteria based default feed expansion
+	-More real-estate efficient, and improved UI
+	The admin interface is now also more real-estate efficient (uses the hover help code commited by François that no one used yet).
+
+	Warning: This changes the dependencies of the auth server.  Your RSS feeds will be disabled untill you re-run the install script.
+	* gw_message.php:  Fix validation period not being displayed.
+
+2006-11-14 Benoit Grégoire  <benoitg@coeus.ca>
+	* MainUI.php:  Allow displaying any object with a getUserUI() method directly as content.
+
+2006-11-14 Benoit Grégoire  <benoitg@coeus.ca>
+	* generic_object_admin.php:  Fix interface options for the user object, but this is the wrong way to go about it.  THese options should be class properties.
+
+2006-11-14 Benoit Grégoire  <benoitg@coeus.ca>
+	* File.php:  Clickthrough weren't logged, DOH!
+	* User.php:  Error message on validation expired didn't properly output the validation grace time.
+	* Statistics.php:  Fix #271: Getting statistics for a single MAC address was broken.
+	* NodeListXML.php:  Small patch by Josephus to add the number of online users
+	* Improve CPU usage of the content manager
+	* AbstractDb:  Fix query time not being displayed in debug mode if profiling was turned off.
+					Add total execution time statistics.
+	* Fix logging of content clickthrough and display.  Unique users and node data is reliable for existing data.
+		Number of prints is underestimated (repeat prints for the same user, same content at same node didn't get counted)
+		 for data before this patch.
+		Same with number of clickthrough for File content types and derivatives (picture, etc.).
+	* ContentReport.php:  Add content report (does not support most options yet, but still very usefull).
+
+2006-11-13 Benoit Grégoire  <benoitg@coeus.ca>
+	* Make the MainUI, SmartyWifidog and Session and AbstractDb classes singletons
+	* Implement two pass content display.  All Content can now implement a prepareGetUserUI(), allowing them to interact with MainUI and other Content before display.
+	  Allow creating content such as stylesheets, feed accumulators, etc.
+	* SmartyWifidog.php Turn on security, begin preparing for standardisation of Smarty variables
+	* New Content type:  Stylesheet.  Allows specific nodes, or even specific content groups to have custom stylesheets.
+	* Langstring.php:  Make getAdminUI calling conventions coherent with other content types.
+
+2006-11-11 Benoit Grégoire  <benoitg@coeus.ca>
+	* Authenticator.php:  Critical: Fix SQL query syntax in acctStart()
+
+2006-11-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* install.php:  Fix password generation I inadvertently broke.  Remove misleading info about SSL
+
+2006-11-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* install.php:  Put an end of line after the password, make it easier to read.
+	Make the install script check the permissions of lib/smarty/plugins directory to avoid smarty errors
+	* Statistics.php:  A little gift for France wireless:  Make aggregate statistics available across networks
+
+2006-11-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix # 268, #269 as well as greg's problems by moving all token and registration date arithmetics
+	 to the database, and standardize on SQL-standard CURRENT_TIMESTAMP.
+	Fixes operational problems when PHP and PostGres don't have the same timezone
+	(which appears to be the case on Fedora by default).
+	Note that the page.php script still has PHP date arithmetics, but at least should be self-consistent.
+
+2006-10-24 Benoit Grégoire  <benoitg@coeus.ca>
+	* auth/index.php: Add some defensive coding and debug output when the token is invalid.
+
+2006-10-24 Damien Raude-Morvan <drazzib@drazzib.com>
+	* Fix french translation used for account validation to use same number of token as original message.
+	* Only show language combo when there is more than one language to select.
+
+2006-10-24 Benoit Grégoire  <benoitg@coeus.ca>
+	* EmbeddedContent.php:  Fix content type selection (admin interface of EmbeddedContent was broken)
+	* Full spanish translation curtesy of jguevara @@ unitec.edu (closes #254)
+	* Some documentation updates for content filters
+	* Content.php:  Add isNotContentType() method.
+
+2006-09-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* Access to the Content manager was broken for normal users, again.
+
+2006-09-11 François Proulx <francois.proulx@gmail.com>
+	* Changed install.php req. for Smarty 2.6.17 is mandatory
+	* ContentTypeFilter.php fixed the method checking function
+	* Fixed errors in French translation file
+
+2006-09-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix PHPMailer that I've broken earlier
+
+2006-09-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* Slightly rework SSL detection so that it uses the default server if a current one isn't available.
+		Fixes server passing passwords in the clear if the hostname disn't match (DOH!).
+		We really should properly split the Server class into a singleton Server class and multiple VirtualHost classes.
+	* Re-apply fixed HTMLeditor patch.  (Original description:  Make HTMLeditor inherit from Langstring.  Allowed a massive reduction of
+	  line count and will stop the codebases from needlessly drifting apart.)
+
+2006-09-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* Add missing require of Statistics.php in stats.php
+
+2006-09-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix non persistent content being available to add to nodes, networks and content groups.
+	* Prevent a user from entering the same language twice in a langstring.  Fixes #226
+
+2006-09-06 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix #63
+	* Fix problem with my Splash only user fix (I used match on the user_id instead of the username).
+	* Prevent the Splash only user from logging out, wrecking havock in the tokens.
+	* Do not allow SplashOnlyUser to set his preferences.
+	* Assigning a reusable content to a contentgroup element would make it non-reusable.
+Usability and UI fixes:
+	* Allow other users to log in when they are at a splash only node.
+	* Make isSimpleContent class available for Simple content types.  Make it borderless and backgroundless in the default theme_pack.
+	* Simplify HTML output for simple content.
+	* Fix IE layout bug in node admin
+	* Content linked to nodes and networks now edits in a new window.
+	* Remove "Add new node" menu item for consistency.
+
+2006-09-06 Benoit Grégoire  <benoitg@coeus.ca>
+	* Remove most inclusions of MainUI in classes.
+	That completely broke authentication (circular dependencies).
+	Fixes 245.
+    Unfixes 242. Exceptions should not be caught in the context
+    they are thrown in. Else there no point in throwing exception in the
+    first place.
+	* HyperLink.php:  Fix bug where a link with identical text as it's link would see the text replaced by the clickthrough-tracked equivalent.
+
+2006-09-06 Benoit Grégoire  <benoitg@coeus.ca>
+	* ContentTypeFilter:  New class, implements #159.  Allows to filter content type according to various criteria.  Will be used more extensively in the profile manager.
+	* Content manager:  Use content type filter to only allow Simple content types (Content without metadata) to be used for metadata.
+	* New content type BannerAdGroup.  Used (primarily) to display banner adds, or any other image rotation.  Size constraints not yet implemented
+	* Move externally maintained class.phpmailer.php, class.smtp.php into lib where they belong
+	* DateTime.php: Make class handle an empty date sensibly.
+	* Network.php:  Show the network again when there is only one.  It was confusing in some screens.
+	* page.php:  Clarify error message, and set a more reasonnable paging cascade:
+		5 min, 30 min, 2 hours, 1 day, 1 week, 1 month
+	* Finally fix #127
+	* At last, working content scheduled display and expiration for ContentGroups.  Archiving does not yet have a UI.  Content that expires will simply seem to disapear.
+	* Fix #247 (somebody filed a bug before I commited, conveniently saving me the need to describe it).
+	* The Fix for #106 in [1089] returned non-objects, causing error messages and not displaying what it was meant to display.
+		Used Guest instead of Annonymous, which will probably be used for different purpose in the future.
+		This re-fix does not include duplicate counting yet.  Splash users are not the only users that could log-in multiple times.
+		I don't have a staging server here, a fix will be commited in a few minutes if something goes wrong.
+	* Cleanup coments.
+	* Sync schemas
+
+2006-09-03 Max Horváth <max.horvath@freenet.de>
+	* The term SPLASH_ONLY_USER displayed to people visiting the portal has been
+	  replaced by the more meaningful term "anonymous user" (fixes #106)
+	* When creating a new node and choosing an existing node_id there will be
+	  shown an error message (fixes #223)
+	* If one or more nodes aren't monitored they now will be announced on the
+	  front page (instead of just showing the number of monitored online nodes)
+	  (fixes #100)
+	* Display more meaningful error messages if required user permissions are
+	  missing (fixes #242)
+	* Refactored Network->getAdminUI() to match look and feel of
+	  Node->getAdminUI (fixes #140)
+	* Show descriptive status of node (fixes #241)
+
+2006-09-02 Max Horváth <max.horvath@freenet.de>
+	* Installation script checks for PHP session extension (fixes #139)
+	* Removed "Call-time pass-by-reference has been deprecated" warnings
+	  (fixes #239)
+	* Revert changes of FCKeditor implementation (fixes #240)
+	* Fix of FCKeditor implementation, now also supports FCKeditor 2.3+
+	  (fixes #145)
+	* Hotspots/Nodes are sorted case-insensitive now (fixes #109)
+	* Fix #141
+	* templates/sites/index.tpl: fix wrong user count (fixes #236)
+	* Added more trash mail services to the black list (fixes #149)
+
+2006-09-01 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix #189, #173
+
+
+2006-09-01 Benoit Grégoire  <benoitg@coeus.ca>
+	* Content.php:  Improve handling of simple but persistent content.
+
+2006-08-31 Benoit Grégoire  <benoitg@coeus.ca>
+	* Server.php:  Make sure getCurrentServer returns the default server if the
+	  hostname isn't recognised.
+	* Content manager:
+		- Allow deleting simple (trivial) but persistent content
+		- Remove the sponsor info field from Content Metadata.  Best practices
+		  is now to use the project info field to show this information.
+	* Add the necessary schema constraints to allow manually deleting networks,
+	  nodes and users.  Be carefull, removing any of theses will remove all
+	  traces of connection statistics as well.  You've been warned.
+	* Do not display the network in the login interface if there is only one.
+	* Add a pseudo-random content ordering mode.  Pick content elements
+	  randomly, but do not display the same content twice untill all content
+	  has been seen.
+	* Allow setting a title but not displaying it (very usefull for reusable
+	  content)
+
+2006-08-29 Max Horváth <max.horvath@freenet.de>
+	* Cleaned up PHPdoc tags
+	* Updated german translation
+	* Updated portuguese translation, thanks to Gabriel Hahmann
+	* Added spanish translation, thanks to Ricardo Jose Guevara Ochoa
+
+2006-08-28 Benoit Grégoire  <benoitg@coeus.ca>
+	* Add SimplePicture content type
+	* Fix #225 (For both nodes and networks)
+
+2006-08-28 Max Horváth <max.horvath@freenet.de>
+	* Integrated KML node list export
+	* Integrated PDF node list export
+	* Updated Sprintf formatted strings in some Smarty templates
+
+2006-08-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* clickthrough.php, HyperLink.php:  Implement working hyperlink
+	  clickthrough tracking (no reporting yet).
+	  Works for Langstring, FlickrPhotoStream, Picture, RssAggregator and their
+	  subclasses.
+	* Make HTMLeditor inherit from Langstring.  Allowed a massive reduction of
+	  line count and will stop the codebases from needlessly drifting apart.
+	* Do not log content displayed as metadata, and log their clickthrough as
+	  the parent's.
+
+2006-08-27 François Proulx <francois.proulx@gmail.com>
+	* Updated French translations
+	* Now using Sprintf formatted strings in some Smarty templates (see
+	  example in templates/sites/index.tpl).
+	* Integrated back the SQL profiling functions
+
+2006-07-20 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix a bug where having an empty username would break statistics.
+
+2006-07-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix a bug in some reports when selecting a single user.
+
+2006-07-05 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix #175.
+	* Fix the "Registration Log" and "User registration report" reports giving
+	  incorrect statistics
+	* Allow disabling EventLogging class in config.php, to make SQL debuging
+	  possible (The class was traping errors before AbstractDb could
+	  output them)
+	* Make EVENT_LOGGING default to false for now, as it turns out EventLogging
+	  was the cause of the Spurious PEAR output ("Runtime Notice: ") we've
+	  been seeing.  That is probably only because we don't understand how to
+	  properly control it's logging level.
+
+2006-06-18 François Proulx <francois.proulx@gmail.com>
+	* Added creation_date , last_update_date support to File content (with
+	  proper HTTP caching handling)
+	* Added hyperlinks URL support in Picture content
+	* Fixed constants in Flickr Content
+	* Fixed #171 (Can't add existing content to Node)
+
+2006-06-17 François Proulx <francois.proulx@gmail.com>
+	* First iteration of JiWire CSV export
+		* Use : hotspot_status.php?format=JiWireCSV
+	* Fully working, but Excel doesn't seem to handle well UTF-8
+	  investigation in progress.
+
+2006-06-08 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix #151.  It was still around after all.
+
+2006-06-08 Benoit Grégoire  <benoitg@coeus.ca>
+	* Completely refactor the look and html of the content manager, statistics
+	  and most object's administrative interfaces.
+	  Should be much simpler and clearer now.
+	  No refactoring of the editing flow has been done yet.
+	* Spell check the french translation, and add a few of the missing strings.
+
+2006-05-26 François Proulx <francois.proulx@gmail.com>
+	* Added 'ja' to database locales table
+
+2006-05-26 François Proulx <francois.proulx@gmail.com>
+	* Added Japanese translation .po file
+	  (Thanks to taedu AT ninjin-net DOT net)
+
+2006-05-24 François Proulx <francois.proulx@gmail.com>
+	* Stylesheet changes for left_area_bottom content block.
+
+2006-05-24 François Proulx <francois.proulx@gmail.com>
+	* Simplified Google Maps JS code to use more of the v2 abstraction
+	* Improved admin panels CSS classes
+
+2006-05-23 Benoit Grégoire  <benoitg@coeus.ca>
+	* config.php:  Disable USE_CACHE_LITE, it's definitely not stable, and
+	  causes very hard to track down problems with Internet Explorer.
+
+2006-05-22 François Proulx <francois.proulx@gmail.com>
+	* Fixed isValidUsername() Js function to allow caret and dot characters
+
+2006-05-22 François Proulx <francois.proulx@gmail.com>
+	* Use Pgsql persistent connections
+
+2006-05-22 François Proulx <francois.proulx@gmail.com>
+	* Removed unnecessary debug message
+	* Fixed getNumOnlineUsers to count users by MAC on splash only nodes
+
+2006-05-22 François Proulx <francois.proulx@gmail.com>
+	* Added generateFromArray parameter (max_length)
+	* Restricts select content ui combo box to 40 chars
+	* Added Smarty plugin modifier.fsize_format.php
+
+2006-05-21 François Proulx <francois.proulx@gmail.com>
+	* Stupid IE CSS bug fixed
+
+2006-05-21 François Proulx <francois.proulx@gmail.com>
+	* Fixed various bugs in content system
+	* stylesheet work
+
+2006-05-21 François Proulx <francois.proulx@gmail.com>
+	* Think I've fixed Google Maps on IE.
+		* need to test on another system..
+
+2006-05-20 François Proulx <francois.proulx@gmail.com>
+	* Completed french translations
+	* Fixed Flickr javascript
+	* Various stylesheet improvements to tighten up the portal and admin
+
+2006-05-20 François Proulx <francois.proulx@gmail.com>
+	* Various stylesheet improvements, started working on Île Sans Fil network
+	  specific theme pack
+	* Fixed a few layout bugs
+
+2006-05-20 Benoit Grégoire  <benoitg@coeus.ca>
+	* USE_BASE_NON_SSL_PATH for hotspot map, else internet explorer whines
+	  endlessly
+
+2006-05-20 Benoit Grégoire  <benoitg@coeus.ca>
+	* index.tpl:  Fix link to the map not being displayed at a hotspot, even
+	  when you are logged in.  There needs to be much better logick before we
+	  export such things to smarty templates.
+
+2006-05-20 François Proulx <francois.proulx@gmail.com>
+	* Added /wifidog/contrib and /wifidog/contrib/xslt directories
+	* Posted Île Sans Fil XSLT example stylesheet for converting the
+	  hotspot_status page
+		* Browser view
+		* PDA view (by Jean-Pierre Lessard <jplprog@videotron.ca>)
+		* Simply use in this manner :
+		  http://wifidog-server.org/hotspot_status.php?format=XML&xslt=http://wifidog-server.org/contrib/xslt/hotspot_status_browser.xsl
+
+2006-05-20 Benoit Grégoire  <benoitg@coeus.ca>
+	* page.php:  Fix bugs in various files preventing the system from working
+	  from the command line.
+
+2006-05-20 Benoit Grégoire  <benoitg@coeus.ca>
+	* More install script fixes:  Phlickr wouldn't install, and the permissions
+	  of wifidog/tmp/smarty/cache weren't checked.
+
+2006-05-20 Benoit Grégoire  <benoitg@coeus.ca>
+	* More stylesheet and HTML work
+
+2006-05-18 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix loging form incorrectly attempting to validate the password,
+	  preventing many existing accounts from logging-in.
+	* Interim commit, begin simplifying the html ans stylesheets, and re-doing
+	  the general look.
+	  This is incomplete, this commit was done to fix the problem above.
+	* install.php:  Fix path problems, make shel command errors visible.  Update
+	  magpie and smarty url to latest versions (note that this won't
+	  automatically update an existing install).  Didn't touch phlickr as I
+	  didn't know the implications
+	* Add interactive scripts in sql/ to easily backup and restore a wifidog
+	  auth server database.
+
+2006-05-10 François Proulx <francois.proulx@gmail.com>
+	* Fixed Google Maps script path to images.
+
+2006-05-10 François Proulx <francois.proulx@gmail.com>
+	* Added sweetTitles tooltips script, now if you need to add tooltips simply
+	  add the 'title' attribute to you html <a>, <attr>, <accroym> tags
+	* Fixed usort bug in MainUI
+	* Fixed download (wget) in install.php
+
+2006-05-09 Benoit Grégoire  <benoitg@coeus.ca>
+	* Working (if slightly basic) theme manager.  You can pick the theme in the
+	  network configuration.
+	  To add your own theme, read wifidog/media/network_theme_packs/README.txt
+	* Cleanup and document the wifidog directory structure
+	* Minor HTML corrections for content types
+	* Completely rip out the old local_content system, and a bunch of obsolete
+	  defines and config variables.
+	* Get rid of PHP generated stylesheets
+
+2006-05-09 Benoit Grégoire  <benoitg@coeus.ca>
+	* Finish content assignation system
+	* Content ordering is now global (network, nodes and everywhere content cand
+	  now be in mixed order).
+  	* Implement 'everywhere' content
+  	* Change MainUI::apendContent to MainUI::addContent
+
+2006-04-28 François Proulx <francois.proulx@gmail.com>
+	* Fixed error in initial data script
+
+2006-04-28 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/login/index.php: Correctly use DEFAULT_NODE_ID from config.php
+	  instead of hardcoded 'default'
+
+2006-04-28 François Proulx <francois.proulx@gmail.com>
+	* Fixed initial_data schema script so that it adds a dummy server.
+
+2006-04-25 François Proulx <francois.proulx@gmail.com>
+	* Updated JavaScript code to work with Google Maps v2 API
+	* v2 will now provide full maps of European countries and is a bit faster
+	* Updated the schema accordingly with new GMaps values
+
+2006-04-24 Benoit Grégoire  <benoitg@coeus.ca>
+	* Dependencies.php:  Small fix in case gettext isn't installed
+
+2006-04-24 Benoit Grégoire  <benoitg@coeus.ca>
+	* AuthenticatorLDAP.php:  Merge patch from jguevara@unitec.edu.  Fixes #125
+
+2006-04-24 Benoit Grégoire  <benoitg@coeus.ca>
+	* Major system locale handling overhaull.  Hopefully abstract out the UTF8
+	  problems once and for all, allowing everyone to define them the same way.
+	  Fix a few bugs along the way. Should also be a little faster.
+
+2006-04-24 Benoit Grégoire  <benoitg@coeus.ca>
+	* Revert Rob's SYSTEM_PATH change.  Sorry about that.  The devs spent hours
+	  to finally get the PATH stuff consistent and fixing the countless bugs
+	  that this process introduced.
+	  Maybe some links still need to use BASE_URL_PATH instead of BASE_SSL_PATH,
+	  (or vice-versa) but it was on purpose that SYSTEM_PATH was not made
+	  available to Smarty.
+	  We already have 3 defines to be used for links and html refs, that's
+	  enough BASE_SSL_PATH should be used to enter SSL mode (if available)
+ 	  BASE_NON_SSL_PATH should be used to break out of SSL mode of when we
+ 	  explicitely do not want someting to be referenced over http
+ 	  BASE_URL_PATH should be used in all other cases to avoid needless
+ 	  SSL warning
+
+2006-04-17 Rob Janes <janes.rob@gmail.com>
+	* javascript for validating and navigating forms.
+	* help text (untranslated).
+	* EVENT_LOGGING enabling/disabling flag.
+	* use SYSTEM_PATH instead of BASE_URL_PATH and BASE_SSL_PATH where ever
+	  appropriate.
+	* standardize Smarty variables for Network and User info by adding
+	  assignSmartyValues($smarty, $self) to Network and User.
+	* change_password only allowed if logged in.
+	* non-superadmin can only use change_password to change their own password.
+	* superadmin can use change_password to change any user password by
+	  entering in their password for the old password.
+	* page_header div defined and positioned in MainUI
+
+2006-04-04 Benoit Grégoire  <benoitg@coeus.ca>
+	* /classes/Content/IFrame/IFrame.php: Change a few methods from private
+	  to protected as the private methods broke IFrameRest
+
+2006-04-01 François Proulx <francois.proulx@gmail.com>
+	* Dumped initial schema from working install
+
+2006-03-31 Benoit Grégoire  <benoitg@coeus.ca>
+	* dump_initial_data_postgres.sh:  Add the content_available_display_pages
+	  table to the dump, can someone re-generate the initial data from a
+	  working install
+	* Remove the ?> tags from all the classes.
+
+2006-03-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix bug where right_area_bottom content wouldn't be displayed.
+	* Minor CSS cleanup
+
+2006-03-28 François Proulx <francois.proulx@gmail.com>
+	* Fixed error in initial schema (bad client encoding)
+
+2006-03-28 François Proulx <francois.proulx@gmail.com>
+	* Fixed schema 37 : left_area_top
+	* Updated initial schema
+
+2006-03-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* First step in massive simplification of CSS and templates
+	* Implement the new main CSS structure
+  	* Implement working content assignation interface and content ordering for
+  	  both network and nodes.
+  	* Display of content according to assignation work on 'portal' and 'login'.
+  	  'everywhere' not yet implemented
+	* Get rid of some ISF specific interface elements
+	* Finally replace the overly complicated start button by a
+	  "Use the Internet" link that will not get you out of your working tab
+	* Fix #118
+
+2006-03-26 Benoit Grégoire  <benoitg@coeus.ca>
+	* init_php.php: Fix stripslashes_cb() so it actually works, this means the
+	  auth server should work properly with auth servers with magic quotes
+	  turned on.
+	  This is still not recommended however.
+	* Remove some spurious error ouptut on logout.
+	* Remove potential error in network id parsing
+
+2006-03-22 François Proulx <francois.proulx@gmail.com>
+	* Fixed Google Maps URLs bug
+	* Since Google Maps does not provide Javascript over SSL (it does but the
+	  certificate does not match) the code path to the map does not use SSL, but
+	  the outgoing URLs do.
+	* Removed lost echo in Locale.php
+
+2006-03-21 Benoit Grégoire  <benoitg@coeus.ca>
+	* login/index.php: Remove huge security hole introduced by stylistic
+	  changes in the file. A user could login to any hotspot by simply filling
+	  a blank form because of a gratuitous change from empty to is_null
+	  everywhere.  Remove escaping or REQUEST parameters in non SQL
+	  related code, as this would lead to double unescaping down the line.
+	  Remove logic dependent on encapsulated side effects of object method call.
+
+2006-03-19 François Proulx <francois.proulx@gmail.com>
+	* Updated French translations
+
+2006-03-18 Rob Janes <janes.rob@gmail.com>
+	* path_defines_base working for combinations of DocumentRoot, Alias,
+	  and installed wifidog-auth directory, correctly setting SYSTEM_PATH
+	  and WIFIDOG_ABS_FILE_PATH dynamically.
+	* classes/Locale.php::getBestLanguage changed to correctly parse
+	  HTTP_ACCEPT_LANGUAGE, comma is the correct delimiter not semi-colon.
+	  Ignores SESS_LANGUAGE_VAR if invalid.
+
+2006-03-18 Rob Janes <janes.rob@gmail.com>
+	* Fixed bug #77 classes/EventLogging.php non-variable pass by reference
+
+2006-03-16 François Proulx <francois.proulx@gmail.com>
+	* Removed stale owner_sendfiles.php (now integrated in the Content Manager)
+	* Cleaned up a bunch of stale TODOs
+
+2006-03-16 Max Horváth <max.horvath@freenet.de>
+	* updated language files (new german strings have already been translated)
+	* added LDAP authentication
+	* Dependencies class can check for an PHP extension now
+	* Dependencies class can check for multiple files on a single dependency now
+	* Authentication classes moved to it's own directory
+	* The getAuthenticator method now uses the much safer and faster
+	  call_user_func_array function to return an authenticator object
+	* the available authenticator classes are now being displayed in a select
+	  box on the network administration page
+	* the link to and the Google hotspots map as is won't be shown to an
+	  unauthenticated user at a real hotspot
+
+2006-03-16 Benoit Grégoire  <benoitg@coeus.ca>
+	* hotspots_map.tpl:  Use base_url_path instead of base_ssl_path
+
+2006-03-09 Benoit Grégoire  <benoitg@coeus.ca>
+	* init_php.php: Try to fix #102 by inspection
+	* Delete AbstractDbMySql.php, and collapse AbstractDbPostgres.php
+	  into AbstractDb.php to prepare for eventual switch to PDO file.
+	* incoming_outgoing_swap.php:  Delete file, closes #85
+
+2006-03-09 Max Horváth <max.horvath@freenet.de>
+	* fixed small bug in the InterfaceElements class
+	* fixed PHP notices in portal/index.php and Locale class
+	* fixed small bug in Authenticator class which in resulted in a fatal PHP
+	  error if a user logged out when his session was already gone
+    * using the {$isUserAtHotspot} smarty variable you can check now in every
+      template if a user calls the portal from a hotspot or not
+
+2006-03-08 Max Horváth <max.horvath@freenet.de>
+	* fixed small bug where clicking on the start button at the portal page
+	  didn't open the wifidog portal, but the requested page
+	* updated source to generate a clean PHPdoc output
+	* updated PHPdoc generating script
+
+2006-03-07 Max Horváth <max.horvath@freenet.de>
+	* init_php.php now does a 100% strict check for variable types of
+	  elements to be processed when magic_quotes are turned on
+	* fixed duplicate use of SSL_AVIABLE define in common.php
+	  This fixes ticket #95.
+	* fixed problens with slashes in htospots_map.php
+	  This fixes ticket #97.
+	* fixed variable typo in NodeListXML.php
+	* introduced new InterfaceElements class which is being used to create
+	  HTML code - this reduces HTML markup in PHP code and reduces HTML errors
+	  we had i.e. on the node administration page (unclosed div).
+	  It is being used on the node administration page now and will be updated
+	  for the other admin pages ...
+	* when adding an owner or tech officer on the node admin page and pressing
+	  enter in the input field the statistics where called (no owner or tech
+	  officer was added) - this has been fixed
+	* database schema update 35 wasn't compatible with PostgreSQL version 7,
+	  the update script has been changed to be compatible with it ...
+	  This fixes ticket #94.
+	* Gabriel Hahmann did a translation of WiFiDog-Auth in portuguese ... it has
+	  been included
+	  This fixes ticket #98.
+	* on node administration page owners have less rights than admins
+
+2006-03-02 Max Horváth <max.horvath@freenet.de>
+	* converted PNGs to GIFs because Internet Explorer cannot handle alpha
+	  transparency of PNGs
+
+2006-02-28 Max Horváth <max.horvath@freenet.de>
+	* the content selector for an owner could produce notices
+	* the button add existing content in the content manager will only be shown
+	  if content is actually available
+	* the start button on the portal page won't be shown anymore if a user
+	  didn't access it from a WiFiDog hotspot
+	* deleted wifidog/templates/message_unknown_hotspot.html as this error
+	  message will be displayed using the genecir error message template
+	* display of generic error messages will be handled by the MainUI class
+	* deleted wifidog/portal/missing_original_url.php as its functions is being
+	  handled by wifidog/portal/index.php now
+	* deleted wifidog/templates/message_default.html as its functions is being
+	  handled by wifidog/gw_message.php now
+	* deleted wifidog/templates/message_activate.html as its functions is being
+	  handled by wifidog/gw_message.php now
+	* account validation hints finally show the real validation grace time
+	  (used to display 15 minutes)
+	* deleted wifidog/templates/message_denied.html as its functions is being
+	  handled by wifidog/gw_message.php now
+	* deleted wifidog/templates/message_failed_validation.html as its functions
+	  is being handled by wifidog/gw_message.php now
+	* deleted wifidog/templates/user_management_menu.html as its not being
+	  used anymore
+	* deleted wifidog/local_content/default/footer.html as its not being
+	  used anymore
+	* deleted wifidog/local_content/default/header.html as its not being
+	  used anymore
+	* deleted wifidog/local_content/default/portal.html as its not being
+	  used anymore
+	* deleted wifidog/local_content/default/new.css as its wasn't ever used
+	* deleted wifidog/local_content/README as its content isn't valid anymore
+	  used anymore
+	* Login site now uses a Smarty template to render HTML page
+	* class MainUI now also delivers $isOwner variable for Smarty
+
+2006-02-26 Max Horváth <max.horvath@freenet.de>
+	* Hotspots map page now uses a direct Javascript call for the link
+	  "Show me on the map" (resulting in the browser not jumping to the top of
+	  the page if a user clicks on such a link)
+	* refactored hotspot status page, it now uses node list classes to generate
+	  output
+	* WIFI411_CSV has been removed from hotspot status page - it didn't work
+	  properly - a working version can be added to /wifidog/classes/NodeLists
+	* RSS feed of hotspot status now delivers language of user
+	* RSS and XML feed of hotspot status now actually do deliver data from
+	  the requested network (before the code accepted network selection but
+	  actually switched back to the current network)
+	* RSS feed of hotspot status page now gets announced in browser
+
+2006-02-25 Max Horváth <max.horvath@freenet.de>
+	* fixed undefined variable bugs in statistic classes (use of date_from and
+	  date_to), variables were processed directly from request, without any
+	  check
+	  This fixes ticket #71.
+	* clicking on a username in user logs now generates a individual user
+	  report as it does when clicking on a username on the online users page
+	* Changing the value of the "Is persistent" checkbox doesn't have to
+	  saved when JavaScript is enabled in the browser. Before this change
+	  you had to save a content. So if you wanted to delete a persistant content
+	  you first had to uncheck this checkbox, save the content and delete the
+	  content after saving it. If JavaScript is enabled in your browser you
+	  can go straight ahead, uncheck the checkbox and delete the content.
+	  This fixes ticket #73.
+	* when processing global arrays if magic quotes is enabled, WiFiDog will
+	  check for type variables
+	  This fixes ticket #84.
+	* the RSS feed of nodes now delivers the correct link to the nodes homepage
+	  This fixes ticket #80.
+	* small fix in schema_validate.php which should affect nobody (in schema
+	  version 9)
+	  This fixes ticket #79.
+	* fixed "Show all available contents for this hotspot" link which didn't
+	  work if WiFiDog wasn't located in the root folder of the webserver
+	* the "Show all available contents for this hotspot" link won't be shown
+	  anymore unless all requirements are meet that all content of a hotspot
+	  would be shown. The requirements are: you need to have at least one
+	  Content Group tagged artistic and locative content, with at least one
+	  content group element available for display.
+	  This fixes ticket #35.
+	* adjusting the location of a node via the Google maps geocoding service)
+	  and clicking the button "Use these coordinates" didn't work
+	  This fixes ticket #81 and #82.
+	* the content select box now only shows the content to a user of which is
+	  is the owner from (same mechanism has already been used on the content
+	  manager page) or all content if the user is a superadmin
+	* wifidog/admin/content_admin.php removed, because the content manager now
+	  uses the generic object administration interface
+	* the creation date of a network can be changed now (this value wasn't
+	  displayed in the admin interface, even though it was present in the
+	  database)
+	* revamped administration sidebar, cleaner interface for the superadmin,
+	  for the owner of a node nothing changes
+	* added "server administration" section to the administration interface
+	* Added administration of webservers. For one webserver not much changes.
+	  The SSL available setting has been moved to this section (and removed
+	  from config.php). Running WiFiDog on two or more webserver (with one
+	  database) you now can define the different hostnames of the webserver.
+	  Of course you can also define, which of those webserver serves SSL. This
+	  is for example essential for the Google maps feature (different API keys
+	  for different hostnames)
+	* for every network you now can define it's own Google Map initial values
+	  and map types
+	* Hotspots map page now supports different maps for different networks
+	* Hotspots map page now supports different map types for different networks
+	  This fixes ticket #69
+	* Hotspots map page now offers full multilingual support (text in the
+	  JavaScript file was english only)
+	* Hotspots map page now uses a Smarty template to render HTML page
+
+2006-02-21 Max Horváth <max.horvath@freenet.de>
+	* fixed access restriction for HTMLeditor in templates folder
+	* fixed XML error in HTMLeditors CSS and HTML templates
+	* fixed undefined variable bug in content class ContenGroup
+	* start page now uses a Smarty template to render HTML page
+	* start page now also displays information about deployed/operational nodes
+	* information about valid/online users and deployed/operational nodes gets
+	  cached if caching has been enabled (valid/online users for 1 minute,
+	  deployed/operational nodes for 5 minutes)
+
+2006-02-17 Max Horváth <max.horvath@freenet.de>
+	* refactored lost username site - now it also includes the help toolbox
+	* lost username page now focuses input field automaticly (like on login or
+	  signup page)
+	* refactored lost password site - now it also includes the help toolbox
+	* lost password page now focuses input field automaticly (like on login or
+	  signup page)
+	* refactored sesend validation email site - now it also includes the help
+	  toolbox
+	* refactored resend validation email page now focuses input field
+	  automaticly (like on login or signup page)
+
+2006-02-16 Max Horváth <max.horvath@freenet.de>
+    * added full PHPdoc documentation to Mail class
+    * added more temporary-email-address-providers to the black-list
+	* Login site now uses a Smarty template to render HTML page
+	* refactored signup site - now it also includes the help toolbox
+	* removed Phlickr directory in /lib dir as Phlickr must be installed via
+	  PEAR
+	* modified gen.sh to include new template folders for the
+	  translation file generation
+
+2006-02-15 Max Horváth <max.horvath@freenet.de>
+	* Login site now uses a Smarty template to render HTML page
+
+2006-02-14 Max Horváth <max.horvath@freenet.de>
+	* converted Session class to PHP5 style
+	* moved code used used to init PHP into wifidog/include/init_php.php
+	* fixed bug regarding APC (super globals weren't initialized before their
+	  first use
+	* in an attemp to enter the administration interface of WiFiDog and not
+	  being logged in you'll be redirected to the administration interface after
+	  a successful login, if you are an admin or owner of a node. This only
+	  works for a virtual login, as it isn't needed to be done when logging in
+	  via a WiFiDog node (then you have to login anyway on the splash page
+	  first)
+	* fixed preview of network in administration interface as content for a
+	  network as is isn't available in the code, yet
+
+2006-02-13 Rob Janes <janes.rob@gmail.com>
+    * cron/cleanup.php needed new way to call common.php
+	* added cron/vacuum.php to round things out
+
+2006-02-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix a bunch of file inclusion bugs in the statistics subsystem.
+	  This is only a ad-hac fix. It seems the requires for just about every
+	  class have been stripped off. This must be fixed, all classes should
+	  require_once all classes or include that they need that isn't included by
+	  a parent class.
+
+2006-02-06 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/local_content/default/hotspot_logo.jpg: Delete deprecated file
+	* wifidog/local_content/default/hotspot_logo_banner.jpg: Delete deprecated
+	  file
+
+2006-02-04 Max Horváth <max.horvath@freenet.de>
+	* MainUI class now uses Smarty templates to render HTML pages
+	* display of debug messages by using $_REQUEST['debug_request'] on any
+	  page is now only possible for a super admin
+	* caching class now supports lifetime of a cache and every data type
+	  supported by PHP (except the resource-type)
+	* Content class caches available content plugins for 7 days if caching has
+	  been enabled -> results in a nice speed-up on every page call because
+	  of 17 saved filesystem queries
+	* converted Security class to PHP5 style and it's functions to static
+	  functions
+	* fixed broken HTMLeditor support
+	* implemented PEAR::HTML_Safe cache support - if PEAR::HTML_Safe has been
+	  installed it strips down all potentially dangerous content within HTML
+	  that has been entered using the content plugins Langstring,
+	  TrivialLangstring and HTMLeditor
+	* moved /wifidog/include/HTMLeditor to /wifidog/content/HTMLeditor
+	* fixed thrown exception in path_defines_base.php (sprintf() was used
+	  uncorrectly)
+	* template for definition of SYSTEM_PATH has been added to config.php
+	  for easier definiton when path detection failes
+	* from now on caching is enabled by default in config.php - it means that
+	  WiFiDog caching features will automaticly be used if PEAR::Cache_Lite
+	  has been installed
+	* updated installation file to represent all the new modules that can be
+	  installed to use all WiFiDog features
+
+2006-01-31 Benoit Grégoire  <benoitg@coeus.ca>
+	* path_defines_base.php:  Fix syntax errors in the exception thrown. Add
+	  more meaningfull output
+
+2006-01-29 Max Horváth <max.horvath@freenet.de>
+	* WiFiDog now detects APC PHP cache and eAccelerator PHP cache and disables
+	  both PHP caches, because WiFiDog currently doesn't run with either of
+	  those PHP caches (I'm still investigating why)
+	* added a missing <ul> HTML tag on the administration page
+	* the validation mail sent to new users now includes the full path to the
+	  WiFiDog installation (before it assumed WiFiDog to be installed in
+	  the document root of the webserver)
+	* fixed display of start button of portal when WiFiDog is not installed
+	  in the document root of the webserver
+	* replaced $_SERVER["DOCUMENT_ROOT"]-stuff with our defines made in
+	  path_defines_base.php
+	* updated HTMLeditor content class to use the new, moved stylesheet.css
+	* fixed error messages not displaying technical support e-mail address
+
+2006-01-25 Max Horváth <max.horvath@freenet.de>
+	* a notice message regarding timezones was being displayed when running PHP
+	  5.1.0+ due to rewritten date functions of PHP. There is a new config flag
+	  in config.php named DATE_TIMEZONE. Set it to your local timezone.
+	  Don't forget to update your local.config.php in case you're using it.
+
+2006-01-24 Benoit Grégoire  <benoitg@coeus.ca>
+	* Dependencies.php:  We missed one more instance of non-unifrom code for
+	  path detection. The Dependencies class now uses the code in
+	  include/path_defines_base.php like the rest of the system. Also make it
+	  returns more usefull error messages.
+	* SmartyWifidog.php: Output the error returned by Dependencies if Smarty
+      cannot be found for some reason.
+
+2006-01-23 Max Horváth <max.horvath@freenet.de>
+	* Removed compiled PHPdoc documentation
+	* moved createDoc.sh to "doc" directory, documentation can be generated on
+	  the fly now, in the future we'll be generating a nightly PHPdoc on
+	  wifidog.org
+	* renamed "ChangeLog" to CHANGELOG, resulting this file being parsed by
+	  PHPdoc
+	* moved "header.gif" image to its own folder in the images directory
+	* touched almost every PHP file in WiFiDog auth server for PHPdoc generating
+	  compiling without any warnings
+	* Initialized uninitialized variables in Node class
+	* Fixed initialization error of one variable
+	* Configuration file (config.php) will be read before path detection is
+	  being started (otherwise there was no chance to set a manual SYSTEM_PATH)
+
+2006-01-22 Benoit Grégoire  <benoitg@coeus.ca>
+	* common.php: Real fix for Ticket #59 ;)
+	* common.php: Untested fix for Ticket #59
+
+2006-01-18 François Proulx <francois.proulx@gmail.com>
+	* Remove unneeded .cvsignore files since the svn:ignore property is set to
+	  the same list
+
+2006-01-11 Rob Janes <janes.rob@gmail.com>
+    * classes/User.php: added setters, getters, throw exceptions, added
+      refresh() subr, tweaked language
+
+2006-01-09 Max Horváth <max.horvath@freenet.de>
+	* createDoc.sh: added description of how to install requirements
+
+2006-01-08 Benoit Grégoire  <benoitg@coeus.ca>
+ 	* common.php: Improve path detection code, and start moving PATH detection
+ 	  back to a central location. You should NEVER go to any $_SERVER[]
+ 	  variables for path related stuff, all you need is already available
+ 	  in defines.
+ 	* UserReport.php: Remove dangling reference to BASEPATH.
+ 	* install.php: Use centralised path detection.
+
+2006-01-04 Benoit Grégoire  <benoitg@coeus.ca>
+	* config.php, common.php: Completely remove SYSTEM_PATH from config.php,
+	  making one less config option to manage.  It is now autodetected.
+
+2006-01-03 Rob Janes <janes.rob@gmail.com>
+	* added support for classes/EventLogging.php.
+	* modified include/common.php to pull in the EventLogging class
+	* modified index.php to kick start error logging with minimal setup.
+	  I didn't setup a css for this, so any errors are simply pushed out
+	  when the logging channel is destructed.
+	* other changes to include/common.php - a host of utility functions,
+	  prefixed with "cmn" to avoid namespace collision.
+	* stock config.php, added global $AVAIL_LOCALE_ARRAY, cause of my change
+	  to include/common.php, wrapping the require_once in a function.
+
+2006-01-04 Pascal Leclerc <isf@plec.ca>
+    * install.php: New security validation and small bugs fix in admin account
+      creation
+
+2006-01-02 Rob Janes <janes.rob@gmail.com>
+	* split static stylesheet.css from smarty template stuff.
+	  local_content/default/stylesheet.css has only smarty template stuff.
+	  local_content/common/stylesheet.css has all the rest.
+	* classes/MainUI.php changed to <link ...> the common stylesheet.css, while
+	  still smarty fetching the templated stylesheet.
+	* classes/SmartyWifidog.php changed to set a smarty template variable so
+	  that the templating stylesheet could work.
+
+2005-12-29 François Proulx <francois.proulx@gmail.com>
+	* Integrating Philippe's code for User class
+	* This build needs extensive testing please
+	* E-mail blacklisting (Mail class)
+
+2005-12-29 François Proulx <francois.proulx@gmail.com>
+	* Added Aidan's file_exists_incpath function to Dependencies class
+	* Translated and standardized most of PostgreSQL abstraction class.
+	* Removed blank lines at end of many files
+	* Tested the new Phlickr package, which fixes URL on Flickr
+
+2005-12-28 Max Horváth <max.horvath@freenet.de>
+	* Removed BASEPATH define from source - resulting in a better
+	  require-overview
+	* speed improvement of 7% by optimizing Dependencies class
+	* improved documentation of content classes
+
+2005-12-26 François Proulx <francois.proulx@gmail.com>
+	* Fixed bug when the same user was owner of many nodes
+	* Added missing reference to content_display_location initial data in dump
+	  script
+
+2005-12-26 François Proulx <francois.proulx@gmail.com>
+	* Tiny modifications to config.php
+	* Reinserted the deprecated defines, created errors on my system
+	* Fully translated FormSelectGenerator class, Locale
+	* Added comments to Utils, Locale etc..
+	* Fully tested installation from scratch using blank database with
+	  installation script
+	* Improved installation script a bit
+	* Synched SQL for CVS schema 29 --> 33
+
+2005-12-26 Max Horváth <max.horvath@freenet.de>
+	* added new headers to every source file
+	* converted file to represent a tab as four (4) spaces
+	* added PhpDocumentor documentation
+	* added WiFiDog skin to HTMLeditor
+	* language selection in a content class now shows the language name instead
+	  of the language code
+	* added caching support to content classes Langstring and TrivialLangstring
+
+2005-12-15 Max Horváth <max.horvath@freenet.de>
+	* fixed bug in dependencies class when gettext support for PHP is not
+	  available
+
+2005-12-14 Max Horváth <max.horvath@freenet.de>
+	* fixed bug in config.php:59 ... was unable to select DB server
+
+2005-12-08 Max Horváth <max.horvath@freenet.de>
+	* added FCKeditor to the supported libraries
+	* added new content type: HTMLeditor
+	* added new caching class which uses PEAR::Cache_Lite - must be enabled in
+	  config.php
+	* HTMLeditor is the first class using the new caching class
+	* removed unused function from content type Langstring
+	* beautified and reorganized config.php and added a new switch for the
+	  caching class
+
+2005-12-06 Max Horváth <max.horvath@freenet.de>
+	* fixed SQL bug when calling the "report configuration" page as a node owner
+
+2005-12-05 François Proulx <francois.proulx@gmail.com>
+	* Crunched the Google Maps Div block for better display on small screens
+
+2005-12-05 Max Horváth <max.horvath@freenet.de>
+	* fixed bug when calling the preview version of a login page
+
+2005-11-30 Benoit Grégoire  <benoitg@coeus.ca>
+	* User.php: Fix a bug in the sql query in isUserValid(). Checked that the
+	  change works with postgresql 7.4 and 8. It is still not understood why
+	  ISF doesn't encounter this bug on it's production server.
+
+2005-11-28 François Proulx <francois.proulx@gmail.com>
+	* Improved Flickr user output
+	* Mostly completed Flickr admin UI
+	* Changed display algorithm to display sequentially
+
+2005-11-25 Rob Janes <janes.rob@gmail.com>
+	* EventLogging class initial checkin
+
+2005-11-14 Max Horváth <max.horvath@freenet.de>
+	* fixed path to included classes
+	  Guys, please check the paths to included files twice next time you're
+	  moving files
+
+2005-11-12 François Proulx <francois.proulx@gmail.com>
+	* Fixed schema 33 update
+	* fixed css
+
+2005-11-11 François Proulx <francois.proulx@gmail.com>
+	* Fixed Admin hotspot location map
+	* Take note: Google Maps updated their API key system, so that you simply
+	  need to register a key for the whole domain.
+	  ie. one key for http://auth.abc.org will work even in sub-directories
+	* Changed the Content classes structure to make them "pluggable" more easily
+	  as requested during last developpers meeting
+	* node_list.php now support column sorting, node_id are naturally sorted
+	  (numerical order, alphabetic)
+	* Added 2-dimensionnal natural sort algorithm to Utils class
+	* fixed Node::getSelectNodeUI to naturally sort by node_id
+	* Improved Flickr content class
+	* Modified Flickr database schema
+	* Modified CSS look and feel
+
+2005-11-08 Philippe April  <philippe@ilesansfil.org>
+	* Put a note to mention the roles of users in the logged in users list
+	* Fixed online users link to statistics
+
+2005-11-01 Max Horváth <max.horvath@freenet.de>
+	* added german translation
+	* modified gen.sh to include geocoder and statistics classes for the
+	  translation file generation
+	* modified hotspot status page to allow translations of every string
+	* modified node list page to allow translations of every string
+	* modified FAQ page to allow translations of every string
+	* fixed bug in FAQ page which caused the Safari browser to display very
+	  large text
+	* modified online users page in administration to allow translations of
+	  every string
+	* added Phlickr directory to /lib
+
+2005-10-25 Francois Proulx <francois.proulx@gmail.com>
+	* /classes/DateTime.php : First iteration of DateTime abstraction class
+	* Basic support for datetime input field.
+	* TODO : Overhaul with full-fledged datetime selector...
+
+2005-10-25 Francois Proulx <francois.proulx@gmail.com>
+	* AuthenticatorRadius : Fixed legacy variable misuse
+
+2005-10-24 Benoit Grégoire  <benoitg@coeus.ca>
+	* AuthenticatorRadius:  Fix bug reported by kouete, by inspection. Fix not
+	  actually tested. Guys, read the documentation of the function parameters
+	  when you code, it's there to help you ;)
+
+2005-10-21 Francois Proulx <francois.proulx@gmail.com>
+	* Integration testing for Radius debugging
+	* Added network_id parameter to hotspot_status.php for selecting network
+	* Default network will be automatically selected...
+
+2005-10-04 Francois Proulx <francois.proulx@gmail.com>
+	* Scaled down network logo
+	* Changed CSS accordingly
+	* Modified online users SQL query to sort better
+
+2005-10-04 Francois Proulx <francois.proulx@gmail.com>
+	* Removed unwanted file from checkout
+
+2005-10-07 Philippe April  <philippe@ilesansfil.org>
+	* Released wifidog-auth-1.0.0_m2
+
+2005-10-06 Benoit Grégoire  <benoitg@coeus.ca>
+	* AuthenticatorLocalUserNoSignup:  Make a new authenticator, identical to
+	  AuthenticatorLocalUser but disalowing new user signup.  When setting up
+	  a server, you can add your users, and then change the authenticator class
+	  from AuthenticatorLocalUser to AuthenticatorLocalUserNoSignup
+	* signup.php: Actually enforce it. Still needs improvement, as the network
+	  is still shown for signing up.
+
+2005-10-04 Francois Proulx <francois.proulx@gmail.com>
+	* Translated some error message in SQL abstraction
+	* Cleaned up error messages when starting from scratch
+	* Added link to install script, when the database is empty.
+	* Fixed initial data dump script
+
+2005-10-04 Benoit Grégoire  <benoitg@coeus.ca>
+	* Remove a bunch of deprecated methods from the Node object,
+	  document undocumented methods.
+	* Make the node id editable.  This allows the gateway "MAC address as node
+	  ID" patch by London wireless to be usable with the standard auth server,
+	  and to transition to using MAC address as node ID.
+	* Fix a saving problem with all the content types with some versions of PHP
+	* Add a new Content type:  IFrameRest.  This allows the result of a REST
+	  style query returning HTML to be displayed in a HTML iframeset. Currently
+	  supported are substitution of the node_id, the user_id and the last
+	  display date in the get query.
+	* CVS version of the auth server should now be "reasonnably" safe to use in
+	  production, so the 2005-09-01 notice is no longuer in effect.
+
+2005-10-04 Francois Proulx <francois.proulx@gmail.com>
+	* Translated signup page messages
+
+2005-09-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* Partial login page content manager support (Node only for now)
+
+2005-09-27 Philippe April  <philippe@ilesansfil.org>
+	* Guess the best language from what the browser sends,
+	  otherwise use the default.
+
+2005-09-26 Francois Proulx <francois.proulx@gmail.com>
+	* Translated the few new sentences on the login page
+
+2005-09-26 Benoit Grégoire  <benoitg@coeus.ca>
+	* login/index.php, stylesheet.css:  Make the create new account bigger, and
+	  remove unnecessary words.
+
+2005-09-26 Francois Proulx <francois.proulx@gmail.com>
+	* Completed translations
+
+2005-09-26 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed annoying bug in new google maps code
+
+2005-09-25 Francois Proulx <francois.proulx@gmail.com>
+	* Complete rewrite of Google maps code, now stands as a js class
+	* relooking of mapping stuff
+	* wrote basic "Find the closest hotspot" widget for canada geocoding only...
+	* fixed broken xml, damn blank lines...
+
+2005-09-25 Benoit Grégoire  <benoitg@coeus.ca>
+	* Statistics:  At long last, the monster statistics commit.
+	  We finally have a stable, documented and uniform codebase for statistics.
+	  This resulted is removal of several functions in other classes too.
+	  There are a few new reports, but mostly, each report is a lot more
+	  flexible.
+	  Still TODO:
+	  - Security:  This is to be implemented directly in the Statistics class,
+	    by forcing restrictions to the selected nodes and network.
+	  - Support selecting multiple users for a report.
+	    The code and SQL queries support it, but the UI doesn't. An easy and
+	    quick way would be to simply parse a coma-separated list. Comment are
+	    off course welcome!
+
+2005-09-25 Francois Proulx <francois.proulx@gmail.com>
+	* Updated initial SQL script to schema 29
+	* Remove useless includes in some files, preventing from using the "plugin"
+	  contents
+
+2005-09-25 Philippe April  <philippe@ilesansfil.org>
+	* Make method getCurrentRealNode ORDER BY DESC so it picks
+	  up the latest network name
+
+2005-09-20 Francois Proulx <francois.proulx@gmail.com>
+	* Changed the output layout of the Google Maps hotspots list
+	* Added "Loading" message on Google Maps
+
+2005-09-17 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed forgotten reference to getNetwork in AuthLocalUser
+
+2005-09-17 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed a few bugs in Radius class
+	* Improved syntax and completed 100% of French translations
+
+2005-09-17 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed RADIUS bug #1287000
+
+2005-09-16 Francois Proulx <francois.proulx@gmail.com>
+	* Added Mail Classes to circumvent mb_send_mail UTF-8 problems
+	* This class provides UTF-8 mailing for validation e-mail, lost password,
+	  lost username...
+	* Fixes reported bug where users would not receive validation email on
+	  some servers
+
+2005-09-13 Francois Proulx <francois.proulx@gmail.com>
+	* Added bytes in words for online users
+
+2005-09-13 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed bug in user stats
+
+2005-09-13 Francois Proulx <francois.proulx@gmail.com>
+	* Added access permissions for statistics.
+
+2005-09-12 Benoit Grégoire  <benoitg@coeus.ca>
+	* schema_validate.php:  Fix a bug version 26.  The conversion of the old
+	  account_origin as a parameter to the authenticator was wrong.  To fix it
+	  manually if you already ran the script, you must quote the parameter in
+	  column network_authenticator_params in the networks table.
+	* Network.php:  Fix improper quoting of Authenticator arguments.
+	* RssPressReview.php:  Make expansion of today's item optionnal.
+
+2005-09-11 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed dependency check, found a workaround for the file_exists problem
+
+2005-09-11 Francois Proulx <francois.proulx@gmail.com>
+	* Added dependency check for Phlickr
+
+2005-09-11 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed Flickr support
+	* Now using PEAR version of Phlickr
+	* Download the latest package and install like this: pear install
+	  PhlickrXYZ.tar.gz
+
+2005-09-10 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed dependency check
+
+2005-09-10 Francois Proulx <francois.proulx@gmail.com>
+	* Removed many blank lines after php tags
+	* added more checks, for dates etc...
+	* changed sorting mode
+
+2005-09-10 Benoit Grégoire  <benoitg@coeus.ca>
+	* Add UI to add a new Network
+	* Improve UI to add a new Node and new Content
+
+2005-09-10 Philippe April  <philippe@ilesansfil.org>
+	* signup.php: Fixed bug in detecting is the user is already part of the
+	  network.
+	* classes/{Authenticator,Network,Node}.php: isset, and issues preventing
+	  users from logging out.
+	* add BASEPATH to most files with require_once
+	* Added dependency checking class
+	* Don't show the admin menu if user does not have access
+	* Got rid of user_log_detailed.html, using stats.php instead
+
+2005-09-10 Francois Proulx <francois.proulx@gmail.com>
+	* Automatically redirect user to login form when trying to access admin
+	* Added various isset, empty tests, vars init in stats (to avoid PHP
+	  warning)
+
+2005-09-08 Philippe April  <philippe@ilesansfil.org>
+	* New stats system with graphs
+	* Changed the UI a bit to reflect this change
+	* Updated stylesheet
+
+2005-09-08 Benoit Grégoire  <benoitg@coeus.ca>
+	* portal/index.php:  Custom portal redirect now operational.
+
+2005-09-08 Benoit Grégoire  <benoitg@coeus.ca>
+	* MainUI:  Move call to garbage_collect() here.
+	* portal/index.php:  New feature:  Custom portal redirect.
+	* rework much of the logout code
+
+2005-09-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* login/index.php:  Fix getSplashOnlyUser() method call.
+
+2005-09-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* RssPressReview.php:  Fix z-index so the hovers will overlap the expanded
+	  news.
+	* login/index.php:  Reorganise code to make it more legible and comment what
+	  it does. Emphasise error messages and put them right above where they
+	  clicked so users can actually see them.
+	* Security.php:  Remove deprecated login code
+	* Authenticator.php: Change calling convention for better encapsulation
+	* New feature:  Support multiple simultaneous logins if enabled in network
+	  configuration
+	* New feature (in testing): Splash-only node support
+
+2005-09-05 Benoit Grégoire  <benoitg@coeus.ca>
+	* include/common.php:  Add code to undo the effect of magic_quote if enabled
+	  in the server config.  It is still strongly recommended to disable
+	  magic_quote
+	* Node.php:  Add UI for splash only node and custom portal
+	* Update schema
+
+2005-09-04 Francois Proulx <francois.proulx@gmail.com>
+	* Removed update.php script ( should not have been in CVS )
+	* Moved authenticator require in Network getAuthenticator()
+
+2005-09-03 Philippe April  <philippe@ilesansfil.org>
+	* Schema change: Added last_paged column to nodes table
+	* Replaced HOTSPOT_NETWORK_NAME with hotspot_network_name in all templates
+	* s/Networt/Network/
+	* Fixed signing up and validation, typos
+
+2005-09-01 Benoit Grégoire  <benoitg@coeus.ca>
+	WARNING:  DO NOT use the CVS auth server in production until further notice.
+	Massive internal changes are underway.
+	Use the release tagged 1.0m1 in production.
+	* Network abstraction mostly complete, including UI.
+	  All that is missing is new network creation, network stakeholder UI and
+	  testing.
+	* Cleanup the config file of all the now unneeded constants.
+	  Note that the install script is currently broken.
+	  There can now be multiple networks on the server.
+	  The install script will have to make sure that there is at least one, with
+	  one super-admin
+
+2005-08-31 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed bug where node ID containing periods, whitespaces or underscores
+	  would confuse PHP
+	* MD5 hash is used to make sur the http vars are unique
+	* This is only valid for Node administration
+
+NOTE:  the 1.0m1 release was tagged here
+
+2005-08-31 Benoit Grégoire  <benoitg@coeus.ca>
+	* Node.php:  Fix node creation
+
+2005-08-31 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed new node creation bug
+
+2005-08-29 Philippe April <philippe@ilesansfil.org>
+	* js/gmaps_hotspots_status_map.js: Fixed small bug in that makes prevents
+	  IE to see the map properly.
+
+2005-08-22 Pascal Leclerc  <pascal@plec.ca>
+	* install.php, Change javascript to OnClick + dependencie note
+	* schema_validate.php, Fix broken DB update for install.php
+	* SmartyWifidog.php, Add automatic redirect to install.php if Smarty not
+	  installed
+
+2005-08-22 Francois Proulx <francois.proulx@gmail.com>
+	* Added edit button for quickly accessing Content editing mode
+	* Changed the layout so the admin ui fits in a tighter space
+
+2005-08-21 Francois Proulx <francois.proulx@gmail.com>
+	* Added reference to new street address fields in mapping page and on status
+	  template
+	* Fix bug on line 756 of RssPressReview , added check for empty var.
+	* Flickr support is broken, added  bug to sf.net tracker
+
+2005-08-21 Francois Proulx <francois.proulx@gmail.com>
+	* Node admin UI should now be completed.
+	* Minor bug fixes in Geocoder
+	* Merged node_owners and node_tech_officers table into node_stakeholders
+
+2005-08-19 Benoit Grégoire  <benoitg@coeus.ca>
+	* New schema version
+	* install.php, tmp/magpie_cache/:  Move all magpie caches
+	  to a central location, adjust install script to match.
+	* classes/MainUI.php:  Add $_REQUEST array output if debug_request is set as
+	  a parameter to the page
+	* classes/Network.php, classes/Node.php:  Change content ordering to be most
+	  recently subscribed first, this is a stopgap measure while waiting for
+	  Content ordering to be explicitely settable.
+	* classes/Content/RssAggregator.php:  Full admin UI, some bug fixes
+	* lib/RssPressReview/RssPressReview.php: New version, adds isFeedAvailable()
+	  and getFeedTitle() methods.
+	  Fixes minor bugs
+
+2005-08-17 Pascal Leclerc  <pascal@plec.ca>
+    * Added install script + minor changes in schema_validate.php
+
+2005-08-15 Benoit Grégoire  <benoitg@coeus.ca>
+	* Re-Run sync_sql_for_cvs.sh, did not run to completion last time.
+
+2005-08-15 Benoit Grégoire  <benoitg@coeus.ca>
+	* Run sync_sql_for_cvs.sh
+	* sql/dump_initial_data_postgres.sh:  Fix a hardcoded reference to rss_url
+	  which no longer exists
+	* .project:  Remove mistakenly commited file in last commit
+	* .cvsignore:  Add file to avoid previous error
+
+2005-08-12 Francois Proulx <francois.proulx@gmail.com>
+	* Added missing GisPoint fille to CVS
+	* Fixed some bugs
+	* Added Technical officer table
+	* Added technical officer management to node UI
+
+2005-08-12 Francois Proulx <francois.proulx@gmail.com>
+	* Changed config.php GMAPS_API_KEY to GMAPS_PUBLIC_API_KEY
+	* Added GMAPS_ADMIN_API_KEY, needed for admin UI
+	* This is a stupid limitation of the Google Maps API which matches the
+	  complete URL path
+	* Added /classes/GisPoint.php class
+	* Will add geocode + Google Maps capabilities very soon
+	* Notice : the XML schema will change very soon...
+	* I will try to keep the streetAddress field intact so I won't break
+	  backward compat.
+
+2005-08-12 Benoit Grégoire  <benoitg@coeus.ca>
+	* classes/MainUI.php: Move the call to schema_validate() in MainUI's
+	  constructor
+	* lib/RssPressReview/RssPressReview.php: Finish rewrite. Move there to
+	  reflect it's independently maintained status
+	* wifidog/classes/Content/HotspotRss.php:  Delete the class, obsolete
+	* wifidog/classes/Content/RssAggregator.php:  Functionnal, but needs it's
+	  admin UI written.
+	* wifidog/include/schema_validate.php:  Create the table structure for the
+	  new RssAggregator.
+	  Remove rss_url in nodes table, no longer needed.  Move it's data to the
+	  new Content class.
+
+2005-08-11 Francois Proulx <francois.proulx@gmail.com>
+	* Refactored the Admin UI.
+	* I need to write the upload form and rewrite statistics
+
+2005-08-10 Francois Proulx <francois.proulx@gmail.com>
+	* More GIS stuff
+
+2005-08-10 Francois Proulx <francois.proulx@gmail.com>
+	* Added Geocoders
+	  - /classes/AbstractGeocoder.php
+	  - /classes/Geocoders/GeocoderCanada.php
+	  - /classes/Geocoders/GeocoderUsa.php
+	* This will be used for enterring GIS data
+	* Coming in the next few days: set hotspot gis using Google Maps + Geocoding
+
+2005-01-25 Pascal Leclerc  <pascal@plec.ca>
+	* Fix hardcoded images path in classes/MainUI.php
+
+2005-07-25 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed bug in hotspot_status , added htmlspecialchars();
+	* This solved the bug where ampersands would break the XML
+
+2005-07-17 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed bugs in gen.sh, compile.sh locale scripts
+
+2005-07-12 Francois Proulx <francois.proulx@gmail.com>
+	* Changed XML element from hotspotsMetadata to hotspots and added networkUri
+	  element to networkMetadata
+
+2005-07-12 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed XML protocol for exchanging hotspots status.
+	* Should now be considered stable (stamped v1.0)
+	* Fixed hotspots status map to reflect the changes
+	* Added french translations
+
+2005-07-11 Francois Proulx <francois.proulx@gmail.com>
+	* Changed link to hotspots map using NON ssl because Google Keys are
+	  sensitive to the whole path.
+
+2005-07-11 Benoit Grégoire  <benoitg@coeus.ca>
+	* classes/RssPressReview.php: Begin rewrite.
+	* classes/MainUI.php: Add addFooterScript() function.
+	* venues_map.php:  Workaround the IE DOM problem.
+
+2005-07-05 Francois Proulx <francois.proulx@gmail.com>
+	* Changed wording in hotspots status page added legend
+
+2005-07-05 Francois Proulx <francois.proulx@gmail.com>
+	* Minor adjustements to icon positionning
+
+2005-07-05 Francois Proulx <francois.proulx@gmail.com>
+	* Changed google maps marker icons
+
+2005-07-05 Francois Proulx <francois.proulx@gmail.com>
+	* Added missing elements in XML exchange format
+	* Stable v1.0 for XML exchange format and Google Maps mapping
+	* Added GMaps constants to config file
+	* Unsmartied index.php , added link to map
+	* Check config.php to set corresponding values
+	* You can now use hotspot_status.php?format=XML along with xslt query string
+	  parament to convert your XML document
+	* For this to work, You need to have activated XSLT ( see config file )
+
+2005-07-05 Francois Proulx <francois.proulx@gmail.com>
+	* Added Google Maps mapping venues_map.php
+	* /js/venues_status_map.js  JavaScript code for Mapping
+	* In beta : tested successfuly with 48 nodes in the Montreal area, loads in
+	  a snap
+
+2005-07-03 Francois Proulx <francois.proulx@gmail.com>
+	* Updated the XML venues status format ( version 1.0, once approved )
+	* Added long / lat fields to nodes table ( for mapping purposes )
+
+2005-06-17 Francois Proulx <francois.proulx@gmail.com>
+	* Added IFrame and SimpleIFrame content types.
+
+2005-06-28 Benoit Grégoire  <benoitg@coeus.ca>
+	* classes/Content/Langstring.php:  Bug fix:  Langstring was always
+	  non-persistent, no matter the checkbox.  Move the code to
+	  TrivialLangstring.php where it belongs.
+
+2005-06-21 Benoit Grégoire  <benoitg@coeus.ca>
+	* portal/inted.php:  Implement the start button functionnality (maybe it
+	  would be better to call it "use the Internet").  From now on, once
+	  authenticated and when pressing the start button on the portal, the user
+	  will be sent to the page he originally tried to access.  A second window
+	  will be popped with the portal page so he can come back to it. The window
+	  is collapsed, and can be expanded back by clicking on the link. I tried
+	  to make it cross platform (and mostly did) but it's still buggy in IE.
+
+	  At the same time, this fixes the goof reported by Rob Kelley of
+	  nycwireless.net
+
+	* portal/missing_original_url.php:  Displayed when the user tries to use the
+	  start button but for some reason the original url is unavailable
+	* common.php:  New define CURRENT_REQUEST_URL, hopefully containing the full
+	  URL in the user's URL bar.
+
+
+2005-06-17 Francois Proulx <francois.proulx@gmail.com>
+	* Removed forced Pattern Language on all hotspots
+	* Do not show hotspot logo in portal page, only on login, until we find a
+	  better layout
+
+2005-06-16 Francois Proulx <francois.proulx@gmail.com>
+	* Added XML output format for hotspot_status.php
+	* Rough draft v1.0
+	* TODO move to different classes once stabilized
+	* Can use XSLT, if activated ( XSLT_SUPPORT constant )
+	* ie : http://wifidog-auth.org/hotspot_status.php?format=XML&xslt=http://wifidog-auth.org/xslt/hotspot_status.xsl
+	* or simply : http://wifidog-auth.org/hotspot_status.php?format=XML
+
+2005-06-06 Francois Proulx <francois.proulx@gmail.com>
+	* Added long description field to content table
+	* MUST use schema_validate
+	* Modified Pattern Language to be more generic
+	* resend changelog
+
+2005-06-06 Francois Proulx <francois.proulx@gmail.com>
+	* Made changes to Pattern Language ( Kate Armstrong )
+
+2005-05-30 Philippe April <philippe@ilesansfil.org>
+	* Show username in user_stats.php instead of user_id
+	  and in other admin pages
+
+2005-05-30 Francois Proulx <francois.proulx@gmail.com>
+	* Changed language selectbox name so it does not clash with ISF's domain
+	  cookie
+	* Fixed setlocale algorithm in Locale.php
+
+2005-05-29 Francois Proulx <francois.proulx@gmail.com>
+	* Missing null check in validate.php
+
+2005-05-27 Francois Proulx <francois.proulx@gmail.com>
+	* Changed the signup process to make it smoother for users
+	* The user will automatically be granted the 15 minutes if he's signing up
+	  at a real hotspot
+	* If the user closes his browser during the 15 minutes and loses its
+	  session, we will regenerate it
+	* Added big red message to the top of the portal page, warning user to
+	  validate as soon as possible
+	* Fixed translation typos
+
+2005-05-26 Benoit Grégoire  <benoitg@coeus.ca>
+	* Someone moved the fallback gettext functions definition (for when gettext
+	  isn't installed) inside the static setCurrentLocale method, completely
+	  breaking the system when PHP doesn't have gettext support.  This is an
+	  untested fix.
+
+2005-05-24 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed bug in auth.php to let users go through when the click twice on the
+	  login button
+	* Fixed bug in hotspot_log.php
+
+2005-05-24 Francois Proulx <francois.proulx@gmail.com>
+	* Added "Get access statistics" button to Node admin to get hotspot specific
+	  stats
+	* Added search box in Users log to get a specific user stats quickly
+
+2005-05-24 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed typo in some translations
+	* Cleaned-up todos
+
+2005-05-18 Francois Proulx <francois.proulx@gmail.com>
+	* Added strip_tags in RssPreview ( some malformed HTML would break the page
+	  layout)
+
+2005-05-16 Francois Proulx <francois.proulx@gmail.com>
+	* Changed login message in MainUI to make it clearer what the login button
+	  will do
+
+2005-05-13 Philippe April <philippe@ilesansfil.org>
+	* Added deployment status to node_list
+
+2005-05-11 Francois Proulx <francois.proulx@gmail.com>
+	* Began writing user profiles
+	* Added many methods to User class
+	* Added node quota fields in DB ( bandwidth, throttling ...)
+
+2005-05-10 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed Login link in signup page ( MainUI.php ) if the Session has gw_id,
+	  gw_address, gw_port show physical login link
+
+2005-05-10 Francois Proulx <francois.proulx@gmail.com>
+	* Added download button CSS class to style button
+
+2005-05-10 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed wrong method name in File.php
+	* Added strip tags to Langstring
+	* Basic styling of content_admin table
+
+2005-05-04 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed serialization issue ( flickr)
+2005-05-04 Francois Proulx <francois.proulx@gmail.com>
+	* Improved caching
+	* Wrote very basic gridview code for Flickr
+
+2005-05-04 Francois Proulx <francois.proulx@gmail.com>
+	* Implemented caching for Flickr
+	* Need to contact Phlickr to see how we could do better, since serialize
+	  does not work OK on objects
+
+2005-05-04 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed bug concerning Content-Length header
+	* Changed default Unit size for setLocalFileSize to bytes
+
+2005-05-04 Francois Proulx <francois.proulx@gmail.com>
+	* Added BLOB support
+	* modified file_download.php to support new header attributes
+	* Added ImportLargeObject, UnlinkLargeObject to PG SQL abtraction
+	* Make sure your PHP.ini contains the right value to allow big downloads
+	* Check : http://ca3.php.net/manual/en/features.file-upload.common-pitfalls.php
+	* ISF Live server is now configured to support 100 megabytes files
+
+2005-05-04 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed CSS IE Bug
+	* Fixed SQL query
+	* NEED HELP FROM A WEB DESIGNER !!!!!
+
+2005-05-03 Francois Proulx <francois.proulx@gmail.com>
+	* Disabled logging in Pattern Language archives
+
+2005-05-03 Francois Proulx <francois.proulx@gmail.com>
+	* Having for SQL query... :-(
+
+2005-05-02 Francois Proulx <francois.proulx@gmail.com>
+	* PatternLanguage is now completed
+
+2005-04-30 Francois Proulx <francois.proulx@gmail.com>
+	* Logout button will now destroy session AND render token USED
+
+2005-04-30 Francois Proulx <francois.proulx@gmail.com>
+	* Fixed bug that could potentially let non owners add content in /content
+	  through content groups
+	* Admin menu won't show node selector if the user is not owner of at least
+	  one hotspot
+	* Added Width, height support for Picture
+
+2005-04-30 Francois Proulx <francois.proulx@gmail.com>
+	* Did my best for content styling ... ( it's 5h00 am )
+
+2005-04-30 Francois Proulx <francois.proulx@gmail.com>
+	* Updated sync_sql_for_cvs.sh
+
+2005-04-30 François Proulx <francois.proulx@gmail.com>
+	* ChangeLog entry missed by CVS ?!
+	* Locale now decomposes the locale string by '_'
+	* Now works on Mac OS X ( but you must use fr_CA, en_CA or fr_FR ... )
+
+2005-04-30 François Proulx <francois.proulx@gmail.com>
+	* Trying to solve RSS encoding bug...
+	* Testing on live server
+
+2005-04-29 François Proulx <francois.proulx@gmail.com>
+	* Removed all inline unuseful javascript code on submit buttons
+	  onclick='submit()'
+	* This conflicted with the actual click on the submit button in Safari
+	* Fixed check in Network for isOwner, only check superAdmin
+	* Fixed bug so you can't add an existing content group to itself (deadlock)
+	* Started coding Pattern language narrative display
+
+2005-04-29 François Proulx <francois.proulx@gmail.com>
+	* Wrote User.php addcontent, removeContent, getAllContent()
+	* Wrote Content.php subscrite() and unsubscribe()
+	* Added parameters to getAllContent() in Node and Network
+	  (exclude_subscribed_content)
+	* These will be used for subscribing a to some content
+	* Pattern Language will be the first to use it
+	* Online users lists
+	* Fixed bugs in Node and Network ( isOwner check )
+
+2005-04-28 François Proulx <francois.proulx@gmail.com>
+	* Logout button build a query string containing gw_id, gw_address, gw_port
+	  ( if available ), so that a user at a physical hotspot will get the login
+	  page from the hotspot he is.
+	* Fixed but in Locale ( did not propertly set the locale in the session )
+
+2005-04-28 François Proulx <francois.proulx@gmail.com>
+	* Added check in MainUI toolbar so that it won't show "NOT logged in ?"
+	  message when connect to a real hotspot ( not virtual )
+	* This message confused many users ( they clicked and got the virtual login
+	  instead ! )
+	* Hide adminstration features ( statistics, hotspot creation, network wide
+	  content etc...) from all but Super admins
+	* Fixed getAllLocativeArtisticContent in Node.php added is_persistent check
+	* Added $associate_existing_content parameter to processNewContentUI to
+	  allows reuse for existing content ( in ContentGroup )
+	* Fixed bug in FlickrPhotoStream delete ( missing return from parent )
+	* Added security check in all content classes ( ProcessAdminUI )
+
+2005-04-26 François Proulx <francois.proulx@gmail.com>
+	* Replaced show only content groups by show persistent
+
+2005-04-26 François Proulx <francois.proulx@gmail.com>
+	* Added missing /content directory
+
+2005-04-26 François Proulx <francois.proulx@gmail.com>
+	* Added /content/ for displaying all content elements
+	* Logging is disable when viewing them
+	* All content elements will expand
+	* Pattern languages won't display everything ( special property )
+	  isExpandable
+	* Added a link in portal pages to go to /content/
+	* Added Show all contents button in content_admin.php
+
+2005-04-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* Content.php, ContentGroup.php:  All Content now implement the
+	  isDisplayableAt($node).  Used by the portal, if content has nothing
+	  displayabel, the entire content is skipped.
+
+2005-04-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* FlickrPhotostream.php:  Fix the object so it doesn't crash when flicker is
+	  disabled.
+
+2005-04-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* ContentGroup.php:  Fully functionnal content rotation engine, with all
+	  options supported. Rotation based on session may not be reliable if the
+	  user isn't truly logged in (from a node).
+
+2005-04-26 François Proulx <francois.proulx@gmail.com>
+	* Most of the missing translations
+
+2005-04-26 François Proulx <francois.proulx@gmail.com>
+	* Changed back File to non trivial
+	* portal page stylesheet
+
+2005-04-26 Benoit Grégoire  <benoitg@coeus.ca>
+	* ContentGroupElement.php:  It shouldn't be allowed to create a new content
+	  element in isolation.  Unfortunately the UI allows if for now.  Such
+	  content will now be deleted.
+	* Locale:  Fix string selection algorithm to pick the right language.
+	* Content:  Implement display logging.
+
+2005-04-26 François Proulx <francois.proulx@gmail.com>
+	* stylesheet rework
+
+2005-04-26 François Proulx <francois.proulx@gmail.com>
+	* Fixed wrong location for change password link
+
+2005-04-25 François Proulx <francois.proulx@gmail.com>
+	* Portal page styling
+
+2005-04-26 Benoit Grégoire  <benoitg@coeus.ca>
+	* ContentGroup.php:  Previous fix didn't work.  New fix.
+
+2005-04-26 Benoit Grégoire  <benoitg@coeus.ca>
+	* ContentGroup.php:  Make bad selection mode eror non-fatal.
+
+2005-04-25 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix bug in ContentGroup enumeration
+
+2005-04-25 François Proulx <francois.proulx@gmail.com>
+	* More stylesheets work
+
+2005-04-25 François Proulx <francois.proulx@gmail.com>
+	* Much better stylesheet
+
+2005-04-25 Benoit Grégoire  <benoitg@coeus.ca>
+	* UI fully functionnal
+
+2005-04-25 François Proulx <francois.proulx@gmail.com
+	* More interface work
+
+2005-04-25 François Proulx <francois.proulx@gmail.com
+	* Completed integration of new interface with new objects
+
+2005-04-25 Benoit Grégoire  <benoitg@coeus.ca>
+	* Integration merge, should work, but there will be display problems
+	  everywhere.  Expect further commits today.
+	* Almost 100% complete Network abstraction
+	* Much better object encapsulation.  Deprecated methods not removed yet.
+	* Add MainUI class.  Used to display the interface.  Inner workings still
+	  need work.
+
+2005-04-23 François Proulx <francois.proulx@gmail.com>
+	* Added Preferred Size support for Flickr pictures
+
+2005-04-23 François Proulx <francois.proulx@gmail.com>
+	* Completed missing translations
+
+2005-04-23 François Proulx <francois.proulx@gmail.com>
+	* Fixed bugs in File and EmbeddedContent
+	* Completed first iteration of EmbeddedContent
+	* Can now play multimedia content
+	* Could not test fallback with my browser ( Safari and Firefox )
+	* Need help to test content in different browser to see how it reacts...
+
+2005-04-22 François Proulx <francois.proulx@gmail.com>
+	* Fixed bug in FlickrPhotostream.php
+	* Params did not match new methods requirements ( getUserByEmail )
+	* Changed stylesheet class name for Flickr to match new changes
+	* Fixed bugs in File
+	* Wrote part of EmbeddedContent ( partially working )
+	* TODO: add support for parameters and attributes in EmbeddedContent
+
+2005-04-22 François Proulx <francois.proulx@gmail.com>
+	* Fix schema version in François's commit
+
+2005-04-21 François Proulx <francois.proulx@gmail.com>
+	* Added explicit admin UI exceptions support for Flickr
+	* Completed File and Picture objects
+
+2005-04-20 François Proulx <francois.proulx@gmail.com>
+	* Completed Flickr support ( explicit exceptions catching )
+	* Most of File object is done
+	* Fixed bug in generic_object_admin.php
+	* changed stylesheet class tags for Flickr
+
+2005-04-18 François Proulx <francois.proulx@gmail.com>
+	* Added Flickr content support
+	* Part of File object is done
+
+2005-04-19 Benoit Grégoire  <benoitg@coeus.ca>
+	* Working (beta...) content manager and portal.
+	* Add content preview mode
+
+2005-04-18 Benoit Grégoire  <benoitg@coeus.ca>
+	* Hotspot and network content association, continue access control work.
+	* hotspot_owner.php: Fix wrong assignement of user_id that prevented the
+	  script from working.
+	* All files:  Remove whitespace and carriage return after the ?> closing
+	  tags.
+
+2005-04-18 Benoit Grégoire  <benoitg@coeus.ca>
+	* Much more complete admin, initial access control work.
+
+2005-04-15 Benoit Grégoire  <benoitg@coeus.ca>
+	* Support more of the content object model, do a half-decent CSS for the
+	  admin interface.
+
+2005-04-14 Benoit Grégoire  <benoitg@coeus.ca>
+	* Content.php:  Use full langstring interface by default;
+
+2005-04-14 Benoit Grégoire  <benoitg@coeus.ca>
+	* Content.php:  Fix db reference;
+
+2005-04-14 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix Content object enumeration preventing usage of admin interface
+	* Partial fix for RSS feed encoding (multiple feed aggregation still broken)
+
+2005-04-14 Benoit Grégoire  <benoitg@coeus.ca>
+	* First part of the future content delivery infrastructure. Many files added
+
+2005-04-01 François Proulx  <francois.proulx@gmail.com>
+	* Modified gen.sh script to match UTF-8
+	* Added PAP RADIUS encryption support ( asked by Paris Sans Fil )
+
+2005-04-01 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/templates/auth_sources_selection.html:  Add missing file from
+	  Francois's commit.
+
+2005-04-01 Philippe April <philippe@ilesansfil.org>
+	* Fixed missing parenthesis in classes/User.php
+	* Removed unused files
+	* fixed schema_validate.php (typos)
+
+2005-04-01 Francois Proulx  <francois.proulx@gmail.com>
+	* EVERYTHING IS NOW UTF-8 YOU MUST EDIT YOUR FILES WITH AN UTF-8 COMPLIANT
+	  EDITOR
+	* The database will be converted to UTF-8 (version 5)
+	* Added select boxes ( or hidden ) html form elements to choose the network
+	  for signup, lost password, username
+
+2005-04-01 Benoit Grégoire  <benoitg@coeus.ca>
+	* Add constraints to account_origin to detect errors on inserts.
+	* Remove IDRC test server
+
+2005-04-01 Philippe April <philippe@ilesansfil.org>
+	* User.php: Add reference to $db global variable.
+	* Tagged v0_1_0_alpha1
+	* Removed spaces in AuthenticatorLocalUser.php
+
+2005-03-31 Benoit Grégoire  <benoitg@coeus.ca>
+	* Remove spaces after php blocks in various files.
+	* Temporarily fix single authentication source not present bug in login
+	  smarty template.  All other places where we select the network will be
+	  fixed tommorow.
+	* Fix initial schema errors.
+
+2005-03-31 Benoit Grégoire  <benoitg@coeus.ca>
+	* More RADIUS install documentation.
+	* Fix schema_validate.php
+
+2005-03-31 Francois Proulx  <francois.proulx@gmail.com>
+ 	* Moved language definition
+ 	* Moved e-mail subjects to User class ( each e-mail functions )
+
+2005-03-31 Francois Proulx  <francois.proulx@gmail.com>
+ 	* Added missing schema_validate.php modifs.
+
+2005-03-31 Francois Proulx  <francois.proulx@gmail.com>
+	* Added PEAR install procedure
+
+2005-03-30 François Proulx  <francois.proulx@gmail.com>
+	* Finished RADIUS authentication and accounting
+	* Accounting Unique session ID is now based on the same token we use
+	* Fixed all issues with lost_username, lost_password etc...
+	* User class has new static function getUsersByEmail and getUsersByUsername
+	* Added translations for new features
+	* Translated the validation, lost password, username e-mails
+	* Tested quite a bit, this version is considered stable
+	* A few examples on how set different RADIUS or local authenticators can be
+	  found in the config.php
+
+2005-03-29 François Proulx  <francois.proulx@gmail.com>
+	* schema_validate.php : Modified schema : dropped e-mail + account unique
+	  index, dropped email not empty constraint
+	* Schema is now at version 3
+	* Coded RADIUS authentication
+	* Modified templates to show a select box when more than one server is
+	  configured
+	* Coded RADIUS accounting and backward compatibility accounting
+	* Modified many statistics SQL queries to match new Users table
+	* modified statistics templates to match user_id and account_origin
+	* TODO : Fix lost_username and lost_password ( issue since we dropped the
+	  unique constraint on emails... )
+	* TODO : Heavy testing possibly with remote RADIUS servers
+
+2005-03-28 Benoit Grégoire  <benoitg@coeus.ca>
+	* sql:  Put initial data in a transaction, and specify the wifidog user so
+	  you do not have to su to it while using sync_sql_for_svs
+
+2005-03-28 Benoit Grégoire  <benoitg@coeus.ca>
+	* common.php:  Add get_guid() function
+	* validate_schema.php: New auto-upgrade script to allow autaumatic schema
+	  upgrade.  Note that you must still update dump_initial_data_postgres.sh
+	  and use sync_sql_for_cvs.sh so new users aren't left in the cold.
+	* New class Authenticator (and subclasses):  Begin virtualizing the login
+	  process.
+
+2005-03-24 Benoit Grégoire  <benoitg@coeus.ca>
+	* Statistics.php: Fix getMostGreedyUsers returning bad values when incoming
+	  and outgoing for all connections from a user have null values.
+	* wifidog/local_content/default/portal.html: Fix layout so it resizes
+	  properly.  This in an interim measure.
+	* Update schema.  This will allow automatic schema updates in the future.
+	  TO update a live server:
+
+      BEGIN;
+      CREATE TABLE schema_info (
+	    tag text PRIMARY KEY,
+	    value text
+	  );
+	  INSERT INTO schema_info (tag, value) VALUES ('schema_version', '1');
+	  COMMIT;
+
+2005-03-16 Matthew Asham <matthewa@bcwireless.net>
+    * config.php: will use "local.config.php" instead, if present.  avoid cvs
+      over-writing.
+    * signup.php: if CUSTOM_SIGNUP_URL is defined, signup.php will re-direct.
+      For integration with existing auth systems
+    * hotspot_status.php: ob_clean may complain about buffering.  muted.
+    * ./classes/RssPressReview.inc: if rss_source['url'] is blank, ignore the
+      feed.
+
+2005-02-22 Benoit Grégoire  <benoitg@coeus.ca>
+	* sql/dump_initial_data_postgres.sh, wifidog-postgres-initial-data.sql,
+	  wifidog-postgres-schema.sql:-Widen the connections size to fix int4
+	  wraparound problems.  To update a running server, execute the following
+	  sql sniplet:
+
+      BEGIN;
+      ALTER TABLE connections RENAME incoming TO incoming_old;
+      ALTER TABLE connections ADD COLUMN incoming int8;
+      ALTER TABLE connections RENAME outgoing TO outgoing_old;
+      ALTER TABLE connections ADD COLUMN outgoing int8;
+      UPDATE connections set incoming=incoming_old, outgoing=outgoing_old;
+      ALTER TABLE connections DROP COLUMN incoming_old;
+      ALTER TABLE connections DROP COLUMN outgoing_old;
+      COMMIT;
+
+	* wifidog/admin/hotspot.php: Missing file from phil's commit.
+	* wifidog/locale/fr/LC_MESSAGES/messages.mo, messages.po:  New translation
+	  by Benoit St-André
+
+2005-02-14 Philippe April <philippe@ilesansfil.org>
+	* gw_message.php: the "activate" message was not properly defined and
+	  would cause an error to show up instead of the nice activate your account
+	  message
+
+2005-02-14 Philippe April <philippe@ilesansfil.org>
+	* wifidog/locale/gen.s: Was not working as expected, it will now get the
+	  gettext from smarty properly.
+	* Updated TODO with ideas on making config better
+
+2005-01-31 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/templates/hotspot_status.html:  Restore the number of nodes
+	* wifidog/hotspot_status.php: Restore the number of nodes, add formatting
+	  and more information to the RSS feed.
+
+2005-01-26 Philippe April <isf_lists@philippeapril.com>
+	* Some kind of virtual login (we need to talk about this).
+	* New User and Node classes
+	* Modified all files to work with the classes.
+	* Remove mgmt_helpers (all done in User class now)
+
+2005-01-25 Benoit Grégoire  <benoitg@coeus.ca>
+	* classes/Node.php:  New file, untested code example
+	* wifidog/admin/admin_common.php: Remove double-defined BASEPATH
+
+2005-01-25 Philippe April <isf_lists@philippeapril.com>
+	* Changed initial postgres inserts sql file, it wasn't working properly
+
+2005-01-25 Pascal Leclerc  <pascal@plec.ca>
+	* Added admin and owner administration pages
+
+2005-01-23 Philippe April <isf_lists@philippeapril.com>
+	* Added gateway error messages (validation period, etc.)
+
+2005-01-20 Philippe April <isf_lists@philippeapril.com>
+	* Modularized the admin interface, added functions
+
+2005-01-18 Philippe April <isf_lists@philippeapril.com>
+	* Smarty'ized more, I think it's done now
+
+2005-01-12 Philippe April <isf_lists@philippeapril.com>
+	* i18n and smarty'ized parts
+
+2005-01-11 Benoit Grégoire  <benoitg@coeus.ca>
+	* INSTALL: Mandate PHP5
+	* wifidog/hotspot_status.php: Allow export of the list as a RSS feed
+	* wifidog/classes/RssPressReview.inc:  Make it truly functionnal.
+	* wifidog/portal/index.php:  Support multiple RSS feeds.  The system will
+	  automatically pick the best 5 entries from all the feeds.  It will
+	  compensate for disparate publication intervals.  An entry from a feed that
+	  does not publish often will live longer than an entry from a feed that
+	  publishes very often.  If a feed doesn't have any entry that makes the
+	  cut, it will not appear at all.
+	* wifidog/templates/hotspot_status.html:  Add link to the RSS version.
+
+2005-01-11 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/config.php:  Add list of hotspot to network rss feed list (not yet
+	  functionnal)
+	* wifidog/hotspot_status.php:  Allow RSS export of the list of deployed
+	  Hotspots.
+	* wifidog/admin/incoming_outgoing_swap.php:  Script to swap incoming and
+	  outgoing in your data. Only use this if you had gateways before 1.0.2
+	  and wish to correct your logs before you upgrade.
+	* wifidog/classes/RssPressReview.inc:  Missing file from previous commit.
+	* wifidog/portal/index.php: Preliminary work to enable smart press review
+	  of multiple RSS feeds.
+
+2005-01-10 Benoit Grégoire  <benoitg@coeus.ca>
+	* include/common.php: Fix SSL security warnings.  If SSL is enabled and the
+	  page was actually served over SSL, all media in the file will be served
+	  over SSL. Add a new define (BASE_NON_SSL_PATH) to allow us to make links
+	  that break out of SSL mode.  From now on, use the self adapting
+	  BASE_URL_PATH in most circumstance, BASE_SSL_PATH to enter SSL mode,
+	  and BASE_URL_PATH to break out of it.
+
+2005-01-10 Benoit Grégoire  <benoitg@coeus.ca>
+	* admin/user_stats.php: Add three top tens to the statistics:  Top ten
+	  apetite for bandwidth, top ten travelers, most addicted users.
+
+2005-01-04 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/local_content/default/hotspot_logo_banner.jpg: Make it much
+	  thinner.
+	* wifidog/local_content/default/login.html: Remove announcements
+	* wifidog/include/user_management_menu.php: Fix mailto:
+	* wifidog/auth/index.php: Fix auth server part of the no data transmited
+	  statistics bug.
+	* wifidog/admin/index.php: Add link to statistics
+	* wifidog/admin/user_stats.php: Activate security.
+	* wifidog/index.php: Make the distinction between the two hotspot status
+	  pages clearer.
+
+2004-12-08 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/index.php: Add menu
+	* wifidog/include/user_management_menu.php: Editorial change, make
+	  translateable
+	* wifidog/portal/index.php:  Fix RSS feeds
+
+2004-12-03 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/admin/user_stats.php,  wifidog/classes/Statistics.php:  Embryonic
+	  aggregate user stats.  Currently allows you to find out the rate at which
+	  your users subscribe.
+	* wifidog/config.php, wifidog/local_content/default/login.html,
+	  wifidog/include/user_management_menu.php:  Add hotspot status page to
+	  login page.
+	* wifidog/hotspot_status.php: Cosmetic
+	* wifidog/admin/hotspot_log.php: Stats now need admin privileges
+	* wifidog/index.php: Cosmetic.
+
+2004-11-19 Benoit Grégoire  <benoitg@coeus.ca>
+	* TODO: Add email domains to blacklist
+	* wifidog/config.php, wifidog/include/user_management_menu.php: Add tech
+	  support email address
+	* wifidog/hotspot_status.php: List of HotSpots that are open with summary of
+	  information.  Designed to be included as part of another page.
+	* wifidog/local_content/common/wifidog_logo_banner.gif: Add wifidog logo
+	* wifidog/local_content/default/hotspot_logo_banner.jpg: Shrink the logo
+	  and write unknown hotspot, however this is still really ugly
+	* wifidog/local_content/default/login.html, portal.html, stylesheet.css:
+	  Cosmetic fixes
+ 	* wifidog/local_content/default/login.html.fr, portal.html.fr: Delete the
+ 	  files, this isn't the approach we will use for translation.
+	* sql/wifidog-postgres-initial-data.sql, wifidog-postgres-schema.sql:
+	  Update with new node information structures.
+
+2004-11-04 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/admin/hotspot_log.php: Add number of currently connected users
+	  here as well.
+
+2004-11-03 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/ping/index.php: Log user-agent
+	* extensive statistics work
+	* sql/wifidog-postgres-schema.sql: Add description field for hotspots and
+	  log user-agent
+
+2004-10-28 Benoit Grégoire  <benoitg@coeus.ca>
+	* sql/wifidog-postgres-schema.sql:  Add constraints to avoid empty string
+	  in email or user_id.
+	* Some statistics fixes
+
+2004-09-29 Alexandre Carmel-Veilleux <acv@acv.ca>
+	* wifidog/admin/index.php: Integrated the changes contributed
+	  on the mailing list by Rikhardur EGILSSON (fname.lname@oecd.org),
+	  mainly a missing ' in some HTML.
+
+2004-09-28 Yanik Crépeau <yanik@exScriptis.com>
+    * wifidog/include/common.php: Added commented header with cvs
+	  keywords.
+	* wifidog/include/common.php: Added commented code (not executing) for
+	  further testing with language/localization issues.
+
+2004-09-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* sql/wifidog-postgres-schema.sql:  Remove non SQL standard "COMMENT ON"
+	  comments
+
+2004-09-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* sql/wifidog-postgres-schema.sql:  Drop procedural language stuff
+
+2004-09-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* sql/wifidog-postgres-schema.sql:  Fix layout for the node_owners table
+	* Begin integrating Patrick Tanguay's new layout and generate the css
+	  dynamically to allow for background images.
+
+2004-09-22 Benoit Grégoire  <benoitg@coeus.ca>
+	* portal/index.php:  Fix users appearing online at every hotspot.
+	* wifidog/classes/Style.php, wifidog/login/index.php:  Fix some potential
+	  cache problems and help with validation.
+
+2004-09-18 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/config.php:  Add VALIDATION_GRACE_TIME configuration parameter.
+	* wifidog/auth/index.php:  Move grace time date arithmetics to the database,
+	  fixes validation period not working.  Stop storing VALIDATION_FAILES
+	  status to the database.  Add check for validation period expiration at
+	  stage login, not just stage counters, this will fix one minute
+	  validation period.
+	* wifidog/login/index.php:  Check validation period activation, and if
+	  period is expired, explain to the user instead of redirecting to the
+	  gateway.
+	* wifidog/user_management/index.php:  Fix SQL error at new user registration.
+
+2004-09-02 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/node_list.php: Complete the status page
+	* Add images
+	* Add hotspot creation date
+
+2004-08-31 Benoit Grégoire  <benoitg@coeus.ca>
+	* sql/: Update the postgres schemas and add scripts to ease maintaining it.
+	* sql/sync_sql_for_cvs.sh: Should you modify the schema in your db, run this
+	  script to the chances will be available in the cvs schemas and initial
+	  data.
+	* sql/dump_initial_data_postgres.sh: This does the actual dump of the data
+	  in a runnable form.  Note that this needs to be edited manually if you add
+	  a new table requiring initial data.
+	* INSTALL:  Update for postgres.  Somebody please test this.
+
+2004-08-31 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/ping/index.php: Implement logging of which hotspot sent the
+	  heartbeat, from which ip and when.
+	* wifidog/node_list.php:  Primitive but functionnal hotspot status page.
+	* wifidog/include/user_management_menu.php:  Change menu labels
+	* wifidog/local_content/default/login.html: Improve layout.  Someone needs
+	  to make this stylesheet correct, I took shortcuts...
+	* wifidog/local_content/default/stylesheet.css:  Reduce H1 font size.
+	* wifidog/user_management/index.php:  Display the menu, will eventually
+	  allow us to present proper help text.
+
+2004-08-30 Benoit Grégoire  <benoitg@coeus.ca>
+	* Add link to original requested site.
+	* wifidog/node_list.php:  New file.  Will become the main node status page.
+
+2004-08-28 Benoit Grégoire  <benoitg@coeus.ca>
+	* Primitive network status available form the index page
+	* Administrative security is implemented.
+
+2004-08-28 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix big gaping security hole in login page (password would be ignored if
+	  the username was used to login)
+	* PostgreSql port
+	* Change the method to determine who is online
+	* Stop keeping unused token once user successfully logs in.
+	* Fix missing update of token update date.
+	* Counters wouldn't get updated for stage=LOGOUT
+	* wifidog/auth/index.php:  Added a Messages: response in addition to Auth:
+	  so we can know what the hell the server is up to.  Currently you need to
+	  run wifidog in debug level 7 to see it. That message should be parsed so
+	  it is visible in debug level 6.
+	* wifidog/auth/index.php:   Fix code injection vulnerability.
+
+2004-08-27 Benoit Grégoire  <benoitg@coeus.ca>
+	* SSL support and RSS improvement
+	* Last commit tested with mysql support
+
+2004-08-24 Pascal Leclerc  <pascal@plec.ca>
+	* wifidog/admin/user_log.php: Add total to incoming and outgoing
+	* Replace all SERVER_NAME by HTTP_HOST to fix non-standard server ports
+
+2004-08-11 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog/config.php: Add USER_MANAGEMENT_PAGE
+	* wifidog/include/user_management_menu.php:  Code meant to deal with
+	  non-standard ports broke the menu.  Hopefully fixed.
+	* Add alex's mising changelog entry...
+
+2004-08-11 Alexandre Carmel-Veilleux <acv@acv.ca>
+	* wifidog/ping/index.php: will now reply if the wifidog auth server is up.
+	  To be used by wifidog to do heartbeats.
+
+2004-08-07 Benoit Grégoire  <benoitg@coeus.ca>
+	* Add code to import a NoCat user database (passwd).  The username will be
+	  generated from the first part of the email if the name was en email.
+	* Change password hashing algorithm to make it compatible with NoCat (For
+	  the curious among you, the hashing algorithm is now:  take the md5
+	  digest in binary format of the password, and base64 encode it.
+	* Table schema changed to accomodate newhash length (users.pass is now
+	  varchar(32))
+	* The user is now allowed to login with either his username or his email.
+
+2004-08-03 Pascal Leclerc  <pascal@plec.ca>
+	* wifidog/classes/SmartyWifidog.php: Fix path validation bug, replace
+	  NODE_CONTENT_URL with NODE_CONTENT_PHP_RELATIVE_PATH
+	* wifidog/classes/AbstractDb.php: Add class=warning for better display
+	* wifidog/config.php: Add SYSTEM_PATH and test/fix non-standard server ports
+
+2004-08-03 Benoit Grégoire  <benoitg@coeus.ca>
+	* Make gettext support optionnal, and define GETTEXT_AVAILABLE, will be set
+	  to true if gettext is available.  If false, blank _() and gettext()
+	  functions will be defined so the system still works.
+
+2004-08-03 Benoit Grégoire  <benoitg@coeus.ca>
+	* Fix BASE_URL_PATH to properly detect non-standard server ports (hopefully).
+
+2004-08-02 Benoit Grégoire  <benoitg@coeus.ca>
+	* wifidog-auth lives! New since the dark ages
+	* Demo page to allow people to hack more easely on it
+	* Support for multiple nodes.  TODO:  Merge with the database project.
+	* Very cool local content architecture.  Every hotspot can have a folder in
+	  the local_content directory.  This folder can be filed by a single logo,
+	  leaving all the rest to the default content, or be completely custom
+	  (stylesheet, login page, portal page, header, etc.)
+	* Everything in local content is templated with smarty, no problem with
+	  web designer wrecking havoc on the auth server.  You can edit everything
+	  in local_content/default even if you only speak html.
+	* No need to set any path in the web server config files (that one was a
+	  bitch to implement)
+	* RSS feed support (optionnal, with magpierss), one feed per node (url
+	  stored in the database, works great, but no gui to edit it yet) and one
+	  network-wide RSS feed.
+	* All path are editable from the config file
+	* "Productize" the thing, so it make sense for other groups to install it
+	  (the network name, url, default RSS, and such are set from the config
+	  file).
+	* Put most strings in gettext calls for easy future translation.
+	* User can request that the server send the validation email again
+	* User can change password
+	* User who forgot his username can have it mailed to him.
+	* User who lost his password can ask the system to generate a new one and
+	  mail it to him.
+	* Email is now a separate field to preserve user privacy.
+	* Enforces (politely) that there are no duplicate emails in the database
+	* Database abstraction layer with very nice debugging features (just append
+	  true at the end of the call, and you'll see the query, the results, the
+	  query plan and number of affected rows.  Also allow future upgrade to
+	  postgres.
+	* Lots of other things I forgot.
Index: /branches/newtoken/wifidog/media/README.txt
===================================================================
--- /branches/newtoken/wifidog/media/README.txt	(revision 1031)
+++ /branches/newtoken/wifidog/media/README.txt	(revision 1031)
@@ -0,0 +1,7 @@
+Directory: wifidog/media/
+Static media files (stylesheets, theme packs, images)
+
+Subdirectories:
+base_theme:		This is the base wifidog style and media, all user-installable styles are applied over this one.
+common_images		This is for images directly referenced from the code or a smarty template.  Avoid using if possible.
+network_theme_packs	This is where user-installable theme packs go, and the main method of customizing wifidog's general look.
Index: /branches/newtoken/wifidog/media/base_theme/stylesheet.css
===================================================================
--- /branches/newtoken/wifidog/media/base_theme/stylesheet.css	(revision 1365)
+++ /branches/newtoken/wifidog/media/base_theme/stylesheet.css	(revision 1365)
@@ -0,0 +1,1461 @@
+/* Important note:  You may not assume ANYTHING about the path to images or media
+that isn't under this file's theme pack.  In other words, no ../ relative links. */
+	/********** General HTML elements redefinition section **********/
+body {
+	margin: 0px;
+	padding: 0px;
+	font-family: "Lucida Grande", "Verdana", sans-serif;
+	color: black;
+	font-size: 0.8em;
+	background-color: #FFF;
+}
+
+a {
+	color: #616756;
+	font-size: 0.8em;
+	text-decoration: underline;
+}
+
+img {
+	border: none;
+}
+
+a:hover {
+	color: #88AA4B;
+}
+
+h1 {
+	color: #666;
+	font-size: 1.5em;
+}
+
+input {
+	border: 1px solid #aaa;
+}
+
+input:hover {
+	border: 1px solid #70cb70;
+}
+
+input:focus {
+	border: 1px solid #70cb70;
+}
+
+select {
+	color: #666;
+	border: 1px solid #70cb70;
+	background: #EBFFEB;
+}
+
+/********** End General HTML elements redefinitionsection **********/
+	/********** Main structure section **********/
+#page_header {
+	padding: 5px 5px 5px 74px;
+	background: #f5f5f5 url('images/wifidog_thumbnail_transparent.gif')
+		no-repeat 0px 0px;
+	margin: 0px 0px 0px 0px;
+	border-bottom: 1px solid #d7d5d5;
+	min-height: 60px;
+}
+
+#page_header .welcome_msg {
+	
+}
+
+#page_header .welcome_msg_inner {
+	margin-top: 5px;
+	font-size: 2em;
+	color: #999;
+	font-weight: bold;
+}
+
+#page_header .welcome_msg_inner em {
+	font-size: 1em;
+	color: #666;
+}
+
+#page_header .welcome_msg_inner span {
+	display: block;
+	font-size: 0.6em;
+}
+
+#page_body {
+	padding: 0em;
+	margin: 0em;
+	width: 100%;
+	float: left;
+}
+
+#page_body h1 {
+	background: url('images/bullet_box_arrow.gif') no-repeat 0 0px;
+	padding-left: 24px;
+}
+
+#left_area {
+	position: absolute; /* Necessary to work around IE6's stupidity */
+	width: 25%;
+	float: left;
+	margin: 0em;
+	padding: 0em;
+}
+
+#left_area_top {
+	position: relative;
+	width: 90%;
+	background: #f5f5f5 url('images/back_header_fade.gif') repeat-x bottom
+		left;
+	margin: -1px 1em 1em 1em;
+	padding: 0.1em 1em 1em 1em;
+	border-right: 1px solid #e7e7e7;
+	border-bottom: 1px solid #d7d5d5;
+	border-left: 1px solid #e7e7e7;
+	float: left;
+}
+
+#left_area_middle {
+	position: relative;
+	width: 90%;
+	background: #EBFFEB;
+	margin: 1em;
+	padding: 1em;
+	border: 1px solid #C2FFC2;
+	float: left;
+}
+
+#left_area_middle ul {
+	margin: 0 0 0 1em;
+	padding: 0 0 0 1em;
+	text-align: left;
+}
+
+#left_area_bottom {
+	position: relative;
+	width: 90%;
+	background: #F9FFC9;
+	margin: 1em;
+	padding: 1em;
+	border: 1px solid #EFFF72;
+	float: left;
+}
+
+#left_area_bottom .user_ui_main_outer {
+	background: transparent;
+	border: none;
+	color: #000000;
+}
+
+#main_area {
+	width: 74%;
+	float: right;
+	margin: 0;
+	padding: 0;
+	/*border: 1px solid #E9E9E9;*/
+}
+
+* html #main_area { /* Stupid IE hack */
+	width: 63%;
+	margin: 0;
+	padding: 0;
+}
+
+#main_area_top {
+	background: #f5f5f5 url('images/back_header_fade.gif') repeat-x bottom
+		left;
+	margin: -1px 1em 1em 1em;
+	padding: 0;
+	border-right: 1px solid #e7e7e7;
+	border-bottom: 1px solid #d7d5d5;
+	border-left: 1px solid #e7e7e7;
+	float: left;
+}
+
+#main_area_middle {
+	position: relative;
+	width: 90%;
+	margin: 1em;
+	padding: 0;
+	float: left;
+}
+
+#main_area_bottom {
+	position: relative;
+	width: 90%;
+	margin: 1em;
+	padding: 0;
+	float: left;
+}
+
+#right_area {
+	
+}
+
+#right_area_top {
+	
+}
+
+#right_area_middle {
+	
+}
+
+#right_area_bottom {
+	
+}
+
+#page_footer {
+	
+}
+
+/********** End Main structure section **********/
+	/********** Page specific CSS section **********/
+.portal {
+	
+}
+
+.login {
+	
+}
+
+/********** End Page specific CSS section **********/
+	/********** End Main structure section **********/
+div.tool_user_info {
+	margin: 0;
+	padding: 0;
+}
+
+div.language {
+	
+}
+
+form.language {
+	padding: 0.5em 0.5em 0em 0em;
+	text-align: right;
+}
+
+.tool_content {
+	padding: 0px 5px 0px 5px;
+}
+
+div.avis {
+	padding: 20px 10px 10px 10px;
+	background-image: url(images/03_avis.gif);
+	background-repeat: repeat-x;
+	background-position: left top;
+	background-color: #FDFDFD;
+}
+
+span.avis {
+	padding-top: 20px;
+}
+
+div.anysection {
+	padding: 0px 5px 0px 5px;
+	color: #616756;
+	text-align: left;
+}
+
+div.test {
+	text-align: center;
+	vertical-align: text-top;
+}
+
+/* The login form (including header) */
+#login_form {
+	float: left;
+	/*	margin: 1em;
+	padding: 0em 1em;*/
+	text-align: center;
+}
+
+#login_form form {
+	padding-left: 1em;
+}
+
+#loginbox_signup, h2 {
+	display: none;
+}
+
+/* The help text for the login form */
+#login_help {
+	float: left;
+	margin: 1em 1em 1em 4em;
+	padding: 0em 1em;
+	border: 1px solid #d7d5d5;
+}
+
+#logout_link IMG {
+	vertical-align: middle;
+}
+
+#preferences_link IMG {
+	vertical-align: middle;
+}
+
+/*********************************************************************/
+.clearbr {
+	clear: both;
+}
+
+/** Messages */ /* Fading Tooltips By Dustin Diaz*/
+body div#toolTip {
+	position: absolute;
+	z-index: 1000;
+	width: 320px;
+	background: #000;
+	text-align: left;
+	padding: 5px;
+	min-height: 1em;
+	-webkit-border-radius: 5px;
+	-moz-border-radius: 5px;
+}
+
+body div#toolTip p {
+	margin: 0;;
+	padding: 0;;
+	color: #fff;;
+	font-size: 12px;
+}
+
+body div#toolTip p em {
+	display: block;;
+	margin-top: 3px;;
+	color: #f60;;
+	font-style: normal;;
+	font-weight: bold;
+}
+
+body div#toolTip p em span {
+	font-weight: bold;;
+	color: #fff;
+}
+
+.errormsg {
+	font-weight: bold;
+	color: #CC0000;
+}
+
+.warningmsg {
+	font-weight: bold;
+	color: orange;
+}
+
+.successmsg {
+	font-weight: bold;
+	color: #00CC00;
+}
+
+.msg {
+	font-weight: bold;
+	color: black;
+}
+
+/* The content container */
+.content {
+	border: 2px solid gray;
+	width: auto;
+}
+
+/********** generic object admin interface **********/
+	/* Fieldset, wraps every output of displyAdminUI.
+All admin_container are also admin_element_group (to ensure that
+ nesting will be explicit) and include the classname of the object as
+ the object class (such as 'Langstring')*/
+.admin_container {
+	border-left: 2px solid #DDDDFF;
+	border-top: 2px solid #DDDDFF;
+	border-bottom: 2px solid #DDDDFF;
+}
+
+/* noramlly a fieldset, logically wraps groups of related
+options.*/
+.admin_element_group {
+	border-left: 2px dotted #DDDDFF;
+	border-top: 2px dotted #DDDDFF;
+	border-bottom: 2px dotted #DDDDFF;
+}
+
+.admin_container,.admin_element_group {
+	display: block;
+	border-right: none;
+	background-color: white;
+	margin: 0.1em 0px 0.1em 0.1em;
+	padding-right: 0px;
+	width: auto;
+}
+
+fieldset.admin_container legend {
+	font-size: 1.2em;
+}
+
+/* Contains a list of administrative properties of an object */
+.admin_element_list { /*background-color: red;*/
+	margin: 0em 0em 0em 0em;
+	padding: 0em 0em 0em 0em;
+}
+
+/* Contains an administrative property (possibly a complex, nested one) of an object */
+.admin_element_item_container { /*background-color: lightblue;*/
+	margin: 0.1em 0em 0.1em 0.1em;
+	padding: 0em;
+	width: auto;
+}
+
+li.admin_element_item_container {
+	display: block;
+}
+
+tr.admin_element_item_container {
+	
+}
+
+/* The label of the admin element. Optional */
+.admin_element_label {
+	font-weight: bold;
+}
+
+div.admin_element_label {
+	display: inline;
+}
+
+td.admin_element_label,th.admin_element_label {
+	
+}
+
+/* The actual admin element data.  Can contain another admin_element_group */
+div.admin_element_data {
+	display: inline;
+}
+
+td.admin_element_data,th.admin_element_data {
+	
+}
+
+/* Interaction elements (buttons mostly) are in this container.  Optional */
+.admin_element_tools {
+	border: 0px;
+	margin: 0px;
+}
+
+div.admin_element_tools {
+	display: inline;
+}
+
+td.admin_element_tools,th.admin_element_tools {
+	
+}
+
+/* Get it touching the border to the admin container it's relevant for */
+.admin_element_tools .submit {
+	border: 2px solid #DDDDFF;
+	margin: -0.2em 0em 0.1em 0.1em;
+}
+
+.submit {
+	border: 2px solid #daedd8;
+}
+
+.submit:hover {
+	border: 2px solid #46a43a;
+	background-color: #daedd8;
+}
+
+.submit_disabled {
+	border: 2px solid #daedd8;
+}
+
+/********** End generic object admin interface **********/
+.user_select_user_ui_container div {
+	display: inline;
+}
+
+.user_select_user_ui_container .submit {
+	display: inline;
+}
+
+.role_select_role_ui_container div {
+	display: inline;
+}
+
+.content_management_tools {
+	border: 1px solid #DDDDFF;
+	background-color: #FBFBFF;
+}
+
+/** Content management tools */
+.content_management_tools th {
+	background-color: #444;
+	color: #FFFFFF;
+	text-align: center;
+}
+
+.already_linked_content {
+	
+}
+
+.add_existing_content {
+	font-weight: bold;
+}
+
+.add_new_content {
+	font-weight: bold;
+}
+
+#NodeSelector select {
+	width: 100%;
+}
+
+.generic_object_admin_edit input {
+	float: left;
+}
+
+/* This is the warning message area ( Alerting the user to validation his account ASAP ) */
+#warning_message_area {
+	background-color: #CC0000;
+	color: white;
+	font-size: large;
+	font-weight: bold;
+	text-align: center;
+}
+
+.user_ui_main_outer { /*	display: inline;*/
+	display: block;
+	color: #3D586B;
+	background: none;
+	border: none;
+	margin: 1em;
+	padding: 0em;
+	width: 100%; /* Will this fuck up in explorer? */
+}
+
+.user_ui_main_outer .user_ui_main_outer { /*	display: inline;*/
+	margin: 0em;
+	padding: 0em;
+}
+
+.hasDisplayableMetadata {
+	/*Defined at same level as user_ui_main_outer*/
+	background: #E9F6FF;
+	border: 1px solid #B4DFFF;
+	margin: 1em;
+	padding: 0.2em;
+}
+
+.user_ui_title .user_ui_main_outer,.user_ui_description .user_ui_main_outer
+	{
+	margin: 0em;
+	padding: 0em;
+	border: none;
+}
+
+.user_ui_main_inner {
+	display: block;
+	/*	border: 1px solid gray;*/
+}
+
+.user_ui_container {
+	display: block;
+	margin: 0em;
+	padding: 0em;
+}
+
+.user_ui_title {
+	display: block;
+	font-size: 1em;
+	font-weight: bold;
+	margin: 0em;
+	padding: 0em;
+}
+
+.user_ui_title a {
+	font-size: medium;
+	font-weight: bold;
+}
+
+.user_ui_authors {
+	display: block;
+	font-weight: bold;
+	color: #386b04;
+	padding: 5px;
+	background: #cafd84;
+	margin: 0em;
+	padding: 0em;
+}
+
+.user_ui_description {
+	text-align: justify;
+	font-weight: bold;
+	margin: 0em;
+	padding: 0.5em;
+}
+
+.user_ui_footer {
+	display: block;
+	padding: 5px;
+	background-color: #9d9d9d;
+}
+
+.user_ui_picture {
+	height: 250px;
+}
+
+.user_ui_projet_info {
+	background-color: rgb(235, 235, 235);
+}
+
+.list_ui_container {
+	display: inline;
+}
+
+.download_button {
+	padding: 10px 10px 10px 10px;
+	background-color: #cafd84;
+	color: #336600;
+	font-weight: bold;
+	border: outset #999999;
+}
+
+/* Portal */
+#portal_container {
+	margin: 3px;
+}
+
+.portal_network_section { /*	background-color:	#CFDCE6;*/
+	margin: 3px;
+}
+
+.portal_node_section { /*	background-color:	#CFDCE6;*/
+	margin: 3px;
+}
+
+.portal_node_section h1,.portal_node_section h1 a {
+	color: #88AA4B;
+	font-size: 14px;
+}
+
+.portal_network_section h1,.portal_network_section h1 a {
+	color: #88AA4B;
+	font-size: 1.2em;
+}
+
+.portal_user_section { /*	background-color:	#CFDCE6;*/
+	margin: 3px;
+}
+
+.portal_section_title,.portal_section_title a {
+	font-size: medium;
+}
+
+.portal_section_logo {
+	padding: 2px;
+	display: inline;
+}
+
+/********** Content type section **********/ /* MainMenu */
+#nav,#nav ul { /* all lists */
+	padding: 0;
+	margin: 0 0 1em 0;
+	list-style: none;
+	line-height: 1;
+	/* WD specific */
+	float: left;
+	width: auto;
+	background: white;
+	font-weight: bold;
+	border: solid #d7d5d5;
+	border-width: 1px 0;
+	z-index: 99;
+}
+
+#nav {
+	/* WD specific, this must be after the #nav,#nav ul, it will apply only to the top menu items */
+	background: none;
+	margin: 0 0 0 0;
+	border: none;
+	clear: both;
+	display: block;
+	float: none;
+}
+
+#nav a { /* WD specific */
+	display: block;
+	width: 10em;
+	w\idth: 6em;
+	text-decoration: none;
+	padding: 0.25em 2em;
+}
+
+#nav li { /* all list items */
+	float: left;
+	width: 10em; /* width needed or else Opera goes nuts */
+	/* WD specific */
+	padding: 0;
+}
+
+#nav>li { /* WD specific */
+	border-left: 1px solid #d7d5d5;
+	border-right: 1px solid #d7d5d5;
+	border-bottom: 1px solid #d7d5d5;
+}
+
+#nav li li { /* WD specific */
+	padding-right: 1em;
+	width: 13em
+}
+
+#nav li ul a { /* WD specific */
+	width: 13em;
+	w\idth: 9em;
+}
+
+#nav li ul { /* second-level lists */
+	position: absolute;
+	width: 14.4em;
+	left: -999em;
+	/* using left instead of display to hide menus because display: none isn't read by screen readers */
+	/* WD specific */
+	height: auto;
+	w\idth: 13.9em;
+	font-weight: normal;
+	border-width: 0.25em;
+	margin: 0;
+}
+
+#nav li:hover ul { /* WD specific */
+	left: auto;
+}
+
+#nav li ul ul { /* third-and-above-level lists */
+	margin: -1.75em 0 0 14em;
+}
+
+#nav li:hover ul ul,#nav li:hover ul ul ul,#nav li.sfhover ul ul,#nav li.sfhover ul ul ul
+	{
+	left: -999em;
+}
+
+#nav li:hover ul,#nav li li:hover ul,#nav li li li:hover ul,#nav li.sfhover ul,#nav li li.sfhover ul,#nav li li li.sfhover ul
+	{ /* lists nested under hovered list items */
+	left: auto;
+}
+
+#nav li:hover,#nav li.sfhover { /* WD specific */
+	background: #f5f5f5;
+}
+
+/* UIUserList */
+.UIUserList ul {
+	list-style-type: none;
+}
+
+.langstring {
+	text-align: justify;
+}
+
+/* RssAggregator */
+.fpr_item_title {
+	display: inline;
+}
+
+.fpr_feed_title {
+	display: inline;
+}
+
+.fpr_title_date {
+	font-weight: lighter;
+}
+
+.fpr_title_str {
+	display: inline;
+	font-size: 1.3em;
+	color: #000000;
+}
+
+.fpr_item_title .fpr_title_str {
+	
+}
+
+.fpr_list {
+	padding: 0em 0em 0em 0em;
+	margin: 0em 0em 0em 0em;
+}
+
+.fpr_item {
+	list-style-type: none;
+	display: block;
+}
+
+fpr_empty_feeds {
+	
+}
+
+.fpr_mouseover {
+	display: inline
+}
+
+.fpr_item_link { /*font-size: 1.0em;*/
+	color: #003399;
+}
+
+.fpr_expand_switch {
+	text-decoration: none;
+}
+
+.fpr_popup_inner_div {
+	padding: 0.5em;
+	visibility: hidden;
+	position: absolute;
+	left: 0em;
+	top: 0em;
+	width: 100%;
+	z-index: 100;
+	opacity: 0.90;
+	filter: alpha(opacity =       90);
+	-webkit-border-radius: 5px;
+	-moz-border-radius: 5px;
+	border-radius: 5px;
+	background-color: #EBFFEB;
+	color: #000000;
+	border: 1px solid #C2FFC2;
+}
+
+.fpr_popup_inner_div_expanded {
+	margin: 0em 0em 0.5em 0.5em;
+	padding: 0.5em;
+	/* Color of background around the text: #E9F6FF */
+	border-top: 1px solid #F4FAFF;
+	border-right: 1px solid #B4DFFF;
+	border-bottom: 1px solid #B4DFFF;
+	border-left: 1px solid #F4FAFF;
+	color: #000000;
+	background-color: #FFFFFF;
+}
+
+.fpr_popup_outer_div {
+	position: relative;
+}
+
+.fpr_feed_image {
+	float: right;
+}
+
+.fpr_text {
+	display: block;
+}
+
+.fpr_text P {
+	
+}
+
+.fpr_text img {
+	float: right;
+}
+
+.fpr_enclosure {
+	max-width: 320px;
+	max-height: 240px;
+	display: inline;
+	float: right;
+}
+
+.fpr_enclosure_inner {
+	display: block;
+}
+
+.fpr_clear {
+	clear: right;
+}
+
+.fpr_enclosure_download {
+	text-align: center;
+}
+
+.fpr_item_metadata {
+	float: right;
+}
+
+.flickr_photo {
+	background: url(images/flickr_shadowAlpha.png) no-repeat bottom right
+		!important;
+	background: url(images/flickr_shadow.gif) no-repeat bottom right;
+	margin: 10px 0 0 10px !important;
+	margin: 10px 0 0 5px;
+}
+
+.flickr_photo img {
+	display: block;
+	position: relative;
+	background-color: #fff;
+	border: 1px solid #CCCCCC;
+	margin: -6px 6px 6px -6px;
+	padding: 4px;
+}
+
+.flickr_photo img:hover {
+	display: block;
+	position: relative;
+	background-color: #fff;
+	border: 2px solid #CCCCCC;
+	margin: -6px 6px 6px -6px;
+	padding: 3px;
+}
+
+.flickr_photo_hover {
+	display: none;
+}
+
+.flickr_title {
+	color: white;
+	width: 200px;
+	background: #696969;
+}
+
+.flickr_title a {
+	color: white;
+}
+
+.flickr_title h3 {
+	color: white;
+	padding: 5px;
+	margin: 0;
+}
+
+.flickr_tags {
+	visibility: hidden;
+	background-color: #696969;
+	color: white;
+	width: 140px;
+}
+
+.flickr_tags h3 {
+	padding-left: 5px;
+	margin: 0;
+}
+
+.flickr_tags ul {
+	margin-left: 20px;
+	margin-top: 0px;
+	padding: 0px;
+}
+
+.flickr_tags li {
+	list-style: none;
+	list-style-image: none;
+}
+
+.flickr_tags li a {
+	color: white;
+	/* font-size: normal; - invalid? */
+	text-decoration: none;
+}
+
+.flickr_tags li a:hover {
+	text-decoration: underline;
+}
+
+.flickr_description {
+	color: white;
+	width: 200px;
+	background: #696969;
+}
+
+.flickr_description a {
+	color: white;
+	text-decoration: underline;
+}
+
+.pattern_language_menu {
+	list-style-type: square;
+}
+
+.pattern_language_big_links {
+	color: #88AA4B;
+	font-size: medium;
+	font-weight: bold;
+}
+
+.pattern_language_big_links:hover {
+	color: #88AA4B;
+	font-size: medium;
+	font-weight: bold;
+}
+
+.pattern_language_body {
+	border: outset #999999;
+	background: #fafff3;
+	margin: 5px;
+	padding: 10px;
+	text-align: justify;
+}
+
+.pattern_language_credits {
+	border: 1px solid #999999;
+	background: #fafff3;
+	margin: 5px;
+	padding: 5px;
+}
+
+/* Shoutbox */
+.ShoutBox .message {
+	display: inline;
+}
+
+.ShoutBox ul {
+	list-style-type: none;
+	padding-left: 0.5em;
+}
+
+table.content_admin {
+	margin-top: 5px;
+	border: 1px solid grey;
+}
+
+table.content_admin th {
+	background-color: lightgrey;
+}
+
+table.content_admin td {
+	border: 1px solid grey;
+}
+
+.Avatar {
+	display: inline;
+	vertical-align: middle;
+	margin: 0 0.5em 0 0;
+	padding: 0 0 0 0;
+}
+
+.Avatar div {
+	display: inline;
+}
+
+.Avatar img {
+	max-width: 40px;
+	max-height: 40px;
+	margin: 0 0 0 0;
+	padding: 0 0 0 0;
+}
+
+.Profile .Avatar img {
+	float: left;
+}
+
+.user_nickname {
+	font-size: 1.25em;
+	font-weight: bold;
+}
+
+.user_edit_profile_link {
+	display: inline;
+}
+
+.user_ui_profile_field {
+	
+}
+
+.profile_field_label {
+	font-size: 1.25em;
+	font-weight: bold;
+	display: inline;
+	margin: 0em;
+	padding: 0em;
+}
+
+.foaf\:nick .profile_field_label {
+	display: none;
+}
+
+.foaf\:name .profile_field_label {
+	display: none;
+}
+
+.foaf\:img .profile_field_label {
+	display: none;
+}
+
+.profile_field_label div {
+	margin: 0em;
+	padding: 0em;
+}
+
+.profile_field_label div {
+	display: inline;
+}
+
+.profile_field_content {
+	display: inline;
+}
+
+.foaf\:nick .profile_field_content {
+	font-size: 1.25em;
+	font-weight: bold;
+}
+
+.foaf\:name .profile_field_content {
+	font-size: 1.25em;
+	font-weight: bold;
+}
+
+.profile_field_content div {
+	display: inline;
+}
+
+/********** End Content type section **********/
+.popup {
+	background-color: white;
+	border: solid darkblue;
+	text-align: left
+}
+
+.link {
+	color: blue;
+	text-decoration: underline
+}
+
+#node_list {
+	
+}
+
+#node_list table {
+	background-color: #b1d5ba;
+	border-collapse: collapse;
+	width: 100%;
+}
+
+#node_list tr {
+	background-color: #e1f5da;
+	border: 1px solid;
+}
+
+#node_list tr.even {
+	background-color: #e1f5da;
+}
+
+#node_list tr.odd {
+	background-color: #b1d5ba;
+}
+
+#node_list td {
+	margin: 0 0 0 0;
+	text-align: center;
+	color: #000000;
+}
+
+#node_list td.status {
+	width: 15em;
+	text-align: left;
+	font-size: 9pt;
+}
+
+#node_list a {
+	color: #000000;
+}
+
+#hotspot_status {
+	
+}
+
+#hotspot_status table {
+	background-color: #b1d5ba;
+	border-collapse: collapse;
+	width: 100%;
+}
+
+#hotspot_status tr {
+	vertical-align: top;
+	font-size: 10pt;
+	font-family: Arial;
+	background-color: #e1f5da;
+	border: 1px solid;
+}
+
+#hotspot_status tr.even {
+	background-color: #e1f5da;
+}
+
+#hotspot_status tr.odd {
+	background-color: #b1d5ba;
+}
+
+#hotspot_status td {
+	margin: 0 0 0 0;
+	color: #000000;
+}
+
+#hotspot_status a {
+	color: #000000;
+}
+
+#hotspot_log {
+	margin: 1em;
+}
+
+#hotspot_log table {
+	background-color: #b1d5ba;
+	border-collapse: collapse;
+}
+
+#hotspot_log th {
+	background-color: #e1f5da;
+	border: 1px solid;
+	text-align: left;
+}
+
+#hotspot_log tr {
+	background-color: #ffffff;
+	border: 1px solid;
+}
+
+#hotspot_log td {
+	margin: 0 0 0 0;
+	color: #000000;
+}
+
+#hotspot_log td.status {
+	width: 15em;
+	text-align: left;
+	font-size: 9pt;
+}
+
+#hotspot_log a {
+	color: #000000;
+}
+
+#user_stats {
+	
+}
+
+#user_stats table {
+	background-color: #b1d5ba;
+	border-collapse: collapse;
+}
+
+#user_stats th {
+	background-color: #e1f5da;
+	border: 1px solid;
+}
+
+#user_stats tr {
+	background-color: #ffffff;
+	border: 1px solid;
+}
+
+#user_stats td {
+	margin: 0 0 0 0;
+	color: #000000;
+}
+
+#user_stats td.status {
+	width: 15em;
+	text-align: left;
+	font-size: 9pt;
+}
+
+#user_stats a {
+	color: #000000;
+}
+
+#std_table {
+	
+}
+
+#std_table table {
+	border: 1px solid gray;
+}
+
+#std_table th {
+	font-size: 14pt;
+	background-color: #e1f5da;
+}
+
+#std_table td.item {
+	font-weight: bold;
+}
+
+fieldset {
+	background-color: #E9F6FF;
+	border: 1px solid #B4DFFF;
+}
+
+fieldset legend {
+	color: #37678A;
+	font-size: 1em;
+	font-weight: bold;
+}
+
+fieldset table {
+	width: 100%;
+	border-collapse: collapse;
+}
+
+fieldset tr.odd {
+	background-color: #fff;
+}
+
+fieldset th {
+	text-align: left;
+}
+
+fieldset .red {
+	background-color: #CC0000;
+}
+
+.smaller {
+	font-size: 80%;
+}
+
+/********** Google map section **********/
+#map_title {
+	background-color: #E9F6FF;
+	border: 1px solid #B4DFFF;
+	margin-top: 5px;
+	padding: 5px;
+	font-size: 14pt;
+	color: #37678A;
+	font-weight: bold;
+}
+
+#map_toolbox {
+	display: inline;
+	float: right;
+}
+
+#map_postalcode_overlay {
+	position: absolute;
+	display: none;
+	z-index: 10;
+	background-color: #E9F6FF;
+	border: 1px solid #B4DFFF;
+	padding: 10px;
+	font-size: 10pt;
+	font-weight: bold;
+}
+
+#map_legend {
+	background-color: #E9F6FF;
+	border: 1px solid #B4DFFF;
+	padding: 5px;
+	font-size: 10pt;
+	color: #37678A;
+	vertical-align: middle;
+}
+
+#map_outer_hotspots_list {
+	position: relative;
+	width: 33%;
+	height: 500px;
+	background-color: #FFFFFF;
+	overflow: auto;
+	float: right;
+}
+
+#map_hotspots_list {
+	padding: 10px;
+}
+
+#map_frame {
+	position: relative;
+	width: 66%;
+	height: 500px;
+	font-size: 10pt;
+}
+
+/********** End Google map section **********/
+	/********** Scrollable Table Section ********/
+#node_list_div {
+	background: inherit;
+	overflow: auto;
+	height: 400px;
+	width: 97%;
+	min-width: 500px;
+	text-align: center;
+	border: 1px solid blue;
+}
+
+#node_list_div table.scrollable>tbody {
+	/* child selector syntax which IE6 and older do not support */
+	overflow: auto;
+	height: 378px;
+	width: 100%;
+}
+
+\html
+div.tableContainer table { /* */
+	margin: 0 -16px 0 0
+}
+
+\html
+div.tableContainer { /* */
+	padding: 0 16px 0 0;
+}
+
+table.scrollable thead tr {
+	position: relative;
+}
+
+html>body thead tr {
+	width: 100%;
+}
+
+table.scrollable {
+	width: 99%;
+	border-collapse: collapse;
+	border-spacing: 0px;
+}
+
+table.scrollable thead th {
+	font-weight: bold;
+	text-align: center;
+	border-top: solid 2px #000000;
+	border-bottom: solid 2px #000000;
+	background-color: #CCC;
+	color: #000099;
+	width: 200px;
+}
+
+table.scrollable tr.row:hover,tr.hover {
+	background-color: #2175bc;
+	color: #ff0000;
+}
+
+table.scrollable tr {
+	cursor: pointer;
+}
+
+table.scrollable td {
+	color: #000000;
+	padding-left: 5px;
+	font-size: 12px;
+	text-align: left;
+}
+
+table.scrollable thead td:last-child {
+	padding-right: 25px;
+}
+
+table.scrollable thead th:last-child {
+	padding-right: 25px;
+}
+
+/******* End Scrollable Table Section ********/
+	/********** Sortable Table Section ***********/
+table.sortable a.sortheader {
+	background-color: #CCC;
+	color: #000099;
+	font-weight: bold;
+	text-decoration: none;
+	display: block;
+	font-size: 12px;
+}
+
+table.sortable span.sortarrow {
+	color: black;
+	text-decoration: none;
+}
+
+table.sortable tr.odd {
+	background-color: #eee;
+}
+
+table.sortable tr.even {
+	background-color: #fff;
+}
+/****** End Sortable Table Section ***********/
Index: /branches/newtoken/wifidog/media/base_theme/printer.css
===================================================================
--- /branches/newtoken/wifidog/media/base_theme/printer.css	(revision 1300)
+++ /branches/newtoken/wifidog/media/base_theme/printer.css	(revision 1300)
@@ -0,0 +1,8 @@
+@CHARSET "UTF-8";
+#left_area,#main_area_top {
+	display: none;
+}
+
+#main_area {
+	width: 100%;
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/ilesansfil/stylesheet.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/ilesansfil/stylesheet.css	(revision 1049)
+++ /branches/newtoken/wifidog/media/network_theme_packs/ilesansfil/stylesheet.css	(revision 1049)
@@ -0,0 +1,12 @@
+/* Important notes:
+-You may not assume ANYTHING about the path to images or media
+that isn't under this file's theme pack.  In other words, no ../ relative links.
+-This stylesheet will be applied after the one in
+wifidog/media/base_theme/stylesheet.css.  This theme pack should only override the elements
+ in the base stylesheet that you want to change.
+*/
+
+/* Redefine network logo */
+#page_header {
+	background: #f5f5f5 url('images/isf_logo_web.gif') no-repeat 10px 10px;
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/ilesansfil/description.txt
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/ilesansfil/description.txt	(revision 1031)
+++ /branches/newtoken/wifidog/media/network_theme_packs/ilesansfil/description.txt	(revision 1031)
@@ -0,0 +1,1 @@
+The theme used by the Île sans fil wireless community group (http://www.ilesansfil.org)
Index: /branches/newtoken/wifidog/media/network_theme_packs/ilesansfil/name.txt
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/ilesansfil/name.txt	(revision 1031)
+++ /branches/newtoken/wifidog/media/network_theme_packs/ilesansfil/name.txt	(revision 1031)
@@ -0,0 +1,1 @@
+Île sans fil 
Index: /branches/newtoken/wifidog/media/network_theme_packs/README.txt
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/README.txt	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/README.txt	(revision 1364)
@@ -0,0 +1,9 @@
+Directory: wifidog/media/network_theme_packs/
+User-installable theme packs that can be chosen from the network admin insterface.  To create a new one, create a directory having the following structure:
+theme_pack_id/		A directory, it's name becomes the theme pack's id
+|- name.txt		The content of this file become the theme pack's name (Displayed in the theme selection menu)
+|- description.txt	The content of this file become the theme pack's description (displayed in the help)
+|- stylesheet.css	Mandatory:  the stylesheet used by the theme, will be applied after the stylesheet in base_theme
+|- images/		Images used by this theme's stylesheet
+|- themeconfig.php	The content of this file is optional, but can define the menu position, CSS inheritence and header/footer values.
+Important note:  The encoding for name.txt and description.txt is assumed to be UTF-8
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheet.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheet.css	(revision 1365)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheet.css	(revision 1365)
@@ -0,0 +1,42 @@
+/********************************************
+   AUTHOR:  			Robin Jones
+   WEBSITE:   			http://www.networkfusion.co.uk
+   TEMPLATE NAME:		Refreshing
+   VERSION:        		1.0      
+   ADDITIONAL INFORMATION:      Base template by Erwin Aligam     	
+ *******************************************/
+
+
+  /****************** Checked and OK *************************/
+ @import url("stylesheets/layout.css");
+ @import url("stylesheets/navigation.css");
+ @import url("stylesheets/table.css");
+ @import url("stylesheets/topElements.css");
+ @import url("stylesheets/form.css");
+ @import url("stylesheets/gmaps.css");
+ @import url("stylesheets/toolcontent.css");
+ @import url("stylesheets/loginform.css");
+ /****************** Admin functions split *************************/
+ @import url("stylesheets/contentmanagement.css");
+ @import url("stylesheets/admin.css");
+
+
+ /****************** Haven't Checked! *************************/
+ @import url("stylesheets/rss.css");
+ @import url("stylesheets/shoutbox.css");
+ @import url("stylesheets/tooltips.css");
+
+
+ /****************** Dont Know what these do!!! *************************/
+ @import url("stylesheets/portal.css");
+ @import url("stylesheets/userui.css");
+ @import url("stylesheets/tosort.css");
+
+
+
+
+
+
+
+
+
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/config options
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/config options	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/config options	(revision 1364)
@@ -0,0 +1,7 @@
+Config Options
+
+Inherit Base CSS	yes/no
+Always show Header	yes/no
+Always show Footer	yes/no
+Menu Position		main/all/left
+
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/description.txt
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/description.txt	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/description.txt	(revision 1364)
@@ -0,0 +1,1 @@
+NetworkFusion Theme by Robin Jones [http://www.networkfusion.co.uk]
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/admin.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/admin.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/admin.css	(revision 1364)
@@ -0,0 +1,101 @@
+/********** generic object admin interface **********/
+	/* Fieldset, wraps every output of displyAdminUI.
+All admin_container are also admin_element_group (to ensure that
+ nesting will be explicit) and include the classname of the object as
+ the object class (such as 'Langstring')*/
+.admin_container {
+	border: 2px solid #D2D2D2;
+}
+
+/* noramlly a fieldset, logically wraps groups of related
+options.*/
+.admin_element_group {
+	border: 1px dotted #D2D2D2;
+}
+
+.admin_container,.admin_element_group {
+	display: block;
+	background-color: white;
+	margin: 0.1em 0.1em 0.1em 0.1em;
+	width: auto;
+}
+
+fieldset.admin_container legend {
+	font-size: 1.2em;
+}
+
+/* Contains a list of administrative properties of an object */
+.admin_element_list {
+	margin: 0em 0em 0em 0em;
+	padding: 0em 0em 0em 0em;
+}
+
+/* Contains an administrative property (possibly a complex, nested one) of an object */
+.admin_element_item_container {
+	margin: 0.1em 0.1em 0.1em 0.1em;
+	padding: 0em;
+	width: auto;
+}
+
+li.admin_element_item_container {
+	display: block;
+}
+
+tr.admin_element_item_container {
+	
+}
+
+/* The label of the admin element. Optional */
+.admin_element_label {
+	font-weight: bold;
+}
+
+div.admin_element_label {
+	display: inline;
+}
+
+td.admin_element_label,th.admin_element_label {
+	
+}
+
+/* The actual admin element data.  Can contain another admin_element_group */
+div.admin_element_data {
+	display: inline;
+}
+
+td.admin_element_data,th.admin_element_data {
+	
+}
+
+/* Interaction elements (buttons mostly) are in this container.  Optional */
+.admin_element_tools {
+
+}
+
+div.admin_element_tools {
+	display: inline;
+}
+
+td.admin_element_tools,th.admin_element_tools {
+	
+}
+
+/* buttons */
+.submit {
+	margin-top: 5px;
+	margin-right:5px;
+	border:1px solid #CCCCCC;
+}
+.submit:hover {
+	margin-top: 5px;
+	margin-right:5px;
+	border: 1px solid #BBB; 
+}
+.submit_disabled {
+	margin-top: 5px;
+	margin-right:5px;
+	color: red;	
+	border: 2px solid red;
+}
+
+/********** End generic object admin interface **********/
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/tosort.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/tosort.css	(revision 1365)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/tosort.css	(revision 1365)
@@ -0,0 +1,140 @@
+/********** Page specific CSS section **********/
+.portal {
+	
+}
+
+.login {
+	
+}
+
+
+
+
+/*********************************************************************/
+.clearbr {
+	clear: both;
+}
+
+/******************************* Messages ****************************/ 
+
+.errormsg {
+	font-weight: bold;
+	color: #CC0000;
+}
+
+.warningmsg {
+	font-weight: bold;
+	color: orange;
+}
+
+.successmsg {
+	font-weight: bold;
+	color: #00CC00;
+}
+
+.msg {
+	font-weight: bold;
+	color: black;
+}
+
+/* This is the warning message area ( Alerting the user to validation his account ASAP ) */
+#warning_message_area {
+	background-color: #CC0000;
+	color: white;
+	font-size: large;
+	font-weight: bold;
+	text-align: center;
+}
+
+
+
+.list_ui_container {
+	display: inline;
+}
+
+.download_button {
+	padding: 10px 10px 10px 10px;
+	background-color: #cafd84;
+	color: #336600;
+	font-weight: bold;
+	border: outset #999999;
+}
+
+
+
+/* UIUserList */
+.UIUserList ul {
+	list-style-type: none;
+}
+
+.langstring {
+	text-align: justify;
+}
+
+
+table.content_admin {
+	margin-top: 5px;
+	border: 1px solid grey;
+}
+
+table.content_admin th {
+	background-color: lightgrey;
+}
+
+table.content_admin td {
+	border: 1px solid grey;
+}
+
+
+
+.popup {
+	background-color: white;
+	border: solid darkblue;
+	text-align: left
+}
+
+.link {
+	color: blue;
+	text-decoration: underline
+}
+
+
+
+/*
+
+fieldset {
+	background-color: #E9F6FF;
+	border: 1px solid #B4DFFF;
+}
+
+fieldset legend {
+	color: #37678A;
+	font-size: 1em;
+	font-weight: bold;
+}
+
+fieldset table {
+	width: 100%;
+	border-collapse: collapse;
+}
+
+fieldset tr.odd {
+	background-color: #fff;
+}
+
+fieldset th {
+	text-align: left;
+}
+*/
+fieldset .red {
+	background-color: #CC0000;
+}
+
+.smaller {
+	font-size: 80%;
+}
+
+
+
+
+
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/loginform.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/loginform.css	(revision 1366)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/loginform.css	(revision 1366)
@@ -0,0 +1,57 @@
+.login {
+	
+}
+
+
+/* The login form (including header) */
+#login_form {
+	float: left;
+	text-align: center;
+}
+
+#login_form form {
+	padding-left: 5px;
+}
+
+/* The help text for the login form */
+#login_help {
+	position: absolute;
+	left: 200px;
+	top: 270px;
+	width: 220px;
+}
+
+
+/* Login elements */
+#login_signup {
+
+}
+#loginbox {
+	float: left;
+	border: 1px solid #E7E7E7;
+	padding: 5px;
+	margin: 10px;
+	height: 250px;
+}
+#signupbox {
+	float: right;
+	border: 1px solid #E7E7E7;
+	padding: 5px;
+	margin: 10px;
+	height: 250px;
+}
+
+#signupbox .submit {
+	height: 100px;
+	width: 200px;
+
+}
+
+loginselection {
+
+}
+
+#loginbox_signup, h2 {
+text-transform: none;
+d/isplay: none;
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/navigation.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/navigation.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/navigation.css	(revision 1364)
@@ -0,0 +1,136 @@
+/* Menu */
+
+#site_menu a {
+	color: #FFF;
+}
+
+#site_menu a:hover a:sfhover {
+	color: #000;
+}
+
+#site_menu {
+	clear: both;	
+	margin: 0; padding: 0 40px 0 0;
+	background: url(../images/menu.jpg) repeat-y center top;	
+	font: bold 12px/26px Verdana, Arial, Tahoma, Sans-serif;
+	height: 26px;
+
+}
+#site_menu ul {
+	float: right;
+	list-style: none;
+	margin:0; padding: 0;
+}
+#site_menu ul li {
+	display: inline;
+}
+#site_menu ul li a {
+	padding: 0 8px;
+	color: #FFF;	
+	text-decoration: none;
+}
+#site_menu ul li a:hover {
+	background-color: #ECECEC;
+	color: #000;	
+}
+#site_menu ul li#current a {	
+	background-color: #FFF;
+	color: #000;
+}
+#site_menu li:hover,#site_menu li.sfhover { /* WD specific */
+	background-color: #ECECEC;
+	color: #000;
+}
+#nav,#nav ul { /* all lists */
+	padding: 0;
+	margin: 0 0 1em 0;
+	list-style: none;
+	line-height: 1;
+	/* WD specific */
+	float: left;
+	width: auto;
+	background: url(../images/menu.jpg) repeat-y center top;
+	font-weight: bold;
+	border: solid #d7d5d5;
+	border-width: 1px 0; 
+	z-index: 99;
+}
+
+#nav {
+	/* WD specific, this must be after the #nav,#nav ul, it will apply only to the top menu items */
+	background: none;
+	margin: 0 0 0 0;
+	border: none;
+	clear: both;
+	display: block;
+	float: none;
+	color: #000;
+	vertical-align: baseline;
+}
+
+#nav a { /* WD specific */
+	display: block;
+	width: 10em;
+	text-decoration: none;
+	padding: 0.25em 2em;
+	color: #FFF;
+}
+
+#nav li { /* all list items */
+	float: left;
+	width: 10em; /* width needed or else Opera goes nuts */
+	/* WD specific */
+	padding: 0;
+}
+
+#nav>li { /* WD specific */
+/*	border-left: 1px solid #d7d5d5;
+	border-right: 1px solid #d7d5d5;
+	border-bottom: 1px solid #d7d5d5; */
+}
+
+#nav li li { /* WD specific */
+	padding-right: 1em;
+	width: 13em;
+}
+
+#nav li ul a { /* WD specific */
+	width: 13em;
+
+}
+
+#nav li ul { /* second-level lists */
+	position: absolute;
+	width: 14.4em;
+	left: -999em;
+	/* using left instead of display to hide menus because display: none isn't read by screen readers */
+	/* WD specific */
+	height: auto;
+
+	font-weight: normal;
+	border-width: 0.25em;
+	margin: 0;
+}
+
+#nav li:hover ul { /* WD specific */
+	left: auto;
+}
+
+#nav li ul ul { /* third-and-above-level lists */
+	margin: -1.75em 0 0 14em;
+}
+
+#nav li:hover ul ul,#nav li:hover ul ul ul,#nav li.sfhover ul ul,#nav li.sfhover ul ul ul
+	{
+	left: -999em;
+}
+
+#nav li:hover ul, #nav li li:hover ul, #nav li li li:hover ul, #nav li.sfhover ul, #nav li li.sfhover ul, #nav li li li.sfhover ul
+	{ /* lists nested under hovered list items */
+	left: auto;
+}
+
+#nav li:hover, #nav li.sfhover { /* WD specific */
+	background-color: #ECECEC;
+	color: #000;
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/topElements.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/topElements.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/topElements.css	(revision 1364)
@@ -0,0 +1,103 @@
+/********************************************
+   HTML ELEMENTS
+********************************************/ 
+
+/* Top Elements */
+* { margin: 0; padding: 0; }
+
+body {
+	background: #CCCCCC;
+	font: 70%/1.5em Verdana, Tahoma, arial, sans-serif;
+	color: #333; 
+	text-align: center;
+}
+
+/* links */
+a, a:visited {
+	text-decoration: none;
+	color: #4F82CB; 
+}
+a:hover {
+	color: #4EBF37;
+	background: inherit;
+}
+
+/* headers */
+h1, h2, h3 {
+	font-family: Tahoma, Verdana, 'Trebuchet MS', Sans-serif;
+	font-weight: Bold; 		
+}
+h1 {
+	font-size: 120%;	
+}
+h2 {
+	font-size: 110%;
+	text-transform: uppercase;
+	color: #88ac0b;
+}
+h3 {
+	font-size: 110%;
+	color: #666666; 
+}
+
+/* images */
+img {
+	vertical-align: center;
+}
+img.float-right {
+  margin: 5px 0px 10px 10px;  
+}
+img.float-left {
+  margin: 5px 10px 10px 0px;
+}
+
+h1, h2, h3, p {
+	padding: 10px;		
+	margin: 0;
+}
+ul, ol {
+	margin: 5px 20px;
+	padding: 0 20px;
+	c/olor: #88ac0b;	
+}
+ul span, ol span {
+	color: #666666;
+}
+
+code {
+  margin: 5px 0;
+  padding: 10px;
+  text-align: left;
+  display: block;
+  overflow: auto;  
+  font: 500 1em/1.5em 'Lucida Console', 'courier new', monospace ;
+  /* white-space: pre; */
+  background: #FAFAFA;
+  border: 1px solid #f2f2f2;  
+}
+acronym {
+	cursor: help;
+	border-bottom: 1px solid #777;
+}
+blockquote {
+	margin: 10px;
+ 	padding: 0 0 0 28px;  
+	border: 1px solid #f2f2f2; 
+  	background: #FAFAFA url(../images/quote.gif) no-repeat 5px 5px;    
+}
+
+fieldset legend {
+	margin-bottom: 5px;
+	font: Bold 125% Verdana, 'Trebuchet MS', Sans-serif;
+	color: #88ac0b;
+	padding: 5px 5px 5px 25px; 	
+	b/order-bottom: 1px solid #EFF0F1;
+	background: transparent url(../images/square-green.png) no-repeat 3px 50%;
+}
+
+fieldset {
+	b/ackground-color: #FAFAFA;
+	border: 1px solid #D2D2D2;
+	margin: 5px 5px;
+	padding: 5px;
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/portal.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/portal.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/portal.css	(revision 1364)
@@ -0,0 +1,35 @@
+/* Portal */
+#portal_container {
+	margin: 3px;
+}
+
+.portal_network_section {
+	margin: 3px;
+}
+
+.portal_node_section {
+	margin: 3px;
+}
+
+.portal_node_section h1,.portal_node_section h1 a {
+	color: #88AA4B;
+	font-size: 14px;
+}
+
+.portal_network_section h1,.portal_network_section h1 a {
+	color: #88AA4B;
+	font-size: 1.2em;
+}
+
+.portal_user_section {
+	margin: 3px;
+}
+
+.portal_section_title,.portal_section_title a {
+	font-size: medium;
+}
+
+.portal_section_logo {
+	padding: 2px;
+	display: inline;
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/form.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/form.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/form.css	(revision 1364)
@@ -0,0 +1,81 @@
+/* form elements */
+form {
+	margin:10px; padding: 5px;
+	border: 1px solid #f2f2f2; 
+	background-color: #FAFAFA; 
+}
+label {
+	display:block;
+	font-weight:bold;
+	margin:5px 0;
+}
+
+textarea {
+	width:400px;
+	padding:2px;
+	font: normal 1em Verdana, sans-serif;
+	border:1px solid #eee;
+	height:100px;
+	display:block;
+	color:#777;
+}
+
+input {
+	margin: 5px; 
+	font: bolder 12px Arial, Sans-serif; 
+	border: 1px solid #CCC; 
+	padding: 2px 3px; 
+	background: #FFF;
+	color: #88ac0b;
+}
+
+input.button { 
+	margin: 5px; 
+	font: bolder 12px Arial, Sans-serif; 
+	border: 1px solid #CCC; 
+	padding: 2px 3px; 
+	background: #FFF;
+	color: #88ac0b;
+}
+input:hover { 
+	margin: 5px; 
+	font: bolder 12px Arial, Sans-serif; 
+	border: 1px solid #BBB; 
+	padding: 2px 3px; 
+	background: #FFF;
+	color: #4F82CB;
+}
+input:focus {
+	margin: 5px; 
+	font: bolder 12px Arial, Sans-serif; 
+	border: 1px solid #BBB; 
+	padding: 2px 3px; 
+	background: #FFF;
+	color: #4F82CB;
+}
+
+select {
+	background:white none repeat scroll 0% 0%;
+	border: 1px solid #CCC;
+	color: inherit;
+}
+
+/* search */
+form.search {
+	position: absolute;
+	top: 35px; right: 25px;
+	background: transparent;
+	border: none;	
+}	
+form.search input.textbox {
+	margin: 0; padding: 1px 2px;
+	width: 120px;
+	background: #FFF;
+	color: #333; 
+}
+form.search input.button {
+	background: #CCC url(../images/headerbg.gif) repeat-x;
+	color: #333;
+	border: none;	
+	width: 70px; height: 21px;
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/contentmanagement.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/contentmanagement.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/contentmanagement.css	(revision 1364)
@@ -0,0 +1,49 @@
+/* The content container */
+.content {
+	border: 2px #F2F2F2;
+	width: auto;
+}
+
+.user_select_user_ui_container div {
+	display: inline;
+}
+
+.user_select_user_ui_container .submit {
+	display: inline;
+}
+
+.role_select_role_ui_container div {
+	display: inline;
+}
+/** Content management tools */
+
+.content_management_tools {
+	border: 1px solid #F2F2F2;
+	background-color: #FAFAFA;
+}
+
+
+.content_management_tools th {
+	color: #FFFFFF;
+	text-align: center;
+}
+
+.already_linked_content {
+	
+}
+
+.add_existing_content {
+	font-weight: bold;
+}
+
+.add_new_content {
+	font-weight: bold;
+}
+
+#NodeSelector select {
+	width: 100%;
+}
+
+.generic_object_admin_edit input {
+	float: left;
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/gmaps.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/gmaps.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/gmaps.css	(revision 1364)
@@ -0,0 +1,57 @@
+/********** Google map section **********/
+#map_title {
+	margin-top: 10px;
+	margin-bottom: 10px;
+	font: Bold 125% Verdana, 'Trebuchet MS', Sans-serif;
+	color: #88ac0b;
+	padding: 5px 0 5px 25px; 	
+	background: #FFF url(../images/square-green.png) no-repeat 3px 50%;	
+}
+
+#map_toolbox {
+	display: inline;
+	float: right;
+}
+
+#map_postalcode_overlay {
+	position: absolute;
+	display: none;
+	z-index: 10;
+	background-color: #E9F6FF;
+	border: 1px solid #B4DFFF;
+	padding: 10px;
+	font-size: 10pt;
+	font-weight: bold;
+}
+
+#map_legend {
+	background-color: none;
+	border: 1px solid #B4DFFF;
+	padding: 5px;
+	margin: 10px;
+	font-size: 10pt;
+	color: #37678A;
+	vertical-align: middle;
+}
+
+#map_outer_hotspots_list {
+	position: relative;
+	width: 33%;
+	height: 400px;
+	background-color: #FFFFFF;
+	overflow: auto;
+	float: right;
+}
+
+#map_hotspots_list {
+	padding: 10px;
+}
+
+#map_frame {
+	position: relative;
+	width: 66%;
+	height: 400px;
+	font-size: 10pt;
+}
+
+/********** End Google map section **********/
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/rss.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/rss.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/rss.css	(revision 1364)
@@ -0,0 +1,242 @@
+/* RssAggregator */
+.fpr_item_title {
+	display: inline;
+}
+
+.fpr_feed_title {
+	display: inline;
+}
+
+.fpr_title_date {
+	font-weight: lighter;
+}
+
+.fpr_title_str {
+	display: inline;
+	font-size: 1.3em;
+	color: #000000;
+}
+
+.fpr_item_title .fpr_title_str {
+	
+}
+
+.fpr_list {
+	padding: 0em 0em 0em 0em;
+	margin: 0em 0em 0em 0em;
+}
+
+.fpr_item {
+	list-style-type: none;
+	display: block;
+}
+
+fpr_empty_feeds {
+	
+}
+
+.fpr_mouseover {
+	display: inline
+}
+
+.fpr_item_link { /*font-size: 1.0em;*/
+	color: #003399;
+}
+
+.fpr_expand_switch {
+	text-decoration: none;
+}
+
+.fpr_popup_inner_div {
+	padding: 0.5em;
+	visibility: hidden;
+	position: absolute;
+	left: 0em;
+	top: 0em;
+	width: 100%;
+	z-index: 100;
+	opacity: 0.90;
+	filter: alpha(opacity =       90);
+	-webkit-border-radius: 5px;
+	-moz-border-radius: 5px;
+	border-radius: 5px;
+	background-color: #EBFFEB;
+	color: #000000;
+	border: 1px solid #C2FFC2;
+}
+
+.fpr_popup_inner_div_expanded {
+	margin: 0em 0em 0.5em 0.5em;
+	padding: 0.5em;
+	/* Color of background around the text: #E9F6FF */
+	border-top: 1px solid #F4FAFF;
+	border-right: 1px solid #B4DFFF;
+	border-bottom: 1px solid #B4DFFF;
+	border-left: 1px solid #F4FAFF;
+	color: #000000;
+	background-color: #FFFFFF;
+}
+
+.fpr_popup_outer_div {
+	position: relative;
+}
+
+.fpr_feed_image {
+	float: right;
+}
+
+.fpr_text {
+	display: block;
+}
+
+.fpr_text P {
+	
+}
+
+.fpr_text img {
+	float: right;
+}
+
+.fpr_enclosure {
+	max-width: 320px;
+	max-height: 240px;
+	display: inline;
+	float: right;
+}
+
+.fpr_enclosure_inner {
+	display: block;
+}
+
+.fpr_clear {
+	clear: right;
+}
+
+.fpr_enclosure_download {
+	text-align: center;
+}
+
+.fpr_item_metadata {
+	float: right;
+}
+
+.flickr_photo {
+	background: url(../images/flickr_shadowAlpha.png) no-repeat bottom right
+		!important;
+	background: url(../images/flickr_shadow.gif) no-repeat bottom right;
+	margin: 10px 0 0 10px !important;
+	margin: 10px 0 0 5px;
+}
+
+.flickr_photo img {
+	display: block;
+	position: relative;
+	background-color: #fff;
+	border: 1px solid #CCCCCC;
+	margin: -6px 6px 6px -6px;
+	padding: 4px;
+}
+
+.flickr_photo img:hover {
+	display: block;
+	position: relative;
+	background-color: #fff;
+	border: 2px solid #CCCCCC;
+	margin: -6px 6px 6px -6px;
+	padding: 3px;
+}
+
+.flickr_photo_hover {
+	display: none;
+}
+
+.flickr_title {
+	color: white;
+	width: 200px;
+	background: #696969;
+}
+
+.flickr_title a {
+	color: white;
+}
+
+.flickr_title h3 {
+	color: white;
+	padding: 5px;
+	margin: 0;
+}
+
+.flickr_tags {
+	visibility: hidden;
+	background-color: #696969;
+	color: white;
+	width: 140px;
+}
+
+.flickr_tags h3 {
+	padding-left: 5px;
+	margin: 0;
+}
+
+.flickr_tags ul {
+	margin-left: 20px;
+	margin-top: 0px;
+	padding: 0px;
+}
+
+.flickr_tags li {
+	list-style: none;
+	list-style-image: none;
+}
+
+.flickr_tags li a {
+	color: white;
+	/* font-size: normal; - invalid? */
+	text-decoration: none;
+}
+
+.flickr_tags li a:hover {
+	text-decoration: underline;
+}
+
+.flickr_description {
+	color: white;
+	width: 200px;
+	background: #696969;
+}
+
+.flickr_description a {
+	color: white;
+	text-decoration: underline;
+}
+
+.pattern_language_menu {
+	list-style-type: square;
+}
+
+.pattern_language_big_links {
+	color: #88AA4B;
+	font-size: medium;
+	font-weight: bold;
+}
+
+.pattern_language_big_links:hover {
+	color: #88AA4B;
+	font-size: medium;
+	font-weight: bold;
+}
+
+.pattern_language_body {
+	border: outset #999999;
+	background: #fafff3;
+	margin: 5px;
+	padding: 10px;
+	text-align: justify;
+}
+
+.pattern_language_credits {
+	border: 1px solid #999999;
+	background: #fafff3;
+	margin: 5px;
+	padding: 5px;
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/toolcontent.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/toolcontent.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/toolcontent.css	(revision 1364)
@@ -0,0 +1,99 @@
+/* User Info Box */
+div.tool_user_info {
+	margin: 0px;
+	padding: 5px;
+}
+
+div.language {
+	
+}
+
+form.language {
+	padding: 5px;
+	text-align: right;
+}
+
+.tool_content {
+	padding: 0px 5px 0px 5px;
+}
+
+/* The tool content */
+
+#logout_link {
+display: block;
+}
+
+#preferences_link {
+display: block;
+}
+
+#logout_link IMG {
+	vertical-align: middle;
+}
+
+#preferences_link IMG {
+	vertical-align: middle;
+}
+
+
+
+
+.Avatar {
+	display: inline;
+	vertical-align: middle;
+	margin: 0 0.5em 0 0;
+	padding: 0 0 0 0;
+}
+
+.Avatar div {
+	display: inline;
+}
+
+.Avatar img {
+	max-width: 20px;
+	max-height: 20px;
+	margin: 0 0 0 0;
+	padding: 0 0 0 0;
+}
+
+.Profile .Avatar img {
+	float: left;
+}
+
+.user_nickname {
+	font-size: 1.25em;
+	font-weight: bold;
+}
+
+.user_edit_profile_link {
+	display: inline;
+}
+
+.user_ui_profile_field {
+	
+}
+
+.profile_field_label {
+	font-size: 1.25em;
+	font-weight: bold;
+	display: inline;
+	margin: 0em;
+	padding: 0em;
+}
+
+.profile_field_label div {
+	margin: 0em;
+	padding: 0em;
+}
+
+.profile_field_label div {
+	display: inline;
+}
+
+.profile_field_content {
+	display: inline;
+}
+
+.profile_field_content div {
+	display: inline;
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/masteroveride.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/masteroveride.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/masteroveride.css	(revision 1364)
@@ -0,0 +1,1448 @@
+/* Important note:  You may not assume ANYTHING about the path to images or media
+that isn't under this file's theme pack.  In other words, no ../ none links. */
+	/********** General HTML elements redefinition section **********/
+body {
+	margin: 0;
+	padding: 0;
+	font-family: Verdana, Tahoma, arial, sans-serif;
+	color: inherit;
+	font-size: 100%;
+	background-color: transparent;
+}
+
+a {
+	color: inherit;
+	font-size: 100%;
+	text-decoration: none;
+}
+
+img {
+	border: 0;
+}
+
+a:hover {
+	color: inherit;
+}
+
+h1 {
+	color: inherit;
+	font-size: 100%;
+}
+
+input {
+	border: 0;
+}
+
+input:hover {
+	border: 0;
+}
+
+input:focus {
+	border: 0;
+}
+
+select {
+	color: inherit;
+	border: 0;
+	background: transparent;
+}
+
+/********** End General HTML elements redefinitionsection **********/
+	/********** Main structure section **********/
+#page_header {
+	padding: 0;
+	background: transparent;
+	margin: 0;
+	border-bottom: 0;
+	min-height: 100%;
+}
+
+#page_header .welcome_msg {
+	
+}
+
+#page_header .welcome_msg_inner {
+	margin-top: 0;
+	font-size: 100%;
+	color: inherit;
+	font-weight: normal;
+}
+
+#page_header .welcome_msg_inner em {
+	font-size: 100%;
+	color: inherit;
+}
+
+#page_header .welcome_msg_inner span {
+	display: inline;
+	font-size: 100%;
+}
+
+#page_body {
+	padding: 0;
+	margin: 0;
+	width: 100%;
+	float: normal;
+}
+
+#page_body h1 {
+	background: transparent;
+	padding-left: 0;
+}
+
+#left_area {
+	position: static; /* Necessary to work around IE6's stupidity */
+	width: 100%;
+	float: normal;
+	margin: 0;
+	padding: 0;
+}
+
+#left_area_top {
+	position: static;
+	width: 100%;
+	background: transparent;
+	margin: 0;
+	padding: 0;
+	border-right: 0;
+	border-bottom: 0;
+	border-left: 0;
+	float: normal;
+}
+
+#left_area_middle {
+	position: static;
+	width: 100%;
+	background: transparent;
+	margin: 0;
+	padding: 0;
+	border: 0;
+	float: normal;
+}
+
+#left_area_middle ul {
+	margin: 0;
+	padding: 0;
+	text-align: left;
+}
+
+#left_area_bottom {
+	position: static;
+	width: 100%;
+	background: transparent;
+	margin: 0;
+	padding: 0;
+	border: 0;
+	float: normal;
+}
+
+#left_area_bottom .user_ui_main_outer {
+	background: transparent;
+	border: 0;
+	color: inherit;
+}
+
+#main_area {
+	width: 100%;
+	float: normal;
+	margin: 0;
+	padding: 0;
+	/*border: 1px solid #E9E9E9;*/
+}
+
+* html #main_area { /* Stupid IE hack */
+	width: 100%;
+	margin: 0;
+	padding: 0;
+}
+
+#main_area_top {
+	background: transparent;
+	margin: 0;
+	padding: 0;
+	border-right: 0;
+	border-bottom: 0;
+	border-left: 0;
+	float: normal;
+}
+
+#main_area_middle {
+	position: static;
+	width: 100%;
+	margin: 0;
+	padding: 0;
+	float: normal;
+}
+
+#main_area_bottom {
+	position: static;
+	width: 100%;
+	margin: 0;
+	padding: 0;
+	float: normal;
+}
+
+#right_area {
+	
+}
+
+#right_area_top {
+	
+}
+
+#right_area_middle {
+	
+}
+
+#right_area_bottom {
+	
+}
+
+#page_footer {
+	
+}
+
+/********** End Main structure section **********/
+	/********** Page specific CSS section **********/
+.portal {
+	
+}
+
+.login {
+	
+}
+
+/********** End Page specific CSS section **********/
+	/********** End Main structure section **********/
+div.tool_user_info {
+	margin: 0;
+	padding: 0;
+}
+
+div.language {
+	
+}
+
+form.language {
+	padding: 0;
+	text-align: left;
+}
+
+.tool_content {
+	padding: 0;
+}
+
+div.avis {
+	padding: 0;
+	background-image: none;
+	background-repeat: none;
+	background-position: static;
+	background-color: transparent;
+}
+
+span.avis {
+	padding-top: none;
+}
+
+div.anysection {
+	padding: 0;
+	color: inherit;
+	text-align: left;
+}
+
+div.test {
+	text-align: left;
+	vertical-align: baseline;
+}
+
+/* The login form (including header) */
+#login_form {
+	float: normal;
+	text-align: left;
+}
+
+#login_form form {
+	padding-left: 0;
+}
+
+/* The help text for the login form */
+#login_help {
+	float: normal;
+	margin: 0;
+	padding: 0;
+	border: 0;
+}
+
+#logout_link IMG {
+	vertical-align: baseline;
+}
+
+#preferences_link IMG {
+	vertical-align: baseline;
+}
+
+/*********************************************************************/
+.clearbr {
+	clear: none;
+}
+
+/** Messages */ /* Fading Tooltips By Dustin Diaz*/
+body div#toolTip {
+	position: static;
+	z-index: 0;
+	width: 100%;
+	background: transparent;
+	text-align: left;
+	padding: 0;
+	min-height: 100%;
+	-webkit-border-radius: none;
+	-moz-border-radius: none;
+}
+
+body div#toolTip p {
+	margin: 0;
+	padding: 0;
+	color: inherit;
+	font-size: 100%;
+}
+
+body div#toolTip p em {
+	display: inline;
+	margin-top: 0;
+	color: inherit;
+	font-style: none;
+	font-weight: normal;
+}
+
+body div#toolTip p em span {
+	font-weight: normal;
+	color: inherit;
+}
+
+.errormsg {
+	font-weight: normal;
+	color: inherit;
+}
+
+.warningmsg {
+	font-weight: normal;
+	color: inherit;
+}
+
+.successmsg {
+	font-weight: normal;
+	color: inherit;
+}
+
+.msg {
+	font-weight: normal;
+	color: inherit;
+}
+
+/* The content container */
+.content {
+	border: 0;
+	width: 100%;
+}
+
+/********** generic object admin interface **********/
+	/* Fieldset, wraps every output of displyAdminUI.
+All admin_container are also admin_element_group (to ensure that
+ nesting will be explicit) and include the classname of the object as
+ the object class (such as 'Langstring')*/
+.admin_container {
+	border-left: 0;
+	border-top: 0;
+	border-bottom: 0;
+}
+
+/* noramlly a fieldset, logically wraps groups of related
+options.*/
+.admin_element_group {
+	border-left: 0;
+	border-top: 0;
+	border-bottom: 0;
+}
+
+.admin_container,.admin_element_group {
+	display: inline;
+	border-right: 0;
+	background-color: transparent;
+	margin: 0;
+	padding-right: 0;
+	width: 100%;
+}
+
+fieldset.admin_container legend {
+	font-size: 100%;
+}
+
+/* Contains a list of administrative properties of an object */
+.admin_element_list { /*background-color: red;*/
+	margin: 0;
+	padding: 0;
+}
+
+/* Contains an administrative property (possibly a complex, nested one) of an object */
+.admin_element_item_container { /*background-color: lightnone;*/
+	margin: 0;
+	padding: 0;
+	width: 100%;
+}
+
+li.admin_element_item_container {
+	display: inline;
+}
+
+tr.admin_element_item_container {
+	
+}
+
+/* The label of the admin element. Optional */
+.admin_element_label {
+	font-weight: normal;
+}
+
+div.admin_element_label {
+	display: inline;
+}
+
+td.admin_element_label,th.admin_element_label {
+	
+}
+
+/* The actual admin element data.  Can contain another admin_element_group */
+div.admin_element_data {
+	display: inline;
+}
+
+td.admin_element_data,th.admin_element_data {
+	
+}
+
+/* Interaction elements (buttons mostly) are in this container.  Optional */
+.admin_element_tools {
+	border: 0;
+	margin: 0;
+}
+
+div.admin_element_tools {
+	display: inline;
+}
+
+td.admin_element_tools,th.admin_element_tools {
+	
+}
+
+/* Get it touching the border to the admin container it's relevant for */
+.admin_element_tools .submit {
+	border: 0;
+	margin: 0;
+}
+
+.submit {
+	border: 0;
+}
+
+.submit:hover {
+	border: 0;
+	background-color: transparent;
+}
+
+.submit_disabled {
+	border: 0;
+}
+
+/********** End generic object admin interface **********/
+.user_select_user_ui_container div {
+	display: inline;
+}
+
+.user_select_user_ui_container .submit {
+	display: inline;
+}
+
+.role_select_role_ui_container div {
+	display: inline;
+}
+
+.content_management_tools {
+	border: 0;
+	background-color: transparent;
+}
+
+/** Content management tools */
+.content_management_tools th {
+	background-color: transparent;
+	color: inherit;
+	text-align: left;
+}
+
+.already_linked_content {
+	
+}
+
+.add_existing_content {
+	font-weight: normal;
+}
+
+.add_new_content {
+	font-weight: normal;
+}
+
+#NodeSelector select {
+	width: 100%;
+}
+
+.generic_object_admin_edit input {
+	float: normal;
+}
+
+/* This is the warning message area ( Alerting the user to validation his account ASAP ) */
+#warning_message_area {
+	background-color: transparent;
+	color: inherit;
+	font-size: 100%;
+	font-weight: normal;
+	text-align: left;
+}
+
+.user_ui_main_outer { /*	display: inline;*/
+	display: inline;
+	color: inherit;
+	background: transparent;
+	border: 0;
+	margin: 0;
+	padding: 0;
+	width: 100%; /* Will this fuck up in explorer? */
+}
+
+.user_ui_main_outer .user_ui_main_outer { /*	display: inline;*/
+	margin: 0;
+	padding: 0;
+}
+
+.hasDisplayableMetadata {
+	/*Defined at same level as user_ui_main_outer*/
+	background: transparent;
+	border: 0;
+	margin: 0;
+	padding: 0;
+}
+
+.user_ui_title .user_ui_main_outer,.user_ui_description .user_ui_main_outer
+	{
+	margin: 0;
+	padding: 0;
+	border: 0;
+}
+
+.user_ui_main_inner {
+	display: inline;
+	/*	border: 0;*/
+}
+
+.user_ui_container {
+	display: inline;
+	margin: 0;
+	padding: 0;
+}
+
+.user_ui_title {
+	display: inline;
+	font-size: 100%;
+	font-weight: normal;
+	margin: 0;
+	padding: 0;
+}
+
+.user_ui_title a {
+	font-size: 100%;
+	font-weight: normal;
+}
+
+.user_ui_authors {
+	display: inline;
+	font-weight: normal;
+	color: inherit;
+	padding: 0;
+	background: transparent;
+	margin: 0;
+	padding: 0;
+}
+
+.user_ui_description {
+	text-align: left;
+	font-weight: normal;
+	margin: 0;
+	padding: 0;
+}
+
+.user_ui_footer {
+	display: inline;
+	padding: 0;
+	background-color: transparent;
+}
+
+.user_ui_picture {
+	height: 100%;
+}
+
+.user_ui_projet_info {
+	background-color: transparent;
+}
+
+.list_ui_container {
+	display: inline;
+}
+
+.download_button {
+	padding: 0;
+	background-color: transparent;
+	color: inherit;
+	font-weight: normal;
+	border: 0;
+}
+
+/* Portal */
+#portal_container {
+	margin: 0;
+}
+
+.portal_network_section { /*	background-color:	#CFDCE6;*/
+	margin: 0;
+}
+
+.portal_node_section { /*	background-color:	#CFDCE6;*/
+	margin: 0;
+}
+
+.portal_node_section h1,.portal_node_section h1 a {
+	color: inherit;
+	font-size: 100%;
+}
+
+.portal_network_section h1,.portal_network_section h1 a {
+	color: inherit;
+	font-size: 100%;
+}
+
+.portal_user_section { /*	background-color:	#CFDCE6;*/
+	margin: 0;
+}
+
+.portal_section_title,.portal_section_title a {
+	font-size: 100%;
+}
+
+.portal_section_logo {
+	padding: 0;
+	display: inline;
+}
+
+/********** Content type section **********/ /* MainMenu */
+#nav,#nav ul { /* all lists */
+	padding: 0;
+	margin: 0;
+	list-style: none;
+	line-height: 100%;
+	/* WD specific */
+	float: normal;
+	width: 100%;
+	background: transparent;
+	font-weight: normal;
+	border: 0;
+	border-width: 100%;
+	z-index: 0;
+}
+
+#nav {
+	/* WD specific, this must be after the #nav,#nav ul, it will apply only to the top menu items */
+	background: transparent;
+	margin: 0;
+	border: 0;
+	clear: none;
+	display: inline;
+	float: normal;
+}
+
+#nav a { /* WD specific */
+	display: inline;
+	width: 100%;
+	text-decoration: none;
+	padding: 0;
+}
+
+#nav li { /* all list items */
+	float: normal;
+	width: 100%; /* width needed or else Opera goes nuts */
+	/* WD specific */
+	padding: 0;
+}
+
+#nav>li { /* WD specific */
+	border-left: 0;
+	border-right: 0;
+	border-bottom: 0;
+}
+
+#nav li li { /* WD specific */
+	padding-right: 0;
+	width: 100%;
+}
+
+#nav li ul a { /* WD specific */
+	width: 100%;
+}
+
+#nav li ul { /* second-level lists */
+	position: static;
+	width: 100%;
+	left: none;
+	/* using none; instead of display to hide menus because display: none isn't read by screen readers */
+	/* WD specific */
+	height: 100%;
+	font-weight: normal;
+	border-width: 100%;
+	margin: 0;
+}
+
+#nav li:hover ul { /* WD specific */
+	left: none;
+}
+
+#nav li ul ul { /* third-and-above-level lists */
+	margin: 0;
+}
+
+#nav li:hover ul ul,#nav li:hover ul ul ul,#nav li.sfhover ul ul,#nav li.sfhover ul ul ul
+	{
+	left: none;
+}
+
+#nav li:hover ul,#nav li li:hover ul,#nav li li li:hover ul,#nav li.sfhover ul,#nav li li.sfhover ul,#nav li li li.sfhover ul
+	{ /* lists nested under hovered list items */
+	left: none;
+}
+
+#nav li:hover,#nav li.sfhover { /* WD specific */
+	background: transparent;
+}
+
+/* UIUserList */
+.UIUserList ul {
+	list-style-type: none;
+}
+
+.langstring {
+	text-align: left;
+}
+
+/* RssAggregator */
+.fpr_item_title {
+	display: inline;
+}
+
+.fpr_feed_title {
+	display: inline;
+}
+
+.fpr_title_date {
+	font-weight: normal;
+}
+
+.fpr_title_str {
+	display: inline;
+	font-size: 100%;
+	color: inherit;
+}
+
+.fpr_item_title .fpr_title_str {
+	
+}
+
+.fpr_list {
+	padding: 0;
+	margin: 0;
+}
+
+.fpr_item {
+	list-style-type: none;
+	display: inline;
+}
+
+fpr_empty_feeds {
+	
+}
+
+.fpr_mouseover {
+	display: inline;
+}
+
+.fpr_item_link { /*font-size: 1.none;*/
+	color: inherit;
+}
+
+.fpr_expand_switch {
+	text-decoration: none;
+}
+
+.fpr_popup_inner_div {
+	padding: 0;
+	visibility: none;
+	position: static;
+	left: none;
+	top: none;
+	width: 100%;
+	z-index: 0;
+	opacity: none;
+	filter: none;
+	-webkit-border-radius: none;
+	-moz-border-radius: none;
+	border-radius: none;
+	background-color: transparent;
+	color: inherit;
+	border: 0;
+}
+
+.fpr_popup_inner_div_expanded {
+	margin: 0;
+	padding: 0;
+	/* Color of background around the text: #E9F6FF */
+	border-top: 0;
+	border-right: 0;
+	border-bottom: 0;
+	border-left: 0;
+	color: inherit;
+	background-color: transparent;
+}
+
+.fpr_popup_outer_div {
+	position: static;
+}
+
+.fpr_feed_image {
+	float: normal;
+}
+
+.fpr_text {
+	display: inline;
+}
+
+.fpr_text P {
+	
+}
+
+.fpr_text img {
+	float: normal;
+}
+
+.fpr_enclosure {
+	max-width: 100%;
+	max-height: 100%;
+	display: inline;
+	float: normal;
+}
+
+.fpr_enclosure_inner {
+	display: inline;
+}
+
+.fpr_clear {
+	clear: none;
+}
+
+.fpr_enclosure_download {
+	text-align: left;
+}
+
+.fpr_item_metadata {
+	float: normal;
+}
+
+.flickr_photo {
+	background: transparent;
+	background: transparent;
+	margin: 0;
+	margin: 0;
+}
+
+.flickr_photo img {
+	display: inline;
+	position: static;
+	background-color: transparent;
+	border: 0;
+	margin: 0;
+	padding: 0;
+}
+
+.flickr_photo img:hover {
+	display: inline;
+	position: static;
+	background-color: transparent;
+	border: 0;
+	margin: 0;
+	padding: 0;
+}
+
+.flickr_photo_hover {
+	display: inline;
+}
+
+.flickr_title {
+	color: inherit;
+	width: 100%;
+	background: transparent;
+}
+
+.flickr_title a {
+	color: inherit;
+}
+
+.flickr_title h3 {
+	color: inherit;
+	padding: 0;
+	margin: 0;
+}
+
+.flickr_tags {
+	visibility: none;
+	background-color: transparent;
+	color: inherit;
+	width: 100%;
+}
+
+.flickr_tags h3 {
+	padding-left: 0;
+	margin: 0;
+}
+
+.flickr_tags ul {
+	margin-left: 0;
+	margin-top: 0;
+	padding: 0;
+}
+
+.flickr_tags li {
+	list-style: none;
+	list-style-image: none;
+}
+
+.flickr_tags li a {
+	color: inherit;
+	/* font-size: 100%; - invalid? */
+	text-decoration: none;
+}
+
+.flickr_tags li a:hover {
+	text-decoration: none;
+}
+
+.flickr_description {
+	color: inherit;
+	width: 100%;
+	background: transparent;
+}
+
+.flickr_description a {
+	color: inherit;
+	text-decoration: none;
+}
+
+.pattern_language_menu {
+	list-style-type: none;
+}
+
+.pattern_language_big_links {
+	color: inherit;
+	font-size: 100%;
+	font-weight: normal;
+}
+
+.pattern_language_big_links:hover {
+	color: inherit;
+	font-size: 100%;
+	font-weight: normal;
+}
+
+.pattern_language_body {
+	border: 0;
+	background: transparent;
+	margin: 0;
+	padding: 0;
+	text-align: left;
+}
+
+.pattern_language_credits {
+	border: 0;
+	background: transparent;
+	margin: 0;
+	padding: 0;
+}
+
+/* Shoutbox */
+.ShoutBox .message {
+	display: inline;
+}
+
+.ShoutBox ul {
+	list-style-type: none;
+	padding-left: 0;
+}
+
+table.content_admin {
+	margin-top: 0;
+	border: 0;
+}
+
+table.content_admin th {
+	background-color: transparent;
+}
+
+table.content_admin td {
+	border: 0;
+}
+
+.Avatar {
+	display: inline;
+	vertical-align: baseline;
+	margin: 0;
+	padding: 0;
+}
+
+.Avatar div {
+	display: inline;
+}
+
+.Avatar img {
+	max-width: 100%;
+	max-height: 100%;
+	margin: 0;
+	padding: 0;
+}
+
+.Profile .Avatar img {
+	float: normal;
+}
+
+.user_nickname {
+	font-size: 100%;
+	font-weight: normal;
+}
+
+.user_edit_profile_link {
+	display: inline;
+}
+
+.user_ui_profile_field {
+	
+}
+
+.profile_field_label {
+	font-size: 100%;
+	font-weight: normal;
+	display: inline;
+	margin: 0;
+	padding: 0;
+}
+
+.foaf\:nick .profile_field_label {
+	display: inline;
+}
+
+.foaf\:name .profile_field_label {
+	display: inline;
+}
+
+.foaf\:img .profile_field_label {
+	display: inline;
+}
+
+.profile_field_label div {
+	margin: 0;
+	padding: 0;
+}
+
+.profile_field_label div {
+	display: inline;
+}
+
+.profile_field_content {
+	display: inline;
+}
+
+.foaf\:nick .profile_field_content {
+	font-size: 100%;
+	font-weight: normal;
+}
+
+.foaf\:name .profile_field_content {
+	font-size: 100%;
+	font-weight: normal;
+}
+
+.profile_field_content div {
+	display: inline;
+}
+
+/********** End Content type section **********/
+.popup {
+	background-color: transparent;
+	border: 0;
+	text-align: left;
+}
+
+.link {
+	color: inherit;
+	text-decoration: none;
+}
+
+#node_list {
+	
+}
+
+#node_list table {
+	background-color: transparent;
+	border-collapse: collapse;
+	width: 100%;
+}
+
+#node_list tr {
+	background-color: transparent;
+	border: 0;
+}
+
+#node_list tr.even {
+	background-color: transparent;
+}
+
+#node_list tr.odd {
+	background-color: transparent;
+}
+
+#node_list td {
+	margin: 0;
+	text-align: left;
+	color: inherit;
+}
+
+#node_list td.status {
+	width: 100%;
+	text-align: left;
+	font-size: 100%;
+}
+
+#node_list a {
+	color: inherit;
+}
+
+#hotspot_status {
+	
+}
+
+#hotspot_status table {
+	background-color: transparent;
+	border-collapse: collapse;
+	width: 100%;
+}
+
+#hotspot_status tr {
+	vertical-align: baseline;
+	font-size: 100%;
+	font-family: Verdana, Tahoma, arial, sans-serif;
+	background-color: transparent;
+	border: 0;
+}
+
+#hotspot_status tr.even {
+	background-color: transparent;
+}
+
+#hotspot_status tr.odd {
+	background-color: transparent;
+}
+
+#hotspot_status td {
+	margin: 0;
+	color: inherit;
+}
+
+#hotspot_status a {
+	color: inherit;
+}
+
+#hotspot_log {
+	margin: 0;
+}
+
+#hotspot_log table {
+	background-color: transparent;
+	border-collapse: collapse;
+}
+
+#hotspot_log th {
+	background-color: transparent;
+	border: 0;
+	text-align: left;
+}
+
+#hotspot_log tr {
+	background-color: transparent;
+	border: 0;
+}
+
+#hotspot_log td {
+	margin: 0;
+	color: inherit;
+}
+
+#hotspot_log td.status {
+	width: 100%;
+	text-align: left;
+	font-size: 100%;
+}
+
+#hotspot_log a {
+	color: inherit;
+}
+
+#user_stats {
+	
+}
+
+#user_stats table {
+	background-color: transparent;
+	border-collapse: collapse;
+}
+
+#user_stats th {
+	background-color: transparent;
+	border: 0;
+}
+
+#user_stats tr {
+	background-color: transparent;
+	border: 0;
+}
+
+#user_stats td {
+	margin: 0;
+	color: inherit;
+}
+
+#user_stats td.status {
+	width: 100%;
+	text-align: left;
+	font-size: 100%;
+}
+
+#user_stats a {
+	color: inherit;
+}
+
+#std_table {
+	
+}
+
+#std_table table {
+	border: 0;
+}
+
+#std_table th {
+	font-size: 100%;
+	background-color: transparent;
+}
+
+#std_table td.item {
+	font-weight: normal;
+}
+
+fieldset {
+	background-color: transparent;
+	border: 0;
+}
+
+fieldset legend {
+	color: inherit;
+	font-size: 100%;
+	font-weight: normal;
+}
+
+fieldset table {
+	width: 100%;
+	border-collapse: collapse;
+}
+
+fieldset tr.odd {
+	background-color: transparent;
+}
+
+fieldset th {
+	text-align: left;
+}
+
+fieldset .red {
+	background-color: transparent;
+}
+
+.smaller {
+	font-size: 100%;
+}
+
+/********** Google map section **********/
+#map_title {
+	background-color: transparent;
+	border: 0;
+	margin-top: 0;
+	padding: 0;
+	font-size: 100%;
+	color: inherit;
+	font-weight: normal;
+}
+
+#map_toolbox {
+	display: inline;
+	float: normal;
+}
+
+#map_postalcode_overlay {
+	position: static;
+	display: inline;
+	z-index: 0;
+	background-color: transparent;
+	border: 0;
+	padding: 0;
+	font-size: 100%;
+	font-weight: normal;
+}
+
+#map_legend {
+	background-color: transparent;
+	border: 0;
+	padding: 0;
+	font-size: 100%;
+	color: inherit;
+	vertical-align: baseline;
+}
+
+#map_outer_hotspots_list {
+	position: static;
+	width: 100%;
+	height: 100%;
+	background-color: transparent;
+	overflow: visible;
+	float: normal;
+}
+
+#map_hotspots_list {
+	padding: 0;
+}
+
+#map_frame {
+	position: static;
+	width: 100%;
+	height: 100%;
+	font-size: 100%;
+}
+
+/********** End Google map section **********/
+	/********** Scrollable Table Section ********/
+#node_list_div {
+	background: transparent;
+	overflow: visible;
+	height: 100%;
+	width: 100%;
+	min-width: 100%;
+	text-align: left;
+	border: 0;
+}
+
+#node_list_div table.scrollable>tbody {
+	/* child selector syntax which IE6 and older do not support */
+	overflow: visible;
+	height: 100%;
+	width: 100%;
+}
+
+\html
+div.tableContainer table { /* */
+	margin: 0;
+}
+
+\html
+div.tableContainer { /* */
+	padding: 0;
+}
+
+table.scrollable thead tr {
+	position: static;
+}
+
+html>body thead tr {
+	width: 100%;
+}
+
+table.scrollable {
+	width: 100%;
+	border-collapse: collapse;
+	border-spacing: 0;
+}
+
+table.scrollable thead th {
+	font-weight: normal;
+	text-align: left;
+	border-top: 0;
+	border-bottom: 0;
+	background-color: transparent;
+	color: inherit;
+	width: 100%;
+}
+
+table.scrollable tr.row:hover,tr.hover {
+	background-color: transparent;
+	color: inherit;
+}
+
+table.scrollable tr {
+	cursor: auto;
+}
+
+table.scrollable td {
+	color: inherit;
+	padding-left: 0;
+	font-size: 100%;
+	text-align: left;
+}
+
+table.scrollable thead td:last-child {
+	padding-right: 0;
+}
+
+table.scrollable thead th:last-child {
+	padding-right: 0;
+}
+
+/******* End Scrollable Table Section ********/
+	/********** Sortable Table Section ***********/
+table.sortable a.sortheader {
+	background-color: transparent;
+	color: inherit;
+	font-weight: normal;
+	text-decoration: none;
+	display: inline;
+	font-size: 100%;
+}
+
+table.sortable span.sortarrow {
+	color: inherit;
+	text-decoration: none;
+}
+
+table.sortable tr.odd {
+	background-color: transparent;
+}
+
+table.sortable tr.even {
+	background-color: transparent;
+}
+/****** End Sortable Table Section ***********/
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/shoutbox.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/shoutbox.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/shoutbox.css	(revision 1364)
@@ -0,0 +1,10 @@
+/* Shoutbox */
+.ShoutBox .message {
+	display: inline;
+}
+
+.ShoutBox ul {
+	list-style-type: none;
+	padding-left: 0.5em;
+}
+
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/userui.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/userui.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/userui.css	(revision 1364)
@@ -0,0 +1,84 @@
+.user_ui_main_outer {
+	display: block;
+	color: #3D586B;
+	background: none;
+	border: none;
+	margin: 1em;
+	padding: 0em;
+	width: 100%;
+}
+
+.user_ui_main_outer .user_ui_main_outer {
+	margin: 0em;
+	padding: 0em;
+}
+
+.hasDisplayableMetadata {
+	/*Defined at same level as user_ui_main_outer*/
+	background: #E9F6FF;
+	border: 1px solid #B4DFFF;
+	margin: 1em;
+	padding: 0.2em;
+}
+
+.user_ui_title .user_ui_main_outer,.user_ui_description .user_ui_main_outer
+	{
+	margin: 0em;
+	padding: 0em;
+	border: none;
+}
+
+.user_ui_main_inner {
+	display: block;
+	/*	border: 1px solid gray;*/
+}
+
+.user_ui_container {
+	display: block;
+	margin: 0em;
+	padding: 0em;
+}
+
+.user_ui_title {
+	display: block;
+	font-size: 1em;
+	font-weight: bold;
+	margin: 0em;
+	padding: 0em;
+}
+
+.user_ui_title a {
+	font-size: medium;
+	font-weight: bold;
+}
+
+.user_ui_authors {
+	display: block;
+	font-weight: bold;
+	color: #386b04;
+	padding: 5px;
+	background: #cafd84;
+	margin: 0em;
+	padding: 0em;
+}
+
+.user_ui_description {
+	text-align: justify;
+	font-weight: bold;
+	margin: 0em;
+	padding: 0.5em;
+}
+
+.user_ui_footer {
+	display: block;
+	padding: 5px;
+	background-color: #9d9d9d;
+}
+
+.user_ui_picture {
+	height: 250px;
+}
+
+.user_ui_projet_info {
+	background-color: rgb(235, 235, 235);
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/layout.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/layout.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/layout.css	(revision 1364)
@@ -0,0 +1,147 @@
+/********************************************
+   LAYOUT
+********************************************/ 
+#wrap {
+	width: 820px;
+	background: #CCC url(../images/content.jpg) repeat-y center top;
+	margin: 0 auto;
+	text-align: left;
+}
+#content-wrap {
+	clear: both;
+	width: 760px;
+	padding: 0; 
+	margin: 0 auto;
+}
+#page_header {
+	width: 820px;
+	position: relative;
+	height: 106px;
+	background: #CCC url(../images/header.jpg) no-repeat center top;
+	padding: 0;
+	font-size: 14px;
+	color: #FFF;
+
+}
+#page_header .welcome_msg {
+	
+}
+#page_header .welcome_msg_inner em {
+	position: absolute;
+	margin: 0; padding: 0;
+	font: bolder 3em 'Trebuchet MS', Arial, Sans-serif;
+	letter-spacing: -2px;
+	color: #FFF;
+	text-transform: none;
+	
+	/* change the values of top and left to adjust the position of the logo*/
+	top: 44px; left: 58px;
+}
+#page_header .welcome_msg_inner span {
+	position: absolute;
+	margin: 0; padding: 0;
+	font: normal 1em 'Trebuchet MS', Arial, Sans-serif;
+	text-transform: none;
+	color: #FFF;
+	
+	/* change the values of top and left to adjust the position of the slogan*/	top: 32px; left: 50px;		
+}
+
+
+/* Main Column */
+#main_area {
+	float: right;
+	width: 72%;
+	padding: 0; margin: 0;
+}
+#main_area h1 {
+	margin-top: 10px;
+	font: Bold 125% Verdana, 'Trebuchet MS', Sans-serif;
+	color: #88ac0b;
+	padding: 5px 0 5px 25px; 	
+	border-bottom: 1px solid #EFF0F1;
+	background: #FFF url(../images/square-green.png) no-repeat 3px 50%;	
+}
+
+.post-footer {
+	background-color: #FAFAFA;
+	padding: 5px; margin: 20px 10px 0 10px;
+	border: 1px solid #f2f2f2;
+	font-size: 95%;	
+}
+.post-footer .date {
+	background: url(../images/clock.gif) no-repeat left center;
+	padding-left: 20px; margin: 0 10px 0 5px;
+}
+.post-footer .comments {
+	background: url(../images/comment.gif) no-repeat left center;
+	padding-left: 20px; margin: 0 10px 0 5px;
+}
+.post-footer .readmore {
+	background: url(../images/page.gif) no-repeat left center;
+	padding-left: 20px; margin: 0 10px 0 5px;
+}
+
+/* Sidebar */	
+#left_area {
+	float: left;
+	width: 26.5%;
+	padding: 0; margin: 0;	
+}	
+
+#left_area_top {
+	position: relative;	
+	border: 1px solid #EFF0F1; 
+	margin: 10px 5px;	
+}
+#left_area_middle {
+	position: relative;
+	border: 1px solid #EFF0F1; 
+	margin: 0 0 5px 0;	
+}
+#left_area_bottom {
+	position: relative;
+	border: 1px solid #EFF0F1; 
+	margin: 0 0 5px 0;	
+}
+
+#left_area ul {
+	list-style: none;
+	text-align: left;
+	margin: 3px 0 8px 0; padding: 0;
+	text-decoration: none;		
+}
+
+#left_area ul li {
+	border-bottom: 1px solid #EFF0F1;
+	background: url(../images/go.gif) no-repeat 5px 5px;	
+	padding: 2px 0 2px 25px;
+	margin: 0 2px;	
+}
+#left_area a {
+	font-weight: bolder;
+	text-decoration: none;	
+	background-image: none;	
+}
+
+/* Footer */	
+#page_footer {
+	color: #666666;
+	background: #CCC url(../images/footer.jpg) no-repeat center top;
+	clear: both;
+	width: 820px;
+	height: 55px;
+	text-align: center;	
+	font-size: 92%;
+}
+#page_footer a { text-decoration: none; }
+
+/* alignment classes */
+.float-left  { float: left; }
+.float-right { float: right; }
+.align-left  { text-align: left; }
+.align-right { text-align: right; }
+
+/* display and additional classes */
+.clear { clear: both; }
+.gray { color: #CCC; }
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/tooltips.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/tooltips.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/tooltips.css	(revision 1364)
@@ -0,0 +1,32 @@
+/* Fading Tooltips By Dustin Diaz*/
+body div#toolTip {
+	position: absolute;
+	z-index: 1000;
+	width: 320px;
+	background: #000;
+	text-align: left;
+	padding: 5px;
+	min-height: 1em;
+	-webkit-border-radius: 5px;
+	-moz-border-radius: 5px;
+}
+
+body div#toolTip p {
+	margin: 0;;
+	padding: 0;;
+	color: #fff;;
+	font-size: 12px;
+}
+
+body div#toolTip p em {
+	display: block;;
+	margin-top: 3px;;
+	color: #f60;;
+	font-style: normal;;
+	font-weight: bold;
+}
+
+body div#toolTip p em span {
+	font-weight: bold;;
+	color: #fff;
+}
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/table.css
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/table.css	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/stylesheets/table.css	(revision 1364)
@@ -0,0 +1,144 @@
+/* Table elements */
+table {
+	border-collapse: collapse;
+}
+
+table a, table a:visited {
+	background: none;
+	color: #4F82CB;
+}
+
+table td {
+	margin: 0 0 0 0;
+	text-align: center;
+	color: #000;
+}
+
+table th {
+	font-weight: bold;
+	text-decoration: none;
+	font-size: 12px;
+	background-color: none;
+	background: transparent url(../images/headerbg.gif) repeat-x left bottom;
+	text-align: center;
+}
+
+table th, table th a {
+	color:  #4F82CB;
+}
+
+table tr.odd {
+	background-color: #FFFFFF;
+}
+
+table tr.even {
+	background-color: #EFEFEF;
+}
+
+table tr.up {
+	background-color: green;
+}
+
+table tr.down {
+	background-color: red;
+}
+
+
+/********** Sortable Table Section ***********/
+
+#node_list_div {
+	overflow: auto;
+	height: 400px;
+	width: 97%;
+	min-width: 500px;
+	text-align: center;
+
+}
+
+#node_list_div table.scrollable>tbody {
+	/* child selector syntax which IE6 and older do not support */
+	overflow: auto;
+	height: 378px;
+	width: 100%;
+}
+
+
+div.tableContainer table {
+	margin: 0 -16px 0 0;
+}
+
+
+div.tableContainer {
+	padding: 0 16px 0 0;
+}
+
+table.scrollable thead tr {
+	position: relative;
+}
+
+html>body thead tr {
+	width: 100%;
+}
+
+table.scrollable {
+	width: 99%;
+	border-collapse: collapse;
+	border-spacing: 0px;
+}
+
+table.scrollable thead th {
+	font-weight: bold;
+	text-align: center;
+	width: 200px;
+}
+
+table.scrollable tr.row:hover,tr.hover {
+	background-color: #2175bc;
+	color: #ff0000;
+}
+
+table.scrollable tr {
+	cursor: pointer;
+}
+
+table.scrollable td {
+	color: #000000;
+	padding-left: 5px;
+	font-size: 12px;
+	text-align: left;
+}
+
+table.scrollable thead td:last-child {
+	padding-right: 25px;
+}
+
+table.scrollable thead th:last-child {
+	padding-right: 25px;
+}
+
+
+/********** Sortable Table Section ***********/
+table.sortable a.sortheader {
+
+}
+
+table.sortable span.sortarrow {
+	color: black;
+	text-decoration: none;
+}
+
+
+
+/****** Node Status Table Tweeks *************/
+
+#node_list td.status {
+	width: 15em;
+	text-align: left;
+	
+}
+
+#node_list td.status img {
+	vertical-align: middle;
+	float: left;
+}
+
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/name.txt
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/name.txt	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/name.txt	(revision 1364)
@@ -0,0 +1,1 @@
+NetworkFusion
Index: /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/themeconfig.php
===================================================================
--- /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/themeconfig.php	(revision 1364)
+++ /branches/newtoken/wifidog/media/network_theme_packs/NetworkFusion/themeconfig.php	(revision 1364)
@@ -0,0 +1,41 @@
+<?php
+
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+/**
+ * Configuration file for theme templates
+ *
+ *
+ * @package    WiFiDogAuthServer
+ * @author     Robin Jones
+ * @copyright  2008 Robin Jones, NetworkFusion
+ * @version    Subversion $Id:
+ * @link       http://www.wifidog.org/
+ */
+
+/***********************************************************************\
+ * Theme Configuration (All Settings as well as this file are optional *
+\***********************************************************************/
+
+// Inherit Base Themes stylesheet.CSS	true | false
+define('INHERIT_BASE_CSS', false);
+
+// Always show Page Header			    true | false
+define('ALWAYS_SHOW_HEADER', true);
+
+// Always show Page Footer		        true | false
+define('ALWAYS_SHOW_FOOTER', true);
+
+// Menu Position			            main | all | left
+define('MENU_POSITION', 'all');
+
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * c-hanging-comment-ender-p: nil
+ * End:
+ */
+
+?>
Index: /branches/newtoken/wifidog/validate.php
===================================================================
--- /branches/newtoken/wifidog/validate.php	(revision 1421)
+++ /branches/newtoken/wifidog/validate.php	(revision 1421)
@@ -0,0 +1,94 @@
+<?php
+
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+// +-------------------------------------------------------------------+
+// | WiFiDog Authentication Server                                     |
+// | =============================                                     |
+// |                                                                   |
+// | The WiFiDog Authentication Server is part of the WiFiDog captive  |
+// | portal suite.                                                     |
+// +-------------------------------------------------------------------+
+// | PHP version 5 required.                                           |
+// +-------------------------------------------------------------------+
+// | Homepage:     http://www.wifidog.org/                             |
+// | Source Forge: http://sourceforge.net/projects/wifidog/            |
+// +-------------------------------------------------------------------+
+// | This program is free software; you can redistribute it and/or     |
+// | modify it under the terms of the GNU General Public License as    |
+// | published by the Free Software Foundation; either version 2 of    |
+// | the License, or (at your option) any later version.               |
+// |                                                                   |
+// | This program is distributed in the hope that it will be useful,   |
+// | but WITHOUT ANY WARRANTY; without even the implied warranty of    |
+// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     |
+// | GNU General Public License for more details.                      |
+// |                                                                   |
+// | You should have received a copy of the GNU General Public License |
+// | along with this program; if not, contact:                         |
+// |                                                                   |
+// | Free Software Foundation           Voice:  +1-617-542-5942        |
+// | 59 Temple Place - Suite 330        Fax:    +1-617-542-2652        |
+// | Boston, MA  02111-1307,  USA       gnu@gnu.org                    |
+// |                                                                   |
+// +-------------------------------------------------------------------+
+
+/**
+ * @package    WiFiDogAuthServer
+ * @author     Philippe April
+ * @author     Benoit Grégoire <benoitg@coeus.ca>
+ * @copyright  2004-2006 Philippe April
+ * @copyright  2004-2006 Benoit Grégoire, Technologies Coeus inc.
+ * @version    Subversion $Id$
+ * @link       http://www.wifidog.org/
+ */
+
+/**
+ * Load required files
+ */
+require_once(dirname(__FILE__) . '/include/common.php');
+
+require_once('classes/User.php');
+require_once('classes/Node.php');
+require_once('classes/MainUI.php');
+$smarty = SmartyWifidog::getObject();
+$db = AbstractDb::getObject(); 
+try {
+    if (!isset($_REQUEST["token"]))
+        throw new Exception(_('No token specified!'));
+
+    if (!isset($_REQUEST["user_id"]))
+        throw new Exception(_('No user ID specified!'));
+
+    $validated_user = User::getObject($_REQUEST['user_id']);
+
+    if ($db->escapeString($_REQUEST['token']) != $validated_user->getValidationToken())
+        throw new Exception(_('The validation token does not match the one in the database.'));
+
+    if ($validated_user->getAccountStatus() == ACCOUNT_STATUS_ALLOWED)
+        throw new Exception(_('Your account has already been activated.'));
+
+    // This user wants to validate his account, the token is OK and he's not trying to pass the same token more than once
+    // Activate his account and let him in NOW
+    $validated_user->SetAccountStatus(ACCOUNT_STATUS_ALLOWED);
+    User::setCurrentUser($validated_user);
+
+    // Show activation message
+    $smarty->assign('message', _("Your account has been succesfully activated!\n\nYou may now browse to a remote Internet address and take advantage of the free Internet access!\n\nIf you get prompted for a login, enter the username and password you have just created."));
+} catch (Exception $e) {
+    $smarty->assign('message', $e->getMessage());
+}
+
+$ui = MainUI::getObject();
+$ui->addContent('main_area_middle', $smarty->fetch("templates/sites/validate.tpl"));
+$ui->display();
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * c-hanging-comment-ender-p: nil
+ * End:
+ */
+
+?>
Index: /branches/newtoken/wifidog/ws/classes/WSOutput.php
===================================================================
--- /branches/newtoken/wifidog/ws/classes/WSOutput.php	(revision 1427)
+++ /branches/newtoken/wifidog/ws/classes/WSOutput.php	(revision 1427)
@@ -0,0 +1,111 @@
+<?php
+
+// +-------------------------------------------------------------------+
+// | WiFiDog Authentication Server                                     |
+// | =============================                                     |
+// |                                                                   |
+// | The WiFiDog Authentication Server is part of the WiFiDog captive  |
+// | portal suite.                                                     |
+// +-------------------------------------------------------------------+
+// | PHP version 5 required.                                           |
+// +-------------------------------------------------------------------+
+// | Homepage:     http://www.wifidog.org/                             |
+// | Source Forge: http://sourceforge.net/projects/wifidog/            |
+// +-------------------------------------------------------------------+
+// | This program is free software; you can redistribute it and/or     |
+// | modify it under the terms of the GNU General Public License as    |
+// | published by the Free Software Foundation; either version 2 of    |
+// | the License, or (at your option) any later version.               |
+// |                                                                   |
+// | This program is distributed in the hope that it will be useful,   |
+// | but WITHOUT ANY WARRANTY; without even the implied warranty of    |
+// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     |
+// | GNU General Public License for more details.                      |
+// |                                                                   |
+// | You should have received a copy of the GNU General Public License |
+// | along with this program; if not, contact:                         |
+// |                                                                   |
+// | Free Software Foundation           Voice:  +1-617-542-5942        |
+// | 59 Temple Place - Suite 330        Fax:    +1-617-542-2652        |
+// | Boston, MA  02111-1307,  USA       gnu@gnu.org                    |
+// |                                                                   |
+// +-------------------------------------------------------------------+
+
+/**
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ * @version    Subversion $Id$
+ * @link       http://www.wifidog.org/
+ */
+
+/**
+ * Abstract class for the web service output
+ *
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ */
+abstract class WSOutput
+{
+	
+    /** Instantiate the web service.  The corresponding class is WifidogWS_V$version
+     * @param $version the version of the web service protocol
+     * @return a WifidogWS object
+     */
+    public static function OutputFactory($format = 'json')
+    {
+        if (!is_string($format) || ($format == ''))
+            $format = 'json';
+        $format = ucfirst(strtolower($format));
+        $classname = "WSOutput_$format";
+
+        if (!class_exists($classname, false)) {
+            if (file_exists(dirname(__FILE__)."/WSOutput/$format.php"))
+                include_once("ws/classes/WSOutput/$format.php");
+        }
+        if (!class_exists($classname, false)) {
+            throw new WSException("Output type $format not supported");           	
+        }
+        
+        return (new $classname());
+    }
+    
+     /**
+      * Constructor for the web service 
+      * @param $params array  the array of GET parameters
+      * */
+    protected function __construct()
+    {
+
+    }
+    
+    /**
+     * Output the result with an error flag
+     * @param $returnArray   the values to return
+     * @return the properly formatted output
+     */
+    public function outputError($returnArray = array()) {
+        $errArr = array('result' => 0, 'values' => $returnArray);
+        return $this->output($errArr);
+    }
+    
+    /**
+     * Output the result with a success flag
+     * @param $returnArray  the values to return
+     * @return the properly formatted output
+     */
+    public function outputSuccess($returnArray = array()) {
+        $succArr = array('result' => 1, 'values' => $returnArray);
+        return $this->output($succArr);
+    }
+    
+    /**
+     * Formats the actual output.  This function is typically called from outputError or outputSuccess
+     * To be implemented in every child class
+     * @param $returnArray
+     * @return the properly formatted output
+     */
+    abstract protected function output($returnArray = array());
+    
+}
Index: /branches/newtoken/wifidog/ws/classes/Exceptions/WSException.php
===================================================================
--- /branches/newtoken/wifidog/ws/classes/Exceptions/WSException.php	(revision 1427)
+++ /branches/newtoken/wifidog/ws/classes/Exceptions/WSException.php	(revision 1427)
@@ -0,0 +1,65 @@
+<?php
+// +-------------------------------------------------------------------+
+// | WiFiDog Authentication Server                                     |
+// | =============================                                     |
+// |                                                                   |
+// | The WiFiDog Authentication Server is part of the WiFiDog captive  |
+// | portal suite.                                                     |
+// +-------------------------------------------------------------------+
+// | PHP version 5 required.                                           |
+// +-------------------------------------------------------------------+
+// | Homepage:     http://www.wifidog.org/                             |
+// | Source Forge: http://sourceforge.net/projects/wifidog/            |
+// +-------------------------------------------------------------------+
+// | This program is free software; you can redistribute it and/or     |
+// | modify it under the terms of the GNU General Public License as    |
+// | published by the Free Software Foundation; either version 2 of    |
+// | the License, or (at your option) any later version.               |
+// |                                                                   |
+// | This program is distributed in the hope that it will be useful,   |
+// | but WITHOUT ANY WARRANTY; without even the implied warranty of    |
+// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     |
+// | GNU General Public License for more details.                      |
+// |                                                                   |
+// | You should have received a copy of the GNU General Public License |
+// | along with this program; if not, contact:                         |
+// |                                                                   |
+// | Free Software Foundation           Voice:  +1-617-542-5942        |
+// | 59 Temple Place - Suite 330        Fax:    +1-617-542-2652        |
+// | Boston, MA  02111-1307,  USA       gnu@gnu.org                    |
+// |                                                                   |
+// +-------------------------------------------------------------------+
+
+/**
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ * @version    Subversion $Id: $
+ * @link       http://www.wifidog.org/
+ */
+
+
+/**
+ * This class represent the different stakeholder types for permissions. 
+ * The stakeholder id is actually the table name storing the object to which the role applies
+ *
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ */
+class WSException extends Exception
+{
+    // Redefine the exception so message isn't optional
+    public function __construct($message, $code = 0) {
+        // some code
+   
+        // make sure everything is assigned properly
+        parent::__construct($message, $code);
+    }
+
+    // custom string representation of object
+    public function __toString() {
+        return __CLASS__ . ": [{$this->code}]: {$this->message}\n";
+    }
+
+}
Index: /branches/newtoken/wifidog/ws/classes/WifidogWS/V1.php
===================================================================
--- /branches/newtoken/wifidog/ws/classes/WifidogWS/V1.php	(revision 1427)
+++ /branches/newtoken/wifidog/ws/classes/WifidogWS/V1.php	(revision 1427)
@@ -0,0 +1,380 @@
+<?php
+
+// +-------------------------------------------------------------------+
+// | WiFiDog Authentication Server                                     |
+// | =============================                                     |
+// |                                                                   |
+// | The WiFiDog Authentication Server is part of the WiFiDog captive  |
+// | portal suite.                                                     |
+// +-------------------------------------------------------------------+
+// | PHP version 5 required.                                           |
+// +-------------------------------------------------------------------+
+// | Homepage:     http://www.wifidog.org/                             |
+// | Source Forge: http://sourceforge.net/projects/wifidog/            |
+// +-------------------------------------------------------------------+
+// | This program is free software; you can redistribute it and/or     |
+// | modify it under the terms of the GNU General Public License as    |
+// | published by the Free Software Foundation; either version 2 of    |
+// | the License, or (at your option) any later version.               |
+// |                                                                   |
+// | This program is distributed in the hope that it will be useful,   |
+// | but WITHOUT ANY WARRANTY; without even the implied warranty of    |
+// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     |
+// | GNU General Public License for more details.                      |
+// |                                                                   |
+// | You should have received a copy of the GNU General Public License |
+// | along with this program; if not, contact:                         |
+// |                                                                   |
+// | Free Software Foundation           Voice:  +1-617-542-5942        |
+// | 59 Temple Place - Suite 330        Fax:    +1-617-542-2652        |
+// | Boston, MA  02111-1307,  USA       gnu@gnu.org                    |
+// |                                                                   |
+// +-------------------------------------------------------------------+
+
+/**
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ * @version    Subversion $Id$
+ * @link       http://www.wifidog.org/
+ */
+
+/**
+ * Web service V1 class
+ *
+ * Actions are:
+ * get: get some information concerning a given object, identified by its id
+ * list: get some informations concerning a list of objects
+ * auth: verify the users credential. 
+ *     NOTE: This action DOES NOT authenticate the user on the gateway and hence, DOES NOT grant access to the internet.
+ *           There is an authentication protocol that needs to be respected (http://dev.wifidog.org/wiki/doc/developer/WiFiDogProtocol_V1)
+ *           An authentication token must be generated and the response redirects to the gateway's auth server that redirects to the portal page
+ *
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ */
+class WifidogWS_V1 extends WifidogWS
+{
+    /**
+     * @var GET parameters of the function
+     */
+    protected $_action;
+    protected $_objectClass;
+    protected $_objectId;
+    protected $_fields;
+    
+    /** @var list classes that are allowed to be fetched **/ 
+    protected static $_allowedObjectClass = array('Network', 'User', 'Node');
+    /** 
+     * @var list allowed fields for each class
+     * For each class, the array is such that the key is the field that will be requested in the GET request
+     * the value is the name of the field in the app, such that class->getValue exists and returns 
+     */
+    protected static $_allowedFields = array(
+        'Network' => array('Name' => 'Name',
+                           'Userstotal' => 'NumUsers',
+                           'Usersonline' => 'NumOnlineUsers',
+                           'Hotspotstotal' => 'NumNodes',
+                           'Hotspotsoperational' => 'NumOnlineNodes'),
+        'Node' => array('Name' => 'Name', 
+                        'Id' => 'Id',
+                        'NumOnlineUsers' => 'NumOnlineUsers',
+                        'CreationDate' => 'CreationDate',
+                        'Status' => 'Status',
+                        'OpeningDate' => 'CreationDate', 
+        								'Connected_users' => 'OnlineUsers'),
+        'User' => array('Username' => 'Username',
+                        'AccountOrigin' => 'AccountOrigin',
+                        'Email' => 'Email' )
+    );
+    
+    /**
+      * Constructor for the web service 
+      * 
+      * */
+    protected function __construct()
+    {
+        parent::__construct();
+    }
+    
+	  /**
+     * Set the web service parameters
+     * @param $params   the arrray of GET parameters
+     */
+    public function setParams($params = array()) {
+        
+        if (isset($params['action'])) {
+            $this->_action = $params['action'];
+            unset($params['action']);
+        }
+        if (isset($params['object_class'])) {
+            $this->_objectClass = $params['object_class'];
+            unset($params['object_class']);
+        }
+        if (isset($params['object_id'])) {
+            $this->_objectId = $params['object_id'];
+            unset($params['object_id']);
+        }
+        if (isset($params['fields'])) {
+            $this->_fields = $params['fields'];
+            unset($params['fields']);
+        }
+        
+        parent::setParams($params);
+    }
+    
+    /**
+     * This function executes the action requested by the web service
+     * For the requested action, it verifies if the necessary parameters are there and then calls the appropriate function to really execute the function
+     * @return unknown_type
+     */
+    protected function executeAction() {
+        if (!isset($this->_action)) {
+            throw new WSException("No action was specified.  Please use GET parameter 'action=list|get|auth' to specify an action"); 
+        }
+        switch($this->_action) {
+            case 'list':
+                $object_class = (isset($this->_objectClass) ? ucfirst(strtolower($this->_objectClass)): null);
+                $fields = (isset($this->_fields) ? explode(',',$this->_fields): array());
+                $parentClass = (isset($this->_params['parent_class']) ? $this->_params['parent_class']:null);
+                $parentId = (isset($this->_params['parent_id']) ? $this->_params['parent_id']:null);
+                $this->executeList($object_class, $fields, $parentClass, $parentId);
+                break;
+            case 'get':
+                $object_class = (isset($this->_objectClass) ? ucfirst(strtolower($this->_objectClass)): null);
+                $object_id = (isset($this->_objectId) ? $this->_objectId: null);
+                $fields = (isset($this->_fields) ? explode(',',$this->_fields): array());
+                $idType = (isset($this->_params['id_type']) ? $this->_params['id_type']:null);
+                $this->executeGet($object_class, $object_id, $fields, $idType);
+                break;
+            case 'auth':
+                $gw_id = (isset($this->_params['gw_id']) ? $this->_params['gw_id']:null);
+                $gw_ip = (isset($this->_params['gw_ip']) ? $this->_params['gw_ip']:null);
+                $username = (isset($this->_params['username']) ? $this->_params['username']:'');
+                $password = (isset($this->_params['password']) ? $this->_params['password']:'');
+                $this->executeAuth($username, $password, $gw_id, $gw_ip);
+                break;
+            default:
+                throw new WSException("Action {$this->_action} is not defined.  Please use GET parameter 'action=list|get|auth' to specify an action");
+                break;
+        }
+        
+    }
+
+    /**
+     * Verify the given user credentials against the wifidog database 
+     * @param $username   The username to authenticate
+     * @param $pwdhash    The password hash
+     * @param $gw_id      The gateway id
+     * @param $gw_ip   	  The gateway's ip addresss
+     * @return unknown_type
+     */
+    protected function executeAuth($username = null, $password = null, $gw_id = null, $gw_ip = null) {
+        $this->_outputArr['auth'] = 0;
+        
+        require_once('classes/Node.php');
+        require_once('classes/User.php');
+        require_once('classes/Network.php');
+        require_once('classes/Authenticator.php');
+        
+        if (!is_null($gw_id)) {
+            if (is_null($gw_ip)) {
+                throw new WSException("Missing information on the gateway.  Must specify parameter 'gw_ip' if there is a gateway id.");
+            }
+            $node = Node::getObjectByGatewayId($gw_id);
+            if ($node) {
+                $network = $node->getNetwork();
+            } else {
+                throw new WSException("Node identified by $gw_id cannot be found");
+            }
+        } else {
+            // Gateway ID is not set ... virtual login
+            $network = Network::getCurrentNetwork();
+            $node = null;
+        }
+        
+        /*
+         * If this is a splash-only node, then the user is automatically authenticated
+         */
+        if (!empty($node) && $node->isSplashOnly()) {
+            $this->_outputArr['auth'] = 1;
+            $user = $network->getSplashOnlyUser();
+        } else {
+            // Authenticate the user on the requested network
+            $user = $network->getAuthenticator()->login($username, $password, $errMsg);
+            if (!$user) {
+                $this->_outputArr['auth'] = 0;
+                $this->_outputArr['explanation'] = $errMsg;
+            } else {
+                $this->_outputArr['auth'] = 1;
+            }
+        }
+    }
+    
+    /**
+     * Gets the requested fields from an object
+     * @param $objectClass   The class of the object
+     * @param $objectId      The id of the object to fetch
+     * @param $fields        The list of fields to get
+     * @return unknown_type
+     */
+    protected function executeGet($objectClass, $objectId, $fields = array(), $idtype = null) {
+        if (is_null($objectClass)) {
+            throw new WSException("Missing parameter 'object_class' in the request.");
+        }
+        if (is_null($objectId)) {
+            throw new WSException("Missing parameter 'object_id' in the request.");
+        }
+        if (!in_array($objectClass,self::$_allowedObjectClass)) {
+            throw new WSException("Wrong object class '{$objectClass}' requested.  Possible values are " . implode(', ', self::$_allowedObjectClass));
+        }
+        
+        include_once('classes/'.$objectClass.'.php');
+        
+        // Impossible to use this syntax because of php bug http://bugs.php.net/bug.php?id=31318.  But is valid though with php > 5.3, so using the ugly syntax below instead
+        //$object = $objectClass::getObject($objectId);
+        try {
+            $object = call_user_func($objectClass.'::getObject', $objectId);
+        } catch (Exception $e) {
+            $object = null;
+        }
+        
+        // Maybe there is a default object for this class, let's try to get it
+        if (is_null($object)) {
+            $object = call_user_func($objectClass.'::getDefault'.$objectClass);
+        }
+        // IF the object still is not found, then return an error
+        if (is_null($object)) {
+            throw new WSException("Object of class {$objectClass} with id {$objectId} not found");
+        }
+  
+        if (empty($fields)) {
+            $fields = array_keys(self::$_allowedFields[$objectClass]);
+        } 
+        $allowedFields = self::$_allowedFields[$objectClass];
+        
+        foreach($fields as $field) {
+            if (isset($allowedFields[ucfirst(strtolower($field))])) {
+                $methodName = 'get'.$allowedFields[ucfirst(strtolower($field))];
+                if (method_exists($object, $methodName)) {
+                    $this->_outputArr[$field] = self::filterRet($object->$methodName());
+                } else {
+                    $this->_outputArr[$field] = 'unknown';
+                }
+                
+            } else {
+                $this->_outputArr[$field] = 'Not allowed';
+            }
+        }
+        
+        
+    }
+    
+    /**
+     * Get the list of all objectClass, for the given parent if specified or globally otherwise
+     * @param $objectClass    The class whose object must be listed
+     * @param $fields         The fields to list for each object
+     * @param $parentClass    The parent class if necessary (for nodes for instance)
+     * @param $parentId       The identifier of the parent object
+     * @return unknown_type
+     */
+    protected function executeList($objectClass, $fields = array(), $parentClass = null, $parentId = null) {
+        if (is_null($objectClass)) {
+            throw new WSException("Missing parameter 'object_class' in the request.");
+        }
+        if (!in_array($objectClass,self::$_allowedObjectClass)) {
+            throw new WSException("Wrong object class '{$objectClass}' requested.  Possible values are " . implode(', ', self::$_allowedObjectClass));
+        }
+        
+        include_once('classes/'.$objectClass.'.php');
+        
+        $parentObject = null;
+        if (!is_null($parentClass)) {
+            if (!is_null($parentId)) {
+                if (!in_array($parentClass,self::$_allowedObjectClass)) {
+                    throw new WSException("Wrong parent class '{$parentClass}' specified.  Possible values are " . implode(', ', self::$_allowedObjectClass));
+                }
+                include_once('classes/'.$parentClass.'.php');
+                $parentObject = call_user_func($parentClass.'::getObject', $parentId);
+            } else {
+                throw new WSException("If parent class is specified, must specify 'parent_id'");
+            }
+        }
+        
+        if (is_null($parentObject)) {
+            if (method_exists($objectClass, 'getAll'.$objectClass.'s')) {
+                $objectList = call_user_func($objectClass.'::getAll'.$objectClass.'s');
+            }
+        }
+        if (empty($fields)) {
+            $fields = self::$_allowedFields[$objectClass];
+        }
+
+        $this->_outputArr = self::filterRet($objectList, $fields);
+    }
+    
+    /**
+     * Filters the returned value to return only allowed fields if the returned value is an object
+     * @param $retVals         array of mixed, array of objects or other arrays to filter
+     * @param $fields          List of fields to filter (if none specified, for objects the allowed fields for the class is taken, otherwise, all is taken)   
+     * @return array | mixed
+     */
+    protected static function filterRet($retVals = array(), $fields = array()) {
+        if (!is_array($retVals)) {
+            $retVals = array($retVals);
+        }
+        $filtered = array();
+        foreach($retVals as $key => $value) {
+            // If the return is one object we filter, return only the allowed fields
+            if (is_object($value)) {
+                // Object class must be one of the allowed classes or else return nothing
+                $object_class = get_class($value);
+                if (in_array($object_class, self::$_allowedObjectClass)) {
+                    
+                    // Get each allowed field
+                    if (empty($fields)) {
+                        $fields = self::$_allowedFields[$object_class];
+                    }
+                    $retFields = array();
+                    foreach ($fields as $field) {
+                        $methodName = 'get'.$field;
+                        if (method_exists($value, $methodName)) {
+                            $retFields[$field] = self::filterRet($value->$methodName());
+                        } else {
+                            $retFields[$field] = 'unknown';
+                        }
+                    }
+                    $filtered[] = $retFields;
+                }
+                else {
+                    $filtered[] = array();
+                }
+            } else if (is_array($value) && !empty($fields)) {
+                $allowed_array = array();
+                foreach ($fields as $field) {
+                    if (isset($value[$field])) {
+                        $allowed_array[$field] = $value[$field];
+                    } else {
+                        // In an array, the actual field name may be a _-separated string where the word separation is the uppercase
+                        $fieldname = preg_replace("/([A-Z])/e", "'_'.strtolower('\\1')", $field);
+                        // This preg_replace also put a _ before the first ucletter, which we don't want.
+                        if ($fieldname[0] == '_')  $fieldname = substr($fieldname, 1);
+                        if (isset($value[$fieldname])) {
+                            $allowed_array[$field] = $value[$fieldname];
+                        }
+                        else {
+                            $allowed_array[$field] = 'unknown';
+                        }
+                    }
+                }
+                $filtered[] = $allowed_array;
+            }
+            else {
+                $filtered[] = $value;
+            }
+        }
+        return (count($filtered) == 1? $filtered[0]: $filtered);
+    }
+    
+}
Index: /branches/newtoken/wifidog/ws/classes/WifidogWS.php
===================================================================
--- /branches/newtoken/wifidog/ws/classes/WifidogWS.php	(revision 1427)
+++ /branches/newtoken/wifidog/ws/classes/WifidogWS.php	(revision 1427)
@@ -0,0 +1,140 @@
+<?php
+
+// +-------------------------------------------------------------------+
+// | WiFiDog Authentication Server                                     |
+// | =============================                                     |
+// |                                                                   |
+// | The WiFiDog Authentication Server is part of the WiFiDog captive  |
+// | portal suite.                                                     |
+// +-------------------------------------------------------------------+
+// | PHP version 5 required.                                           |
+// +-------------------------------------------------------------------+
+// | Homepage:     http://www.wifidog.org/                             |
+// | Source Forge: http://sourceforge.net/projects/wifidog/            |
+// +-------------------------------------------------------------------+
+// | This program is free software; you can redistribute it and/or     |
+// | modify it under the terms of the GNU General Public License as    |
+// | published by the Free Software Foundation; either version 2 of    |
+// | the License, or (at your option) any later version.               |
+// |                                                                   |
+// | This program is distributed in the hope that it will be useful,   |
+// | but WITHOUT ANY WARRANTY; without even the implied warranty of    |
+// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     |
+// | GNU General Public License for more details.                      |
+// |                                                                   |
+// | You should have received a copy of the GNU General Public License |
+// | along with this program; if not, contact:                         |
+// |                                                                   |
+// | Free Software Foundation           Voice:  +1-617-542-5942        |
+// | 59 Temple Place - Suite 330        Fax:    +1-617-542-2652        |
+// | Boston, MA  02111-1307,  USA       gnu@gnu.org                    |
+// |                                                                   |
+// +-------------------------------------------------------------------+
+
+/**
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ * @version    Subversion $Id$
+ * @link       http://www.wifidog.org/
+ */
+
+/**
+ * Abstract class for the web service
+ *
+ * @todo Make all the setter functions no-op if the value is the same as what
+ * was already stored Use setCustomPortalReduirectUrl as an example
+ *
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ */
+abstract class WifidogWS
+{
+
+    protected $_params;
+    /**
+     * The appropriate output class
+     * @var WSOutput
+     */
+    protected $_output;
+    
+    /**
+     * Array of values to return
+     */
+    protected $_outputArr = array();
+	
+    /** Instantiate the web service.  The corresponding class is WifidogWS_V$version
+     * @param $version the version of the web service protocol
+     * @return a WifidogWS object
+     */
+    public static function webServiceFactory($version = 1)
+    {
+        if (!is_int($version))
+            $version = 1;
+        $classname = "WifidogWS_V$version";
+        if (!class_exists($classname, false)) {
+            if (file_exists('ws/classes/WifidogWS/V'.$version.'.php'))
+                include_once('ws/classes/WifidogWS/V'.$version.'.php');
+        }
+        if (!class_exists($classname, false)) {
+            $classname="WifidogWS_V1";
+            include_once('ws/classes/WifidogWS/V1.php');        	
+        }
+        
+        return (new $classname());
+    }
+    
+     /**
+      * Constructor for the web service 
+      * 
+      * */
+    protected function __construct()
+    {
+       
+    }
+    
+    /**
+     * Returns the web service output class
+     * @return WSOutput
+     */
+    public function getOutput() {
+        return $this->_output;
+    }
+    
+    /**
+     * Returns the formatted output
+     * @return string
+     */
+    public function output() {
+        if (!isset($this->_output)) {
+            throw new WSException("Can't output message because no output class is defined.");
+        }
+        return $this->_output->outputSuccess($this->_outputArr);
+    }
+    
+    /**
+     * Set the web service parameters
+     * @param $params   the arrray of GET parameters
+     */
+    public function setParams($params = array()) {
+        // Construct the output of the web service
+        if (isset($params['f'])) {
+            $this->_output = WSOutput::OutputFactory($params['f']);
+            unset($params['f']);
+        } else {
+            $this->_output = WSOutput::OutputFactory();
+        }
+        $this->_params = $params;
+    }
+    
+    abstract protected function executeAction();
+    
+    /**
+     * Passes the control to the web service class to execute the request
+     * @return a properly formatted output
+     */
+    public function execute() {
+        $this->executeAction();
+    }
+}
Index: /branches/newtoken/wifidog/ws/classes/WSOutput/Json.php
===================================================================
--- /branches/newtoken/wifidog/ws/classes/WSOutput/Json.php	(revision 1427)
+++ /branches/newtoken/wifidog/ws/classes/WSOutput/Json.php	(revision 1427)
@@ -0,0 +1,73 @@
+<?php
+
+// +-------------------------------------------------------------------+
+// | WiFiDog Authentication Server                                     |
+// | =============================                                     |
+// |                                                                   |
+// | The WiFiDog Authentication Server is part of the WiFiDog captive  |
+// | portal suite.                                                     |
+// +-------------------------------------------------------------------+
+// | PHP version 5 required.                                           |
+// +-------------------------------------------------------------------+
+// | Homepage:     http://www.wifidog.org/                             |
+// | Source Forge: http://sourceforge.net/projects/wifidog/            |
+// +-------------------------------------------------------------------+
+// | This program is free software; you can redistribute it and/or     |
+// | modify it under the terms of the GNU General Public License as    |
+// | published by the Free Software Foundation; either version 2 of    |
+// | the License, or (at your option) any later version.               |
+// |                                                                   |
+// | This program is distributed in the hope that it will be useful,   |
+// | but WITHOUT ANY WARRANTY; without even the implied warranty of    |
+// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     |
+// | GNU General Public License for more details.                      |
+// |                                                                   |
+// | You should have received a copy of the GNU General Public License |
+// | along with this program; if not, contact:                         |
+// |                                                                   |
+// | Free Software Foundation           Voice:  +1-617-542-5942        |
+// | 59 Temple Place - Suite 330        Fax:    +1-617-542-2652        |
+// | Boston, MA  02111-1307,  USA       gnu@gnu.org                    |
+// |                                                                   |
+// +-------------------------------------------------------------------+
+
+/**
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ * @version    Subversion $Id$
+ * @link       http://www.wifidog.org/
+ */
+
+/**
+ * Web service json output class
+ *
+ *
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ */
+class WSOutput_Json extends WSOutput
+{
+
+    
+    /**
+      * Constructor for the web service 
+      * @param $params array  the array of GET parameters
+      * */
+    protected function __construct()
+    {
+        parent::__construct();
+    }
+    
+    /**
+     * Formats the actual output.  This function is typically called from outputError or outputSuccess
+     * 
+     * @param $returnArray
+     * @return the properly formatted output
+     */
+    protected function output($returnArray = array()) {
+        return json_encode($returnArray);
+    }
+    
+}
Index: /branches/newtoken/wifidog/ws/classes/WSOutput/Xml.php
===================================================================
--- /branches/newtoken/wifidog/ws/classes/WSOutput/Xml.php	(revision 1427)
+++ /branches/newtoken/wifidog/ws/classes/WSOutput/Xml.php	(revision 1427)
@@ -0,0 +1,103 @@
+<?php
+
+// +-------------------------------------------------------------------+
+// | WiFiDog Authentication Server                                     |
+// | =============================                                     |
+// |                                                                   |
+// | The WiFiDog Authentication Server is part of the WiFiDog captive  |
+// | portal suite.                                                     |
+// +-------------------------------------------------------------------+
+// | PHP version 5 required.                                           |
+// +-------------------------------------------------------------------+
+// | Homepage:     http://www.wifidog.org/                             |
+// | Source Forge: http://sourceforge.net/projects/wifidog/            |
+// +-------------------------------------------------------------------+
+// | This program is free software; you can redistribute it and/or     |
+// | modify it under the terms of the GNU General Public License as    |
+// | published by the Free Software Foundation; either version 2 of    |
+// | the License, or (at your option) any later version.               |
+// |                                                                   |
+// | This program is distributed in the hope that it will be useful,   |
+// | but WITHOUT ANY WARRANTY; without even the implied warranty of    |
+// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     |
+// | GNU General Public License for more details.                      |
+// |                                                                   |
+// | You should have received a copy of the GNU General Public License |
+// | along with this program; if not, contact:                         |
+// |                                                                   |
+// | Free Software Foundation           Voice:  +1-617-542-5942        |
+// | 59 Temple Place - Suite 330        Fax:    +1-617-542-2652        |
+// | Boston, MA  02111-1307,  USA       gnu@gnu.org                    |
+// |                                                                   |
+// +-------------------------------------------------------------------+
+
+/**
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ * @version    Subversion $Id$
+ * @link       http://www.wifidog.org/
+ */
+
+/**
+ * Web service xml output class
+ * Main element is WiFiDogWebService
+ *
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ */
+class WSOutput_Xml extends WSOutput
+{
+    protected $_xmldoc;
+    
+    /**
+      * Constructor for the output
+      * @param $params array  the array of GET parameters
+      * */
+    protected function __construct()
+    {
+        parent::__construct();
+    }
+    
+    /**
+     * Transforms an array to xml
+     * @param $array The array to transform
+     * @param $parentNode DomElement  the parent node
+     * @return unknown_type
+     */
+    protected function _toXml($array, &$parentNode)
+    {
+        foreach ($array as $key => $value) {
+            if (is_array($value)) {
+                $childNode = $this->_xmldoc->createElement(!is_numeric($key) ? $key : "item" );
+                $this->_toXml($value, $childNode);
+                $parentNode->appendChild($childNode);
+            } else {
+                $childNode = $this->_xmldoc->createElement(!is_numeric($key) ? $key : "item" , $value);
+                $parentNode->appendChild($childNode);
+            }
+        }
+
+    }
+      
+    /**
+     * Formats the actual output.  This function is typically called from outputError or outputSuccess
+     * 
+     * @param $returnArray
+     * @return the properly formatted output
+     */
+    protected function output($returnArray = array()) {
+        
+        //Prepare header
+        header("Content-Type: text/xml; charset=UTF-8");
+        $this->_xmldoc = new DOMDocument("1.0", "UTF-8");
+        $this->_xmldoc->formatOutput = true;
+        $wsRootNode = $this->_xmldoc->createElement("WiFiDogWebService");
+        $this->_toXml($returnArray, $wsRootNode);
+        $this->_xmldoc->appendChild($wsRootNode);
+        
+        return $this->_xmldoc->saveXML();
+    }
+    
+}
Index: /branches/newtoken/wifidog/ws/index.php
===================================================================
--- /branches/newtoken/wifidog/ws/index.php	(revision 1427)
+++ /branches/newtoken/wifidog/ws/index.php	(revision 1427)
@@ -0,0 +1,114 @@
+<?php
+// +-------------------------------------------------------------------+
+// | WiFiDog Authentication Server                                     |
+// | =============================                                     |
+// |                                                                   |
+// | The WiFiDog Authentication Server is part of the WiFiDog captive  |
+// | portal suite.                                                     |
+// +-------------------------------------------------------------------+
+// | PHP version 5 required.                                           |
+// +-------------------------------------------------------------------+
+// | Homepage:     http://www.wifidog.org/                             |
+// | Source Forge: http://sourceforge.net/projects/wifidog/            |
+// +-------------------------------------------------------------------+
+// | This program is free software; you can redistribute it and/or     |
+// | modify it under the terms of the GNU General Public License as    |
+// | published by the Free Software Foundation; either version 2 of    |
+// | the License, or (at your option) any later version.               |
+// |                                                                   |
+// | This program is distributed in the hope that it will be useful,   |
+// | but WITHOUT ANY WARRANTY; without even the implied warranty of    |
+// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     |
+// | GNU General Public License for more details.                      |
+// |                                                                   |
+// | You should have received a copy of the GNU General Public License |
+// | along with this program; if not, contact:                         |
+// |                                                                   |
+// | Free Software Foundation           Voice:  +1-617-542-5942        |
+// | 59 Temple Place - Suite 330        Fax:    +1-617-542-2652        |
+// | Boston, MA  02111-1307,  USA       gnu@gnu.org                    |
+// |                                                                   |
+// +-------------------------------------------------------------------+
+
+/**
+ * Web service main page
+ *
+ * The wifidog web service allow external applications to access internal
+ * wifidog information in a compact format.
+ * 
+ * The web service uses a simple GET method and returns the requested content in the given format
+ *
+ * {PROTOCOL}://{HOSTNAME}:{PORT}{PATH}ws?action=A&object_class=OC[&object_id=OID][&fields=F1%2CF2][&f=json][&v=1]
+ *
+ * PROTOCOL, HOSTNAME, PORT and PATH refer to the authserver's settings
+ * PROTOCOL http or https if SSLAvailable is yes for the hotspot's current authserver
+ * HOSTNAME Hostname of the current authserver
+ * PORT is HTTPPort or SSLPort of the current authserver
+ * PATH is the Path of the current authserver.  PATH starts and ends with a /
+ *
+ * action (get,list)         The action to perform  (MANDATORY)
+ * object_class (user, node, network) The type of object whose data is to be fetched  (MANDATORY)  
+ * object_id       The object id of the object involved in the query  (MANDATORY IF action is not list)
+ * fields     the url-encoded comma-separated list of fields to return   (OPTIONAL)
+ * f  (json)   The format of the response (OPTIONAL, default json)
+ * v  (1)     The version of the web service protocol  (OPTIONAL, default 1)
+ *
+ * http://auth.ilesansfil.org:80/ws?action=get&object_class=node&object_id=215&fields=connected_users%2Cname
+ * 
+ * The result is returned according to the requested format, such that top-level has result=0|1 (0=error, 1=success) and 
+ * values = ... (if error, value is array('type' => exception class, 'message' => 'exception message')
+ *
+ * @package    WiFiDogAuthServer
+ * @subpackage WebService
+ * @author     Geneviève Bastien <gbastien@versatic.net>
+ * @copyright  2009 Geneviève Bastien, VersaTIC Technologies inc.
+ * @version    Subversion $Id$
+ * @link       http://www.wifidog.org/
+ */
+
+/**
+ * Load required files
+ */
+require_once('../include/common.php');
+require_once('ws/classes/WifidogWS.php');
+require_once('ws/classes/WSOutput.php');
+include_once('ws/classes/Exceptions/WSException.php');
+
+/**
+ * Process the input parameter
+ **/
+if (isset($_GET['v'])) {
+    $version = $_GET['v'];
+    unset($_GET['v']);
+} else {
+    $version = 1;
+}
+
+$service = WifidogWS::webServiceFactory($version);
+
+/**
+ * This custom exception handler returns the exception
+ */
+function wifidog_exception_handler($e) {
+    global $service;
+    $output = $service->getOutput();
+    $exceptionClass = get_class($e);
+    if (!is_null($output)) {
+        echo $output->outputError(array('type' => $exceptionClass, 
+                                    'message' => sprintf(_("Detailed error was:  Uncaught %s %s (%s) thrown in file %s, line %d"),get_class($e), $e->getMessage(), $e->getCode(), $e->getFile(), $e->getLine())));
+    } else {
+        echo sprintf(_("Detailed error was:  Uncaught %s %s (%s) thrown in file %s, line %d"),get_class($e), $e->getMessage(), $e->getCode(), $e->getFile(), $e->getLine());
+    }
+
+}
+
+set_exception_handler('wifidog_exception_handler');
+
+throw (new WSException(_("The Wifidog API module is not fit for production yet.  The source code has been released to share ideas and help development, but it has not been thoroughly tested yet and may represent a security issue for now.  If you'd like to test the module, you can do so by commenting this line in the auth server's source code.  But it is highly not advised to do so in a production environment for now.  Please stay tuned for more development")));
+
+$service->setParams($_GET);
+
+$service->execute();
+
+echo $service->output();
+
Index: /branches/newtoken/wifidog/file_download.php
===================================================================
--- /branches/newtoken/wifidog/file_download.php	(revision 1147)
+++ /branches/newtoken/wifidog/file_download.php	(revision 1147)
@@ -0,0 +1,98 @@
+<?php
+
+
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+// +-------------------------------------------------------------------+
+// | WiFiDog Authentication Server                                     |
+// | =============================                                     |
+// |                                                                   |
+// | The WiFiDog Authentication Server is part of the WiFiDog captive  |
+// | portal suite.                                                     |
+// +-------------------------------------------------------------------+
+// | PHP version 5 required.                                           |
+// +-------------------------------------------------------------------+
+// | Homepage:     http://www.wifidog.org/                             |
+// | Source Forge: http://sourceforge.net/projects/wifidog/            |
+// +-------------------------------------------------------------------+
+// | This program is free software; you can redistribute it and/or     |
+// | modify it under the terms of the GNU General Public License as    |
+// | published by the Free Software Foundation; either version 2 of    |
+// | the License, or (at your option) any later version.               |
+// |                                                                   |
+// | This program is distributed in the hope that it will be useful,   |
+// | but WITHOUT ANY WARRANTY; without even the implied warranty of    |
+// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     |
+// | GNU General Public License for more details.                      |
+// |                                                                   |
+// | You should have received a copy of the GNU General Public License |
+// | along with this program; if not, contact:                         |
+// |                                                                   |
+// | Free Software Foundation           Voice:  +1-617-542-5942        |
+// | 59 Temple Place - Suite 330        Fax:    +1-617-542-2652        |
+// | Boston, MA  02111-1307,  USA       gnu@gnu.org                    |
+// |                                                                   |
+// +-------------------------------------------------------------------+
+
+/**
+ * @package    WiFiDogAuthServer
+ * @author     Francois Proulx <francois.proulx@gmail.com>
+ * @copyright  2005-2006 Francois Proulx, Technologies Coeus inc.
+ * @version    Subversion $Id$
+ * @link       http://www.wifidog.org/
+ */
+
+/**
+ * Load required files
+ */
+require_once (dirname(__FILE__) . '/include/common.php');
+
+if (!empty ($_REQUEST['file_id']))
+{
+	$db = AbstractDb::getObject();
+	$file_id = $db->escapeString($_REQUEST['file_id']);
+	$sql = "SELECT * FROM content_file JOIN content ON (content_id=files_id) WHERE files_id = '$file_id'";
+	$db->execSqlUniqueRes($sql, $file_row, false);
+
+	if ($file_row && $file_row['data_blob'])
+	{
+		// Check if the HTTP request is asking if the file has been modified since a certain date.
+		$last_modified_date = isset($_SERVER['HTTP_IF_MODIFIED_SINCE'])? $_SERVER['HTTP_IF_MODIFIED_SINCE'] : 0;
+		if($last_modified_date && $_SERVER['REQUEST_METHOD'] == "GET" && strtotime($last_modified_date) >= strtotime($file_row['last_update_timestamp']))
+		   header("HTTP/1.1 304 Not Modified");
+		else
+		{
+			//headers to send to the browser before beginning the binary download
+			header("Pragma: public");
+			// Send last update date to proxy / cache the binary
+			header("Last-Modified: " . gmdate("D, d M Y H:i:s", strtotime($file_row['last_update_timestamp'])) . " GMT");
+			header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
+			header("Cache-Control: public");
+			header("Content-Description: File Transfer");
+			header('Content-Type: ' . $file_row['mime_type']);
+			header("Content-Transfer-Encoding: binary");
+			header('Accept-Ranges: bytes');
+			if (strpos($file_row['mime_type'], "image") === false)
+				header('Content-Length: ' .$file_row['local_binary_size']); //this is the size of the zipped file
+			header('Keep-Alive: timeout=15, max=100');
+			header('Content-Disposition: inline; filename="' . $file_row['filename'] . '"');
+
+			// Do not send binary if this is only a HEAD request
+			if ($_SERVER["REQUEST_METHOD"] != "HEAD")
+				$db->readFlushLargeObject($file_row['data_blob']);
+		}
+	}
+	else
+		header("HTTP/1.1 404 Not Found");
+}
+else
+	header("HTTP/1.1 404 Not Found");
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * c-hanging-comment-ender-p: nil
+ * End:
+ */
+?>
Index: /branches/newtoken/wifidog/config_available_locales.php
===================================================================
--- /branches/newtoken/wifidog/config_available_locales.php	(revision 1421)
+++ /branches/newtoken/wifidog/config_available_locales.php	(revision 1421)
@@ -0,0 +1,73 @@
+<?php
+
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
+
+// +-------------------------------------------------------------------+
+// | WiFiDog Authentication Server                                     |
+// | =============================                                     |
+// |                                                                   |
+// | The WiFiDog Authentication Server is part of the WiFiDog captive  |
+// | portal suite.                                                     |
+// +-------------------------------------------------------------------+
+// | PHP version 5 required.                                           |
+// +-------------------------------------------------------------------+
+// | Homepage:     http://www.wifidog.org/                             |
+// | Source Forge: http://sourceforge.net/projects/wifidog/            |
+// +-------------------------------------------------------------------+
+// | This program is free software; you can redistribute it and/or     |
+// | modify it under the terms of the GNU General Public License as    |
+// | published by the Free Software Foundation; either version 2 of    |
+// | the License, or (at your option) any later version.               |
+// |                                                                   |
+// | This program is distributed in the hope that it will be useful,   |
+// | but WITHOUT ANY WARRANTY; without even the implied warranty of    |
+// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     |
+// | GNU General Public License for more details.                      |
+// |                                                                   |
+// | You should have received a copy of the GNU General Public License |
+// | along with this program; if not, contact:                         |
+// |                                                                   |
+// | Free Software Foundation           Voice:  +1-617-542-5942        |
+// | 59 Temple Place - Suite 330        Fax:    +1-617-542-2652        |
+// | Boston, MA  02111-1307,  USA       gnu@gnu.org                    |
+// |                                                                   |
+// +-------------------------------------------------------------------+
+
+/**
+ * Configuration file to list the available locales in the WiFiDog Authentication Server
+ *
+ * @package    WiFiDogAuthServer
+ * @author     Benoit Grégoire <benoitg@coeus.ca>
+ * @copyright  2007 Benoit Grégoire, Technologies Coeus inc.
+ * @version    Subversion $Id: $
+ * @link       http://www.wifidog.org/
+ */
+
+/** Returns an array of available languages for the user.  Each entry must have:
+ * -The language code (the part before the _) be present in wifidog/locales
+ * -Have the entire locale available in your system locale
+ * OR
+ * -Have a system locale available with only the language (ex: an en locale).
+ * Note that if you specify en_UK and en_US, and have only en available the
+ * system will NOT warn you that both will have identical results.
+ * Note that even if your system uses locales like fr_CA.UTF8, you do not need
+ * to change this, wifidog will translate for you.
+ */
+function getAvailableLanguageArray() {
+    $retval = array(
+    'fr_CA' => array('Français', _("French")),
+    'en_US' => array('English',_("English")),
+    'de_DE' => array('Deutsch',_("German")),
+    'es_ES' => array('Español',_("Spanish")),
+    'pt_BR' => array('Português (Brasil)',_("Brazilian Portuguese")),
+    'pt_PT' => array('Português (Portugal)',_("Portuguese")),
+    'ja_JP' => array('日本語',_("Japanese")),
+    'el_GR' => array('Greek',_("Greek")),
+    'bg_BG' => array('Български език',_("Bulgarian")),
+    'sv_SE' => array('Svenska',_("Swedish")),
+    'it_IT' => array('Italiano', _("Italian")),
+    'ca_ES' => array('Català', _("Catalan"))
+    );
+    return $retval;
+}
+?>
Index: /branches/newtoken/wifidog/locale/gen.sh
===================================================================
--- /branches/newtoken/wifidog/locale/gen.sh	(revision 1297)
+++ /branches/newtoken/wifidog/locale/gen.sh	(revision 1297)
@@ -0,0 +1,24 @@
+echo "Extracting strings from Smarty templates"
+echo '<?php' > smarty.txt
+find ../templates -name "*.html" -exec ./gensmarty.pl {} >> smarty.txt \;
+find ../templates/classes -name "*.tpl" -exec ./gensmarty.pl {} >> smarty.txt \;
+find ../templates/sites -name "*.tpl" -exec ./gensmarty.pl {} >> smarty.txt \;
+find ../admin/templates -name "*.html" -exec ./gensmarty.pl {} >> smarty.txt \;
+echo '?>' >> smarty.txt
+POT_FILE="message.pot"
+	rm -f $POT_FILE
+	echo "Creating new .POT file"
+        touch $POT_FILE
+	find .. -maxdepth 1 -name "*.php" -exec xgettext --language=PHP --from-code=utf-8 -j -o $POT_FILE --keyword=_ {} \;
+	for dir in admin auth content cron include lib/feedpressreview login portal; do
+		find ../$dir -maxdepth 1 -name "*.php" -exec xgettext --language=PHP --from-code=utf-8 -j -o $POT_FILE --keyword=_ {} \;
+	done
+	find ../classes -maxdepth 3 -name "*.php" -exec xgettext --language=PHP --from-code=utf-8 -j -o $POT_FILE --keyword=_ {} \;
+	xgettext  --language=PHP --from-code=utf-8 -j -o $POT_FILE --keyword=_ smarty.txt
+
+for i in `find . -maxdepth 1 -mindepth 1 -type d -and -not -name ".svn"`; do
+	FINAL_FILE="$i/LC_MESSAGES/messages.po"
+	echo "Merging with previous $i .PO file"
+	msgmerge --update $FINAL_FILE $POT_FILE 
+done
+echo "Compiling .MO binary files"
Index: /branches/newtoken/wifidog/locale/ca/LC_MESSAGES/messages.po
===================================================================
--- /branches/newtoken/wifidog/locale/ca/LC_MESSAGES/messages.po	(revision 1397)
+++ /branches/newtoken/wifidog/locale/ca/LC_MESSAGES/messages.po	(revision 1397)
@@ -0,0 +1,5549 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-26 11:47-0400\n"
+"PO-Revision-Date: 2008-07-07 19:38+0100\n"
+"Last-Translator: Cristian Lorenzo <cristian@lalineapeluda.com>\n"
+"Language-Team: LANGUAGE <cristian@lalineapeluda.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Catalan\n"
+"X-Poedit-SourceCharset: utf-8\n"
+
+#: ../node_list.php:131 ../classes/Node.php:323 ../classes/Node.php:685
+msgid "Deployed"
+msgstr "Instal·lat"
+
+#: ../node_list.php:132 ../classes/Node.php:324 ../classes/Node.php:686
+msgid "In planning"
+msgstr "En planificació"
+
+#: ../node_list.php:132 ../classes/Node.php:325 ../classes/Node.php:687
+msgid "In testing"
+msgstr "En proves"
+
+#: ../node_list.php:132 ../classes/Node.php:326 ../classes/Node.php:688
+msgid "Non-Wifidog node"
+msgstr "Node no Wifidog"
+
+#: ../node_list.php:132 ../classes/Node.php:327 ../classes/Node.php:689
+msgid "Permanently closed"
+msgstr "Permanentment tancat"
+
+#: ../node_list.php:132 ../classes/Node.php:328 ../classes/Node.php:690
+msgid "Temporarily closed"
+msgstr "Temporalment tancat"
+
+#: ../node_list.php:173 ../classes/NodeLists/NodeListHTML.php:173
+msgid "All"
+msgstr ""
+
+#: ../node_list.php:173 ../hotspots_map.php:114
+#: ../classes/NodeLists/NodeListHTML.php:175
+msgid "Change network"
+msgstr "Canviar de xarxa"
+
+#: ../node_list.php:177 ../classes/NodeLists/NodeListHTML.php:176
+#: ../classes/NodeLists/NodeListHTML.php:221
+#, fuzzy
+msgid "All networks"
+msgstr "red"
+
+#: ../validate.php:58
+msgid "No token specified!"
+msgstr "No s'ha indicat cap testimoni!"
+
+#: ../validate.php:61
+msgid "No user ID specified!"
+msgstr "No s'ha indicat cap ID d'usuari!"
+
+#: ../validate.php:66
+msgid "The validation token does not match the one in the database."
+msgstr "El testimoni de validació no coincideix amb el de la base de dades."
+
+#: ../validate.php:69
+msgid "Your account has already been activated."
+msgstr "El seu compte ja fou activat."
+
+#: ../validate.php:77
+msgid ""
+"Your account has been succesfully activated!\n"
+"\n"
+"You may now browse to a remote Internet address and take advantage of the "
+"free Internet access!\n"
+"\n"
+"If you get prompted for a login, enter the username and password you have "
+"just created."
+msgstr ""
+"Has activat amb èxit el teu compte!\n"
+"\n"
+"Ara pots navegar per Internet i gaudir dels avantatges d'Internet gratuït!\n"
+"\n"
+"Si en algun moment et demanen iniciar una sessió, introdueix el nom d'usuari "
+"i la contrasenya que acabes de crear."
+
+#: ../lost_password.php:103 ../resend_validation.php:100 ../signup.php:197
+#: ../lost_username.php:101
+msgid "Sorry, this network does not exist !"
+msgstr "Ho sento, aquesta xarxa no existeix!"
+
+#: ../lost_password.php:107
+msgid "Please specify a username or email address"
+msgstr "Si us plau, indica un nom d'usuari o adreça de correu electrònic"
+
+#: ../lost_password.php:117
+#, fuzzy
+msgid "Please specify EITHER your username or your email, not both"
+msgstr "Si us plau, indica un nom d'usuari o adreça de correu electrònic"
+
+#: ../lost_password.php:126
+#, fuzzy
+msgid "You need to specify your username or your email"
+msgstr "Has d'indicar el teu nom d'usuari i contrasenya"
+
+#: ../lost_password.php:136
+msgid "This username or email could not be found in our database"
+msgstr "Aquest nom d'usuari o correu electrònic no es troba a la base de dades"
+
+#: ../lost_password.php:139
+msgid "A new password has been emailed to you."
+msgstr "He enviat una nova contrasenya al teu correu electrònic"
+
+#: ../hotspots_map.php:97
+msgid ""
+"Unable to get the google API key, because I couldn't find a vhost matching "
+"the current hostname"
+msgstr ""
+"No puc recuperar la clau de l'API de coogle en no trobar cap vhost amb el "
+"nom actual del servidor"
+
+#: ../hotspots_map.php:145
+msgid "Sorry, your browser does not support Google Maps."
+msgstr "Ho sento, el teu navegador no admet Google Maps."
+
+#: ../hotspots_map.php:145 ../classes/StatisticReport/NodeStatus.php:190
+#: ../classes/StatisticReport/NetworkStatus.php:109
+msgid "Homepage"
+msgstr "Pàgina d'inici"
+
+#: ../hotspots_map.php:145
+msgid "Show me on the map"
+msgstr "Ensenya'm on sóc al mapa"
+
+#: ../hotspots_map.php:145 smarty.txt:41
+msgid "Loading, please wait..."
+msgstr "Carregant, si us plau espera..."
+
+#: ../hotspots_map.php:159
+msgid "Hotspots status map"
+msgstr "Mapa de l'estat dels Hotspots"
+
+#: ../resend_validation.php:104
+msgid "Please specify a username"
+msgstr "Si us plau, indica un nom d'usuari"
+
+#: ../resend_validation.php:111
+msgid "This username could not be found in our database"
+msgstr "No trobo aquest nom d'usuari a la base de dades"
+
+#: ../resend_validation.php:116 ../signup.php:228
+msgid "An email with confirmation instructions was sent to your email address."
+msgstr ""
+"He enviat un correu a la teva adreça de correu electrònic amb les "
+"instruccions de confirmació."
+
+#: ../signup.php:81
+msgid "Username is required."
+msgstr "Es necessita un nom d'usuari."
+
+#: ../signup.php:85
+msgid "Username contains invalid characters."
+msgstr "El nom d'usuari conté caràcters no vàlids."
+
+#: ../signup.php:103
+msgid "A valid email address is required."
+msgstr "Es necessita una adreça de correu electrònica vàlida."
+
+#: ../signup.php:107
+msgid ""
+"The email address must be valid (i.e. user@domain.com). Please understand "
+"that we also black-listed various temporary-email-address providers."
+msgstr ""
+"L'adreça del correu electrònic ha de ser vàlida (p. ex. usuari@domini.com). "
+"A més, existeix una llista de proveïdors d'adreces temporals de correu "
+"electrònic que no acceptem."
+
+#: ../signup.php:126
+msgid "A password of at least 6 characters is required."
+msgstr "Es necessita una contrasenya de com a mínim 6 caràcters."
+
+#: ../signup.php:130
+msgid ""
+"Password contains invalid characters.  Allowed characters are 0-9, a-z and A-"
+"Z"
+msgstr ""
+"La contrasenya conté caràcters no vàlids. Els caràcters permesos són 0-9, a-"
+"z i A-Z"
+
+#: ../signup.php:134
+msgid "You must type your password twice."
+msgstr "Escriu la teva contrasenya dues vegades."
+
+#: ../signup.php:138 ../classes/User.php:947
+msgid "Passwords do not match."
+msgstr "Les contrasenyes no són iguals."
+
+#: ../signup.php:142
+msgid "Password is too short, it must be 6 characters minimum."
+msgstr "La contrasenya és curta, ha de ser de com a mínim 6 caràcters"
+
+#: ../signup.php:201
+msgid "Sorry, this network does not accept new user registration !"
+msgstr "Ho sento, aquesta xarxa no accepta nous usuaris!"
+
+#: ../signup.php:211
+msgid ""
+"Sorry, a user account is already associated to this username. Pick another "
+"one."
+msgstr ""
+"Ho sento, però ja existeix un compte associat a aquest nom d'usuari. Si us "
+"plau, selecciona un altre."
+
+#: ../signup.php:215
+msgid "Sorry, a user account is already associated to this email address."
+msgstr ""
+"Ho sento, però ja existeix un compte associat a aquesta adreça de correu "
+"electrònic."
+
+#: ../signup.php:229 ../portal/index.php:163
+#, php-format
+msgid ""
+"Your account has been granted %s minutes of access to retrieve your email "
+"and validate your account."
+msgstr ""
+"El seu compte disposa de %s minuts d'accés per accedir al correu i validar "
+"el compte."
+
+#: ../signup.php:230
+msgid ""
+"You may now open a browser window or start your email client and go to any "
+"remote Internet address to obtain the validation email."
+msgstr ""
+"Ara ja pots obrir una finestra del navegador o iniciar el teu client de "
+"correu electrònic i accedir a qualsevol adreça d'Internet per obtenir el "
+"correu de validació."
+
+#: ../lost_username.php:105
+msgid "Please specify an email address"
+msgstr "Si us plau, indica una adreça de correu electrònic"
+
+#: ../lost_username.php:112
+msgid "This email could not be found in our database"
+msgstr "No trobo aquest correu electrònic a la base de dades"
+
+#: ../lost_username.php:117
+msgid "Your username has been emailed to you."
+msgstr "He enviat el teu nom d'usuari al teu compte de correu electrònic."
+
+#: ../gw_message.php:61
+#, php-format
+msgid "You have failed to validate your account in %d minutes."
+msgstr "No has validat el teu compte els últims %d minuts."
+
+#: ../gw_message.php:62
+msgid "Please validate your account from somewhere else or create a new one."
+msgstr "Si us plau, valida el teu compte des d'un altre lloc o crea una nova."
+
+#: ../gw_message.php:67
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:895
+#: ../classes/Statistics.php:376 ../classes/Statistics.php:379
+#: ../classes/Content.php:901 ../classes/Node.php:231 ../classes/Role.php:501
+msgid "Access denied!"
+msgstr "Accés denegat!"
+
+#: ../gw_message.php:73
+#, php-format
+msgid ""
+"You have now been granted %d minutes of Internet access without being "
+"validated to go and activate your account."
+msgstr ""
+"Tens %d minuts d'accés a Internet sense validar per activar el teu compte."
+
+#: ../gw_message.php:74
+#, php-format
+msgid ""
+"If you fail to validate your account in %d minutes, you will have to "
+"validate it from somewhere else."
+msgstr ""
+"Si no valida el seu compte en %d minuts, ho haurà de fer des d'un altre lloc."
+
+#: ../gw_message.php:75
+msgid ""
+"If you do not receive an email from our validation server in the next "
+"minute, perhaps you have made a typo in your email address, you might have "
+"to create another account."
+msgstr ""
+"És possible que hagis comés un error al introduir el teu correu electrònic "
+"si no reps un correu electrònic del nostre servidor de correu electrònic. En "
+"aquest cas, hauràs de crear un nou compte."
+
+#: ../gw_message.php:80
+msgid "Unknown message specified! (this is probably an error)"
+msgstr "S'ha indicat un missatge desconegut! (això és probablement un error)"
+
+#: ../gw_message.php:85
+msgid "No message has been specified! (this is probably an error)"
+msgstr "No has especificat cap missatge! (això és possiblement un error)"
+
+#: ../config_available_locales.php:58
+msgid "French"
+msgstr "Francès"
+
+#: ../config_available_locales.php:59
+msgid "English"
+msgstr "Anglès"
+
+#: ../config_available_locales.php:60
+msgid "German"
+msgstr "Alemany"
+
+#: ../config_available_locales.php:61
+msgid "Spanish"
+msgstr "Espanyol"
+
+#: ../config_available_locales.php:62
+msgid "Brazilian Portuguese"
+msgstr "Portuguès del Brasil"
+
+#: ../config_available_locales.php:63
+msgid "Portuguese"
+msgstr "Portuguès"
+
+#: ../config_available_locales.php:64
+msgid "Japanese"
+msgstr "Japonès"
+
+#: ../config_available_locales.php:65
+msgid "Greek"
+msgstr "Grec"
+
+#: ../config_available_locales.php:66
+msgid "Bulgarian"
+msgstr "Búlgar"
+
+#: ../config_available_locales.php:67
+msgid "Swedish"
+msgstr "Suec"
+
+#: ../config_available_locales.php:68
+msgid "Italian"
+msgstr "Italià"
+
+#: ../config_available_locales.php:69
+#, fuzzy
+msgid "Catalan"
+msgstr "Italià"
+
+#: ../admin/generic_object_admin.php:80
+msgid "Sorry, the 'object_class' parameter must be specified"
+msgstr "Ho sento, has d'especificar el paràmetre 'object_class'"
+
+#: ../admin/generic_object_admin.php:93
+#, php-format
+msgid "Create %s"
+msgstr "Crea %s"
+
+#: ../admin/generic_object_admin.php:94
+#, php-format
+msgid "Add %s"
+msgstr "Afegeix %s"
+
+#: ../admin/generic_object_admin.php:95
+#, php-format
+msgid "Create a new %s"
+msgstr "Crea un nou %s"
+
+#: ../admin/generic_object_admin.php:96
+#, php-format
+msgid "Add a new %s"
+msgstr "Afegeix un nou %s"
+
+#: ../admin/generic_object_admin.php:97
+#, php-format
+msgid "Show all %s"
+msgstr "Mostrar tots els %s"
+
+#: ../admin/generic_object_admin.php:98
+#, php-format
+msgid "Show only persistant %s"
+msgstr "Mostra únicament els %s persistents"
+
+#: ../admin/generic_object_admin.php:99 ../classes/Network.php:2140
+#: ../classes/Node.php:1767
+#, php-format
+msgid "Edit %s"
+msgstr "Edita %s"
+
+#: ../admin/generic_object_admin.php:149
+msgid ""
+"Sorry, the object couldn't be created.  You probably didn't fill the form "
+"properly"
+msgstr ""
+"Ho sento, no he pogut crear l'objecte. És possible que no hagis omplert "
+"correctament el formulari"
+
+#: ../admin/generic_object_admin.php:187
+msgid "Showing preview as it would appear at "
+msgstr "Mostrant la previsualització tal com hauria d'aparèixer"
+
+#: ../admin/generic_object_admin.php:202
+#: ../classes/StatisticReport/UserReport.php:182
+#: ../classes/StatisticReport/RegistrationLog.php:120
+#: ../classes/StatisticReport/MostPopularNodes.php:109
+#: ../classes/StatisticReport/UserRegistrationReport.php:131 smarty.txt:133
+msgid "Node"
+msgstr "Node"
+
+#: ../admin/generic_object_admin.php:211 ../admin/generic_object_admin.php:414
+#: ../classes/Content/Picture/Picture.php:294
+msgid "Preview"
+msgstr "Previsualització"
+
+#: ../admin/generic_object_admin.php:217 ../classes/Content.php:736
+#: ../classes/ProfileTemplate.php:393
+msgid "Edit"
+msgstr "Edita"
+
+#: ../admin/generic_object_admin.php:224 ../admin/generic_object_admin.php:246
+msgid "Object successfully deleted"
+msgstr "S'ha esborrat amb èxit l'objecte"
+
+#: ../admin/generic_object_admin.php:226 ../admin/generic_object_admin.php:249
+msgid "Deletion failed, error was: "
+msgstr "No he pogut esborrar, s'ha produït un error:"
+
+#: ../admin/generic_object_admin.php:383
+msgid "Sorry, the 'object_id' parameter must be specified"
+msgstr "Ho sento, has d'especificar el paràmetre 'object_id'"
+
+#: ../admin/generic_object_admin.php:399
+msgid "Save"
+msgstr "Desa"
+
+#: ../admin/generic_object_admin.php:404 ../admin/generic_object_admin.php:424
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:204
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:228
+#: ../classes/Content/RssAggregator/RssAggregator.php:620
+#: ../classes/Content.php:955
+msgid "Delete"
+msgstr "Esborra"
+
+#: ../admin/generic_object_admin.php:449
+msgid "Generic object editor"
+msgstr "Editor d'objectes genèrics"
+
+#: ../admin/import_user_database.php:66
+msgid "NoCat user database import"
+msgstr "Importar base de dades d'usuaris NoCat"
+
+#: ../admin/import_user_database.php:72
+msgid "Please select the NoCat passwd file you want to import."
+msgstr ""
+"Si us plau, selecciona l'arxiu de contrasenyes de NoCat que desitges "
+"importar."
+
+#: ../admin/import_user_database.php:76
+msgid ""
+"Accept users with no email addresses (Normally, NoCat usernames are expected "
+"to be the user's email address, and the username is generated from the "
+"prefix."
+msgstr ""
+"Accepta usuaris sense adreça de correu electrònic (Normalment, els noms "
+"d'usuari de NoCat són la seva adreça de correu electrònic i el nom d'usuari "
+"es generat des del prefix)"
+
+#: ../admin/import_user_database.php:78
+msgid "Upload file"
+msgstr "Penja l'arxiu"
+
+#: ../admin/import_user_database.php:81
+msgid ""
+"I am sure I want to import (Otherwise, the import will only be simulated)."
+msgstr ""
+"Estic segur de voler importar (En cas contrari, la importació únicament serà "
+"simulada)."
+
+#: ../admin/import_user_database.php:175
+msgid "Sorry, a user account is already associated to the email address: "
+msgstr ""
+"Ho sento, un compte d'usuari ja te associada aquesta adreça de correu "
+"electrònic:"
+
+#: ../admin/import_user_database.php:181
+msgid "Sorry, the user must have a email address."
+msgstr "Ho sento, l'usuari ha de tenir una adreça de correu electrònic"
+
+#: ../admin/import_user_database.php:190
+msgid "Sorry, a user account already exists with the username: "
+msgstr "Ho sento, ja existeix un compre amb aquest nom d'usuari: "
+
+#: ../admin/import_user_database.php:211
+msgid "SQL error on: "
+msgstr "Error de SQL a: "
+
+#: ../admin/import_user_database.php:217
+msgid "Report"
+msgstr "Informe"
+
+#: ../admin/stats.php:66
+msgid "Connections at"
+msgstr "Connexions a"
+
+#: ../admin/stats.php:72
+msgid "User information for"
+msgstr "Informació d'usuari per"
+
+#: ../admin/stats.php:77
+msgid "Connections from MAC"
+msgstr "Connexió des del MAC"
+
+#: ../admin/stats.php:83
+msgid "Network information for"
+msgstr "Informació de la xarxa per"
+
+#: ../admin/stats.php:97
+msgid "Generate statistics"
+msgstr "Generar estadístiques"
+
+#: ../admin/user_log.php:113
+msgid "Internal error."
+msgstr "Error intern."
+
+#: ../admin/user_log.php:121
+msgid "Find a user ID : "
+msgstr "Troba un ID d'usuari: "
+
+#: ../admin/hotspot_location_map.php:59
+msgid "Hotspot location map"
+msgstr "Mapa d'ubicació dels Hotspot"
+
+#: ../admin/hotspot_location_map.php:70
+msgid ""
+"Click anywhere on the map to extract the GIS location, then click on the "
+"button to save the data."
+msgstr ""
+"Fes clic al mapa per obtenir la localització GIS, després prem el botó per "
+"guardar les dades"
+
+#: ../admin/hotspot_location_map.php:72
+msgid "Use these coordinates"
+msgstr "Empra aquestes coordenades"
+
+#: ../admin/hotspot_location_map.php:80
+msgid ""
+"Error:  You need to set the GIS coordinates of the center of your network"
+msgstr ""
+"Error: Necessites establir les coordenades GIS del centre de la teva xarxa"
+
+#: ../admin/hotspot_location_map.php:124
+msgid "You need to set a node ID."
+msgstr "Necessites assignar un ID al node"
+
+#: ../cron/page.php:79
+msgid "Monitoring system"
+msgstr "Sistema de seguiment"
+
+#: ../cron/page.php:82
+msgid "node"
+msgstr "node"
+
+#: ../cron/page.php:84
+#, php-format
+msgid "Node %s (%s) has been down for %d minutes (since %s)"
+msgstr "El node %s (%s) porta aturat  %d minuts (des de %s)"
+
+#: ../cron/page.php:86
+msgid "Success"
+msgstr "Acomplert"
+
+#: ../cron/page.php:86
+msgid "Failed sending mail"
+msgstr "No he aconseguit enviar el correu"
+
+#: ../cron/page.php:102
+msgid "No deployed nodes could not be found in the database"
+msgstr "No puc trobar nodes instal·lats a la base de dades"
+
+#: ../include/schema_validate.php:72
+msgid ""
+"I am unable to retrieve the schema version. Either the wifidog database "
+"hasn't been created yet, the postgresql server is down, or pg_hba.conf does "
+"not allow your web server to connect to the wifidog database."
+msgstr ""
+"No puc recuperar la versió de l'esquema. Potser la base de dades de wifidog "
+"no ha estat creada, el servidor postgresql no es troba actiu o l'arxiu "
+"pg_hba.conf no permet al teu servidor web connectar a la base de dades de "
+"wifidog."
+
+#: ../include/schema_validate.php:74
+msgid "Try running the"
+msgstr "Intenta executa el"
+
+#: ../include/schema_validate.php:74
+msgid "installation script"
+msgstr "script d'instal·lació"
+
+#: ../include/schema_validate.php:106
+msgid ""
+"No user matches the default network, a new user admin/admin will be created. "
+"Change the password as soon as possible !"
+msgstr ""
+"No existeixen usuaris a la xarxa per defecte. Es crearà un nou admin/admin. "
+"Canvia la contrasenya tan aviat com sigui possible!"
+
+#: ../include/schema_validate.php:118
+msgid "Could not get a default network!"
+msgstr "No puc obtenir una xarxa per defecte!"
+
+#: ../include/schema_validate.php:150
+msgid "Trying to update the database schema."
+msgstr "Intentant actualitzar l'estructura de la base de dades."
+
+#: ../include/schema_validate.php:155
+msgid ""
+"Unable to retrieve schema version.  The database schema is too old to be "
+"updated."
+msgstr ""
+"No puc recuperar la versió de l'estructura. L'estructura de la base de dades "
+"es massa antiga per a ser actualitzada."
+
+#: ../include/common.php:142
+msgid "Unused"
+msgstr "Sense us"
+
+#: ../include/common.php:143
+msgid "In use"
+msgstr "En us"
+
+#: ../include/common.php:144
+msgid "Used"
+msgstr "Emprat"
+
+#: ../login/index.php:211
+#, php-format
+msgid "Unable to generate token for user %s"
+msgstr "No puc generar el testimoni de l'usuari %s"
+
+#: ../login/index.php:261
+msgid "I'm having difficulties:"
+msgstr "Necessito ajuda:"
+
+#: ../login/index.php:263 smarty.txt:47 smarty.txt:64 smarty.txt:75
+#: smarty.txt:99 smarty.txt:107
+msgid "I Forgot my username"
+msgstr "He oblidat el meu nom d'usuari"
+
+#: ../login/index.php:264 smarty.txt:48 smarty.txt:65 smarty.txt:76
+#: smarty.txt:100 smarty.txt:108
+msgid "I Forgot my password"
+msgstr "He oblidat la meva contrasenya"
+
+#: ../login/index.php:265 smarty.txt:49 smarty.txt:77 smarty.txt:101
+#: smarty.txt:109
+msgid "Re-send the validation email"
+msgstr "Torna'm a enviar el correu de validació"
+
+#: ../login/index.php:271
+#, php-format
+msgid "%s login page for %s"
+msgstr "%s pàgina d'inici de sessió per %s"
+
+#: ../login/index.php:273
+msgid "Offsite login page"
+msgstr "Enllaços externs a la pàgina d'inici de sessió"
+
+#: ../login/index.php:282 ../portal/index.php:157
+msgid "Welcome to"
+msgstr "Benvingut a"
+
+#: ../portal/index.php:97
+msgid "No Hotspot specified!"
+msgstr "No has seleccionat cap Hotspot!"
+
+#: ../portal/index.php:152
+#, php-format
+msgid "%s portal for %s"
+msgstr "%s portal de %s"
+
+#: ../portal/index.php:162
+msgid ""
+"You NEED to confirm your account.  An email with confirmation instructions "
+"was sent to your email address.  If you don't see it in your inbox, make "
+"sure to look in your spam folder."
+msgstr ""
+"NECESSITES activar el teu compte. Em enviat un correu electrònic amb les "
+"instruccions a la teva adreça. Si no el trobes a la safata d'entrada, "
+"consulta la carpeta de correu brossa."
+
+#: ../portal/index.php:224
+msgid "Show all available contents for this hotspot"
+msgstr "Mostra tot el contingut disponible en aquest hotspot"
+
+#: ../classes/StatisticGraph/RegistrationsPerMonth.php:62
+msgid "Number of validated user registration for the selected network(s)"
+msgstr "Nombre de registres d'usuaris validats per a les xarxes seleccionades"
+
+#: ../classes/StatisticGraph/RegistrationsCumulative.php:62
+msgid "Cumulative number of validated users for the selected network(s)"
+msgstr "Nombre acumulat d'usuaris validats a les xarxes seleccionades"
+
+#: ../classes/StatisticGraph/VisitsPerMonth.php:62
+msgid "Number of individual user visits per month"
+msgstr "Nombre de visites úniques per mes"
+
+#: ../classes/StatisticGraph/VisitsPerMonth.php:82
+#: ../classes/StatisticGraph/VisitsPerWeekday.php:82
+#: ../classes/StatisticReport/MostPopularNodes.php:135
+msgid ""
+"Note:  A visit is like counting connections, but only counting one "
+"connection per day for each user at a single node"
+msgstr ""
+"Nota: Una visita és com contar connexions, però únicament una connexió per "
+"dia per cada usuari a cada node"
+
+#: ../classes/StatisticGraph/VisitsPerWeekday.php:62
+msgid "Number of individual user visits per weekday"
+msgstr "Nombre de visites d'usuaris únics per dia de la setmana"
+
+#: ../classes/StatisticGraph/ConnectionsPerHour.php:62
+msgid "Number of new connections opening per hour of the day"
+msgstr "Nombre de noves connexions creades per hora del dia"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:117
+#, fuzzy, php-format
+msgid "Fatal error:  Username cannot be empty"
+msgstr "L'URL no pot romandre buit!"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:132
+#: ../classes/Authenticators/AuthenticatorLDAP.php:257
+#: ../classes/Authenticators/AuthenticatorLDAP.php:267
+#: ../classes/Authenticators/AuthenticatorRadius.php:263
+#: ../classes/Authenticators/AuthenticatorRadius.php:283
+msgid "Login successfull"
+msgstr "S'ha iniciat la sessió correctament"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:146
+msgid "Unknown username or email"
+msgstr "No conec aquest nom d'usuari o correu electrònic"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:148
+msgid "Incorrect password (Maybe you have CAPS LOCK on?)"
+msgstr "Contrasenya incorrecta (Potser tens les majúscules activades)"
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:167
+#: ../classes/Authenticators/AuthenticatorLDAP.php:172
+msgid "Error while connecting to the LDAP server."
+msgstr "S'ha produït un error al connectar amb el servidor LDAP."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:179
+msgid "Error while obtaining your LDAP information."
+msgstr "S'ha produït un error en intentar obtenir la teva informació LDAP."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:185
+#: ../classes/Authenticators/AuthenticatorLDAP.php:191
+#: ../classes/Authenticators/AuthenticatorLDAP.php:197
+msgid "Error while obtaining your username or password from the LDAP server."
+msgstr ""
+"S'ha produït un error en intentar obtenir el vostre nom d'usuari o "
+"contrasenya del servidor LDAP."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:204
+msgid "Error in username or password."
+msgstr "Error amb l'usuari o amb la contrasenya."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:211
+msgid "Error connecting to the LDAP Server."
+msgstr "Error al connectar amb el servidor LDAP."
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:202
+msgid "Invalid RADIUS encryption method."
+msgstr "El mètode d'encriptatge RADIUS no és vàlid."
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:239
+msgid "Could not initiate PEAR RADIUS Auth class : "
+msgstr "No puc iniciar la Clase Auth PEAR RADIUS:"
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:247
+msgid "Failed to send authentication request to the RADIUS server. : "
+msgstr "No puc enviar la petició d'autenticació al servidor RADIUS:"
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:288
+msgid "The RADIUS server rejected this username/password combination."
+msgstr "El servidor RADIUS no accepta aquesta combinació d'usuari/contrasenya"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:65
+#, php-format
+msgid "%d most mobile users"
+msgstr "Els %d usuaris més mòbils"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:97
+#: ../classes/StatisticReport/MostFrequentUsers.php:98
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:98
+msgid "User (username)"
+msgstr "Usuari (nom d'usuari)"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:99
+#: ../classes/StatisticReport/MostFrequentUsers.php:100
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:100
+msgid "User (MAC address)"
+msgstr "Usuari (adreça MAC)"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:101
+msgid "Nodes visited"
+msgstr "Nodes visitats"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:133
+#: ../classes/StatisticReport/UserReport.php:174
+#: ../classes/StatisticReport/MostFrequentUsers.php:133
+#: ../classes/StatisticReport/MostPopularNodes.php:142
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:136
+#: ../classes/StatisticReport/UserRegistrationReport.php:164
+msgid "No information found matching the report configuration"
+msgstr ""
+"No he trobat informació que coincideixi amb la configuració de l'informe"
+
+#: ../classes/StatisticReport/NodeStatus.php:64
+msgid "Node status information"
+msgstr "Informació de l'estat del node"
+
+#: ../classes/StatisticReport/NodeStatus.php:87
+msgid "Sorry, this report requires you to select individual nodes"
+msgstr "Ho sento, aquest informe necessita que seleccionis nodes individuals"
+
+#: ../classes/StatisticReport/NodeStatus.php:99
+#: ../classes/DependenciesList.php:137 smarty.txt:5
+msgid "Status"
+msgstr "Estat"
+
+#: ../classes/StatisticReport/NodeStatus.php:105
+msgid "WifiDog status"
+msgstr "Estat de WifiDog"
+
+#: ../classes/StatisticReport/NodeStatus.php:110
+msgid "Last heartbeat"
+msgstr "Última actualització de l'estat"
+
+#: ../classes/StatisticReport/NodeStatus.php:111
+#, php-format
+msgid "%s ago"
+msgstr "fa %s"
+
+#: ../classes/StatisticReport/NodeStatus.php:115
+msgid "WifiDog version"
+msgstr "Versió de WifiDog"
+
+#: ../classes/StatisticReport/NodeStatus.php:119
+msgid "WifiDog uptime"
+msgstr "Temps actiu de Wifidog"
+
+#: ../classes/StatisticReport/NodeStatus.php:123
+msgid "System uptime"
+msgstr "Temps en servei del sistema"
+
+#: ../classes/StatisticReport/NodeStatus.php:127
+msgid "System load"
+msgstr "Carrega del sistema"
+
+#: ../classes/StatisticReport/NodeStatus.php:131
+msgid "System free memory"
+msgstr "Memoria lliure del sistema"
+
+#: ../classes/StatisticReport/NodeStatus.php:135
+msgid "IP Address"
+msgstr "Adreça IP"
+
+#: ../classes/StatisticReport/NodeStatus.php:139
+msgid "Number of users online"
+msgstr "Nombre d'usuaris connectats"
+
+#: ../classes/StatisticReport/NodeStatus.php:148
+#: ../classes/StatisticReport/UserReport.php:117 ../classes/Profile.php:357
+msgid "Profile"
+msgstr "Perfil"
+
+#: ../classes/StatisticReport/NodeStatus.php:152
+#: ../classes/StatisticReport/NetworkStatus.php:99 ../classes/Node.php:1199
+#: ../classes/Node.php:1204 smarty.txt:8
+msgid "Name"
+msgstr "Nom"
+
+#: ../classes/StatisticReport/NodeStatus.php:156
+msgid "Node ID"
+msgstr "ID del Node"
+
+#: ../classes/StatisticReport/NodeStatus.php:160 ../classes/Node.php:380
+msgid "Deployment Status"
+msgstr "Estat de la instal·lació"
+
+#: ../classes/StatisticReport/NodeStatus.php:164
+msgid "Deployment date"
+msgstr "Data d'instal·lació "
+
+#: ../classes/StatisticReport/NodeStatus.php:168 ../classes/Content.php:925
+#: ../classes/Node.php:1223 ../classes/DependenciesList.php:175 smarty.txt:68
+msgid "Description"
+msgstr "Descripció"
+
+#: ../classes/StatisticReport/NodeStatus.php:172
+#: ../classes/StatisticReport/UserReport.php:132 smarty.txt:129
+msgid "Network"
+msgstr "Xarxa"
+
+#: ../classes/StatisticReport/NodeStatus.php:176
+msgid "GIS Location"
+msgstr "Localització GIS"
+
+#: ../classes/StatisticReport/NodeStatus.php:181 ../classes/Network.php:1041
+#: smarty.txt:73
+msgid "Map"
+msgstr "Mapa"
+
+#: ../classes/StatisticReport/NodeStatus.php:185
+msgid "NOT SET"
+msgstr "SENSE CONFIGURAR"
+
+#: ../classes/StatisticReport/NodeStatus.php:194
+#: ../classes/NodeLists/NodeListRSS.php:324
+#: ../classes/NodeLists/NodeListPDF.php:1083
+#: ../classes/NodeLists/NodeListKML.php:238
+msgid "Address"
+msgstr "Adreça"
+
+#: ../classes/StatisticReport/NodeStatus.php:202
+#: ../classes/NodeLists/NodeListPDF.php:1083
+msgid "Telephone"
+msgstr "Telèfon"
+
+#: ../classes/StatisticReport/NodeStatus.php:206
+#: ../classes/StatisticReport/UserReport.php:127
+#: ../classes/NodeLists/NodeListPDF.php:1083
+#: ../classes/NodeLists/NodeListKML.php:241
+msgid "Email"
+msgstr "Correu electrònic"
+
+#: ../classes/StatisticReport/NodeStatus.php:210
+msgid "Transit Info"
+msgstr "Informació de tràfic"
+
+#: ../classes/StatisticReport/NodeStatus.php:220 ../classes/User.php:1058
+#: ../classes/Node.php:1164 smarty.txt:16
+msgid "Statistics"
+msgstr "Estadístiques"
+
+#: ../classes/StatisticReport/NodeStatus.php:225
+msgid "Average visits per day"
+msgstr "Mitjana de visites diàries"
+
+#: ../classes/StatisticReport/NodeStatus.php:226
+#: ../classes/StatisticReport/NodeStatus.php:237
+msgid "(for the selected period)"
+msgstr "(pel període seleccionat)"
+
+#: ../classes/StatisticReport/NodeStatus.php:231
+msgid "Traffic"
+msgstr "Tràfic"
+
+#: ../classes/StatisticReport/NodeStatus.php:233
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:102
+msgid "Incoming"
+msgstr "D'entrada"
+
+#: ../classes/StatisticReport/NodeStatus.php:235
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:103
+msgid "Outgoing"
+msgstr "De sortida"
+
+#: ../classes/StatisticReport/UserReport.php:64
+msgid "Individual user report"
+msgstr "Informe per usuari individual"
+
+#: ../classes/StatisticReport/UserReport.php:111 ../classes/User.php:259
+#, php-format
+msgid "User id: %s could not be found in the database"
+msgstr "ID d'usuari: %s no el trobo a la base de dades"
+
+#: ../classes/StatisticReport/UserReport.php:122
+#: ../classes/StatisticReport/UserReport.php:284
+#: ../classes/StatisticReport/RegistrationLog.php:123
+#: ../classes/StatisticReport/ConnectionLog.php:115
+#: ../classes/StatisticReport/ConnectionLog.php:164 ../classes/User.php:810
+#: ../classes/User.php:815 ../classes/User.php:864 smarty.txt:128
+#: smarty.txt:134
+msgid "Username"
+msgstr "Nom d'usuari"
+
+#: ../classes/StatisticReport/UserReport.php:137
+msgid "Unique ID"
+msgstr "ID única"
+
+#: ../classes/StatisticReport/UserReport.php:142
+msgid "Member since"
+msgstr "Membre des de"
+
+#: ../classes/StatisticReport/UserReport.php:147 ../classes/User.php:852
+#: smarty.txt:131
+msgid "Account Status"
+msgstr "Estat del compte"
+
+#: ../classes/StatisticReport/UserReport.php:152
+msgid "Prefered Locale"
+msgstr "Locale preferit"
+
+#: ../classes/StatisticReport/UserReport.php:165
+#, php-format
+msgid "%d Connections"
+msgstr "%d Connexions"
+
+#: ../classes/StatisticReport/UserReport.php:179
+msgid "Logged in"
+msgstr "Sessió iniciada"
+
+#: ../classes/StatisticReport/UserReport.php:180
+#: ../classes/StatisticReport/ConnectionLog.php:167
+msgid "Time spent"
+msgstr "Temps emprat"
+
+#: ../classes/StatisticReport/UserReport.php:181
+msgid "Token status"
+msgstr "Estat del testimoni"
+
+#: ../classes/StatisticReport/UserReport.php:183
+msgid "IP"
+msgstr "IP"
+
+#: ../classes/StatisticReport/UserReport.php:184
+msgid "D"
+msgstr "D"
+
+#: ../classes/StatisticReport/UserReport.php:185
+msgid "U"
+msgstr "U"
+
+#: ../classes/StatisticReport/UserReport.php:212
+msgid "N/A"
+msgstr "N/D"
+
+#: ../classes/StatisticReport/UserReport.php:223
+#: ../classes/StatisticReport/RegistrationLog.php:162
+#: ../classes/StatisticReport/MostPopularNodes.php:131
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:104
+#: ../classes/StatisticReport/UserRegistrationReport.php:153
+msgid "Total"
+msgstr "Total"
+
+#: ../classes/StatisticReport/UserReport.php:244
+#, php-format
+msgid "%d MAC addresses"
+msgstr "%d adreces MAC"
+
+#: ../classes/StatisticReport/UserReport.php:248
+#: ../classes/StatisticReport/ConnectionLog.php:165
+msgid "MAC"
+msgstr "MAC"
+
+#: ../classes/StatisticReport/UserReport.php:249
+#: ../classes/StatisticReport/UserReport.php:285
+#: ../classes/StatisticReport/ContentReport.php:115
+msgid "Count"
+msgstr "Compte"
+
+#: ../classes/StatisticReport/UserReport.php:280
+#, php-format
+msgid "%d users"
+msgstr "%d usuaris"
+
+#: ../classes/StatisticReport/MostFrequentUsers.php:66
+#, php-format
+msgid "%d most frequent users"
+msgstr "%d usuaris més frequents"
+
+#: ../classes/StatisticReport/MostFrequentUsers.php:102
+msgid "Different days connected"
+msgstr "Diferents dies connectat"
+
+#: ../classes/StatisticReport/RegistrationLog.php:64
+msgid "Registration Log (New user's first connection)"
+msgstr "Registre de registre (Primera connexió de nous usuaris)"
+
+#: ../classes/StatisticReport/RegistrationLog.php:116
+msgid "Users who signed up here"
+msgstr "Usuaris que s'enregistraren aquí"
+
+#: ../classes/StatisticReport/RegistrationLog.php:127
+msgid "MAC address"
+msgstr "Adreça MAC"
+
+#: ../classes/StatisticReport/RegistrationLog.php:130
+msgid "Registration date"
+msgstr "Data de registre"
+
+#: ../classes/StatisticReport/NetworkStatus.php:64
+msgid "Network status information"
+msgstr "Informació de l'estat de la xarxa"
+
+#: ../classes/StatisticReport/NetworkStatus.php:87
+msgid "Sorry, this report requires you to select individual networks"
+msgstr "Ho sento, aquest informe necessita que seleccionis una xarxa"
+
+#: ../classes/StatisticReport/NetworkStatus.php:104
+#: ../classes/VirtualHost.php:603 ../classes/Server.php:246
+#: ../classes/Node.php:1210 ../classes/ProfileTemplate.php:512
+#: ../classes/Role.php:369
+msgid "Creation date"
+msgstr "Data de creació"
+
+#: ../classes/StatisticReport/NetworkStatus.php:114
+msgid "Tech support email"
+msgstr "Correu electrònic d'assistència tècnica"
+
+#: ../classes/StatisticReport/NetworkStatus.php:119
+msgid "Validation grace time"
+msgstr "Temps de gràcia per la validació"
+
+#: ../classes/StatisticReport/NetworkStatus.php:124
+msgid "Validation email"
+msgstr "Correu electrònic de validació"
+
+#: ../classes/StatisticReport/NetworkStatus.php:129
+msgid "Allows multiple login"
+msgstr "Permetre accessos simultanis"
+
+#: ../classes/StatisticReport/NetworkStatus.php:134
+msgid "Splash only nodes allowed"
+msgstr "Permetre nodes sense validació d'usuari"
+
+#: ../classes/StatisticReport/NetworkStatus.php:139
+msgid "Custom portal redirect nodes allowed"
+msgstr "Permetre nodes amb redirecció a portals personalitzats"
+
+#: ../classes/StatisticReport/NetworkStatus.php:144
+msgid "Number of users"
+msgstr "Nombre d'usuaris"
+
+#: ../classes/StatisticReport/NetworkStatus.php:149
+msgid "Number of validated users"
+msgstr "Nombre d'usuaris validats"
+
+#: ../classes/StatisticReport/NetworkStatus.php:154
+msgid "Number of users currently online"
+msgstr "Nombre d'usuaris connectats"
+
+#: ../classes/StatisticReport/MostPopularNodes.php:65
+msgid "Most popular nodes, by visit"
+msgstr "Nodes més populars per visites"
+
+#: ../classes/StatisticReport/MostPopularNodes.php:110
+msgid "Visits"
+msgstr "Visites"
+
+#: ../classes/StatisticReport/ConnectionLog.php:64
+msgid "Connection Log"
+msgstr "Registre de connexions"
+
+#: ../classes/StatisticReport/ConnectionLog.php:89
+#: ../classes/StatisticReport/AnonymisedDataExport.php:97
+#: ../classes/VirtualHost.php:403 ../classes/VirtualHost.php:735
+#: ../classes/ProfileTemplate.php:602 ../classes/ContentTypeFilter.php:254
+#: ../classes/ContentTypeFilter.php:439
+msgid "Access denied"
+msgstr "Accés denegat"
+
+#: ../classes/StatisticReport/ConnectionLog.php:109
+msgid "Number of unique Users:"
+msgstr "Noms d'usuari únics:"
+
+#: ../classes/StatisticReport/ConnectionLog.php:116
+msgid "MAC Count"
+msgstr "Total de MACs"
+
+#: ../classes/StatisticReport/ConnectionLog.php:124
+msgid "Cx Count"
+msgstr "Total de Cx"
+
+#: ../classes/StatisticReport/ConnectionLog.php:125
+msgid "Last seen"
+msgstr "Vis per últim cop"
+
+#: ../classes/StatisticReport/ConnectionLog.php:159
+msgid "Number of non-unique connections:"
+msgstr "Nombre de connexions no úniques"
+
+#: ../classes/StatisticReport/ConnectionLog.php:163
+msgid "Node name"
+msgstr "Nom del node"
+
+#: ../classes/StatisticReport/ConnectionLog.php:166
+msgid "Date"
+msgstr "Data"
+
+#: ../classes/StatisticReport/ConnectionLog.php:192
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:119
+msgid "Unknown"
+msgstr "Desconegut"
+
+#: ../classes/StatisticReport/ConnectionGraphs.php:62
+msgid "Graph on network use per hour, weekday and month"
+msgstr "Gràfic d'us de la xarxa per dia, setmana i mes"
+
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:65
+#, php-format
+msgid "%d highest bandwidth consumers"
+msgstr "Els %d majors consumidors d'ample de banda"
+
+#: ../classes/StatisticReport/ContentReport.php:63
+msgid "Content display and clickthrough report"
+msgstr "Visualització del contingut i clic d'entrada a l'informe"
+
+#: ../classes/StatisticReport/ContentReport.php:98
+msgid "Untitled Content"
+msgstr "Contingut sense títol"
+
+#: ../classes/StatisticReport/ContentReport.php:100
+msgid "Content report for:"
+msgstr "Informe de contingut per:"
+
+#: ../classes/StatisticReport/ContentReport.php:104
+msgid "Clickthrough"
+msgstr "Clic d'entrada"
+
+#: ../classes/StatisticReport/ContentReport.php:105
+msgid "Prints"
+msgstr "Impressions"
+
+#: ../classes/StatisticReport/ContentReport.php:106
+msgid "Clickthrough/Prints"
+msgstr "Clic d'entrada/Impressions"
+
+#: ../classes/StatisticReport/ContentReport.php:126
+msgid "First"
+msgstr "Primer"
+
+#: ../classes/StatisticReport/ContentReport.php:133
+msgid "Last"
+msgstr "Últim"
+
+#: ../classes/StatisticReport/ContentReport.php:141
+msgid "Rate"
+msgstr "Velocitat"
+
+#: ../classes/StatisticReport/ContentReport.php:143
+#: ../classes/StatisticReport/ContentReport.php:149
+#, php-format
+msgid "%0.2f per day"
+msgstr "%0.2f per dia"
+
+#: ../classes/StatisticReport/ContentReport.php:157
+msgid "Unique users"
+msgstr "Usuaris únics"
+
+#: ../classes/StatisticReport/ContentReport.php:168
+msgid "Unique locations"
+msgstr "Localitzacions úniques"
+
+#: ../classes/StatisticReport/ContentReport.php:203
+msgid "Content group elements report"
+msgstr "Informe d'agrupacions de contiguts"
+
+#: ../classes/StatisticReport/ContentReport.php:206
+msgid "Element # of prints"
+msgstr "Nombre # d'imatges"
+
+#: ../classes/StatisticReport/ContentReport.php:207
+msgid "Displayed content report"
+msgstr "Informe del contingut mostrat"
+
+#: ../classes/StatisticReport/ContentReport.php:233
+msgid ""
+"Note:  The statistics above include all the prints and clickthroughs of the "
+"displayed element, not just those resulting from it's display in this group."
+msgstr ""
+"Nota: Les estadístiques d'amunt inclouen les impressions i els clics "
+"d'entrada del contingut mostrat, no aquelles resultants de les impressions "
+"en aquest grup."
+
+#: ../classes/StatisticReport/ContentReport.php:309
+msgid ""
+"Important note:  Currently, Report configuration options are ignored for "
+"this report."
+msgstr ""
+"Nota important: Actualment, la configuració dels informes són ignorades en "
+"aquest informe."
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:62
+msgid "User registration report"
+msgstr "Informe de registre d'usuaris"
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:94
+msgid "First connection per node"
+msgstr "Primera connexió per node"
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:132
+msgid "# of new user first connection"
+msgstr "# de primera connexió de nous usuaris"
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:157
+msgid ""
+"Note:  This is actually a list of how many new user's first connection "
+"occured at each hotspot, taking report restrictions into account.  It "
+"includes non-validated users who successfully connected."
+msgstr ""
+"Nota: Aquesta és, realment, la llista de quantes primeres connexions "
+"d'usuaris hi ha hagut a cada hotspot considerant les restriccions dels "
+"informes. Inclou els usuaris sense validar que s'han connectat amb èxit."
+
+#: ../classes/StatisticReport/AnonymisedDataExport.php:65
+msgid "Anonymised SQL data export (for academic research)"
+msgstr ""
+"Exportar les dades SQL sense dades personals (per la recerca acadèmica)"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:62
+msgid "Breakdown of how many users actually use the network"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:85
+msgid "User activity"
+msgstr "Activitat de l'usuari"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:94
+msgid "Last day"
+msgstr "El darrer dia"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:95
+msgid "Last week"
+msgstr "La darrera setmana"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:96
+msgid "Last month"
+msgstr "El darrer mes"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:97
+msgid "Last 3 month"
+msgstr "Els darrers 3 mesos"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:98
+msgid "Last 6 months"
+msgstr "Els darrers 6 mesos"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:99
+msgid "Last year"
+msgstr "El darrer any"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:100
+msgid "Ever"
+msgstr "Sempre"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:138
+#, php-format
+msgid "Activity report for the %d validated users"
+msgstr "Informe d'activitat dels %d usuaris validats"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:141
+#: ../classes/StatisticReport/ActiveUserReport.php:172
+msgid "Period"
+msgstr "Període"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:142
+#: ../classes/StatisticReport/ActiveUserReport.php:173
+msgid "# of users who used the network"
+msgstr "# usuaris han emprat la xarxa"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:169
+#, php-format
+msgid "Activity report for the %d non-validated users"
+msgstr "Informe d'activitat dels %d usuaris no-validats"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:198
+msgid "warning:  This report does not count connections at Splash-Only nodes"
+msgstr ""
+"advertència: Aquest informe no conta les connexions als nodes sense sortida"
+
+#: ../classes/NodeLists/NodeListRSS.php:157
+#: ../classes/NodeLists/NodeListHTML.php:221
+msgid "Newest Hotspots"
+msgstr "Els Hotspots més recents"
+
+#: ../classes/NodeLists/NodeListRSS.php:169
+msgid "List of the most recent Hotspots opened by the network: "
+msgstr "Llista dels últims Hotspots instal·lats a la xarxa:"
+
+#: ../classes/NodeLists/NodeListRSS.php:190
+msgid "Copyright "
+msgstr "Copyright "
+
+#: ../classes/NodeLists/NodeListRSS.php:358
+msgid "See Map"
+msgstr "Veure Mapa"
+
+#: ../classes/NodeLists/NodeListRSS.php:371
+msgid "Contact"
+msgstr "Contacte"
+
+#: ../classes/NodeLists/NodeListHTML.php:220
+msgid "Hotspot list"
+msgstr "LLista de Hotspots"
+
+#: ../classes/NodeLists/NodeListPDF.php:792
+msgid ""
+"To protect the server the PDF file has not been created, because the server "
+"is too busy right now!"
+msgstr ""
+"No he creat l'arxiu PDF per a protegir el servidor, a hores d'ara el "
+"servidor es troba molt ocupat!"
+
+#: ../classes/NodeLists/NodeListPDF.php:958
+#: ../classes/NodeLists/NodeListPDF.php:959
+#: ../classes/NodeLists/NodeListPDF.php:961
+#: ../classes/NodeLists/NodeListPDF.php:1039
+msgid "Hotspots"
+msgstr "Hotspots"
+
+#: ../classes/NodeLists/NodeListPDF.php:1048
+msgid "street name"
+msgstr "nom del carrer"
+
+#: ../classes/NodeLists/NodeListPDF.php:1052
+msgid "postal code"
+msgstr "codi postal"
+
+#: ../classes/NodeLists/NodeListPDF.php:1056
+msgid "city"
+msgstr "ciutat"
+
+#: ../classes/NodeLists/NodeListPDF.php:1060
+msgid "name"
+msgstr "nom"
+
+#: ../classes/NodeLists/NodeListPDF.php:1065
+#, php-format
+msgid "This list contains all Hotspots of %s sorted by %s."
+msgstr "Aquesta llista conté tots els Hotspots %s ordenats per %s"
+
+#: ../classes/NodeLists/NodeListPDF.php:1068
+#, php-format
+msgid "Number of Hotspots: %d"
+msgstr "Nombre de Hotspots: %d"
+
+#: ../classes/NodeLists/NodeListPDF.php:1071
+#, php-format
+msgid "Last updated on: %s"
+msgstr "Última actualització a: %s"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083
+msgid "Hotspot"
+msgstr "Hotspot"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1249
+msgid "Postal code"
+msgstr "Codi postal"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1239
+msgid "City"
+msgstr "Ciutat"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1244
+msgid "Province / State"
+msgstr "Província / Estat"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1269
+msgid "Homepage URL"
+msgstr "URL de la pàgina d'inici"
+
+#: ../classes/NodeLists/NodeListPDF.php:1093
+msgid "PDF file cannot be created because the FPDF library is not installed!"
+msgstr ""
+"No puc crear l'arxiu PDF perquè la biblioteca FPDF no es troba instal·lada!"
+
+#: ../classes/NodeLists/NodeListKML.php:240
+#: ../classes/Content/RssAggregator/RssAggregator.php:752
+msgid "URL"
+msgstr "URL"
+
+#: ../classes/Content/File/File.php:131
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:131
+#: ../classes/Content/IFrame/IFrame.php:89
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:92
+#: ../classes/Content/ContentGroup/ContentGroup.php:115
+#: ../classes/Content/Picture/Picture.php:103 ../classes/Content.php:124
+#: ../classes/Content.php:275
+msgid "The content with the following id could not be found in the database: "
+msgstr "No he trobat el contingut amb el següent ID a la base de dades:"
+
+#: ../classes/Content/File/File.php:206
+msgid "File size exceeds limit specified in PHP.ini"
+msgstr "La mida de l'arxiu excedeix el límit especificat a l'arxiu PHP.ini"
+
+#: ../classes/Content/File/File.php:210
+msgid "File size exceeds limit specified HTML form"
+msgstr "La mida de l'arxiu excedeix el límit especificat al formulari HTML"
+
+#: ../classes/Content/File/File.php:214
+msgid "File upload was interrupted"
+msgstr "La penjada de l'arxiu fou interrompuda"
+
+#: ../classes/Content/File/File.php:218
+msgid "Missing temp folder"
+msgstr "Falta el directori temp"
+
+#: ../classes/Content/File/File.php:496
+msgid "Upload a new file (Uploading a new one will replace any existing file)"
+msgstr ""
+"Penjar un nou arxiu (L'arxiu penjat substituirà qualsevol fitxer existent)"
+
+#: ../classes/Content/File/File.php:505
+msgid "Remote file via URL"
+msgstr "Arxiu remot via URL"
+
+#: ../classes/Content/File/File.php:522
+msgid "File URL"
+msgstr "URL de l'arxiu"
+
+#: ../classes/Content/File/File.php:532
+msgid "Filename to display"
+msgstr "Nom de l'arxiu a visualitzar"
+
+#: ../classes/Content/File/File.php:544
+msgid "MIME type"
+msgstr "Tipus MIME"
+
+#: ../classes/Content/File/File.php:553
+msgid "Locally stored file size"
+msgstr "Mida de l'arxiu emmagatzemat localment"
+
+#: ../classes/Content/File/File.php:554 ../classes/Content/File/File.php:653
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:354
+msgid "KB"
+msgstr "KB"
+
+#: ../classes/Content/File/File.php:560
+msgid "Remote file size (Automatically converted from KB to Bytes)"
+msgstr "Mida de l'arxiu remot (Automàticament convertit de KB a Bytes)"
+
+#: ../classes/Content/File/File.php:569 ../classes/Content/File/File.php:660
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:354
+msgid "Download"
+msgstr "Baixar"
+
+#: ../classes/Content/File/File.php:570
+msgid "Last update"
+msgstr "Última actualització"
+
+#: ../classes/Content/File/File.php:708
+msgid "Could not delete this file, since it is persistent"
+msgstr "No puc esborrar aquest arxiu, ja que és persistent"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:198
+msgid "Illegal Flickr Photostream selection mode."
+msgstr "El mode de selecció del flux de fotos de Flickr no és vàlid"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:238
+msgid "Illegal Flickr Photostream display mode."
+msgstr "El mode de visulització del flux de fotos de Flickr no és vàlid."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:441
+#, php-format
+msgid "%s: Options"
+msgstr "%s: Opcions"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:448
+msgid "Flickr API key"
+msgstr "Clau API de Flickr"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:456
+msgid "Shared secret"
+msgstr "Clau compartida"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:464
+msgid "Photos display mode"
+msgstr "Mode de visualització de les fotos"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:466
+msgid "Grid display"
+msgstr "Mostrar en graella"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:466
+msgid "Feature photo (last one)"
+msgstr "Foto principal (l'última)"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:466
+msgid "Feature photo + one at random"
+msgstr "Foto principal + una a l'atzar"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:472
+msgid "Flick photo selection mode :"
+msgstr "Mode de selecció de les fotografies a Flickr:"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:475
+msgid "Select by group"
+msgstr "Selecciona per agrupacions"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:475
+msgid "Select by tags"
+msgstr "Selecciona per marcador"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:475
+msgid "Select by user"
+msgstr "Selecciona per usuari"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:491
+msgid "Flickr User ID + Username"
+msgstr "ID de l'usuari de Flickr + Nom d'usuari"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:495
+msgid "Reset Flickr User ID"
+msgstr "Reinicialitza l'ID de l'usuari de Flickr"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:502
+msgid "Flickr User E-mail"
+msgstr "Correu electrònic de l'usuari de Flickr"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:518
+msgid "Group Photo Pool"
+msgstr "Bateria d'agrupacions de fotografies"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:531
+msgid "Could not find any group photo pool."
+msgstr "No puc trobat cap bateria d'agrupacions de fotografies"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:539
+msgid "Tags (comma-separated)"
+msgstr "Marcadors (separats amb comes)"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:543
+msgid "Match any tag"
+msgstr "Coincideix qualsevol etiqueta"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:543
+msgid "Match all tags"
+msgstr "Coincideixen tots el marcadors"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:551
+msgid "Flickr photo display options"
+msgstr "Opcions de visualització de les fotografies a Flickr"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:555
+msgid "Show Flickr photo title ?"
+msgstr "Mostrar el títol a Flickr de la fotografia?"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:564
+msgid "Show Flickr tags ?"
+msgstr "Mostrar els marcadors de Flickr?"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:573
+msgid "Show Flickr photo description ?"
+msgstr "Mostrar la descripció a Flickr de la fotografia?"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:582
+msgid "Preferred size"
+msgstr "Mida preferida"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Squared 75x75"
+msgstr "Cuadrat 75x75"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Thumbnail 100x75"
+msgstr "Miniatura 100x75"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Small 240x180"
+msgstr "Petit 241x180"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Medium 500x375"
+msgstr "Mitjà 500x375"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Large 1024x*"
+msgstr "Gran 1024x*"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Original size"
+msgstr "Mida original"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:596
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:852
+#, fuzzy, php-format
+msgid "Unable to connect to Flickr API: %s"
+msgstr "No puc connectar amb l'API de Flickr"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:600
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:856
+msgid "Some of the request parameters provided to Flickr API are invalid."
+msgstr ""
+"Alguns paràmetres de cerca proporcionats a l'API de Flickr no són vàlids."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:604
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:861
+msgid "Unable to parse Flickr's response."
+msgstr "No puc analitzar la resposta de Flickr."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:608
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:865
+msgid "Could not get content from Flickr : "
+msgstr "No puc obtenir els contiguts de Flickr:"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:614
+msgid "YOU MUST SPECIFY AN API KEY BEFORE YOU CAN GO ON."
+msgstr "HAS D'ESPECIFICAR UNA CLAU D'API ABANS DE CONTINUAR"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:620
+msgid "PEAR::Phlickr or PHP mudule CURL is not installed"
+msgstr ""
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:673
+msgid "Could not find a Flickr user with this e-mail."
+msgstr "No trobo cap usuari de Flickr amb aquest correu electrònic."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:689
+msgid "Could not complete successfully the saving procedure."
+msgstr "No puc completar amb èxit el procés de desar."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:847
+msgid "No Flickr content matches the request !"
+msgstr "Cap contigut Flickr coincideix amb el sol·licitat!"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:872
+msgid "PEAR::Phlickr is not installed"
+msgstr "PEAR::Phlickr no es troba instal·lat"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:119
+msgid "Actual URL after substitution"
+msgstr "URL real després de la subtitució"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:122
+msgid ""
+"The IFrameRest content type is meant to allow the result of REST-style "
+"queries to remote systems to be displayed in a IFrame.  To that end, The "
+"following strings will be replaced in the URL:"
+msgstr ""
+"El contingut tipus IFrameRest és present per permetre que el resultat de les "
+"cerques REST-style fetes a sistemes remots es mostrin en un IFrame. Amb "
+"aquest objectiu, les següents cadenes seran incorporades a l'URL:"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:128
+msgid ""
+"Will be replaced by the urlencoded node_id of the node\n"
+"                    where the content is displayed, or an empty string if "
+"there is no\n"
+"                    current node</td></tr>"
+msgstr ""
+"Serà reemplaçat pel url codificat del node_ide del node\n"
+"                    on el contingut es mostra, o una cadena buida si no "
+"existeix\n"
+"                    el node actual</td></tr>"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:133
+msgid "Will be replaced by the user_id"
+msgstr "Serà reemplaçat per un ID d'usuari"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:137
+msgid ""
+"will be replaced by a ISO-8601 timestamp of the date the user was last shown "
+"this content, or an empty string if the user was never presented with this "
+"IFrame."
+msgstr ""
+"serà reemplaçada per la marca horària ISO-8601 en que l'usuari visità aquest "
+"contingut per última vegada, o per una cadena buida si l'usuari mai l'ha "
+"visualitzat amb aquest IFrame."
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:102
+msgid "Subscribe to Pattern Language"
+msgstr "Subscriure's als Patrons de Llenguatge"
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:103
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:118
+msgid "Read narratives archives"
+msgstr "Llegir els arxius de narratives"
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:117
+msgid "Read my narrative"
+msgstr "Llegir la meva narrativa"
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:119
+msgid "Unsubscribe"
+msgstr "Cancel·lar la subscripció"
+
+#: ../classes/Content/IFrame/IFrame.php:231
+msgid "Width (suggested width is 600 (pixels))"
+msgstr "Amplada (l'amplada recomanada és de 600 (píxels))"
+
+#: ../classes/Content/IFrame/IFrame.php:240
+msgid "Height (suggested width is 400 (pixels))"
+msgstr "Alçada (l'alçada recomanada és de 400 (píxels))"
+
+#: ../classes/Content/IFrame/IFrame.php:247
+msgid "HTML content URL"
+msgstr "URL del contingut HTML"
+
+#: ../classes/Content/IFrame/IFrame.php:296
+msgid "Your browser does not support IFrames."
+msgstr "El teu navegador no admet IFrames."
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:172
+msgid "Embedded content"
+msgstr "Contingut incrustat"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:190
+msgid "Attributes"
+msgstr "Atributs"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:192
+msgid ""
+"It is recommended to specify at least <b>width='x' height='y'</b> as "
+"attributes"
+msgstr ""
+"Es recomana especificar, com a mínim, <b>width='x' height='y'</b>com atributs"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:198
+msgid "Parameters"
+msgstr "Paràmetres"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:212
+msgid ""
+"Fallback content (Can be another embedded content to create a fallback "
+"hierarchy)"
+msgstr ""
+"Contingut alternatiu (Pot ser un altre contingut incrustat per a crear una "
+"jerarquia alternativa)"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:261
+msgid "You MUST choose a File object or any of its siblings."
+msgstr ""
+"Has de seleccionar un Objecte tipus arxiu o qualsevol del seus germans."
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:397
+#: ../classes/Content/Langstring/Langstring.php:531
+#: ../classes/Content.php:1924
+msgid ""
+"Content is persistent (you must make it non persistent before you can delete "
+"it)"
+msgstr ""
+"El contingut és persistent (has de convertir-ho en no persistent abans "
+"d'esborrar-ho)"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:219
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:225
+msgid "Unable to insert new content group element into database!"
+msgstr "No puc inserir un nou grup de continguts a la base de dades!"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:291
+#, php-format
+msgid "%s %d display conditions"
+msgstr "%s %d condicions per visualitzar"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:301
+msgid "(Ignored if display type is random)"
+msgstr "(Ignorar si el tipus de visualització es a l'atzar)"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:307
+msgid ""
+"Content can be displayed at any date if no start or end date is specified.  "
+"Warning:  If you do not specify a specific time of day, midnight is assumed."
+msgstr ""
+"El contingut pot ésser mostrat a qualsevol data si no s'especifica una data "
+"d'inici i una data de finalització. Si no especifiqueu una hora concreta, "
+"s'assumirà la mitjanit."
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:308
+msgid "Only display from"
+msgstr "Mostrar únicament des de"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:334
+msgid "Only display at node(s):"
+msgstr "Mostrar únicament als nodes:"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:349
+#: ../classes/Content.php:738 ../classes/ProfileTemplate.php:395
+msgid "Remove"
+msgstr "Elimina"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:361
+msgid "Add new allowed node"
+msgstr "Afegir un nou node autoritzat"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:364
+msgid ""
+"(Content can be displayed at ANY node unless one or more nodes are selected)"
+msgstr ""
+"(El contingut pot ser mostrat a QUALSEVOL node si no es seleccionen un o més "
+"nodes)"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:381
+#, php-format
+msgid "%s %d displayed content (%s)"
+msgstr "%s %d contingut mostrat (%s)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:87
+#, fuzzy
+msgid "Pick content elements randomly"
+msgstr "Informe d'agrupacions de contiguts"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:88
+msgid ""
+"Pick content elements randomly, but not twice until all elements have been "
+"seen"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:89
+msgid "Pick content elements in sequential order"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:92
+#, fuzzy
+msgid "Content always rotates"
+msgstr "Filtre per tipus de contingut"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:93
+msgid "Content rotates once per day"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:94
+msgid "Content rotates once per session"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:95
+msgid "Content rotates each time you change node"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:96
+msgid ""
+"Content never rotates.  Usefull when showing all elements simultaneously in "
+"a specific order."
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:99
+#, fuzzy
+msgid "Content can be shown more than once"
+msgstr "Puc mostrar el contingut més d'un cop al mateix usuari?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:100
+msgid "Content can only be shown once"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:101
+#, fuzzy
+msgid "Content can be shown more than once, but not at the same node"
+msgstr "Puc mostrar el contingut més d'un cop al mateix usuari?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:153
+msgid "Invalid content selection mode (must be part of CONTENT_ORDERING_MODES)"
+msgstr ""
+"El mode de selecció de continguts no és vàlid (ha de ser part de "
+"CONTENT_ORDERING_MODES)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:182
+msgid ""
+"Invalid content selection mode (must be part of CONTENT_CHANGES_ON_MODES)"
+msgstr ""
+"El mode de selecció de continguts no és vàlid (ha de ser part de "
+"CONTENT_CHANGES_MODES)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:211
+msgid "Invalid content selection mode (must be part of ALLOW_REPEAT_MODES)"
+msgstr ""
+"El mode de selecció de continguts no és vàlid (ha de ser part de "
+"ALLOW_REPEAT_MODES)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:243
+#: ../classes/Content/RssAggregator/RssAggregator.php:198
+msgid "You must display at least one element"
+msgstr "Has de mostrat com a mínim un element"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:264
+#, php-format
+msgid "%s configuration"
+msgstr "%s configuració"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:268
+msgid "In what order should the content displayed?"
+msgstr "En quin ordre he de mostrar el contingut?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:277
+msgid "When does the content rotate?"
+msgstr "Quan rota el contingut?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:286
+msgid "Can content be shown more than once to the same user?"
+msgstr "Puc mostrar el contingut més d'un cop al mateix usuari?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:295
+msgid "Pick how many elements for each display?"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:310
+#, php-format
+msgid "%s display element list"
+msgstr "%s llista d'elements a mostrar"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:317
+msgid "Show expired group elements"
+msgstr "Mostra els grups d'elements vençuts"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:323
+msgid "Hide expired group elements"
+msgstr "Amaga els grups d'elements vençuts"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:334
+#: ../classes/ProfileTemplate.php:526
+#, php-format
+msgid "%s %d"
+msgstr "%s %d"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:337
+#, php-format
+msgid "Delete %s %d"
+msgstr "Esborra %s %d"
+
+#: ../classes/Content/Langstring/Langstring.php:131
+#, php-format
+msgid "(Empty %s)"
+msgstr "(Buida %s)"
+
+#: ../classes/Content/Langstring/Langstring.php:215
+#: ../classes/Content/Langstring/Langstring.php:341
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:112
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:182 smarty.txt:22
+msgid "Language"
+msgstr "Llengua"
+
+#: ../classes/Content/Langstring/Langstring.php:228
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:145
+msgid "Add new string"
+msgstr "Afegir una nova cadena"
+
+#: ../classes/Content/Langstring/Langstring.php:285
+#: ../classes/Content/SimpleString/SimpleString.php:130
+msgid "Only these HTML tags are allowed : "
+msgstr "Els únics marcadors HTML permesos són:"
+
+#: ../classes/Content/Langstring/Langstring.php:352
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:209
+msgid "Delete string"
+msgstr "Esborrar cadena"
+
+#: ../classes/Content/Langstring/Langstring.php:549
+#: ../classes/Content.php:1958
+msgid "Access denied (not owner of content)"
+msgstr "Accés denegat (no ets propietari del contingut)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:114
+msgid ""
+"The RssAggregator content with the following id could not be found in the "
+"database: "
+msgstr ""
+"L'Agregador de canals RSS amb el següent ID no es troba la base de dades:"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:417
+msgid "The maximum age must be a positive integer or null"
+msgstr "L'edat màxima ha de ser un enter positiu o nul."
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:503
+msgid "Total number of items to display (from all feeds)"
+msgstr "Nombre total d'elements que es mostraran (de tots els canals)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:518
+msgid ""
+"How much bonus feeds that do not publish as often get over feed that publish "
+"more often.\n"
+"                                            The default is 0.75, with a "
+"typical range between 0 and 1.\n"
+"                                            At 0, you have a classic RSS "
+"aggregator, meaning the n most recent entries picked from all feeds\n"
+"                                            will be displayed. 1 is usually "
+"as high as you'll want to go:  Assuming that all feeds have \n"
+"                                            an homogenous internal "
+"distribution (ex:  one feed publishes exactly one entry a day, the\n"
+"                                            second once every two days, and "
+"the third once every three days), and you ask for 15 entries,\n"
+"                                            there will be 5 of each.  While "
+"that may not sound usefull, it still is, as the feed's distribution is\n"
+"                                            usually not homogenous."
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:526
+msgid "Algorithm Strength"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:542
+msgid ""
+"Set the criteria that determines which feed items will be shown expanded by "
+"default."
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:543
+msgid "Feed item expansion criteria"
+msgstr "Criteri d'expansió dels elements del canal"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:557
+msgid ""
+"Set in which order the feeds are displayed, and if items from all source "
+"should be merged together"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:558
+msgid "Item ordering"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:572
+msgid "Display empty feeds?"
+msgstr "Visualitzar canals buits?"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:585
+msgid ""
+"Set the oldest entries (in seconds) you are willing to see.  Any entries "
+"older than this will not\n"
+"                                            be considered at all for "
+"display, even if it means that the configured number of items to be "
+"displayed isn't reached.\n"
+"                                            It's only usefull if all your "
+"feed publish very rarely, and you don't want very old entries to show up."
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:588
+msgid "Maximum age (seconds)"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:596
+msgid "seconds"
+msgstr "segons"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:604
+msgid "Feeds:"
+msgstr "Canals:"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:629
+msgid ""
+"Add a new feed or pick one from the other feeds in the system "
+"(most_popular_first)"
+msgstr ""
+"Afegir un nou canal o seleccionar un dels altres canals que hi ha al sistema "
+"(els més populars primer)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:645
+#, php-format
+msgid "%s, used %d times"
+msgstr "%s, emprat %d vegades"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:651
+msgid "Type URL manually"
+msgstr "Teclegi l'URL manualment"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:654
+#: ../classes/Content.php:545 ../classes/Content.php:967
+#: ../classes/ProfileTemplate.php:327 ../classes/ProfileTemplateField.php:137
+msgid "Add"
+msgstr "Afegir"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:755
+msgid ""
+"WARNING:  Either the feed couldn't be retrieved, or it couldn't be parsed.  "
+"Please double check the URL."
+msgstr ""
+"ADVERTÈNCIA: No puc obtenir el canal o no el puc analitzar. Si us plau, "
+"verifiqueu doblement l'URL"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:775
+#, php-format
+msgid "The feed publishes an item every %.2f day(s)"
+msgstr "El canal publica un element cada %.2f dia(es)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:777
+msgid ""
+"WARNING:  This feed does not include the publication dates.\n"
+"                                                                                                                             The "
+"system needs to be able to compute approximate publication\n"
+"                                                                                                                             date "
+"for each entry, so the entry can be weighted against the\n"
+"                                                                                                                             others. "
+"In order for the aggregator to do a good job, you need\n"
+"                                                                                                                             to "
+"estimate fublication frequency of the items, in days.\n"
+"                                                                                                                             If "
+"unset, defaults to one day."
+msgstr ""
+"ADVERTÈNCIA:  Aquest canal no inclou les dates de publicació.\n"
+"                                                                                                                             El "
+"sistema necessita conèixer la data aproximada de publicació\n"
+"                                                                                                                             de "
+"cada entrada per compar-la amb les altres.\n"
+"                                                                                                                             Per "
+"que l'agregador pugui fer correctament la seva feina \n"
+"                                                                                                                             necessita "
+"calcular la freqüència de publicació en dies.\n"
+"                                                                                                                             Si "
+"no s'estableix, es pren un dia per defecte."
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:803
+msgid ""
+"The bias to be given to the source by the selection algorithm.\n"
+"                                                                                    Bias "
+"must be > 0 , typical values would be between 0.75 and 1.5\n"
+"                                                                                    and "
+"default is 1 (no bias).  A bias of 2 will cause the items\n"
+"                                                                                    to "
+"look twice as recent to the algorithm. A bias of 0.5 to\n"
+"                                                                                    look "
+"twice as old. Be carefull, a bias of 2 will statistically\n"
+"                                                                                    cause "
+"the feed to have MORE than twice as many items displayed."
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:810
+msgid "Algorithm bias for this feed"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:854
+msgid "The bias must be a positive real number"
+msgstr "El bias déu ser un número real positiu"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:882
+msgid "The default publication must must be a positive integer or empty"
+msgstr ""
+"La publicació per defecte déu ser un número enter positiu o romandre buida"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:904
+msgid "The URL cannot be empty!"
+msgstr "L'URL no pot romandre buit!"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:940
+msgid "See more"
+msgstr "Veure més"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:940
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "-"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:942
+#, php-format
+msgid "Could not get RSS feed: %s"
+msgstr "No puc obtenir el canal RSS: %s"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:948
+msgid "RSS support is disabled"
+msgstr "L'us de RSS es troba inhabilitat "
+
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:227
+msgid "FCKeditor is not installed"
+msgstr "FCKeditor no es troba instal·lat"
+
+#: ../classes/Content/Picture/Picture.php:272
+msgid "Hyperlink URL (leave empty if you don't need it)"
+msgstr "URL de l'enllaç (deixa'l buit si no el necessites)"
+
+#: ../classes/Content/Picture/Picture.php:280
+msgid "Width (leave empty if you want to keep original width)"
+msgstr "Ample (buit per a mantenir l'ample original)"
+
+#: ../classes/Content/Picture/Picture.php:287
+msgid "Height (leave empty if you want to keep original height)"
+msgstr "Alçada (buit per a mantenir l'alçada original)"
+
+#: ../classes/Content/Stylesheet/Stylesheet.php:106
+msgid ""
+"Hints:  Note that the order in which Stylesheets are assigned relative to "
+"other content doesn't matter (except relative to other Stylesheets).  "
+"Stylesheets will be linked to the page in the order they are assigned, but "
+"always after the base stylesheet and network theme pack (if applicable).  "
+"They must be written as patches to those stylesheets."
+msgstr ""
+
+#: ../classes/Content/SmartyTemplate/SmartyTemplate.php:85
+#, php-format
+msgid ""
+"To list the available Smarty variables, put %s in the input field, save and "
+"then click preview"
+msgstr ""
+
+#: ../classes/Content/SmartyTemplate/SmartyTemplate.php:86
+#, php-format
+msgid "There are also a few custom Smarty modifiers available: %s"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:82
+msgid "300x250 - IAB Medium Rectangle"
+msgstr "300x250 - IAB Rectangle Mitjà"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:83
+msgid "250x250 - IAB Square Pop-Up"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:84
+msgid "240x400 - IAB Vertical Rectangle"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:85
+msgid "336x280 - IAB Large Rectangle"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:86
+msgid "180x150 - IAB Rectangle"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:88
+msgid "468x60  - IAB Full Banner"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:89
+msgid "234x60  - IAB Half Banner"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:90
+msgid "88x31   - IAB Micro Bar"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:91
+msgid "120x90  - IAB Button 1"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:92
+msgid "120x60  - IAB Button 2"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:93
+msgid "120x240 - IAB Vertical Banner"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:94
+msgid "125x125 - IAB Square Button"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:95
+msgid "728x90  - IAB Leaderboard"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:97
+msgid "160x600 - IAB Wide Skyscraper"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:98
+msgid "120x600 - IAB Skyscraper"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:99
+msgid "300x600 - IAB Half Page Ad"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:128
+msgid "Maximum display size"
+msgstr "Mida màxima de visualització"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:131
+msgid "Use the values below for width and height"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:137
+msgid "Width"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:146
+msgid "Height"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:240
+msgid "Shout button 'onclick=' value (optionnal):"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:247
+#, php-format
+msgid ""
+"Note that the onclick parameter will appear inside double quotes in html.  "
+"They must be properly encoded fot that context.  You can access the shout "
+"text in Javascript with: %s"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:251 ../classes/Content.php:1553
+#: ../classes/Content.php:1572 ../classes/Content.php:1589
+#: ../classes/Content.php:1606 ../classes/Role.php:359
+#: ../classes/ProfileTemplateField.php:444
+#: ../classes/ProfileTemplateField.php:462
+#, php-format
+msgid "Delete %s (%s)"
+msgstr "Esborrar %s (%s)"
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:251
+msgid "onclick parameter"
+msgstr "Paràmetre al fer clic"
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:330
+msgid "Shout!"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:335
+msgid "Sorry, you must be at a hotspot to use the shoutbox"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:346
+#, php-format
+msgid "Last %d messages:"
+msgstr "Els últims %d missatges:"
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:372
+msgid "Sorry, I am unable to determine your current node"
+msgstr ""
+
+#: ../classes/Content/Avatar/Avatar.php:103
+msgid ""
+"Unable to process image (GD probably doesn't have support for it enabled)"
+msgstr ""
+
+#: ../classes/Content/HyperLink/HyperLink.php:95
+msgid "Warning: the URL is invalid!"
+msgstr ""
+
+#: ../classes/Content/HyperLink/HyperLink.php:117
+msgid "(invalid URL)"
+msgstr "(URL no vàlida)"
+
+#: ../classes/Content/UIUserList/UIUserList.php:88
+msgid ""
+"This content type will display a list of online users at the current hotspot."
+msgstr ""
+
+#: ../classes/Content/UIUserList/UIUserList.php:152
+msgid "The online user list must be viewed at a specific node"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:87
+msgid ""
+"This content type will display a a graph of the user's remaining bandwidth "
+"according to dyabuse control rules."
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+#, fuzzy
+msgid "B"
+msgstr "KB"
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "kB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "MB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "GB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "TB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "PB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "EB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "ZB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "YB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:118
+#, php-format
+msgid ""
+"During the last %s period, you transfered %s / %s and were connected %s / %s "
+"at this node.  Throughout the network, you transfered %s / %s and were "
+"connected %s / %s"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:121
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:123
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:125
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:127
+msgid "Unlimited"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:122
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:126
+#, fuzzy
+msgid "None"
+msgstr "Node"
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:132
+#, fuzzy
+msgid "Abuse control is currently disabled"
+msgstr "El seu compte és valid."
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:136
+msgid "Unable to retrieve node specific restrictions (you are not at a node)"
+msgstr ""
+
+#: ../classes/VirtualHost.php:162
+msgid "Server::getAllServers: Fatal error: No servers in the database!"
+msgstr ""
+"Server::getAllServers: Error fatal: No hi ha cap servidor a la base de dades!"
+
+#: ../classes/VirtualHost.php:262 ../classes/Server.php:151
+msgid "Unable to insert the new server in the database!"
+msgstr "No puc inserir un nou servidor a la base de dades!"
+
+#: ../classes/VirtualHost.php:298
+msgid "Virtual host:"
+msgstr ""
+
+#: ../classes/VirtualHost.php:375
+msgid "Add a new virtual host for hostname"
+msgstr ""
+
+#: ../classes/VirtualHost.php:595
+msgid "Virtual hosts management"
+msgstr ""
+
+#: ../classes/VirtualHost.php:614
+msgid "Hostname"
+msgstr "Nom del servidor"
+
+#: ../classes/VirtualHost.php:622
+msgid "Default network for this vhost"
+msgstr "Xarxa per defecte d'aquest vhost"
+
+#: ../classes/VirtualHost.php:639
+msgid "Make this Virtual Host the server's default?"
+msgstr ""
+
+#: ../classes/VirtualHost.php:655
+msgid "Use SSL on this server?"
+msgstr "Emprar SSL en aquest servidor?"
+
+#: ../classes/VirtualHost.php:667
+msgid "Google public API key"
+msgstr "Clau de l'API públic de Google"
+
+#: ../classes/VirtualHost.php:738
+msgid ""
+"Cannot delete default virtual host, create another one and select it before "
+"removing this one."
+msgstr ""
+
+#: ../classes/VirtualHost.php:743
+msgid "Could not delete server!"
+msgstr "No puc esborrar el servidor!"
+
+#: ../classes/VirtualHost.php:771
+msgid "Virtual Hosts"
+msgstr ""
+
+#: ../classes/Profile.php:206
+msgid "Unable to insert the new profile in the database!"
+msgstr "No puc inserir el nou perfil a la base de dades!"
+
+#: ../classes/Profile.php:309
+msgid "Should this profile be publicly visible?"
+msgstr ""
+
+#: ../classes/Profile.php:311 ../classes/Network.php:1716
+#: ../classes/Network.php:1722 ../classes/Network.php:1728
+#: ../classes/Network.php:1753 ../classes/Node.php:1335
+#: ../classes/Node.php:1350
+msgid "Yes"
+msgstr "Sí"
+
+#: ../classes/Profile.php:314
+msgid "Profile preferences"
+msgstr ""
+
+#: ../classes/Profile.php:355
+msgid "Profile fields"
+msgstr ""
+
+#: ../classes/Profile.php:423
+msgid "Sorry, this user has hidden his profile  temporarily."
+msgstr ""
+
+#: ../classes/Profile.php:446 ../classes/ProfileTemplateField.php:593
+#: ../classes/ProfileField.php:363
+msgid "Access denied (must have super admin access)"
+msgstr "Accés denegat (necessites accedir com a super administrador)"
+
+#: ../classes/Profile.php:451
+msgid "Could not delete Profile!"
+msgstr "No puc esborrar el Perfil!"
+
+#: ../classes/Security.php:205
+#, php-format
+msgid "%s (%s) on  %s: %s"
+msgstr "%s (%s) a  %s: %s"
+
+#: ../classes/Security.php:205
+msgid "Any"
+msgstr "Qualsevol"
+
+#: ../classes/Security.php:208
+msgid ""
+"Some (possibly all) of the following permission(s) you don't have are "
+"required to perform the operation your requested:"
+msgstr ""
+
+#: ../classes/FormSelectGenerator.php:103
+#: ../classes/FormSelectGenerator.php:112
+msgid " (Empty langstring, ID is displayed)"
+msgstr " (Langstring buit, es mostrarà la ID)"
+
+#: ../classes/User.php:169
+#, php-format
+msgid "There is no user with username %s"
+msgstr ""
+
+#: ../classes/User.php:280
+msgid "Guest"
+msgstr "Visitant"
+
+#: ../classes/User.php:323
+msgid "View this user's profile."
+msgstr "Veure el perfil d'aquest usuari."
+
+#: ../classes/User.php:361
+#, php-format
+msgid "Sorry, the username %s is not available"
+msgstr "Ho sentim, l'usuari %s no és disponible"
+
+#: ../classes/User.php:407
+msgid "Could not update email address."
+msgstr "No puc actualitzar l'adreça de correu electrònic."
+
+#: ../classes/User.php:441
+msgid "Could not update username locale."
+msgstr "No puc actualitzar el locale del nom d'usuari"
+
+#: ../classes/User.php:463
+msgid "Could not update status."
+msgstr "No puc actualitzar l'estat."
+
+#: ../classes/User.php:484
+#, php-format
+msgid ""
+"Sorry, your %.0f minutes grace period to retrieve your email and validate "
+"your account has now expired. You will have to connect to the internet and "
+"validate your account from another location."
+msgstr ""
+
+#: ../classes/User.php:487
+msgid "Your account is currently valid."
+msgstr "El seu compte és valid."
+
+#: ../classes/User.php:491
+msgid "Sorry, your account is not valid: "
+msgstr "Ho sentim, el seu compte no es vàlid: "
+
+#: ../classes/User.php:599
+#, php-format
+msgid ""
+"During the last %s period, you transfered %s bytes throughout the network, "
+"which exceeds the %s bytes limit for the entire network."
+msgstr ""
+
+#: ../classes/User.php:602
+#, php-format
+msgid ""
+"During the last %s period, you transfered %s bytes at this node, which "
+"exceeds the %s bytes limit for this node."
+msgstr ""
+
+#: ../classes/User.php:605
+#, php-format
+msgid ""
+"During the last %s period, you were online for a duration of %s throughout "
+"the network, which exceeds the %s limit for the entire network."
+msgstr ""
+
+#: ../classes/User.php:608
+#, php-format
+msgid ""
+"During the last %s period, you were online for a duration of %s at this "
+"node, which exceeds the %s limit for this node."
+msgstr ""
+
+#: ../classes/User.php:660
+msgid "Password cannot be empty."
+msgstr "No pots deixar la contrasenya buida."
+
+#: ../classes/User.php:664
+msgid "Could not change user's password."
+msgstr "No puc canviar la contrasenya de l'usuari."
+
+#: ../classes/User.php:680
+msgid "No users could not be found in the database"
+msgstr "No trobo usuaris a la base de dades"
+
+#: ../classes/User.php:689 ../classes/User.php:707 ../classes/User.php:724
+msgid "Registration system"
+msgstr "Sistema de registre"
+
+#: ../classes/User.php:692
+msgid " lost username request"
+msgstr " sol·licitud d'un nom d'usuari perdut"
+
+#: ../classes/User.php:693
+msgid ""
+"Hello,\n"
+"You have requested that the authentication server send you your username:\n"
+"Username: "
+msgstr ""
+"Hola,\n"
+"Has sol·licitat que el servidor d'autenticació us envii el vostre nom "
+"d'usuari:\n"
+"Nom d'usuari:"
+
+#: ../classes/User.php:693 ../classes/User.php:728
+msgid ""
+"\n"
+"\n"
+"Have a nice day,\n"
+"The Team"
+msgstr ""
+"\n"
+"\n"
+"Tingui un bon dia,\n"
+"L'Equit"
+
+#: ../classes/User.php:699
+msgid "The user is not in validation period."
+msgstr "L'usuari no és dins el període de validació."
+
+#: ../classes/User.php:702
+msgid "The validation token is empty."
+msgstr "El testimoni de validació es buit."
+
+#: ../classes/User.php:710
+msgid " new user validation"
+msgstr " validació d'un nou usuari"
+
+#: ../classes/User.php:712
+msgid ""
+"Hello,\n"
+"Please follow the link below to validate your account.\n"
+msgstr ""
+"Hola,\n"
+"Si us plau, feu servir l'enllaç de sota per validar el vostre compte.\n"
+
+#: ../classes/User.php:712
+msgid ""
+"\n"
+"\n"
+"Thank you,\n"
+"The Team."
+msgstr ""
+"\n"
+"\n"
+"Gràcies,\n"
+"L'Equip."
+
+#: ../classes/User.php:727
+msgid " new password request"
+msgstr " sol·licitar una nova contrasenya"
+
+#: ../classes/User.php:728
+msgid ""
+"Hello,\n"
+"You have requested that the authentication server send you a new password:\n"
+"Username: "
+msgstr ""
+"Hola,\n"
+"Has sol·licitat que el servidor autenticació t'envii una nova contrasenya:\n"
+"Nom d'usuari:"
+
+#: ../classes/User.php:728
+msgid ""
+"\n"
+"Password: "
+msgstr ""
+"\n"
+"Contrasenya: "
+
+#: ../classes/User.php:848
+msgid "Get user statistics"
+msgstr "Obté les estadístiques d'usuaris"
+
+#: ../classes/User.php:853
+msgid "Note that Error is for internal use only"
+msgstr ""
+
+#: ../classes/User.php:859
+msgid "Administrative options"
+msgstr "Opcions d'administració"
+
+#: ../classes/User.php:867
+msgid "Be carefull when changing this: it's the username you use to log in!"
+msgstr ""
+"Canvii aquest valor amb precaució: és el nom d'usuari que utilitzes per "
+"accedir a la xarxa!"
+
+#: ../classes/User.php:873
+msgid "Your current password"
+msgstr "La teva contrasenya actual"
+
+#: ../classes/User.php:879
+msgid "Your new password"
+msgstr "La teva nova contrasenya"
+
+#: ../classes/User.php:884
+msgid "Your new password (again)"
+msgstr "La teva nova contrasenya (un altre cop)"
+
+#: ../classes/User.php:889
+msgid "Change my password"
+msgstr "Canviar la meva contrasenya"
+
+#: ../classes/User.php:891
+msgid "User preferences"
+msgstr "Preferències de l'usuari"
+
+#: ../classes/User.php:903
+msgid "Completely delete my public profile"
+msgstr ""
+
+#: ../classes/User.php:912
+msgid "Create my public profile"
+msgstr ""
+
+#: ../classes/User.php:944
+msgid "Wrong password."
+msgstr "Contrasenya errònia."
+
+#: ../classes/User.php:1038
+msgid "Online Users"
+msgstr "Usuaris connectats"
+
+#: ../classes/User.php:1044
+msgid "Import NoCat user database"
+msgstr "Importar la base de dades d'usuaris de NoCat"
+
+#: ../classes/User.php:1051
+msgid "User manager"
+msgstr "Administració de l'usuari"
+
+#: ../classes/User.php:1063
+msgid "User administration"
+msgstr "Administració d'usuaris"
+
+#: ../classes/Network.php:124 ../classes/Network.php:265
+msgid "Network::getAllNetworks:  Fatal error: No networks in the database!"
+msgstr ""
+"Network::getAllNetworks: Error Fatal: No hi ha xarxes la base de dades!"
+
+#: ../classes/Network.php:201
+msgid "Unable to insert the new network in the database!"
+msgstr "No puc inserir la nova xarxa a la base de dades!"
+
+#: ../classes/Network.php:276 ../classes/Network.php:282
+msgid "Network:"
+msgstr "Xarxa"
+
+#: ../classes/Network.php:323
+msgid "Create a new network with ID"
+msgstr "Crear una nova xarxa amb la ID"
+
+#: ../classes/Network.php:737 ../classes/Statistics.php:124
+#: ../classes/Content.php:335 ../classes/NodeList.php:162
+msgid "Unable to open directory "
+msgstr "No puc obrir el directori"
+
+#: ../classes/Network.php:1041
+msgid "Satellite"
+msgstr "Satèl·lit"
+
+#: ../classes/Network.php:1041
+msgid "Hybrid"
+msgstr "Hibrid"
+
+#: ../classes/Network.php:1629
+msgid "Network management"
+msgstr "Administració de la xarxa"
+
+#: ../classes/Network.php:1635
+msgid "Network content"
+msgstr "Contingut de la xarxa"
+
+#: ../classes/Network.php:1646
+msgid "Network ID"
+msgstr "ID de la xarxa"
+
+#: ../classes/Network.php:1651
+msgid "Network name"
+msgstr "Nom de la xarxa"
+
+#: ../classes/Network.php:1656
+msgid "Network creation date"
+msgstr "Data de creació de la xarxa"
+
+#: ../classes/Network.php:1661
+msgid "Network's web site"
+msgstr "Lloc web de la xarxa"
+
+#: ../classes/Network.php:1666
+msgid "Technical support email"
+msgstr "Correu de suport tècnic"
+
+#: ../classes/Network.php:1671
+msgid "Information about the network"
+msgstr "Informació sobre la xarxa"
+
+#: ../classes/Network.php:1679
+msgid "Network authenticator class"
+msgstr "Classe d'autenticació de la xarxa"
+
+#: ../classes/Network.php:1680
+msgid ""
+"The subclass of Authenticator to be used for user authentication. Example: "
+"AuthenticatorRadius"
+msgstr ""
+"La subclasse d'autenticació que serà emprada per autenticar els usuaris. Per "
+"exemple: AuthenticatorRadius"
+
+#: ../classes/Network.php:1687
+msgid "Authenticator parameters"
+msgstr "Paràmetres d'autenticació"
+
+#: ../classes/Network.php:1688
+#, fuzzy
+msgid ""
+"The explicit parameters to be passed to the authenticator. You MUST read the "
+"constructor documentation of your desired authenticator class (in wifidog/"
+"classes/Authenticators/) BEFORE you start playing with this.  Example: "
+"'my_network_id', '192.168.0.11', 1812, 1813, 'secret_key', 'CHAP_MD5'"
+msgstr ""
+"Los parametros explicitos que seran pasados al autenticador. Por "
+"ejemplo:'my_network_id', '192.168.0.11', 1812, 1813, 'secret_key', 'CHAP_MD5'"
+
+#: ../classes/Network.php:1693
+msgid "Network Authentication"
+msgstr "Autenticació de la xarxa"
+
+#: ../classes/Network.php:1701
+msgid "Selected theme pack for this network"
+msgstr "Paquet de tema seleccionat per aquesta xarxa"
+
+#: ../classes/Network.php:1706
+msgid "Network properties"
+msgstr "Propietats de la xarxa"
+
+#: ../classes/Network.php:1714
+msgid "Splash-only nodes"
+msgstr "Node sense inici de sessió (Splash-only)"
+
+#: ../classes/Network.php:1715
+msgid "Are nodes allowed to be set as splash-only (no login)?"
+msgstr ""
+
+#: ../classes/Network.php:1720
+msgid "Portal page redirection"
+msgstr "Redreçament de la pàgina del portal"
+
+#: ../classes/Network.php:1721
+msgid ""
+"Are nodes allowed to redirect users to an arbitrary web page instead of the "
+"portal?"
+msgstr ""
+"Permetre als nodes redreçar als usuaris a d'altres pàgines web en lloc del "
+"portal?"
+
+#: ../classes/Network.php:1726 ../classes/Node.php:1348
+#, fuzzy
+msgid "Original URL redirection"
+msgstr "Redreçament de la pàgina del portal"
+
+#: ../classes/Network.php:1727
+#, fuzzy
+msgid ""
+"Are nodes allowed to redirect users to the web page they originally "
+"requested instead of the portal?"
+msgstr ""
+"Permetre als nodes redreçar als usuaris a d'altres pàgines web en lloc del "
+"portal?"
+
+#: ../classes/Network.php:1732
+msgid "Network's node properties"
+msgstr "Propietats del node de la xarxa"
+
+#: ../classes/Network.php:1740
+msgid "Validation grace period"
+msgstr "Tiempo de gracia para  validaci&oacute;n"
+
+#: ../classes/Network.php:1741
+msgid ""
+"The length of the validation grace period in seconds.  A new user is granted "
+"Internet access for this period check his email and validate his account."
+msgstr ""
+
+#: ../classes/Network.php:1746
+msgid "This will be the from address of the validation email"
+msgstr "Aquesta serà l'adreça d'origen del correu de validació"
+
+#: ../classes/Network.php:1751
+msgid "Multiple connections"
+msgstr "Connexions múltiples"
+
+#: ../classes/Network.php:1752
+msgid "Can an account be connected more than once at the same time?"
+msgstr "Permetre connexions simultànies d'un mateix compte?"
+
+#: ../classes/Network.php:1757
+msgid "Network's user verification"
+msgstr "Verificació dels usuaris de la xarxa"
+
+#: ../classes/Network.php:1767
+msgid "Abuse control window"
+msgstr ""
+
+#: ../classes/Network.php:1768
+msgid ""
+"The length of the window during which the user must not have exceeded the "
+"limits below.  Any valid postgresql interval expression is acceptable, "
+"typically '1 month' '1 week'.  A user who exceeds the limits will be denied "
+"access until his usage falls below the limits."
+msgstr ""
+
+#: ../classes/Network.php:1773
+msgid "Network max total bytes transfered"
+msgstr ""
+
+#: ../classes/Network.php:1774 ../classes/Network.php:1786
+msgid "Maximum data transfer during the abuse control window"
+msgstr ""
+
+#: ../classes/Network.php:1779
+#, fuzzy
+msgid "Network max connection duration"
+msgstr "Data de creació de la xarxa"
+
+#: ../classes/Network.php:1780 ../classes/Network.php:1792
+msgid ""
+"Maximum connection duration during the abuse control window.  Any valid "
+"postgresql interval expression is acceptable, such as hh:mm:ss"
+msgstr ""
+
+#: ../classes/Network.php:1785
+msgid "Node max total bytes transfered"
+msgstr ""
+
+#: ../classes/Network.php:1791
+#, fuzzy
+msgid "Node max connection duration"
+msgstr "Configuració del node"
+
+#: ../classes/Network.php:1797
+#, fuzzy
+msgid "You do not have access to edit these options"
+msgstr "(No te accés per editar aquest contingut)"
+
+#: ../classes/Network.php:1800
+msgid "Dynamic abuse control"
+msgstr ""
+
+#: ../classes/Network.php:1813 ../classes/Server.php:281
+#: ../classes/Node.php:1362
+msgid "Access rights"
+msgstr "Drets d'accés"
+
+#: ../classes/Network.php:1829
+msgid "Note that to be valid, all 3 values must be present."
+msgstr ""
+
+#: ../classes/Network.php:1830 ../classes/Node.php:1288
+msgid "Latitude"
+msgstr "Latitud"
+
+#: ../classes/Network.php:1831
+#, fuzzy
+msgid "Center latitude for the area covered by your wireless network"
+msgstr "Latitud Central de l'àrea de la seva xarxa sense fils"
+
+#: ../classes/Network.php:1835 ../classes/Node.php:1293
+msgid "Longitude"
+msgstr "Longitud"
+
+#: ../classes/Network.php:1836
+#, fuzzy
+msgid "Center longitude for the area covered by your wireless network"
+msgstr "Longitud central de l'àrea de la seva xarxa sense fils"
+
+#: ../classes/Network.php:1840
+msgid "Zoomlevel"
+msgstr "Nivell de Zoom"
+
+#: ../classes/Network.php:1841
+#, fuzzy
+msgid "Zoomlevel of the Google Map.  12 is a typical value."
+msgstr "Nivell de zoom del Google Maps a l'àrea de la seva xarxa sense fils"
+
+#: ../classes/Network.php:1845
+msgid "Map type"
+msgstr "Tipus de mapa"
+
+#: ../classes/Network.php:1846
+msgid "Default Google Map type for your the area of your wireless network"
+msgstr "Tipus de Mapa Google per defecte a l'àrea de la seva xarxa sense fils"
+
+#: ../classes/Network.php:1851 ../classes/Node.php:1315
+msgid "GIS data"
+msgstr "Dada del GIS"
+
+#: ../classes/Network.php:1855
+msgid "Network profile templates"
+msgstr "Plantilles de perfil de la xarxa"
+
+#: ../classes/Network.php:2106
+#, fuzzy
+msgid ""
+"Cannot delete default network, create another one and select it before you "
+"remove this one."
+msgstr ""
+"No puc esborrar la xarxa marcada per defecte. Si us plau, crea primera una "
+"nova xarxa i marca-la como xarxa per defecte abans d'esborrar la xarxa per "
+"defecte actual."
+
+#: ../classes/Network.php:2111
+msgid "Could not delete network!"
+msgstr "No puc esborrar la xarxa!"
+
+#: ../classes/Network.php:2147
+#, fuzzy, php-format
+msgid "Add a new network on this server"
+msgstr "Emprar SSL en aquest servidor?"
+
+#: ../classes/Network.php:2152
+msgid "Network administration"
+msgstr "Administració de la xarxa"
+
+#: ../classes/Statistics.php:85
+msgid "Usernames"
+msgstr "Noms d'usuari"
+
+#: ../classes/Statistics.php:86
+msgid "MAC addresses"
+msgstr "Adreça MAC"
+
+#: ../classes/Statistics.php:152 ../classes/Statistics.php:156
+msgid "No restriction..."
+msgstr "Sense restriccions..."
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "yesterday"
+msgstr "ahir"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "today"
+msgstr "avui"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "2 days ago"
+msgstr "fa 2 dies"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "3 days ago"
+msgstr "fa 3 dies"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "1 week ago"
+msgstr "fa 1 setmana"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "2 weeks ago"
+msgstr "fa 2 setmanes"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "3 weeks ago"
+msgstr "fa 3 setmanes"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "1 month ago"
+msgstr "fa 1 mes"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "2 months ago"
+msgstr "fa 2 mesos"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "6 months ago"
+msgstr "fa 6 mesos"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "1 year ago"
+msgstr "fa 1 any"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "Select from and to..."
+msgstr "Selecciona des de fins..."
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "yesterday (whole day)"
+msgstr "Ahir (tot el dia)"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "today (whole day)"
+msgstr "avui (tot el dia)"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "this month"
+msgstr "aquest mes"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "last month"
+msgstr "el darrer mes"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "this year"
+msgstr "Aquest any"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "forever"
+msgstr "sempre"
+
+#: ../classes/Statistics.php:161
+msgid "From"
+msgstr "De"
+
+#: ../classes/Statistics.php:176
+msgid "To"
+msgstr "Per"
+
+#: ../classes/Statistics.php:456
+msgid "Invalid parameter"
+msgstr "Paràmetre invàlid"
+
+#: ../classes/Statistics.php:494
+msgid "Username or MAC address, depending on selection above"
+msgstr ""
+
+#: ../classes/Statistics.php:590
+msgid "Report configuration"
+msgstr "Configuració de l'informe"
+
+#: ../classes/Statistics.php:613
+msgid "Restrict the time range for which statistics will be computed"
+msgstr ""
+"Restringir la franja temporal en que les estadístiques seran processades"
+
+#: ../classes/Statistics.php:621
+msgid "Restrict stats to the following nodes"
+msgstr "Restringir les estadístiques als següents nodes"
+
+#: ../classes/Statistics.php:631
+msgid "Distinguish users by"
+msgstr "Diferencia els usuaris per"
+
+#: ../classes/Statistics.php:640
+msgid "Restrict stats to the selected users"
+msgstr "Restringir les estadístiques als usuaris seleccionats"
+
+#: ../classes/Statistics.php:649
+msgid "Selected reports"
+msgstr "Informes seleccionats"
+
+#: ../classes/AbstractDb.php:93
+msgid "It appears the postgresql module isn't loaded"
+msgstr ""
+
+#: ../classes/AbstractDb.php:99
+#, fuzzy, php-format
+msgid "Unable to connect to the database at %s"
+msgstr "No puc connectar a la base de dades a %s"
+
+#: ../classes/AbstractDb.php:121 ../classes/AbstractDb.php:214
+#: ../classes/AbstractDb.php:402 ../classes/AbstractDb.php:475
+msgid "SQL Query"
+msgstr "Consulta SQL"
+
+#: ../classes/AbstractDb.php:126 ../classes/AbstractDb.php:219
+msgid "Query plan"
+msgstr "Pla SQL"
+
+#: ../classes/AbstractDb.php:144 ../classes/AbstractDb.php:237
+#: ../classes/AbstractDb.php:412
+#, php-format
+msgid "Elapsed time for query execution : %.6f second(s)"
+msgstr "Temps emprat en l'execució de la consulta: %.6f segons"
+
+#: ../classes/AbstractDb.php:148 ../classes/AbstractDb.php:241
+#: ../classes/AbstractDb.php:416 ../classes/AbstractDb.php:426
+#: ../classes/AbstractDb.php:490
+msgid "An error occured while executing the following SQL query"
+msgstr "Es produí un error en executar la següent cerca SQL"
+
+#: ../classes/AbstractDb.php:149 ../classes/AbstractDb.php:242
+#: ../classes/AbstractDb.php:417 ../classes/AbstractDb.php:491
+msgid "Error message"
+msgstr "Missatge d'error"
+
+#: ../classes/AbstractDb.php:150 ../classes/AbstractDb.php:243
+#: ../classes/AbstractDb.php:492
+msgid "Backtrace:"
+msgstr ""
+
+#: ../classes/AbstractDb.php:173
+#, php-format
+msgid "The query returned %d results"
+msgstr "La cerca tornà %d resultados"
+
+#: ../classes/AbstractDb.php:427
+#, php-format
+msgid ""
+"The query returned %d results, although there should have been only one."
+msgstr "La cerca tornà %d resultats, però hauria de ser un de sol."
+
+#: ../classes/AbstractDb.php:435
+#, php-format
+msgid "The query returned %d result(s)"
+msgstr "La cerca retornà %d resultats"
+
+#: ../classes/AbstractDb.php:484 ../classes/AbstractDb.php:502
+#, php-format
+msgid "%d rows affected by the SQL query."
+msgstr "%d filas afectades per la cerca SQL"
+
+#: ../classes/AbstractDb.php:485
+#, php-format
+msgid "Elapsed time for query execution : %6f second(s)"
+msgstr "Temps emprat en l'execució de la cerca: %.6f segons"
+
+#: ../classes/Server.php:91
+msgid "Main server object"
+msgstr "Objecte del servidor principal"
+
+#: ../classes/Server.php:229
+msgid "Server management"
+msgstr "Administració del servidor"
+
+#: ../classes/Server.php:255
+msgid "Timezone check:  The following must be in the same timezone"
+msgstr ""
+
+#: ../classes/Server.php:259
+#, php-format
+msgid "Timezone from postgresql: %s"
+msgstr "Fus horari de postgresql: %s"
+
+#: ../classes/Server.php:262
+#, php-format
+msgid "Timezone from PHP: %s"
+msgstr "Fus horari del PHP: %s"
+
+#: ../classes/Server.php:270
+#, fuzzy
+msgid "Authentication"
+msgstr "Autenticació de la xarxa"
+
+#: ../classes/Server.php:271
+msgid ""
+"Use the users of default Virtual Host's network across all networks on the "
+"server."
+msgstr ""
+
+#: ../classes/Server.php:320
+msgid "The server can never be deleted!"
+msgstr ""
+
+#: ../classes/Server.php:330
+#, fuzzy
+msgid "Server configuration"
+msgstr "Configuració de l'informe"
+
+#: ../classes/Server.php:335
+msgid "Server administration"
+msgstr "Administració de servidors"
+
+#: ../classes/Content.php:150
+msgid "Untitled content"
+msgstr "Contingut sense títol"
+
+#: ../classes/Content.php:181
+msgid "Content type is optionnal, but cannot be empty!"
+msgstr "El tipus de contingut es opcional, però no pot romandre buit!"
+
+#: ../classes/Content.php:189 ../classes/ProfileTemplateField.php:176
+msgid "Unable to insert new content into database!"
+msgstr "No puc inserir nou contingut a la base de dades!"
+
+#: ../classes/Content.php:221
+msgid "It appears that you have not installed any Content plugin !"
+msgstr "Sembla que no has instal·lat l'extensió de Continguts!"
+
+#: ../classes/Content.php:223 ../classes/Content.php:1511
+msgid "You must select a content type: "
+msgstr "Selecciona un tipus de contingut"
+
+#: ../classes/Content.php:520
+msgid "Add new Content of type"
+msgstr "Afegeix un nou tipus de contingut"
+
+#: ../classes/Content.php:534
+msgid "No content type matches the filter."
+msgstr "Cap contingut coincideix amb el filtre"
+
+#: ../classes/Content.php:543
+#, php-format
+msgid "Add a %s"
+msgstr "Afegeix a %s"
+
+#: ../classes/Content.php:719
+msgid "Display page"
+msgstr "Mostra la pàgina"
+
+#: ../classes/Content.php:719
+msgid "Area"
+msgstr ""
+
+#: ../classes/Content.php:719
+msgid "Order"
+msgstr "Ordre"
+
+#: ../classes/Content.php:719
+msgid "Content"
+msgstr "Contingut"
+
+#: ../classes/Content.php:719 ../classes/ProfileTemplate.php:383
+msgid "Actions"
+msgstr "Accions"
+
+#: ../classes/Content.php:911
+msgid "Select from reusable content library"
+msgstr ""
+
+#: ../classes/Content.php:925
+msgid "Title"
+msgstr "Títol"
+
+#: ../classes/Content.php:925
+msgid "Content type"
+msgstr "Tipus de contigut"
+
+#: ../classes/Content.php:972 ../classes/Content.php:979
+msgid "Sorry, no elligible content available in the database"
+msgstr "Ho sento, no hi ha a la base de dades continguts seleccionables"
+
+#: ../classes/Content.php:1048
+msgid "KVP key cannot be null"
+msgstr ""
+
+#: ../classes/Content.php:1122
+msgid "The following content type isn't valid: "
+msgstr "El següent contingut és d'un tipus no vàlid:"
+
+#: ../classes/Content.php:1127
+msgid "Update was unsuccessfull (database error)"
+msgstr "No s'han actualitzat les dades (error a la base de dades)"
+
+#: ../classes/Content.php:1144
+msgid "Unable to insert the new Owner into database."
+msgstr "No puc afegir un nou propietari a la base de dades."
+
+#: ../classes/Content.php:1161
+msgid "Unable to remove the owner from the database."
+msgstr "No puc esborrar el propietari de la base de dades"
+
+#: ../classes/Content.php:1360
+msgid "Author(s):"
+msgstr "Autor(s):"
+
+#: ../classes/Content.php:1381
+msgid "Project information:"
+msgstr "Informació del projecte:"
+
+#: ../classes/Content.php:1502
+msgid "(You do not have access to edit this piece of content)"
+msgstr "(No te accés per editar aquest contingut)"
+
+#: ../classes/Content.php:1532
+#, php-format
+msgid "%s MetaData"
+msgstr ""
+
+#: ../classes/Content.php:1535
+msgid "Display the title?"
+msgstr "Mostrar el títol?"
+
+#: ../classes/Content.php:1544 ../classes/Content.php:1549
+msgid "Title:"
+msgstr "Ttítol"
+
+#: ../classes/Content.php:1553
+msgid "title"
+msgstr "títol"
+
+#: ../classes/Content.php:1564 ../classes/Content.php:1568
+#: ../classes/Role.php:351 ../classes/Role.php:355
+msgid "Description:"
+msgstr "Descripció:"
+
+#: ../classes/Content.php:1572 ../classes/Role.php:359
+msgid "description"
+msgstr "descripció"
+
+#: ../classes/Content.php:1581 ../classes/Content.php:1585
+msgid "Long description:"
+msgstr "Descripció llarga:"
+
+#: ../classes/Content.php:1589
+msgid "long description"
+msgstr "descripció llarga"
+
+#: ../classes/Content.php:1598 ../classes/Content.php:1602
+msgid "Information on this project:"
+msgstr "Informació d'aquest projecte"
+
+#: ../classes/Content.php:1606
+msgid "project information"
+msgstr "informació del projecte"
+
+#: ../classes/Content.php:1620
+#, php-format
+msgid "%s access control"
+msgstr "%s control d'accés"
+
+#: ../classes/Content.php:1624
+msgid "Is part of reusable content library (protected from deletion)?"
+msgstr ""
+"Es part reutilitzable d'una biblioteca de continguts (protegit contra "
+"esborrament)?"
+
+#: ../classes/Content.php:1634
+msgid "Content owner list"
+msgstr "Llistat de propietaris"
+
+#: ../classes/Content.php:1655
+msgid "Remove owner"
+msgstr "Elimina un propietari"
+
+#: ../classes/Content.php:1664
+msgid "Add owner"
+msgstr "Afegeix un propietari"
+
+#: ../classes/Content.php:1796
+msgid "Unable to set as author in the database."
+msgstr "No es pot establir l'autor de la base de dades"
+
+#: ../classes/Content.php:1970
+msgid "Reusable content library"
+msgstr "Biblioteca de contingut reutilitzable"
+
+#: ../classes/NodeList.php:210 smarty.txt:40
+msgid "Deployed HotSpots map"
+msgstr "Mapa dels Hotspots instal·lats"
+
+#: ../classes/NodeList.php:221
+#, php-format
+msgid "List in %s format"
+msgstr "Llista en format %s"
+
+#: ../classes/NodeList.php:227
+msgid "Full node technical status (includes non-deployed nodes)"
+msgstr ""
+"Informe de l'estat operatiu de tots els nodes (inclou els nodes sense "
+"instal·lar)"
+
+#: ../classes/NodeList.php:231
+msgid "Find Hotspots"
+msgstr "Cerca Hotspots"
+
+#: ../classes/MainUI.php:78
+#, php-format
+msgid ""
+"Your current user (%s) does not have the required level of access.  Please "
+"login with with a user with the required permission(s) to try this operation "
+"again."
+msgstr ""
+
+#: ../classes/MainUI.php:81
+#, php-format
+msgid ""
+"You didn't log-in or your session timed-out.  Please login to try this "
+"operation again."
+msgstr ""
+
+#: ../classes/MainUI.php:89
+#, php-format
+msgid "%s"
+msgstr ""
+
+#: ../classes/MainUI.php:91
+#, php-format
+msgid "%s was thrown in %s, line %d\n"
+msgstr ""
+
+#: ../classes/MainUI.php:102
+#, php-format
+msgid "Detailed error was:  Uncaught %s %s (%s) thrown in file %s, line %d"
+msgstr ""
+
+#: ../classes/MainUI.php:232 ../classes/MainUI.php:234
+msgid "authentication server"
+msgstr "servidor d'autentificació"
+
+#: ../classes/MainUI.php:262
+#, php-format
+msgid "%s is not a valid structural display area"
+msgstr "%s no es una àrea estructural de visualització vàlida"
+
+#: ../classes/MainUI.php:680
+#, php-format
+msgid "%s Login"
+msgstr "%s Inicia sessió"
+
+#: ../classes/MainUI.php:680 smarty.txt:21 smarty.txt:32
+msgid "Login"
+msgstr "Inicia la sessió"
+
+#: ../classes/MainUI.php:684
+#, php-format
+msgid "Click <a href='%s'>here</a> to continue"
+msgstr "Fes clic<a href='%s'>aquí</a> per continuar"
+
+#: ../classes/MainUI.php:684
+msgid ""
+"The transfer from secure login back to regular http may cause a warning."
+msgstr ""
+"El retorn de la connexió d'inici segura al http convencional pot generar un "
+"missatge d'advertència"
+
+#: ../classes/Mail.php:405
+#, php-format
+msgid "PHPMailer couldn't sent mail.  Error was: %s"
+msgstr ""
+
+#: ../classes/Node.php:222
+msgid "Could not delete node!"
+msgstr "No puc esborrar el node!"
+
+#: ../classes/Node.php:255
+msgid "PUT_GATEWAY_ID_HERE"
+msgstr ""
+
+#: ../classes/Node.php:271
+msgid "New node"
+msgstr "Nou node"
+
+#: ../classes/Node.php:280
+#, php-format
+msgid "Sorry, a node for the gateway %s already exists."
+msgstr ""
+
+#: ../classes/Node.php:286
+msgid "Unable to insert new node into database!"
+msgstr "No puc inserir un nou node a la base de dades!"
+
+#: ../classes/Node.php:370
+msgid "Filter:"
+msgstr "Filtre:"
+
+#: ../classes/Node.php:378
+msgid "Node Name"
+msgstr "Nom del node"
+
+#: ../classes/Node.php:379 ../classes/Node.php:1176
+msgid "Gateway ID"
+msgstr "ID de la pasarel·la"
+
+#: ../classes/Node.php:402
+msgid "Sorry, no nodes available in the database"
+msgstr "Ho sentim, no hi ha nodes disponibles la base de dades"
+
+#: ../classes/Node.php:427
+msgid "Add a new node for the gateway ID"
+msgstr ""
+
+#: ../classes/Node.php:437
+msgid "in "
+msgstr "a"
+
+#: ../classes/Node.php:493
+msgid "Here is what you can do to fix this:"
+msgstr ""
+
+#: ../classes/Node.php:497
+#, php-format
+msgid ""
+"You can create a new node with %s as it's associated gateway id.  This is "
+"typical for new installations."
+msgstr ""
+
+#: ../classes/Node.php:510
+#, php-format
+msgid "Add a new node in %s"
+msgstr "Afegeix un nou node a %s"
+
+#: ../classes/Node.php:512
+msgid "Add node"
+msgstr "Afegeix un node"
+
+#: ../classes/Node.php:519
+#, php-format
+msgid ""
+"You can \"steal\" an existing node.  The node's gateway id will be replaced "
+"with %s.  This is typical when replacing hardware."
+msgstr ""
+
+#: ../classes/Node.php:538
+msgid "Steal node"
+msgstr "Node Steal"
+
+#: ../classes/Node.php:614
+msgid "No deployment statuses could be found in the database"
+msgstr "Els estats operatius no es poden trobar a la base de dades"
+
+#: ../classes/Node.php:681
+#, php-format
+msgid "The node with %s: %s could not be found in the database!"
+msgstr "No trobo el node amb %s:%s a la base de dades!"
+
+#: ../classes/Node.php:1154
+msgid "Edit a node"
+msgstr "Edita un node"
+
+#: ../classes/Node.php:1165
+msgid "Allow public access to some node statistics."
+msgstr ""
+
+#: ../classes/Node.php:1166
+msgid "Get access statistics"
+msgstr "Obté les estadístiques del node"
+
+#: ../classes/Node.php:1190
+msgid "Node content"
+msgstr "Continguts del node"
+
+#: ../classes/Node.php:1229
+msgid "Civic number"
+msgstr "Número cívic"
+
+#: ../classes/Node.php:1234
+msgid "Street name"
+msgstr "Nom del carrer"
+
+#: ../classes/Node.php:1254
+msgid "Country"
+msgstr "País"
+
+#: ../classes/Node.php:1259
+msgid "Public phone number"
+msgstr "Número de telèfon públic"
+
+#: ../classes/Node.php:1264
+msgid "Public email"
+msgstr "Email públic"
+
+#: ../classes/Node.php:1274
+msgid "Mass transit info"
+msgstr "Informació sobre el transport públic"
+
+#: ../classes/Node.php:1279
+msgid "Information about the node"
+msgstr "Informació sobre el node"
+
+#: ../classes/Node.php:1299 ../classes/Node.php:1303
+msgid "Geocode the address or postal code above"
+msgstr ""
+
+#: ../classes/Node.php:1300
+msgid "Check using Google Maps"
+msgstr "Revisar emprant Google Maps"
+
+#: ../classes/Node.php:1301
+msgid ""
+"Use a geocoding service, then use Google Maps to pinpoint the exact location."
+msgstr ""
+"Empri un servei de geolocalització, després faci servir Google Maps per "
+"marcar la localització exacta."
+
+#: ../classes/Node.php:1304
+msgid "Use a geocoding service"
+msgstr "Empri un servei de geolocalització "
+
+#: ../classes/Node.php:1310
+msgid "Map URL"
+msgstr "URL del mapa"
+
+#: ../classes/Node.php:1323
+msgid "Node deployment status"
+msgstr "Estat operatiu del node"
+
+#: ../classes/Node.php:1328
+#, fuzzy
+msgid "Node Network"
+msgstr "Xarxa"
+
+#: ../classes/Node.php:1334
+msgid "Is this node splash-only (no login)?"
+msgstr "És aquest node splash-only (sense inici de sessió)?"
+
+#: ../classes/Node.php:1341
+msgid "URL to show instead of the portal"
+msgstr "URL que es mostrarà en lloc del portal"
+
+#: ../classes/Node.php:1343
+msgid ""
+"If this is not empty, the portal will be disabled and this URL will be shown "
+"instead"
+msgstr ""
+"Si no es buida, el portal serà inutilitzat i es mostrarà aquesta adreça en "
+"el seu lloc"
+
+#: ../classes/Node.php:1349
+#, fuzzy
+msgid ""
+"Are nodes allowed to redirect users to the web page they originally "
+"requested instead of the portal? this will overide the custom portal URL"
+msgstr ""
+"Permetre als nodes redreçar als usuaris a d'altres pàgines web en lloc del "
+"portal?"
+
+#: ../classes/Node.php:1354
+msgid "Node configuration"
+msgstr "Configuració del node"
+
+#: ../classes/Node.php:1492
+msgid ""
+"It appears that the Geocoder could not be reached or could not geocode the "
+"given address."
+msgstr ""
+"No es pot accedir al Geocoder o no es pot geocodificar l'adreça facilitada."
+
+#: ../classes/Node.php:1495
+msgid "You must enter a valid address."
+msgstr "Déu introduir una adreça vàlida"
+
+#: ../classes/Node.php:1499
+msgid "Unable to create geocoder.  Are you sure you set the country?"
+msgstr ""
+
+#: ../classes/Node.php:1759
+msgid "Edit nodes"
+msgstr "Edita els nodes"
+
+#: ../classes/Node.php:1774
+#, php-format
+msgid "Add a new node"
+msgstr "Agregar un nuevo nodo"
+
+#: ../classes/Node.php:1779
+msgid "Node administration"
+msgstr "Administració de nodes"
+
+#: ../classes/ProfileTemplate.php:229
+msgid "Unable to insert the new profile template in the database!"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:240
+#, fuzzy
+msgid "Add a new profile template with ID"
+msgstr "Agrega un nuevo nodo con ID"
+
+#: ../classes/ProfileTemplate.php:313
+msgid "Profile template"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:318 ../classes/ContentTypeFilter.php:310
+#: ../classes/ProfileTemplateField.php:118
+#: ../classes/ProfileTemplateField.php:427
+msgid "No label"
+msgstr "Sense etiqueta"
+
+#: ../classes/ProfileTemplate.php:383
+msgid "Profile template label"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:484
+msgid "Profile template management"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:491
+msgid "ProfileTemplate ID"
+msgstr "ID de la Plantilla de Perfil"
+
+#: ../classes/ProfileTemplate.php:502 ../classes/ContentTypeFilter.php:375
+msgid "Label"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:521
+msgid "Profile template fields"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:531
+#, php-format
+msgid "Delete %s %d, used in %d/%d profiles"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:595
+msgid "Could not delete ProfileTemplate!"
+msgstr "No puc esborrar la Plantilla de Perfil (ProfileTemplate)!"
+
+#: ../classes/ProfileTemplate.php:627
+msgid "Profile templates"
+msgstr ""
+
+#: ../classes/ThemePack.php:87
+#, php-format
+msgid "Theme pack %s cannot be found in %s"
+msgstr "El paquet del tema %s no es troba a %s"
+
+#: ../classes/ThemePack.php:94
+#, php-format
+msgid "%s (Theme did not include a name.txt file)"
+msgstr "%s (El tema no inclou l'arxiu name.txt)"
+
+#: ../classes/ThemePack.php:100
+#, php-format
+msgid "%s (Theme did not include a description.txt file)"
+msgstr "%s (El tema no inclou l'arxiu description.txt)"
+
+#: ../classes/ThemePack.php:121
+msgid "Theme pack:"
+msgstr "Paquet de tema:"
+
+#: ../classes/ThemePack.php:144
+msgid "Unable to open the network theme packs directory"
+msgstr "No puc obrir el directori de paquets de temes"
+
+#: ../classes/ThemePack.php:151
+#, php-format
+msgid "No network theme packs available in %s"
+msgstr "No hi ha paquets de temes per la xarxa a %s"
+
+#: ../classes/Role.php:151
+#, php-format
+msgid "Sorry: No available roles in the database for stakeholder type: %s!"
+msgstr ""
+
+#: ../classes/Role.php:164 ../classes/Role.php:170
+msgid "Role:"
+msgstr ""
+
+#: ../classes/Role.php:228 ../classes/ContentTypeFilter.php:199
+msgid "Unable to insert the new ContentTypeFilter in the database!"
+msgstr ""
+"No puc inserir el nou filtre per tipus de contingut a la base de dades!"
+
+#: ../classes/Role.php:245
+#, php-format
+msgid "Add a new role of type %s with id %s"
+msgstr ""
+
+#: ../classes/Role.php:309
+msgid "User roles management"
+msgstr "Administració de rols d'usuaris"
+
+#: ../classes/Role.php:316
+msgid "Stakeholder type"
+msgstr "Tipus de promotor"
+
+#: ../classes/Role.php:325
+msgid "This role is a system role"
+msgstr "Aquest rol és un rol del sistema"
+
+#: ../classes/Role.php:332
+msgid "Role ID"
+msgstr "ID del rol"
+
+#: ../classes/Role.php:386
+msgid "Permissions"
+msgstr ""
+
+#: ../classes/Role.php:492
+msgid "Could not delete object!"
+msgstr "No puc esborrar l'objecte!"
+
+#: ../classes/Role.php:513
+msgid "User roles"
+msgstr "Rols dels usuaris"
+
+#: ../classes/ContentTypeFilter.php:220
+msgid "Add a new content type filter with these rules"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:221
+msgid "Example:"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:302
+#: ../classes/ProfileTemplateField.php:424
+msgid "Content type filter"
+msgstr "Filtre per tipus de contingut"
+
+#: ../classes/ContentTypeFilter.php:357
+msgid "ContentTypeFilter management"
+msgstr "Administració dels Filtres per Tipus de Contingut"
+
+#: ../classes/ContentTypeFilter.php:364
+msgid "ContentTypeFilter ID"
+msgstr "ID del Filtre per tipus de contingut"
+
+#: ../classes/ContentTypeFilter.php:386
+msgid "Rules (must be a valid array definition)"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:418
+msgid "The rules must be given as a PHP array declaration."
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:444
+msgid "Could not delete ContentTypeFilter!"
+msgstr "No puc esborrar el Filtre de tipus de contingut!"
+
+#: ../classes/ContentTypeFilter.php:472
+msgid "Content type filters"
+msgstr "Filtre per tipus de contingut"
+
+#: ../classes/ProfileTemplateField.php:122
+msgid "Add new profile template field filtered by"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:131
+msgid "Sorry, no content type filter exists."
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:404
+msgid "Display order"
+msgstr "Ordre de visualització"
+
+#: ../classes/ProfileTemplateField.php:422
+msgid "Sorry, content type filter is missing."
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:434
+msgid "Display label"
+msgstr "Etiqueta de visualització"
+
+#: ../classes/ProfileTemplateField.php:440
+#, php-format
+msgid "%s display label (%s)"
+msgstr "%s etiqueta de visualització (%s)"
+
+#: ../classes/ProfileTemplateField.php:444
+msgid "display label"
+msgstr "etiqueta de visualització"
+
+#: ../classes/ProfileTemplateField.php:451
+msgid "Admin label"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:458
+#, php-format
+msgid "%s admin label (%s)"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:462
+msgid "admin label"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:469
+msgid "Semantic ID"
+msgstr "ID semàntic"
+
+#: ../classes/ProfileTemplateField.php:477
+msgid "Full name"
+msgstr "Nom complet"
+
+#: ../classes/ProfileTemplateField.php:478
+msgid "Nickname"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:479
+msgid "E-mail"
+msgstr "Correu electrònic"
+
+#: ../classes/ProfileTemplateField.php:480
+msgid "Hashed e-mail"
+msgstr "Correu de dispersió"
+
+#: ../classes/ProfileTemplateField.php:481
+msgid "Picture"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:482
+msgid "URL of a blog"
+msgstr "URL d'un bloc"
+
+#: ../classes/ProfileTemplateField.php:483
+msgid "URL of a homepage"
+msgstr "URL de la pàgina d'inici"
+
+#: ../classes/ProfileTemplateField.php:598
+msgid "Could not delete ProfileTemplateField!"
+msgstr "No puc esborrar el camp de Plantilla de perfil!"
+
+#: ../classes/ProfileField.php:251
+msgid "Unable to insert the new profile fields in the database!"
+msgstr ""
+
+#: ../classes/ProfileField.php:281
+#, php-format
+msgid "Delete %s"
+msgstr "Esborra %s"
+
+#: ../classes/ProfileField.php:368
+msgid "Could not delete ProfileField!"
+msgstr "No puc esborrar el Camp de Perfil (ProfileField)!"
+
+#: ../classes/Permission.php:85
+msgid "User is allowed to view online users troughout the network"
+msgstr ""
+
+#: ../classes/Permission.php:86
+msgid "User is allowed to edit any user for this network"
+msgstr ""
+
+#: ../classes/Permission.php:87
+msgid "User is allowed to edit the configuration of this network"
+msgstr ""
+
+#: ../classes/Permission.php:88
+#, fuzzy
+msgid "User is allowed to delete this network"
+msgstr "No puc esborrar la xarxa!"
+
+#: ../classes/Permission.php:89
+msgid "User is allowed to view all statistics for this network"
+msgstr ""
+
+#: ../classes/Permission.php:90
+msgid "User is allowed to edit any configuration of any node on the network"
+msgstr ""
+
+#: ../classes/Permission.php:91
+msgid "User is allowed to create a new Node on this network"
+msgstr ""
+
+#: ../classes/Permission.php:92
+msgid "User is allowed to set dynamic abuse control options for the network"
+msgstr ""
+
+#: ../classes/Permission.php:94
+msgid "User is allowed to edit user role definitions"
+msgstr ""
+
+#: ../classes/Permission.php:95
+msgid "User is allowed to edit any virtual host definition"
+msgstr ""
+
+#: ../classes/Permission.php:96
+msgid "User is allowed to edit general server configuration"
+msgstr ""
+
+#: ../classes/Permission.php:97
+msgid "User is allowed to edit the profile templates"
+msgstr ""
+
+#: ../classes/Permission.php:98
+msgid "User is allowed to edit the content type filters on the network"
+msgstr ""
+
+#: ../classes/Permission.php:99
+msgid "User is allowed to create reusable content"
+msgstr ""
+
+#: ../classes/Permission.php:100
+msgid "User is allowed to create a new Network on this server"
+msgstr ""
+
+#: ../classes/Permission.php:102
+msgid "User is allowed to change the gateway id of this node"
+msgstr ""
+
+#: ../classes/Permission.php:103
+#, fuzzy
+msgid "User is allowed to change the public name of this node"
+msgstr "Este usuario ya es due&ntilde;o en este nodo."
+
+#: ../classes/Permission.php:104
+#, fuzzy
+msgid "User is allowed to change the deployment date of this node"
+msgstr "Este usuario ya es due&ntilde;o en este nodo."
+
+#: ../classes/Permission.php:106
+msgid ""
+"TEMPORARY:  User is allowed to edit general configuration for this node.  "
+"This will be replaced with more granular permissions in the future"
+msgstr ""
+
+#: ../classes/Permission.php:107
+msgid "User is allowed to exceed dynamic abuse control limits at this node"
+msgstr ""
+
+#: ../classes/Permission.php:108
+#, fuzzy
+msgid ""
+"User is allowed to turn on publicly accessible aggregate statistics for this "
+"node"
+msgstr "Este usuario ya es due&ntilde;o en este nodo."
+
+#: ../classes/Stakeholder.php:88
+msgid "Remove stakeholder"
+msgstr "Treu un promotor"
+
+#: ../classes/Stakeholder.php:94
+msgid "Add stakeholder"
+msgstr "Afegeix un promotor"
+
+#: ../classes/Stakeholder.php:121 ../classes/Stakeholder.php:147
+#, php-format
+msgid "User %s already has role %s for this object"
+msgstr ""
+
+#: ../classes/GenericDataObject.php:124
+#, php-format
+msgid "Delete not supported on class %s"
+msgstr ""
+
+#: ../classes/Dependency.php:414 ../classes/Dependency.php:430
+#, php-format
+msgid "File %s not found"
+msgstr "No trobo l'arxiu %s"
+
+#: ../classes/Dependency.php:444 ../classes/Dependency.php:458
+#, php-format
+msgid "File %s not found in %s"
+msgstr "Arxiu %s no trobat a %s"
+
+#: ../classes/Dependency.php:519
+#, php-format
+msgid ""
+"To install this standard PHP extension, look for a package with a similar "
+"name in your distribution's package manager.  Ex: For Debian based "
+"distributions, you may try 'sudo apt-get install php5-%s'"
+msgstr ""
+
+#: ../classes/Dependency.php:525
+#, php-format
+msgid "Install %s"
+msgstr "Instal·la %s"
+
+#: ../classes/Dependency.php:530
+#, php-format
+msgid "Sorry, i couldn't find the source for %s in installSourceUrl"
+msgstr ""
+
+#: ../classes/Dependency.php:543
+#, php-format
+msgid ""
+"To install this standard PEAR extension, try 'sudo pear install --"
+"onlyreqdeps %s'"
+msgstr ""
+
+#: ../classes/Dependency.php:554
+#, php-format
+msgid "To install this standard PEAR extension, try 'sudo pecl install %s'"
+msgstr ""
+
+#: ../classes/Dependency.php:563
+#, php-format
+msgid ""
+"url_to_the_tarball (Sorry, i couldn't find the source for %s in "
+"installSourceUrl)"
+msgstr ""
+
+#: ../classes/Dependency.php:565
+#, php-format
+msgid "To install this custom PEAR extension, use 'sudo pear install %s'"
+msgstr ""
+
+#: ../classes/Dependency.php:570
+#, php-format
+msgid "Sorry, I don't know how to install a %s extension"
+msgstr ""
+
+#: ../classes/DependenciesList.php:105
+#, php-format
+msgid "Version %s needed"
+msgstr "Es necessita la versió %s"
+
+#: ../classes/DependenciesList.php:122
+#, php-format
+msgid "%s may work, but version %s is recommended"
+msgstr "%s pot funcionar, però es recomana la versió %s"
+
+#: ../classes/DependenciesList.php:125
+#, php-format
+msgid "%s is too old, version %s needed"
+msgstr "%s és massa antic, es necessita la versió %s"
+
+#: ../classes/DependenciesList.php:135
+msgid "Component"
+msgstr "Component"
+
+#: ../classes/DependenciesList.php:135
+msgid "Click for the component's website"
+msgstr "Clic pels components del lloc web"
+
+#: ../classes/DependenciesList.php:136
+msgid "Type"
+msgstr "Tipus"
+
+#: ../classes/DependenciesList.php:138
+msgid "Information"
+msgstr "Informació"
+
+#: ../classes/DependenciesList.php:178
+msgid "Install message"
+msgstr "Missatge d'instal·lació"
+
+#: ../classes/DependenciesList.php:181
+msgid "Detection message"
+msgstr "Missatge de detecció"
+
+#: ../classes/DependenciesList.php:184
+msgid "To install"
+msgstr "Per instal·lar"
+
+#: ../classes/DependenciesList.php:206
+msgid "Dependencies"
+msgstr "Dependències"
+
+#: smarty.txt:2
+#, fuzzy
+msgid "Status of all nodes on "
+msgstr "Estat de tots els nodes de"
+
+#: smarty.txt:3
+#, fuzzy
+msgid "Status of all nodes of the "
+msgstr "Estat de tots els nodes de"
+
+#: smarty.txt:4
+msgid "Status of all nodes of the"
+msgstr "Estat de tots els nodes de"
+
+#: smarty.txt:6
+msgid "Node id"
+msgstr "ID del Node"
+
+#: smarty.txt:7
+msgid "Gateway id"
+msgstr "ID de la passarel·la"
+
+#: smarty.txt:9
+msgid "Local content demo"
+msgstr "Demo del contingut local"
+
+#: smarty.txt:10
+msgid "Opened on"
+msgstr "Obert el"
+
+#: smarty.txt:11 smarty.txt:132
+msgid "Online users"
+msgstr "Usuaris connectats"
+
+#: smarty.txt:12 smarty.txt:13
+msgid "days"
+msgstr "dies"
+
+#: smarty.txt:14
+msgid "Login page"
+msgstr "Pàgina d'inici de sessió"
+
+#: smarty.txt:15
+msgid "Portal page"
+msgstr "Pàgina del portal"
+
+#: smarty.txt:17
+msgid "Logged in as"
+msgstr "Connectat com"
+
+#: smarty.txt:18
+msgid "Profile / Settings"
+msgstr "Perfil / Paràmetres"
+
+#: smarty.txt:19
+msgid "Logout"
+msgstr "Tanca la sessió"
+
+#: smarty.txt:20
+msgid "I am not logged in."
+msgstr "No estic connectat"
+
+#: smarty.txt:23
+msgid "user is online at this hotspot"
+msgstr "usuari actiu a aquest node"
+
+#: smarty.txt:24
+msgid "users are online at this hotspot"
+msgstr "usuaris connectats a aquest node"
+
+#: smarty.txt:25
+msgid "Nobody is online at this hotspot"
+msgstr "No hi ha cap usuari connectat"
+
+#: smarty.txt:26
+msgid "Recent Users:"
+msgstr "Usuaris recents:"
+
+#: smarty.txt:27
+msgid "Most Active Users:"
+msgstr "Els usuaris més actius:"
+
+#: smarty.txt:28
+msgid "Login or Signup here"
+msgstr "Inicia la sessió o registra't aquí"
+
+#: smarty.txt:29
+#, fuzzy
+msgid "Login Here"
+msgstr "Pàgina d'inici de sessió"
+
+#: smarty.txt:30
+msgid "Username (or email)"
+msgstr "Nom d'usuari (o correu electrònic)"
+
+#: smarty.txt:31 smarty.txt:53
+msgid "Password"
+msgstr "Contrasenya"
+
+#: smarty.txt:33
+#, fuzzy
+msgid "Signup Here"
+msgstr "Registrar-se"
+
+#: smarty.txt:34
+msgid "Create a free account"
+msgstr "Crea un compte gratuït"
+
+#: smarty.txt:35
+msgid "You must specify your username and password"
+msgstr "Has d'indicar el teu nom d'usuari i contrasenya"
+
+#: smarty.txt:36
+msgid "Show me the closest hotspot"
+msgstr "Mostram el Hotspot més proper"
+
+#: smarty.txt:37
+msgid "Enter your postal code"
+msgstr "Escriu el teu codi postal"
+
+#: smarty.txt:38
+msgid "Show"
+msgstr "Mostra"
+
+#: smarty.txt:39
+msgid "Refresh map"
+msgstr "Refresca el mapa"
+
+#: smarty.txt:42
+msgid "Legend"
+msgstr "Llegenda"
+
+#: smarty.txt:43
+msgid "the hotspot is operational"
+msgstr "el hotspot és actiu"
+
+#: smarty.txt:44
+msgid "the hotspot is down"
+msgstr "el hotspot no és actiu"
+
+#: smarty.txt:45
+msgid "not monitored"
+msgstr "no monitoritzat"
+
+#: smarty.txt:46 smarty.txt:74 smarty.txt:98 smarty.txt:106
+msgid "I'm having difficulties"
+msgstr "Tinc dificultats"
+
+#: smarty.txt:50
+msgid "Register a free account with"
+msgstr "Registra un compte gratuït amb"
+
+#: smarty.txt:51
+msgid "Username desired"
+msgstr "Nom d'usuari desitjat"
+
+#: smarty.txt:52 smarty.txt:80 smarty.txt:111
+msgid "Your email address"
+msgstr "El teu correu electrònic"
+
+#: smarty.txt:54
+msgid "Password (again)"
+msgstr "Contrasenya (un altre cop)"
+
+#: smarty.txt:55
+msgid "Sign-up"
+msgstr "Registrar-se"
+
+#: smarty.txt:56
+msgid "Please note"
+msgstr "Si us plau, recorda"
+
+#: smarty.txt:57
+msgid ""
+"While accounts are free, we <em>strongly</em> suggest that you use your "
+"previously created account if you have one."
+msgstr ""
+"Essent els comptes gratuïts, et recomanem <em>ferventment</em> que empris, "
+"si en tens, un creat anteriorment."
+
+#: smarty.txt:58
+msgid ""
+"<b>Your email address must be valid</b> in order for your account to be "
+"activated."
+msgstr ""
+"Necessites una <b>adreça vàlida de correu electrònic</b> per activar el teu "
+"compte."
+
+#: smarty.txt:59
+msgid "A validation email will be sent to that email address."
+msgstr ""
+"Enviaré un correu electrònic de validació a la teva adreça de correu "
+"electrònic."
+
+#: smarty.txt:60
+msgid "To fully activate your account you must respond to that email."
+msgstr "Has de respondre aquest correu per activar el teu compte."
+
+#: smarty.txt:61
+msgid "Note to free web-based email users"
+msgstr "Avís per usuaris que empren correus web gratuïts"
+
+#: smarty.txt:62
+msgid ""
+"Sometimes our validation email ends up in the 'spam' folder of some "
+"providers. If you have not received any email with the validation URL 5 "
+"minutes after submitting this form, please take a look in the spam folder."
+msgstr ""
+"Alguns proveïdors tracten el correu de validació com a correu brossa. Visita "
+"la safata de correu brossa si no has rebut el correu amb l'URL de validació "
+"5 minuts després d'enviar aquest formulari."
+
+#: smarty.txt:63
+msgid "You can also use the following links if you need help"
+msgstr "També pots emprar els següents enllaços si necessites ajuda"
+
+#: smarty.txt:66
+#, php-format
+msgid "Status of the %d open %s Hotspots"
+msgstr "Estat dels %d Hotspots de la xarxa %s"
+
+#: smarty.txt:67
+msgid "Hotspot / Status"
+msgstr "Hotspot / Estat"
+
+#: smarty.txt:69
+msgid "Location"
+msgstr "Ubicació"
+
+#: smarty.txt:70
+msgid "Hotspot in testing phase"
+msgstr "Hotspot en proves"
+
+#: smarty.txt:71
+msgid "Hotspot not monitored"
+msgstr "Hotspot sense monitoritzar"
+
+#: smarty.txt:72
+#, php-format
+msgid "Opened on %s"
+msgstr "Obert el %s"
+
+#: smarty.txt:78
+msgid "Lost password"
+msgstr "Contrasenya perduda"
+
+#: smarty.txt:79 smarty.txt:103
+msgid "Your username"
+msgstr "El teu nom d'usuari"
+
+#: smarty.txt:81
+msgid "Reset my password"
+msgstr "Canvia la meva contrasenya"
+
+#: smarty.txt:82
+msgid "Please enter your username or email address to reset your password"
+msgstr ""
+"Si us plau, introdueixi el seu nom d'usuari o adreça de correu electrònic "
+"per a resetejar la vostra contrasenya."
+
+#: smarty.txt:83
+#, php-format
+msgid "The %s network currently has one valid user."
+msgstr "La xarxa %s té actualment 1 usuari vàlid."
+
+#: smarty.txt:84
+#, php-format
+msgid "The %s network currently has %d valid users."
+msgstr "La xarxa %s actualment té %d usuaris vàlids."
+
+#: smarty.txt:85 smarty.txt:116
+msgid "One user is currently online."
+msgstr "Un usuari connectat"
+
+#: smarty.txt:86 smarty.txt:117
+#, php-format
+msgid "%d users are currently online."
+msgstr "%d usuaris connectats"
+
+#: smarty.txt:87 smarty.txt:118
+msgid "This network currently has 1 deployed hotspot."
+msgstr "Aquesta xarxa té 1 node operatiu."
+
+#: smarty.txt:88 smarty.txt:119
+#, php-format
+msgid "This network currently has %d deployed hotspots."
+msgstr "Aquesta xarxa te %d hotspots operatius"
+
+#: smarty.txt:89 smarty.txt:120
+msgid "One hotspot is currently operational."
+msgstr "Un hotspot operatiu a hores d'ara"
+
+#: smarty.txt:90 smarty.txt:121
+#, php-format
+msgid "%d hotspots are currently operational."
+msgstr "%d hotspots operatius a hores d'ara"
+
+#: smarty.txt:91 smarty.txt:122
+msgid ""
+"One hotspot isn't monitored so we don't know if it's currently operational."
+msgstr ""
+"Un hotspot no és monitoritzat, per aquesta raó, no sé si en aquest moment és "
+"actiu."
+
+#: smarty.txt:92 smarty.txt:123
+#, php-format
+msgid ""
+"%d hotspots aren't monitored so we don't know if they are currently "
+"operational."
+msgstr ""
+"%d hotspots no són monitoritzats, per aquesta raó, no sé si en aquest moment "
+"són actius."
+
+#: smarty.txt:93
+msgid "Please get in touch with "
+msgstr "Si us plau, contacta amb"
+
+#: smarty.txt:94
+msgid ""
+"We are a not-for-profit group dedicated to making no-fee wireless Internet "
+"access generally available."
+msgstr ""
+"Som una associació sense ànim de lucre dedicada a establir conexions "
+"gratuïtes sense fils a Internet d'accés públic."
+
+#: smarty.txt:95
+msgid ""
+"Our aim is to encourage the growth of wireless networking and to build "
+"community in interesting and innovative ways."
+msgstr ""
+"El nostre objectiu és promocionar el creixement de xarxes sense fils i fer "
+"comunitat d'una forma innovadora i interessant"
+
+#: smarty.txt:96
+msgid ""
+"We do this by setting up wireless Internet networks in parks, cafés, "
+"restaurants, bars and other publically-accessible locations across the city."
+msgstr ""
+"Ho fem instal·lant conexions públiques sense fils en parcs, cafeteries, "
+"restaurants, bars i d'altres llocs d'accés públic de la ciutat."
+
+#: smarty.txt:97
+msgid "For a complete and up-to-date listing of our nodes, visit"
+msgstr "Per una llista completa i actualitzada dels nuestres nodes, visita"
+
+#: smarty.txt:102
+msgid "Re-send validation email"
+msgstr "Reenviar el correu de validació"
+
+#: smarty.txt:104
+msgid "Re-send"
+msgstr "Reenviar"
+
+#: smarty.txt:105
+msgid ""
+"Please enter your username and the validation email will be resent to your "
+"email address"
+msgstr ""
+"Si us plau, introdueix el teu nom d'usuari i enviarem de nou el correu de "
+"validació a la teva adreça de correu"
+
+#: smarty.txt:110
+msgid "Lost username"
+msgstr "Nom d'usuari perdut"
+
+#: smarty.txt:112
+msgid "Retrieve"
+msgstr "Recupera"
+
+#: smarty.txt:113
+msgid "Please enter your email address to recover your username"
+msgstr ""
+"Si us plau, introdueix la teva dreça de correu electrònic per recuperar el "
+"teu nom d'usuari"
+
+#: smarty.txt:114
+#, fuzzy
+msgid "The server currently has one valid user."
+msgstr "La xarxa %s té actualment 1 usuari vàlid."
+
+#: smarty.txt:115
+#, fuzzy, php-format
+msgid "The server currently has %d valid users."
+msgstr "La xarxa %s actualment té %d usuaris vàlids."
+
+#: smarty.txt:124
+msgid "User list"
+msgstr "Llista d'usuari"
+
+#: smarty.txt:125
+msgid "Sort by:"
+msgstr "Ordena per:"
+
+#: smarty.txt:126
+msgid "Direction:"
+msgstr "Adreça"
+
+#: smarty.txt:127
+msgid "Sort"
+msgstr "Ordena"
+
+#: smarty.txt:130
+msgid "Registered On"
+msgstr "Registrat el"
+
+#: smarty.txt:135
+msgid "Origin"
+msgstr "Origen"
+
+#: smarty.txt:136
+msgid "Logged in Since"
+msgstr "Connectat des de"
+
+#: smarty.txt:137
+msgid "Traffic IN/OUT"
+msgstr "Tràfic d'ENTRADA/SORTIDA"
+
+#~ msgid "No nodes could not be found in the database"
+#~ msgstr "No trobo cap node a la base de dades"
+
+#~ msgid "Is this network the default network?"
+#~ msgstr "És aquesta la xarxa per defecte?"
+
+#~ msgid "Server access control"
+#~ msgstr "Control d'accés al servidor"
+
+#~ msgid "Component %s is not installed (not found in %s)"
+#~ msgstr "El componente %s no esta instalado( no encuentrado en %s)"
+
+#, fuzzy
+#~ msgid "Message"
+#~ msgstr "Mensaje de Error"
+
+#~ msgid "You MUST fill in all the fields."
+#~ msgstr "Debe de llenar TODOS los campos"
+
+#~ msgid "Your password has been changed succesfully."
+#~ msgstr "Su clave fue cambiada existosamente."
+
+#~ msgid "Change password"
+#~ msgstr "Cambiar clave"
+
+#~ msgid "I have trouble connecting and I would like some help"
+#~ msgstr "Estoy teniendo problemas al conectarme y deseo ayuda"
+
+#~ msgid "User Profile"
+#~ msgstr "Perfil de Usuario"
+
+#~ msgid ""
+#~ "An email with confirmation instructions was sent to your email address.  "
+#~ "Your account has been granted 15 minutes of access to retrieve your email "
+#~ "and validate your account.  You may now open a browser window and go to "
+#~ "any remote Internet address to obtain the login page."
+#~ msgstr ""
+#~ "Un correo ha sido enviado con las instrucciones para confirmacion. Se le "
+#~ "ha dado 15 minutos para poder accesar su correo y recobrar el mensaje que "
+#~ "se le ha mandado y validar la cuenta. Puede abrir un navegador y navegar  "
+#~ "a cualquier sitio web para obtener una pagina de inicio de sesi&acute;n."
+
+#~ msgid ""
+#~ "Accept users with no email adresses (Normally, NoCat usernames are "
+#~ "expected to be the user's email adress, and the username is generated "
+#~ "from the prefix."
+#~ msgstr ""
+#~ "Aceptar usuarios sin cuenta de correo, (En General, Usuarios de NoCat "
+#~ "esperan  ser utilizados como el email del usuario, y los usuarios se "
+#~ "generan del prefijo"
+
+#~ msgid "Sorry, the user must have a email adress."
+#~ msgstr "Lo siento, el usuario debe de tener una cuenta de usuario."
+
+#~ msgid "Nobody is online at this hotspot..."
+#~ msgstr "Nadie esta en linea en este hotspot..."
+
+#~ msgid "You are not currently at a hotspot..."
+#~ msgstr "Usted no esta actualmente en un hotspot..."
+
+#~ msgid "Content from:"
+#~ msgstr "Contenido de:"
+
+#~ msgid ""
+#~ "Unable to retrieve schema version. The database schema is too old to be "
+#~ "updated."
+#~ msgstr ""
+#~ "No se puede obtener la revision del schema. La base de datos es muy vieja "
+#~ "para ser actualizada."
+
+#~ msgid "addSourceFeed(): url is empty!"
+#~ msgstr "addSourceFeed(): url esta vacio!"
+
+#~ msgid "computePublicationInterval(): Missing feed!"
+#~ msgstr "computePublicationInterval: Falta la Fuente!"
+
+#~ msgid "computePublicationInterval(): uasort() failed"
+#~ msgstr "computePublicationInterval(): fallo uasort()"
+
+#~ msgid "get_rss_info(): Feed missing"
+#~ msgstr "get_rss_info(): Falta la fuente"
+
+#~ msgid "get_rss_info(): uasort() failed!"
+#~ msgstr "get_rss_info(): fallo uasort()!"
+
+#~ msgid "Source: "
+#~ msgstr "Fuente: "
+
+#~ msgid "Today"
+#~ msgstr "Hoy"
+
+#~ msgid ""
+#~ "For some reason, we were unable to determine the web site you initially "
+#~ "wanted to see.  You should now enter a web address in your URL bar."
+#~ msgstr ""
+#~ "Por alguna raz&oacute;n, no podemos determinar el sitio que inicialmente "
+#~ "queria ver. Usted debe de introducir una direcci&oacuteln en en la barra "
+#~ "de URL."
+
+#~ msgid "owner"
+#~ msgstr "due&ntilde;o"
+
+#~ msgid "technical officer"
+#~ msgstr "oficial tecnico"
+
+#~ msgid "Error while obtaingin your LDAP information."
+#~ msgstr "Error al obtener la informaci&oacute;n de LDAP"
+
+#~ msgid "Real Name"
+#~ msgstr "Nombre Real"
+
+#~ msgid "Website"
+#~ msgstr "Sitio Web"
+
+#~ msgid ""
+#~ "Note:  This is actually a list of how many new user's first connection "
+#~ "occured at each hotspot, taking report restrictions into account."
+#~ msgstr ""
+#~ "Nota: Esta es una lista de cuentas primeras conexiones de nuevos usuarios "
+#~ "han ocurrido en cada hotspot, tomando en cuenta las restricciones del "
+#~ "reporte."
+
+#~ msgid "AllowedNodes:"
+#~ msgstr "Nodos Permitodos:"
+
+#~ msgid ""
+#~ "(Content can be displayed on ANY node unless one or more nodes are "
+#~ "selected)"
+#~ msgstr ""
+#~ "(El contenido puede ser desplegar en cualquier nodo, hasta que uno o mas "
+#~ "nodos sean selecionados)"
+
+#~ msgid "Displayed content:"
+#~ msgstr "Desplegar Contenido"
+
+#~ msgid "Add a new displayed content OR select an existing one"
+#~ msgstr "Agregar un nuevo contenido o selecionar uno existente"
+
+#~ msgid "Content group elements:"
+#~ msgstr "Elementos de grupo del contenido:"
+
+#~ msgid "Add a new content OR select previously created content"
+#~ msgstr "Agregar un nuevo contenido o selecionar un previamente creado"
+
+#~ msgid ""
+#~ "Sorry, no elements available at this hotspot or all elements of the "
+#~ "content group have already been shown"
+#~ msgstr ""
+#~ "Lo siento, no hay elementos disponible en este hotspot o todos los "
+#~ "elementos del grupo de contenido  ya han sido mostrados"
+
+#~ msgid ""
+#~ "How much bonus feeds that do not publish as often get over feed that "
+#~ "publish more often.\n"
+#~ "                    The default is 0.75, with a typical range between 0 "
+#~ "and 1.\n"
+#~ "                    At 0, you have a classic RSS aggregator, meaning the "
+#~ "n most recent entries picked from all feeds\n"
+#~ "                    will be displayed. 1 is usually as high as you'll "
+#~ "want to go:  Assuming that all\n"
+#~ "                    an homogenous internal distribution (ex:  one feed "
+#~ "publishes exactly one entry a day, the\n"
+#~ "                    second once every two days, and the third once every "
+#~ "three days), and you ask for 15 entries,\n"
+#~ "                    there will be 5 of each.  While that may not sound "
+#~ "usefull, it still is, as the feed's distribution is\n"
+#~ "                    usually not homogenous."
+#~ msgstr ""
+#~ "Cuantas fuentes adicionales que no seran publicadas tan frecuente sobre "
+#~ "las fuentesque si se publican frecuente\n"
+#~ "\tPor defecto es 0.75, el cual es un rango tipico entre 0 y 1\n"
+#~ ".En 0, se tendra un clasico Agregador RSS, esto significa que la ultima "
+#~ "entrada de la fuente sera desplegada. 1 es usualmente es lo mas alto que "
+#~ "se desea llegar: Asumiendo  que existe una distribucion homogenea de las "
+#~ "fuentas publicadas en un dia, el segundo cada dos dias y el tercero cada "
+#~ "3 dias), si pide por 15 elementos, se obtendra 5 de cada uno.\n"
+#~ " Aunque no sea util, porque la distribucion de la fuente usualmenbte no "
+#~ "es homogenea"
+
+#~ msgid ""
+#~ "Set the oldest entries (in seconds) you are willing to see.  Any entries "
+#~ "older than this will not\n"
+#~ "                    be considered at all for display, even if it means "
+#~ "that the configured number of items to be displayed isn't reached.\n"
+#~ "                    It's only usefull if all your feed publish very "
+#~ "rarely, and you don't want very old entries to show up."
+#~ msgstr ""
+#~ "La ultima entradas (en segundos) sera la que usted podra ver. Otros "
+#~ "elementos  no seran considerados para ser mostrados. Solo es utili si "
+#~ "cada fuente es publicada  no tan frecuente, y no podra ver los ultimos "
+#~ "elementos."
+
+#~ msgid ""
+#~ "WARNING:  This feed does not include the publication dates.\n"
+#~ "                                                                                     The "
+#~ "system needs to be able to compute approximate publication\n"
+#~ "                                                                                     date "
+#~ "for each entry, so the entry can be weighted against the\n"
+#~ "                                                                                     others. "
+#~ "In order for the aggregator to do a good job, you need\n"
+#~ "                                                                                     to "
+#~ "estimate fublication frequency of the items, in days.\n"
+#~ "                                                                                     If "
+#~ "unset, defaults to one day."
+#~ msgstr ""
+#~ "Advertencia: Esta fuente no incluye fecha de publicacion\n"
+#~ "El sitema necesita calcular la fecha de publicacion aproximada\n"
+#~ "por cada elemento, para que el elemento tenga un peso contra otro.\n"
+#~ "Otros agregados para hacer un buen trabajo, neceistan estimar la fecha de "
+#~ "publicacion de los elementos, por dia. Se no sea utiliza, por defecto se "
+#~ "utiliza 1 dia."
+
+#~ msgid ""
+#~ "The bias to be given to the source by the selection algorithm.\n"
+#~ "                                                        Bias must be > "
+#~ "0 , typical values would be between 0.75 and 1.5\n"
+#~ "                                                        and default is 1 "
+#~ "(no bias).  A bias of 2 will cause the items\n"
+#~ "                                                        to \"look\" twice "
+#~ "as recent to the algorithm. A bias of 0.5 to\n"
+#~ "                                                        look twice as "
+#~ "old. Be carefull, a bias of 2 will statistically\n"
+#~ "                                                        because the feed "
+#~ "to have MORE than twice as many items displayed."
+#~ msgstr ""
+#~ "El bias sera dado segun la fuente del algoritmo de seleccion\n"
+#~ "El bias debe ser > 0, los valores tipos son de 0.75 a 1.5\n"
+#~ " y por defecto es 1 ( no bias). Un bias de 2 casuara que los elementos "
+#~ "sea buscados dos veces que el algoritmo estipule. Un bias de 0.5 mirara 2 "
+#~ "veces mas viejo. Tenga precuacion, Un bias de 2 causuara que "
+#~ "estadisticamente el agregador muestre el doble de elementos."
+
+#~ msgid "You do not have administrator privileges"
+#~ msgstr "No tiene privilegios de administrador"
+
+#~ msgid "You do not have owner privileges"
+#~ msgstr "No tiene privilegios de due&ntilde;o"
+
+#~ msgid "Could not update real name."
+#~ msgstr "No se puede actualizar el nombre."
+
+#~ msgid "Could not update website URL."
+#~ msgstr "No se puede actualizar el URL."
+
+#~ msgid "Could not update username visibility flag."
+#~ msgstr "No se puede actualizar la bandera de visibilidad del usuario."
+
+#~ msgid ""
+#~ "Sorry, your %s minutes grace period to retrieve your email and validate "
+#~ "your account has now expired. You will have to connect to the internet "
+#~ "and validate your account from another location or create a new account. "
+#~ "For help, please %s click here %s."
+#~ msgstr ""
+#~ "Lo siento, los %s minutos del periodo de gracio que se le dio para "
+#~ "obtener su email   y validar su cuenta han expirado. Ahora necesitara "
+#~ "conectarse a la red y validar su  cuenta en otra ubicacion o crear una "
+#~ "nueva cuenta. Para ayuda, porfavor %s haga clic aqui %s."
+
+#~ msgid "Real name"
+#~ msgstr "Nombre Real"
+
+#~ msgid "Website URL"
+#~ msgstr "Sitio Web"
+
+#~ msgid ""
+#~ "Network::getDefaultNetwork:  Fatal error: Unable to find the default "
+#~ "network!"
+#~ msgstr ""
+#~ "Network::getDefaultNetwork:  Error fatal: no se puede encontar la red por "
+#~ "defecto!"
+
+#~ msgid ""
+#~ "Unable to retrieve the selected network, the %s REQUEST parameter does "
+#~ "not exist"
+#~ msgstr ""
+#~ "No se puede obtener la informacion de la red seleccionada, el %s paramero "
+#~ "de PEDIDO no existe"
+
+#~ msgid ""
+#~ "Network authenticator class.  The subclass of Authenticator to be used "
+#~ "for user authentication (ex: AuthenticatorRadius)"
+#~ msgstr ""
+#~ "Clase del autenticador de la red. La subclase del Autenticador que sera "
+#~ "utilizado para autenticacion del usuario (Ej: AuthenticatorRadius)"
+
+#~ msgid ""
+#~ "The explicit parameters to be passed to the authenticator (ex: "
+#~ "'my_network_id', '192.168.0.11', 1812, 1813, 'secret_key', 'CHAP_MD5')"
+#~ msgstr ""
+#~ "Los parametros explicitos que seran utilizados para el authenticador (ej: "
+#~ "'my_network_id', '192.168.0.11', 1812, 1813, 'secret_key', 'CHAP_MD5')"
+
+#~ msgid "This will be the from adress of the validation email"
+#~ msgstr ""
+#~ "Esta sera la direccion que aparecera en el PARA en el email de validacion"
+
+#~ msgid "New node ID"
+#~ msgstr "Nuevo nodo de ID"
+
+#~ msgid "Create a new node"
+#~ msgstr "Crear un nuevo nodo"
+
+#~ msgid "MAC adresses"
+#~ msgstr "Direcciones MAC"
+
+#~ msgid ""
+#~ "Server::getDefaultServer: Fatal error: Unable to find the default server!"
+#~ msgstr ""
+#~ "Server::getDefaultServer: Error fatal: No se puede encontrar servidor por "
+#~ "defecto"
+
+#~ msgid ""
+#~ "Server::getCurrentServer: Fatal error: Unable to find current server in "
+#~ "the database!"
+#~ msgstr ""
+#~ "Server::getCurrentServer: Error fatal: No se puede encontrar actual "
+#~ "servidor en la base de datos!"
+
+#~ msgid "Server:"
+#~ msgstr "Servidor:"
+
+#~ msgid "Server::getSelectServerUI: Fatal error: No servers in the database!"
+#~ msgstr ""
+#~ "Server::getSelectServerUI: Error fatal: no hay servidores en la base de "
+#~ "datos!"
+
+#~ msgid "Add a new server with ID"
+#~ msgstr "Agregar un nuevo servidor con ID"
+
+#~ msgid "Server ID"
+#~ msgstr "ID del servidor"
+
+#~ msgid "Server name"
+#~ msgstr "Nombre largo del servidor"
+
+#~ msgid "Is this server the default server?"
+#~ msgstr "Es este servidor el servidor por defecto?"
+
+#~ msgid ""
+#~ "Cannot delete default server, create another one and select it before "
+#~ "removing this one."
+#~ msgstr ""
+#~ "No se puede borrar servidor predeterminado, cree un nuevo y seleccionelo "
+#~ "antesde borrar este."
+
+#~ msgid "Sorry, no content available in the database"
+#~ msgstr "Lo siento, no hay contenido en la base de datos"
+
+#~ msgid "Add existing content"
+#~ msgstr "Agregar contenido existente"
+
+#~ msgid "Project sponsor:"
+#~ msgstr "Patrocinador del Proyecto"
+
+#~ msgid "Is persistent (reusable and read-only)?"
+#~ msgstr "Es persistente (reusable y solo escritura)?"
+
+#~ msgid "Sponsor of this project:"
+#~ msgstr "Patrocinador de este proyecto:"
+
+#~ msgid "You do not have permissions to access any administration functions."
+#~ msgstr ""
+#~ "No tiene permisos para acceder a ninguna funci&oacute;n administrativa."
+
+#~ msgid "Unknown section:"
+#~ msgstr "Seccion no identificada:"
+
+#~ msgid "Accounts on %s are and will stay completely free."
+#~ msgstr ""
+#~ "Las cuentas de Usuarios en %s son y seran siempre completamente gratuitas."
+
+#~ msgid "Please inform us of any problem or service interruption at: %s"
+#~ msgstr ""
+#~ "<br>Por favor informe cualquier problema o interecupcion de servicio a: %s"
+
+#~ msgid "This node already exists."
+#~ msgstr "El nodo ya existe."
+
+#~ msgid "The node %s could not be found in the database!"
+#~ msgstr "El nodo %s no puede ser encontrado en la base de datos!"
+
+#~ msgid "ID"
+#~ msgstr "ID"
+
+#~ msgid "Geocode only"
+#~ msgstr "Solamente Codigo Geo (GEOCODE)"
+
+#~ msgid "Geocode location"
+#~ msgstr "Ubicacion Geocode"
+
+#~ msgid ""
+#~ "URL to show instead of the portal (if this is not empty, the portal will "
+#~ "be disabled and this URL will be shown instead)"
+#~ msgstr ""
+#~ "URL que sera mostrado en vez del portal ( si este no esta vacio, el "
+#~ "portal sera  desactivado y este URL sera mostrado en vez)"
+
+#~ msgid "Node owners"
+#~ msgstr "Duenos del Nodo"
+
+#~ msgid "Remove technical officer"
+#~ msgstr "Quitar oficial Tecnico"
+
+#~ msgid "Add technical officer"
+#~ msgstr "Agregar Oficial Tecnico"
+
+#~ msgid "Technical officers"
+#~ msgstr "Oficiales Tecnicos"
+
+#~ msgid "Invalid user!"
+#~ msgstr "Usuario Invalido!"
+
+#~ msgid "The user is already a technical officer of this node."
+#~ msgstr "El usuario ya es un oficial tecnico en este nodo"
+
+#~ msgid "Could not add owner"
+#~ msgstr "No se puede agregar due&ntilde;o"
+
+#~ msgid "Could not add tech officer"
+#~ msgstr "No se puede agregar oficial tecnico"
+
+#~ msgid "Could not set existing user as tech officer"
+#~ msgstr "No se puede espeficiar el usuario existente como oficial tecnico"
+
+#~ msgid "Could not remove owner"
+#~ msgstr "No se puede quitar el due&ntilde;o"
+
+#~ msgid "Could not remove tech officer"
+#~ msgstr "No se puede quitar el oficial tecnico"
+
+#~ msgid "(again)"
+#~ msgstr "(otra vez)"
+
+#~ msgid ""
+#~ "Please enter your current username, your current password, and your new "
+#~ "password (with confirmation)"
+#~ msgstr ""
+#~ "Por favor introduzca su usuario actual, su clave actual y su nueva clave "
+#~ "(con confirmacion)"
+
+#~ msgid "Frequently Asked Questions"
+#~ msgstr "Preguntas frecuentemente preguntadas"
+
+#~ msgid "Do I have to pay to get access to the Internet"
+#~ msgstr "Debo de pagar por el acceso a Internet?"
+
+#~ msgid "A:"
+#~ msgstr "R:"
+
+#~ msgid ""
+#~ "No, Internet access is provided for free by the venue you are actually at"
+#~ msgstr ""
+#~ "No, el Acceso a Internet es dado gratis por el proveedor donde "
+#~ "actualmente esta"
+
+#~ msgid "I have failed to validate my account in x minutes"
+#~ msgstr "No puede validad mi cuenta en los x minutos"
+
+#~ msgid ""
+#~ "You have been given an amount of minutes of Internet access in order to "
+#~ "retrieve the email we sent to you and validate your free account. What "
+#~ "you can do now is either <a href='signup.php'>create a new account</a> "
+#~ "and then validate it properly, or get on the Internet from somewhere else "
+#~ "(home, free Internet cafe, etc.) and validate the account you just "
+#~ "created. If you need us to resend you the validation email, please <a "
+#~ "href='resend_validation.php'>click here</a>"
+#~ msgstr ""
+#~ "Se le ha dado un tiempo determinado de minutos para Accesar interneta "
+#~ "para poder recobrar el email que le hemos mandado para poder validar su "
+#~ "cuenta gratis. Lo que puede hacer es <a href='signup.php'>crear una nueva "
+#~ "cuetna</a> y despues validarla o  obtener acceso a Internet de otro lado "
+#~ "(su casa, trabajo, etc.) y validar la queda  desde alli. Si necesita que "
+#~ "le mandemos de nuevo el email de validacion haga <a>clic aqui</a>"
+
+#~ msgid ""
+#~ "What steps are required in order to create and validate a new account?"
+#~ msgstr ""
+#~ "Que pasos debo de tomar para poder crear y validar una cuenta nueva?"
+
+#~ msgid "Here is an overview of the steps"
+#~ msgstr "En resumen estos son los pasos"
+
+#~ msgid ""
+#~ "Pick a username, enter your email address, and enter the password you "
+#~ "would like. An email will be sent to you with a link you can click to "
+#~ "validate your account"
+#~ msgstr ""
+#~ "Primero elija el usuario, debe de introducir su correo electronico y "
+#~ "introducir  la clave deseada. Un email sera enviado a su correo con el "
+#~ "link que utilizara para validar su cuenta"
+
+#~ msgid ""
+#~ "Once the account is created, you need Internet access in order to check "
+#~ "your email and click the validation link. In order to get temporary "
+#~ "access to the Internet during your validation period, visit any URL (for "
+#~ "example www.google.com) to get the login page again"
+#~ msgstr ""
+#~ "Una vez esta cuenta este creada, usted necesita acceso a internet para "
+#~ "poder revisar su correo y dar clic en el link de validacion. Para obtener "
+#~ "acceso temporal a Internet durante el periodo de validacion, visite cual "
+#~ "URL (por ejemplo www.google.com) para obtener la pagina de inicio de "
+#~ "sesion."
+
+#~ msgid ""
+#~ "Enter your login information. You will be given 15 minutes of Internet "
+#~ "access, plenty of time to check your email and click on the link"
+#~ msgstr ""
+#~ "Introduzca su informaci&oactue;on para iniciar sesi&oacute;n. Se le dara "
+#~ "15 minutos de acceso a Internet, tiempo suficiente para chequear su email "
+#~ "y hacer click en la direcci&oacute;n"
+
+#~ msgid "Once that last step is done, you will have full free Internet access"
+#~ msgstr ""
+#~ "Una vez se termine el ultimo paso, usted tendra acceso completo de "
+#~ "Internet"
+
+#~ msgid "User logs"
+#~ msgstr "Logs de usuarios"
+
+#~ msgid "Nodes"
+#~ msgstr "Nodos"
+
+#~ msgid "Add new Node"
+#~ msgstr "Agregar nuevo nodo"
+
+#~ msgid "Networks"
+#~ msgstr "Redes"
+
+#~ msgid "Servers"
+#~ msgstr "Servidores"
+
+#~ msgid "My Profile"
+#~ msgstr "Mi Perfil"
+
+#~ msgid "Where am I?"
+#~ msgstr "Donde Estoy?"
+
+#~ msgid "Building your wireless community"
+#~ msgstr "Construyendo tu comunidad inalambrica"
+
+#~ msgid "Deployed HotSpots status with coordinates"
+#~ msgstr "Estado de Hotspots activos con coordenadas"
+
+#~ msgid "Use the Internet"
+#~ msgstr "Use Internet"
+
+#~ msgid "Frequently asked questions"
+#~ msgstr "Preguntas m&aacute;s Frecuentes"
+
+#~ msgid ""
+#~ "Your email address must be valid in order for your account to be activated"
+#~ msgstr "Su direccion de correo debe ser valida para poder activar su cuenta"
+
+#~ msgid "Status of the"
+#~ msgstr "Estado "
+
+#~ msgid "open"
+#~ msgstr "abierto"
+
+#~ msgid "Hotspots (Get this list as a <a href='?format=RSS'>RSS feed</a>)"
+#~ msgstr ""
+#~ "de los Hotspots ( obtenga la lista como <a href='?format=RSS'>RSS feed</"
+#~ "a>)"
+
+#~ msgid "The"
+#~ msgstr "La red de"
+
+#~ msgid "network currently has"
+#~ msgstr "actualmente tiene "
+
+#~ msgid "valid"
+#~ msgstr "usuarios"
+
+#~ msgid "user,"
+#~ msgstr "valido,"
+
+#~ msgid "users,"
+#~ msgstr "validos,"
+
+#~ msgid "user is"
+#~ msgstr "usuario es"
+
+#~ msgid "users are"
+#~ msgstr "usuarios son"
+
+#~ msgid "currently online"
+#~ msgstr "esta actualmente en linea"
+
+#~ msgid "It currently has"
+#~ msgstr "Actualmente tiene"
+
+#~ msgid "deployed"
+#~ msgstr "hotspot"
+
+#~ msgid "hotspot,"
+#~ msgstr " activos"
+
+#~ msgid "hotspots,"
+#~ msgstr "s activos"
+
+#~ msgid "hotspot is"
+#~ msgstr "hotspot son"
+
+#~ msgid "hotspots are"
+#~ msgstr "hotspots estan"
+
+#~ msgid "currently operational"
+#~ msgstr "en operaci&oacute;n"
+
+#~ msgid "Administration"
+#~ msgstr "Administraci&oacute;n"
+
+#~ msgid "To login please use your email,(remember to type in the domain)"
+#~ msgstr "Para continuar debes de utilizar tu cuenta de correo"
+
+#~ msgid "I already have an account"
+#~ msgstr "Tengo un email o usuario"
+
+#~ msgid "Configurations of all nodes of the"
+#~ msgstr "Configuracion de todos los nodos de "
+
+#~ msgid "Action"
+#~ msgstr "Acci&oacute;n"
+
+#~ msgid "Owner"
+#~ msgstr "Dueno"
+
+#~ msgid "RSS URL"
+#~ msgstr "URL del RSS"
+
+#~ msgid "Street address"
+#~ msgstr "Direccion"
+
+#~ msgid "Add new node"
+#~ msgstr "Agregar Nuevo Nodo"
+
+#~ msgid "Update node"
+#~ msgstr "Actualizar Nodo"
+
+#~ msgid "Administrators"
+#~ msgstr "Administradores"
+
+#~ msgid "Give a user rights to administer this node"
+#~ msgstr "Dar permisos de administracion de este nodo"
+
+#~ msgid "User ID"
+#~ msgstr "Id del Usuario"
+
+#~ msgid "You must login before you can change your password."
+#~ msgstr "Debe de iniciar sesi&oacute;n antes de poder cambiar su clave."
+
+#~ msgid "Sorry, user %s does not exist !"
+#~ msgstr "Lo siente, el usuario %s no existe !"
+
+#~ msgid "The password for %s has been successfully changed."
+#~ msgstr "La clave para %s ha sido cambiada exitosamente."
+
+#~ msgid "Sorry, invalid change password request !"
+#~ msgstr "Lo siente, cambio invalido de clave !"
+
+#~ msgid "Last update date"
+#~ msgstr "Ultima fecha de actualizaci&oacute;n"
+
+#~ msgid ""
+#~ "(Content can be displayed at any date if no start or end date is "
+#~ "specified.  Warning:  If you do not specify a specifig time of day, "
+#~ "midnight is assumed.)"
+#~ msgstr ""
+#~ "(Contenido puede ser desplegado por cualquier fecha si no ha especificado "
+#~ "la fecha )de empezar o terminar. Precuacion: si no especifica el tiempo "
+#~ "del dia se asume que empieza a media noche"
+
+#~ msgid ""
+#~ "How much bonus feeds that do not publish as often get over feed that "
+#~ "publish more often.\n"
+#~ "                            The default is 0.75, with a typical range "
+#~ "between 0 and 1.\n"
+#~ "                            At 0, you have a classic RSS aggregator, "
+#~ "meaning the n most recent entries picked from all feeds\n"
+#~ "                            will be displayed. 1 is usually as high as "
+#~ "you'll want to go:  Assuming that all\n"
+#~ "                            an homogenous internal distribution (ex:  one "
+#~ "feed publishes exactly one entry a day, the\n"
+#~ "                            second once every two days, and the third "
+#~ "once every three days), and you ask for 15 entries,\n"
+#~ "                            there will be 5 of each.  While that may not "
+#~ "sound usefull, it still is, as the feed's distribution is\n"
+#~ "                            usually not homogenous."
+#~ msgstr ""
+#~ "Cuantas fuentes adicionales que no seran publicadas tan frecuente sobre "
+#~ "las fuentesque si se publican frecuente\n"
+#~ "\tPor defecto es 0.75, el cual es un rango tipico entre 0 y 1\n"
+#~ ".En 0, se tendra un clasico Agregador RSS, esto significa que la ultima "
+#~ "entrada de la fuente sera desplegada. 1 es usualmente es lo mas alto que "
+#~ "se desea llegar: Asumiendo  que existe una distribucion homogenea de las "
+#~ "fuentas publicadas en un dia, el segundo cada dos dias y el tercero cada "
+#~ "3 dias), si pide por 15 elementos, se obtendra 5 de cada uno.\n"
+#~ " Aunque no sea util, porque la distribucion de la fuente usualmenbte no "
+#~ "es homogenea"
+
+#~ msgid ""
+#~ "Set the oldest entries (in seconds) you are willing to see.  Any entries "
+#~ "older than this will not\n"
+#~ "                            be considered at all for display, even if it "
+#~ "means that the configured number of items to be displayed isn't reached.\n"
+#~ "                            It's only usefull if all your feed publish "
+#~ "very rarely, and you don't want very old entries to show up."
+#~ msgstr ""
+#~ "La ultima entradas (en segundos) sera la que usted podra ver. Otros "
+#~ "elementos  no seran considerados para ser mostrados. Solo es utili si "
+#~ "cada fuente es publicada  no tan frecuente, y no podra ver los ultimos "
+#~ "elementos."
+
+#~ msgid ""
+#~ "WARNING:  This feed does not include the publication dates.\n"
+#~ "                                                                                                 The "
+#~ "system needs to be able to compute approximate publication\n"
+#~ "                                                                                                 date "
+#~ "for each entry, so the entry can be weighted against the\n"
+#~ "                                                                                                 others. "
+#~ "In order for the aggregator to do a good job, you need\n"
+#~ "                                                                                                 to "
+#~ "estimate fublication frequency of the items, in days.\n"
+#~ "                                                                                                 If "
+#~ "unset, defaults to one day."
+#~ msgstr ""
+#~ "Advertencia: Esta fuente no incluye fecha de publicacion\n"
+#~ "El sitema necesita calcular la fecha de publicacion aproximada\n"
+#~ "por cada elemento, para que el elemento tenga un peso contra otro.\n"
+#~ "Otros agregados para hacer un buen trabajo, neceistan estimar la fecha de "
+#~ "publicacion de los elementos, por dia. Se no sea utiliza, por defecto se "
+#~ "utiliza 1 dia."
+
+#~ msgid ""
+#~ "The bias to be given to the source by the selection algorithm.\n"
+#~ "                                                                Bias must "
+#~ "be > 0 , typical values would be between 0.75 and 1.5\n"
+#~ "                                                                and "
+#~ "default is 1 (no bias).  A bias of 2 will cause the items\n"
+#~ "                                                                to \"look"
+#~ "\" twice as recent to the algorithm. A bias of 0.5 to\n"
+#~ "                                                                look "
+#~ "twice as old. Be carefull, a bias of 2 will statistically\n"
+#~ "                                                                cause the "
+#~ "feed to have MORE than twice as many items displayed."
+#~ msgstr ""
+#~ "El bias sera dado segun la fuente del algoritmo de seleccion\n"
+#~ "El bias debe ser > 0, los valores tipos son de 0.75 a 1.5\n"
+#~ " y por defecto es 1 ( no bias). Un bias de 2 casuara que los elementos "
+#~ "sea buscados dos veces que el algoritmo estipule. Un bias de 0.5 mirara 2 "
+#~ "veces mas viejo. Tenga precuacion, Un bias de 2 causuara que "
+#~ "estadisticamente el agregador muestre el doble de elementos."
+
+#~ msgid ""
+#~ "Server::getCurrentServer: Fatal error: Unable to find a server matching "
+#~ "hostname %s in the database!"
+#~ msgstr ""
+#~ "Server::getCurrentServer: Error Fatal: No se puede econtrar un servidor "
+#~ "con nombre%s en la base de datos!"
+
+#~ msgid "Get this list as a PDF file"
+#~ msgstr "Obtenga la lista como un archivo PDF"
+
+#~ msgid "Get this list as a RSS feed"
+#~ msgstr "Obtenga la lista como una fuente de RSS"
+
+#~ msgid "Get this list for Google Earth"
+#~ msgstr "Obtenga la lista para Google Earth"
+
+#~ msgid "La Red %s actualmente tiene un usuario valido."
+#~ msgstr "La Red %s tiene un usuario valido."
+
+#~ msgid "La Red %s actualmente tiene %d usuarios validos."
+#~ msgstr "La Red %s tiene %d usuarios validos"
+
+#~ msgid "One hotspot is currently operationnal."
+#~ msgstr "Un hotspot esta en operaci&oacute;n"
+
+#~ msgid "%d hotspots are currently operationnal."
+#~ msgstr "%d numero de hotspots en operaci&oacute;n."
+
+#~ msgid ""
+#~ "Because of one hotspot not being monitored we don't know if it is "
+#~ "currently operationnal."
+#~ msgstr ""
+#~ "Porque uno de nuestros hotspots no es monitoreado, no sabemos si esta "
+#~ "funciando."
+
+#~ msgid ""
+#~ "Because of %d hotspots not being monitored we don't know if they are "
+#~ "currently operationnal."
+#~ msgstr ""
+#~ "Debido a los %d hotspots que no son monitoreados, no sabemos si estan "
+#~ "funcionando"
+
+#~ msgid ""
+#~ "The bias to be given to the source by the selection algorithm.\n"
+#~ "                                                                                    Bias "
+#~ "must be > 0 , typical values would be between 0.75 and 1.5\n"
+#~ "                                                                                    and "
+#~ "default is 1 (no bias).  A bias of 2 will cause the items\n"
+#~ "                                                                                    to "
+#~ "\"look\" twice as recent to the algorithm. A bias of 0.5 to\n"
+#~ "                                                                                    look "
+#~ "twice as old. Be carefull, a bias of 2 will statistically\n"
+#~ "                                                                                    cause "
+#~ "the feed to have MORE than twice as many items displayed."
+#~ msgstr ""
+#~ "El bias sera dado segun la fuente del algoritmo de seleccion\n"
+#~ "El bias debe ser > 0, los valores tipos son de 0.75 a 1.5\n"
+#~ " y por defecto es 1 ( no bias). Un bias de 2 casuara que los elementos "
+#~ "sea buscados dos veces que el algoritmo estipule. Un bias de 0.5 mirara 2 "
+#~ "veces mas viejo. Tenga precuacion, Un bias de 2 causuara que "
+#~ "estadisticamente el agregador muestre el doble de elementos."
+
+#~ msgid "Add reusable content from library"
+#~ msgstr "Agregar contenido reusable a la libreria"
Index: /branches/newtoken/wifidog/locale/gensmarty.pl
===================================================================
--- /branches/newtoken/wifidog/locale/gensmarty.pl	(revision 1297)
+++ /branches/newtoken/wifidog/locale/gensmarty.pl	(revision 1297)
@@ -0,0 +1,12 @@
+#!/usr/bin/perl -w
+
+open INPUT, "<$ARGV[0]";
+while(<INPUT>) {
+    while ($_ =~ m/{"(.*?)"\|_.*}/) {
+        if ($1) {
+            print "_(\"$1\")\n";
+        }
+        $_ = $';
+    }
+}
+close INPUT;
Index: /branches/newtoken/wifidog/locale/pt_PT/LC_MESSAGES/messages.po
===================================================================
--- /branches/newtoken/wifidog/locale/pt_PT/LC_MESSAGES/messages.po	(revision 1397)
+++ /branches/newtoken/wifidog/locale/pt_PT/LC_MESSAGES/messages.po	(revision 1397)
@@ -0,0 +1,6390 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-26 11:47-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Miguel M. Almeida <miguelcma AT gmail DOT com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../node_list.php:131 ../classes/Node.php:323 ../classes/Node.php:685
+msgid "Deployed"
+msgstr "Em funcionamento"
+
+#: ../node_list.php:132 ../classes/Node.php:324 ../classes/Node.php:686
+msgid "In planning"
+msgstr "Em planeamento"
+
+#: ../node_list.php:132 ../classes/Node.php:325 ../classes/Node.php:687
+msgid "In testing"
+msgstr "Em fase de teste"
+
+#: ../node_list.php:132 ../classes/Node.php:326 ../classes/Node.php:688
+msgid "Non-Wifidog node"
+msgstr "Nodo sem Wifidog"
+
+#: ../node_list.php:132 ../classes/Node.php:327 ../classes/Node.php:689
+msgid "Permanently closed"
+msgstr "Fechado permanentemente"
+
+#: ../node_list.php:132 ../classes/Node.php:328 ../classes/Node.php:690
+msgid "Temporarily closed"
+msgstr "Fechado temporariamente"
+
+#: ../node_list.php:173 ../classes/NodeLists/NodeListHTML.php:173
+msgid "All"
+msgstr ""
+
+#: ../node_list.php:173 ../hotspots_map.php:114
+#: ../classes/NodeLists/NodeListHTML.php:175
+msgid "Change network"
+msgstr "Alterar rede"
+
+#: ../node_list.php:177 ../classes/NodeLists/NodeListHTML.php:176
+#: ../classes/NodeLists/NodeListHTML.php:221
+msgid "All networks"
+msgstr "Todas as redes"
+
+#: ../validate.php:58
+msgid "No token specified!"
+msgstr "Token n&atilde;o especificado!"
+
+#: ../validate.php:61
+msgid "No user ID specified!"
+msgstr "username n&atilde;o especificado!"
+
+#: ../validate.php:66
+msgid "The validation token does not match the one in the database."
+msgstr ""
+"O token de valida&ccedil;&atilde;o n&atilde;o coincide com o da base de "
+"dados."
+
+#: ../validate.php:69
+msgid "Your account has already been activated."
+msgstr "A sua conta j&aacute; est&aacute; activa."
+
+#: ../validate.php:77
+msgid ""
+"Your account has been succesfully activated!\n"
+"\n"
+"You may now browse to a remote Internet address and take advantage of the "
+"free Internet access!\n"
+"\n"
+"If you get prompted for a login, enter the username and password you have "
+"just created."
+msgstr ""
+"A sua conta foi activada com sucesso!\n"
+"\n"
+"Poder&aacute; a partir de agora usufruir gratuitamente da Internet!\n"
+"\n"
+"Se lhe for pedido um username e password utilize os dados que acabou de "
+"criar.\n"
+"\n"
+" Obrigado"
+
+#: ../lost_password.php:103 ../resend_validation.php:100 ../signup.php:197
+#: ../lost_username.php:101
+msgid "Sorry, this network does not exist !"
+msgstr "Esta rede n&atilde;o existe !"
+
+#: ../lost_password.php:107
+msgid "Please specify a username or email address"
+msgstr "Por favor especifique um username ou endere&ccedil;o de email"
+
+#: ../lost_password.php:117
+#, fuzzy
+msgid "Please specify EITHER your username or your email, not both"
+msgstr "Por favor especifique um username ou endere&ccedil;o de email"
+
+#: ../lost_password.php:126
+#, fuzzy
+msgid "You need to specify your username or your email"
+msgstr "Precisa de especificar o seu username e password"
+
+#: ../lost_password.php:136
+msgid "This username or email could not be found in our database"
+msgstr ""
+"Este username ou email n&atilde;o foi encontrado na nossa base de dados"
+
+#: ../lost_password.php:139
+msgid "A new password has been emailed to you."
+msgstr "Uma nova password foi enviada para o seu email."
+
+#: ../hotspots_map.php:97
+msgid ""
+"Unable to get the google API key, because I couldn't find a vhost matching "
+"the current hostname"
+msgstr ""
+
+#: ../hotspots_map.php:145
+msgid "Sorry, your browser does not support Google Maps."
+msgstr "Pedimos desculpa, mas o seu browser n&atilde;o suporta o Google Maps."
+
+#: ../hotspots_map.php:145 ../classes/StatisticReport/NodeStatus.php:190
+#: ../classes/StatisticReport/NetworkStatus.php:109
+msgid "Homepage"
+msgstr "P&aacute;gina Inicial"
+
+#: ../hotspots_map.php:145
+msgid "Show me on the map"
+msgstr "Mostrar no mapa"
+
+#: ../hotspots_map.php:145 smarty.txt:41
+msgid "Loading, please wait..."
+msgstr "Carregando, por favor aguarde..."
+
+#: ../hotspots_map.php:159
+msgid "Hotspots status map"
+msgstr "Mapa dos HotSpots"
+
+#: ../resend_validation.php:104
+msgid "Please specify a username"
+msgstr "Por favor especifique um username"
+
+#: ../resend_validation.php:111
+msgid "This username could not be found in our database"
+msgstr "Este username n&atilde;o foi encontrado na nossa base de dados"
+
+#: ../resend_validation.php:116 ../signup.php:228
+msgid "An email with confirmation instructions was sent to your email address."
+msgstr ""
+"Uma mensagem com instru&ccedil;&otilde;es de confirma&ccedil;&atilde;o foi "
+"enviada para o seu endere&ccedil;o de e-mail. Caso n&atilde;o a tenha "
+"recebido,  verifique tamb&eacute;m na caixa de spam."
+
+#: ../signup.php:81
+msgid "Username is required."
+msgstr "O username &eacute; obrigat&oacute;rio."
+
+#: ../signup.php:85
+msgid "Username contains invalid characters."
+msgstr "O username cont&eacute;m caracteres inv&aacute;lidos."
+
+#: ../signup.php:103
+msgid "A valid email address is required."
+msgstr "&Eacute; necess&aacute;rio um endere&ccedil;o de email v&aacute;lido."
+
+#: ../signup.php:107
+msgid ""
+"The email address must be valid (i.e. user@domain.com). Please understand "
+"that we also black-listed various temporary-email-address providers."
+msgstr ""
+"O endere&ccedil;o de email precisa de ser v&aacute;lido (ex. user@dominio."
+"com). Por favor entenda que n&atilde;o aceitamos provedores de email "
+"tempor&aacute;rio."
+
+#: ../signup.php:126
+msgid "A password of at least 6 characters is required."
+msgstr "&Eacute; necess&aacute;rio uma password de pelo menos 6 caracteres."
+
+#: ../signup.php:130
+#, fuzzy
+msgid ""
+"Password contains invalid characters.  Allowed characters are 0-9, a-z and A-"
+"Z"
+msgstr "A password cont&eacute;m caracteres inv&aacute;lidos."
+
+#: ../signup.php:134
+msgid "You must type your password twice."
+msgstr "Precisa de introduzir a sua password duas vezes."
+
+#: ../signup.php:138 ../classes/User.php:947
+msgid "Passwords do not match."
+msgstr "As passwords n&atilde;o coincidem."
+
+#: ../signup.php:142
+msgid "Password is too short, it must be 6 characters minimum."
+msgstr ""
+"A password &eacute; muito curta, necessita ter no m&iacute;nimo 6 caracteres."
+
+#: ../signup.php:201
+msgid "Sorry, this network does not accept new user registration !"
+msgstr ""
+"Esta rede n&atilde;o aceita inscri&ccedil;&atilde;o de novos utilizadores!"
+
+#: ../signup.php:211
+msgid ""
+"Sorry, a user account is already associated to this username. Pick another "
+"one."
+msgstr ""
+"Pedimos desculpa, mas o nome de utilizador que escolheu j&aacute; existe na "
+"base de dados. Por favor escolha outro."
+
+#: ../signup.php:215
+msgid "Sorry, a user account is already associated to this email address."
+msgstr ""
+"Pedimos desculpa, mas o e-mail que escolheu j&aacute; existe na base de "
+"dados. Por favor use outro."
+
+#: ../signup.php:229 ../portal/index.php:163
+#, php-format
+msgid ""
+"Your account has been granted %s minutes of access to retrieve your email "
+"and validate your account."
+msgstr ""
+"Foram lhe concedidos %s minutos de acesso para que possa recuperar o seu "
+"email e a validar a sua conta."
+
+#: ../signup.php:230
+msgid ""
+"You may now open a browser window or start your email client and go to any "
+"remote Internet address to obtain the validation email."
+msgstr ""
+"Pode agora abrir um browser ou user o seu programa de email para verificar o "
+"email de ativa&ccedil;&atilde;o."
+
+#: ../lost_username.php:105
+msgid "Please specify an email address"
+msgstr "Por favor especifique um endere&ccedil;o de email"
+
+#: ../lost_username.php:112
+msgid "This email could not be found in our database"
+msgstr "O email n&atilde;o foi encontrado na nossa base de dados"
+
+#: ../lost_username.php:117
+msgid "Your username has been emailed to you."
+msgstr "O username foi enviado para o seu email."
+
+#: ../gw_message.php:61
+#, php-format
+msgid "You have failed to validate your account in %d minutes."
+msgstr "A sua conta n&atilde;o foi validade nos %d minutos necess&aacute;rios"
+
+#: ../gw_message.php:62
+msgid "Please validate your account from somewhere else or create a new one."
+msgstr "Por favor valide a sua conta noutro lugar."
+
+#: ../gw_message.php:67
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:895
+#: ../classes/Statistics.php:376 ../classes/Statistics.php:379
+#: ../classes/Content.php:901 ../classes/Node.php:231 ../classes/Role.php:501
+msgid "Access denied!"
+msgstr "Acesso negado!"
+
+#: ../gw_message.php:73
+#, php-format
+msgid ""
+"You have now been granted %d minutes of Internet access without being "
+"validated to go and activate your account."
+msgstr ""
+"Foram lhe conecedidos %d minutos de acesso a Internet para que possa aceder "
+"ao seu email e validar a sua conta."
+
+#: ../gw_message.php:74
+#, php-format
+msgid ""
+"If you fail to validate your account in %d minutes, you will have to "
+"validate it from somewhere else."
+msgstr ""
+"Se n&atilde; validar a sua conta em %d minutos, ter&aacute; de o fazer "
+"noutro local."
+
+#: ../gw_message.php:75
+msgid ""
+"If you do not receive an email from our validation server in the next "
+"minute, perhaps you have made a typo in your email address, you might have "
+"to create another account."
+msgstr ""
+"Se n&atilde;o receber um email de nosso servidor de valida&ccedil;&atilde;o "
+"nos pr&oacute;ximos minutos, talvez tenha errado seu endere&ccedil;o de "
+"email. Ter&aacute; de criar outra conta."
+
+#: ../gw_message.php:80
+#, fuzzy
+msgid "Unknown message specified! (this is probably an error)"
+msgstr ""
+"Nenhuma mensagem foi especificada! (isto &eacute; provavelmente um erro)"
+
+#: ../gw_message.php:85
+msgid "No message has been specified! (this is probably an error)"
+msgstr ""
+"Nenhuma mensagem foi especificada! (isto &eacute; provavelmente um erro)"
+
+#: ../config_available_locales.php:58
+msgid "French"
+msgstr "Franc&ecirc;s"
+
+#: ../config_available_locales.php:59
+msgid "English"
+msgstr "Ingl&ecirc;s"
+
+#: ../config_available_locales.php:60
+msgid "German"
+msgstr "Alem&atilde;o"
+
+#: ../config_available_locales.php:61
+msgid "Spanish"
+msgstr "Espanhol"
+
+#: ../config_available_locales.php:62
+#, fuzzy
+msgid "Brazilian Portuguese"
+msgstr "Portugu&ecirc;s"
+
+#: ../config_available_locales.php:63
+msgid "Portuguese"
+msgstr "Portugu&ecirc;s"
+
+#: ../config_available_locales.php:64
+msgid "Japanese"
+msgstr "Japon&ecirc;s"
+
+#: ../config_available_locales.php:65
+msgid "Greek"
+msgstr ""
+
+#: ../config_available_locales.php:66
+msgid "Bulgarian"
+msgstr ""
+
+#: ../config_available_locales.php:67
+msgid "Swedish"
+msgstr ""
+
+#: ../config_available_locales.php:68
+msgid "Italian"
+msgstr ""
+
+#: ../config_available_locales.php:69
+msgid "Catalan"
+msgstr ""
+
+#: ../admin/generic_object_admin.php:80
+msgid "Sorry, the 'object_class' parameter must be specified"
+msgstr "O par&acirc;metro 'object_class' &eacute; obrigat&oacute;rio"
+
+#: ../admin/generic_object_admin.php:93
+#, php-format
+msgid "Create %s"
+msgstr "Criar %s"
+
+#: ../admin/generic_object_admin.php:94
+#, php-format
+msgid "Add %s"
+msgstr "Adicionar %s"
+
+#: ../admin/generic_object_admin.php:95
+#, php-format
+msgid "Create a new %s"
+msgstr "Criar um novo %s"
+
+#: ../admin/generic_object_admin.php:96
+#, php-format
+msgid "Add a new %s"
+msgstr "Adicionar um novo %s"
+
+#: ../admin/generic_object_admin.php:97
+#, php-format
+msgid "Show all %s"
+msgstr "Mostrar todos %s"
+
+#: ../admin/generic_object_admin.php:98
+#, php-format
+msgid "Show only persistant %s"
+msgstr "Mostrar apenas %s persistentes"
+
+#: ../admin/generic_object_admin.php:99 ../classes/Network.php:2140
+#: ../classes/Node.php:1767
+#, php-format
+msgid "Edit %s"
+msgstr "Editar %s"
+
+#: ../admin/generic_object_admin.php:149
+msgid ""
+"Sorry, the object couldn't be created.  You probably didn't fill the form "
+"properly"
+msgstr ""
+"O seu objecto n&atilde;o pode ser criado. Provavelmente n&atilde;o preencheu "
+"o formul&aacute;rio corretamente."
+
+#: ../admin/generic_object_admin.php:187
+msgid "Showing preview as it would appear at "
+msgstr ""
+"Exibir visualiza&ccedil;&atilde;o assim como ser&aacute; apresentado no "
+
+#: ../admin/generic_object_admin.php:202
+#: ../classes/StatisticReport/UserReport.php:182
+#: ../classes/StatisticReport/RegistrationLog.php:120
+#: ../classes/StatisticReport/MostPopularNodes.php:109
+#: ../classes/StatisticReport/UserRegistrationReport.php:131 smarty.txt:133
+msgid "Node"
+msgstr "HotSpot"
+
+#: ../admin/generic_object_admin.php:211 ../admin/generic_object_admin.php:414
+#: ../classes/Content/Picture/Picture.php:294
+msgid "Preview"
+msgstr "Visualizar"
+
+#: ../admin/generic_object_admin.php:217 ../classes/Content.php:736
+#: ../classes/ProfileTemplate.php:393
+msgid "Edit"
+msgstr "Editar"
+
+#: ../admin/generic_object_admin.php:224 ../admin/generic_object_admin.php:246
+msgid "Object successfully deleted"
+msgstr "Objecto apagado com sucesso"
+
+#: ../admin/generic_object_admin.php:226 ../admin/generic_object_admin.php:249
+msgid "Deletion failed, error was: "
+msgstr "A opera&ccedil;&atilde;o de apagar falhou, o erro foi: "
+
+#: ../admin/generic_object_admin.php:383
+msgid "Sorry, the 'object_id' parameter must be specified"
+msgstr "O par&acirc;metro 'object_id' &eacute; obrigat&oacute;rio"
+
+#: ../admin/generic_object_admin.php:399
+msgid "Save"
+msgstr "Guardar"
+
+#: ../admin/generic_object_admin.php:404 ../admin/generic_object_admin.php:424
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:204
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:228
+#: ../classes/Content/RssAggregator/RssAggregator.php:620
+#: ../classes/Content.php:955
+msgid "Delete"
+msgstr "Apagar"
+
+#: ../admin/generic_object_admin.php:449
+msgid "Generic object editor"
+msgstr "Editor gen&eacute;rico de objectos"
+
+#: ../admin/import_user_database.php:66
+msgid "NoCat user database import"
+msgstr "Importa&ccedil;&atilde;o da base de dados NoCat"
+
+#: ../admin/import_user_database.php:72
+msgid "Please select the NoCat passwd file you want to import."
+msgstr "Por favor selecione o arquivo de passwords NoCat que deseja importar."
+
+#: ../admin/import_user_database.php:76
+msgid ""
+"Accept users with no email addresses (Normally, NoCat usernames are expected "
+"to be the user's email address, and the username is generated from the "
+"prefix."
+msgstr ""
+
+#: ../admin/import_user_database.php:78
+msgid "Upload file"
+msgstr "Upload de arquivo"
+
+#: ../admin/import_user_database.php:81
+msgid ""
+"I am sure I want to import (Otherwise, the import will only be simulated)."
+msgstr ""
+"Tenho certeza que desejo importar (Do contr&aacute;rio, a importa&ccedil;"
+"&atilde;o ser&aacute; simulada)."
+
+#: ../admin/import_user_database.php:175
+msgid "Sorry, a user account is already associated to the email address: "
+msgstr "J&aacute; existe uma conta associada ao endere&ccedil;o de email: "
+
+#: ../admin/import_user_database.php:181
+msgid "Sorry, the user must have a email address."
+msgstr ""
+
+#: ../admin/import_user_database.php:190
+msgid "Sorry, a user account already exists with the username: "
+msgstr "J&aacute; existe uma conta com este username: "
+
+#: ../admin/import_user_database.php:211
+msgid "SQL error on: "
+msgstr "Erro SQL em: "
+
+#: ../admin/import_user_database.php:217
+msgid "Report"
+msgstr "Relat&oacute;rio"
+
+#: ../admin/stats.php:66
+msgid "Connections at"
+msgstr "Liga&ccedil;&otilde;es feitas a partir de"
+
+#: ../admin/stats.php:72
+msgid "User information for"
+msgstr "Informa&ccedil;&otilde;es do username"
+
+#: ../admin/stats.php:77
+msgid "Connections from MAC"
+msgstr "Liga&ccedil;&otilde;es feitas a partir da MAC"
+
+#: ../admin/stats.php:83
+msgid "Network information for"
+msgstr "Informa&ccedil;&otilde;es da rede"
+
+#: ../admin/stats.php:97
+msgid "Generate statistics"
+msgstr "Gerar estat&iacute;sticas"
+
+#: ../admin/user_log.php:113
+msgid "Internal error."
+msgstr "Erro interno."
+
+#: ../admin/user_log.php:121
+msgid "Find a user ID : "
+msgstr "Procurar por ID de username: "
+
+#: ../admin/hotspot_location_map.php:59
+msgid "Hotspot location map"
+msgstr "Mapa de localiza&ccedil;&atilde;o dos Hotspots"
+
+#: ../admin/hotspot_location_map.php:70
+msgid ""
+"Click anywhere on the map to extract the GIS location, then click on the "
+"button to save the data."
+msgstr ""
+"Clique em qualquer lugar do mapa para extrair a localiza&ccedil;&atilde;o "
+"GIS, ent&atilde;o clique no bot&atilde;o para guardar os dados."
+
+#: ../admin/hotspot_location_map.php:72
+msgid "Use these coordinates"
+msgstr "Utilize estas coordenadas"
+
+#: ../admin/hotspot_location_map.php:80
+msgid ""
+"Error:  You need to set the GIS coordinates of the center of your network"
+msgstr ""
+
+#: ../admin/hotspot_location_map.php:124
+msgid "You need to set a node ID."
+msgstr "Precisa de definir o ID do <i>HotSpot</i>."
+
+#: ../cron/page.php:79
+msgid "Monitoring system"
+msgstr "Sistema de controlo"
+
+#: ../cron/page.php:82
+msgid "node"
+msgstr "HotSpot"
+
+#: ../cron/page.php:84
+#, php-format
+msgid "Node %s (%s) has been down for %d minutes (since %s)"
+msgstr "O HotSpot %d (%s) ficou indispon&iacute;vel por %d minutos (desde %s)"
+
+#: ../cron/page.php:86
+msgid "Success"
+msgstr ""
+
+#: ../cron/page.php:86
+msgid "Failed sending mail"
+msgstr ""
+
+#: ../cron/page.php:102
+msgid "No deployed nodes could not be found in the database"
+msgstr ""
+
+#: ../include/schema_validate.php:72
+msgid ""
+"I am unable to retrieve the schema version. Either the wifidog database "
+"hasn't been created yet, the postgresql server is down, or pg_hba.conf does "
+"not allow your web server to connect to the wifidog database."
+msgstr ""
+
+#: ../include/schema_validate.php:74
+msgid "Try running the"
+msgstr "Tente executar o"
+
+#: ../include/schema_validate.php:74
+msgid "installation script"
+msgstr "script de instala&ccedil;&atilde;o"
+
+#: ../include/schema_validate.php:106
+msgid ""
+"No user matches the default network, a new user admin/admin will be created. "
+"Change the password as soon as possible !"
+msgstr ""
+"Nenhum username coincide com a rede padr&atilde;o, um novo utilizador admin/"
+"admin ser&aacute; criado. Altere a password assim que poss&iacute;vel!"
+
+#: ../include/schema_validate.php:118
+msgid "Could not get a default network!"
+msgstr "N&atilde;o foi poss&iacute;vel identificar a rede padr&atilde;o!"
+
+#: ../include/schema_validate.php:150
+msgid "Trying to update the database schema."
+msgstr "Tentando actualizar o esquema da base de dados."
+
+#: ../include/schema_validate.php:155
+msgid ""
+"Unable to retrieve schema version.  The database schema is too old to be "
+"updated."
+msgstr ""
+"Imposs&iacute;vel recuperar a vers&atilde;o do esquema. A base de dados "
+"&eacute; muito antiga para ser actualizada."
+
+#: ../include/common.php:142
+msgid "Unused"
+msgstr "N&atilde;o utilizado"
+
+#: ../include/common.php:143
+msgid "In use"
+msgstr "Em uso"
+
+#: ../include/common.php:144
+msgid "Used"
+msgstr "Utilizado"
+
+#: ../login/index.php:211
+#, php-format
+msgid "Unable to generate token for user %s"
+msgstr ""
+
+#: ../login/index.php:261
+msgid "I'm having difficulties:"
+msgstr "Dificuldades em ligar?"
+
+#: ../login/index.php:263 smarty.txt:47 smarty.txt:64 smarty.txt:75
+#: smarty.txt:99 smarty.txt:107
+msgid "I Forgot my username"
+msgstr "Esqueci-me do meu username"
+
+#: ../login/index.php:264 smarty.txt:48 smarty.txt:65 smarty.txt:76
+#: smarty.txt:100 smarty.txt:108
+msgid "I Forgot my password"
+msgstr "Esqueci-me da minha password"
+
+#: ../login/index.php:265 smarty.txt:49 smarty.txt:77 smarty.txt:101
+#: smarty.txt:109
+msgid "Re-send the validation email"
+msgstr "Reenviar email de valida&ccedil;&atilde;o"
+
+#: ../login/index.php:271
+#, php-format
+msgid "%s login page for %s"
+msgstr "P&aacute;gina de liga&ccedil;&atilde;o %s para %s"
+
+#: ../login/index.php:273
+msgid "Offsite login page"
+msgstr "P&aacute;gina de liga&ccedil;&atilde;o off-line"
+
+#: ../login/index.php:282 ../portal/index.php:157
+msgid "Welcome to"
+msgstr "Bem-vindo ao HotSpot"
+
+#: ../portal/index.php:97
+msgid "No Hotspot specified!"
+msgstr "Nenhum Hotspot especificado!"
+
+#: ../portal/index.php:152
+#, php-format
+msgid "%s portal for %s"
+msgstr "Portal %s %s"
+
+#: ../portal/index.php:162
+msgid ""
+"You NEED to confirm your account.  An email with confirmation instructions "
+"was sent to your email address.  If you don't see it in your inbox, make "
+"sure to look in your spam folder."
+msgstr ""
+
+#: ../portal/index.php:224
+msgid "Show all available contents for this hotspot"
+msgstr "Exibir todo conte&uacute;do dispon&iacute;vel para este <i>HotSpot</i>"
+
+#: ../classes/StatisticGraph/RegistrationsPerMonth.php:62
+msgid "Number of validated user registration for the selected network(s)"
+msgstr ""
+"N&uacute;mero de inscri&ccedil;&otilde;es validadas para a(s) rede(s) "
+"selecionada(s)"
+
+#: ../classes/StatisticGraph/RegistrationsCumulative.php:62
+msgid "Cumulative number of validated users for the selected network(s)"
+msgstr ""
+"N&uacute;mero cumulativo de usernames validados para a(s) rede(s) selecionada"
+"(s)"
+
+#: ../classes/StatisticGraph/VisitsPerMonth.php:62
+msgid "Number of individual user visits per month"
+msgstr "N&uacute;mero de visitas &uacute;nicas de usernames por m&ecirc;s"
+
+#: ../classes/StatisticGraph/VisitsPerMonth.php:82
+#: ../classes/StatisticGraph/VisitsPerWeekday.php:82
+#: ../classes/StatisticReport/MostPopularNodes.php:135
+msgid ""
+"Note:  A visit is like counting connections, but only counting one "
+"connection per day for each user at a single node"
+msgstr ""
+"Nota: Uma visita &eacute; como contar conex&otilde;es, mas apenas contando "
+"uma liga&ccedil;&atilde;o por dia para cada username num &uacute;nico HotSpot"
+
+#: ../classes/StatisticGraph/VisitsPerWeekday.php:62
+msgid "Number of individual user visits per weekday"
+msgstr "N&uacute;mero de visitas &uacute;nicas de usernames por semana"
+
+#: ../classes/StatisticGraph/ConnectionsPerHour.php:62
+msgid "Number of new connections opening per hour of the day"
+msgstr "N&uacute;mero de novas liga&ccedil;&otilde;es abertas por hora do dia"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:117
+#, fuzzy, php-format
+msgid "Fatal error:  Username cannot be empty"
+msgstr "A URL n&atilde;o pode estar vazia!"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:132
+#: ../classes/Authenticators/AuthenticatorLDAP.php:257
+#: ../classes/Authenticators/AuthenticatorLDAP.php:267
+#: ../classes/Authenticators/AuthenticatorRadius.php:263
+#: ../classes/Authenticators/AuthenticatorRadius.php:283
+msgid "Login successfull"
+msgstr "Sess&atilde;o autenticada corretamente"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:146
+msgid "Unknown username or email"
+msgstr "username ou email desconhecido"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:148
+msgid "Incorrect password (Maybe you have CAPS LOCK on?)"
+msgstr "password incorreta (talvez o CAPS LOCK esteja activado?)"
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:167
+#: ../classes/Authenticators/AuthenticatorLDAP.php:172
+msgid "Error while connecting to the LDAP server."
+msgstr "Erro ao ligar ao servidor LDAP."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:179
+msgid "Error while obtaining your LDAP information."
+msgstr "Erro ao obter as suas informa&ccedil;&otilde;es LDAP."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:185
+#: ../classes/Authenticators/AuthenticatorLDAP.php:191
+#: ../classes/Authenticators/AuthenticatorLDAP.php:197
+msgid "Error while obtaining your username or password from the LDAP server."
+msgstr "Erro ao obter o seu username ou password do servidor LDAP."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:204
+msgid "Error in username or password."
+msgstr "Erro no username ou password."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:211
+msgid "Error connecting to the LDAP Server."
+msgstr "Erro ao ligar ao servidor LDAP."
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:202
+msgid "Invalid RADIUS encryption method."
+msgstr "M&eacute;todo de encripta&ccedil;&atilde;o RADIUS inv&aacute;lido."
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:239
+msgid "Could not initiate PEAR RADIUS Auth class : "
+msgstr ""
+"Imposs&iacute;vel iniciar a classe de autentica&ccedil;&atilde;o PEAR "
+"RADIUS : "
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:247
+msgid "Failed to send authentication request to the RADIUS server. : "
+msgstr ""
+"Imposs&iacute;vel enviar requisi&ccedil;&atilde;o de autentica&ccedil;"
+"&atilde;o para o servidor RADIUS. : "
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:288
+msgid "The RADIUS server rejected this username/password combination."
+msgstr ""
+"O servidor RADIUS rejeitou esta combina&ccedil;&atilde;o de username/"
+"password."
+
+#: ../classes/StatisticReport/MostMobileUsers.php:65
+#, php-format
+msgid "%d most mobile users"
+msgstr "%d utilizadores com maior n&uacute;mero de HotSpots visitados"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:97
+#: ../classes/StatisticReport/MostFrequentUsers.php:98
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:98
+msgid "User (username)"
+msgstr "Username"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:99
+#: ../classes/StatisticReport/MostFrequentUsers.php:100
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:100
+msgid "User (MAC address)"
+msgstr "Endere&ccedil;o MAC"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:101
+msgid "Nodes visited"
+msgstr "HotSpots visitados"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:133
+#: ../classes/StatisticReport/UserReport.php:174
+#: ../classes/StatisticReport/MostFrequentUsers.php:133
+#: ../classes/StatisticReport/MostPopularNodes.php:142
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:136
+#: ../classes/StatisticReport/UserRegistrationReport.php:164
+msgid "No information found matching the report configuration"
+msgstr ""
+"Nenhuma informa&ccedil;&atilde;o encontrada para a configura&ccedil;&atilde;"
+"o do relat&oacute;rio"
+
+#: ../classes/StatisticReport/NodeStatus.php:64
+msgid "Node status information"
+msgstr "Informa&ccedil;&atilde;o do estado do HotSpot"
+
+#: ../classes/StatisticReport/NodeStatus.php:87
+msgid "Sorry, this report requires you to select individual nodes"
+msgstr ""
+"Este relat&oacute;rio requer a selec&ccedil;&atilde;o de HotSpots individuais"
+
+#: ../classes/StatisticReport/NodeStatus.php:99
+#: ../classes/DependenciesList.php:137 smarty.txt:5
+msgid "Status"
+msgstr "Estado"
+
+#: ../classes/StatisticReport/NodeStatus.php:105
+msgid "WifiDog status"
+msgstr "Estado do WifiDog"
+
+#: ../classes/StatisticReport/NodeStatus.php:110
+msgid "Last heartbeat"
+msgstr "&Uacute;ltima verifica&ccedil;&atilde;o"
+
+#: ../classes/StatisticReport/NodeStatus.php:111
+#, php-format
+msgid "%s ago"
+msgstr "%s atr&aacute;s"
+
+#: ../classes/StatisticReport/NodeStatus.php:115
+msgid "WifiDog version"
+msgstr "Vers&atilde;o do WifiDog"
+
+#: ../classes/StatisticReport/NodeStatus.php:119
+msgid "WifiDog uptime"
+msgstr "Uptime do WifiDog"
+
+#: ../classes/StatisticReport/NodeStatus.php:123
+msgid "System uptime"
+msgstr "Uptime do sistema"
+
+#: ../classes/StatisticReport/NodeStatus.php:127
+msgid "System load"
+msgstr ""
+
+#: ../classes/StatisticReport/NodeStatus.php:131
+msgid "System free memory"
+msgstr "Mem&oacute;ria livre"
+
+#: ../classes/StatisticReport/NodeStatus.php:135
+msgid "IP Address"
+msgstr "Endere&ccedil;o IP"
+
+#: ../classes/StatisticReport/NodeStatus.php:139
+msgid "Number of users online"
+msgstr "N&uacute;mero de utilizadores ligados"
+
+#: ../classes/StatisticReport/NodeStatus.php:148
+#: ../classes/StatisticReport/UserReport.php:117 ../classes/Profile.php:357
+msgid "Profile"
+msgstr "Perfil"
+
+#: ../classes/StatisticReport/NodeStatus.php:152
+#: ../classes/StatisticReport/NetworkStatus.php:99 ../classes/Node.php:1199
+#: ../classes/Node.php:1204 smarty.txt:8
+msgid "Name"
+msgstr "Nome"
+
+#: ../classes/StatisticReport/NodeStatus.php:156
+msgid "Node ID"
+msgstr "ID do <i>HotSpot</i>"
+
+#: ../classes/StatisticReport/NodeStatus.php:160 ../classes/Node.php:380
+msgid "Deployment Status"
+msgstr "Estado de implementa&ccedil;&atilde;o"
+
+#: ../classes/StatisticReport/NodeStatus.php:164
+msgid "Deployment date"
+msgstr "Data de implementa&ccedil;&atilde;o"
+
+#: ../classes/StatisticReport/NodeStatus.php:168 ../classes/Content.php:925
+#: ../classes/Node.php:1223 ../classes/DependenciesList.php:175 smarty.txt:68
+msgid "Description"
+msgstr "Descri&ccedil;&atilde;o"
+
+#: ../classes/StatisticReport/NodeStatus.php:172
+#: ../classes/StatisticReport/UserReport.php:132 smarty.txt:129
+msgid "Network"
+msgstr "Rede"
+
+#: ../classes/StatisticReport/NodeStatus.php:176
+msgid "GIS Location"
+msgstr "Coordenadas de localiza&ccedil;&atilde;o"
+
+#: ../classes/StatisticReport/NodeStatus.php:181 ../classes/Network.php:1041
+#: smarty.txt:73
+msgid "Map"
+msgstr "Mapa"
+
+#: ../classes/StatisticReport/NodeStatus.php:185
+msgid "NOT SET"
+msgstr "N&Atilde;O DEFINIDO"
+
+#: ../classes/StatisticReport/NodeStatus.php:194
+#: ../classes/NodeLists/NodeListRSS.php:324
+#: ../classes/NodeLists/NodeListPDF.php:1083
+#: ../classes/NodeLists/NodeListKML.php:238
+msgid "Address"
+msgstr "Endere&ccedil;o"
+
+#: ../classes/StatisticReport/NodeStatus.php:202
+#: ../classes/NodeLists/NodeListPDF.php:1083
+msgid "Telephone"
+msgstr "Telefone"
+
+#: ../classes/StatisticReport/NodeStatus.php:206
+#: ../classes/StatisticReport/UserReport.php:127
+#: ../classes/NodeLists/NodeListPDF.php:1083
+#: ../classes/NodeLists/NodeListKML.php:241
+msgid "Email"
+msgstr "Email"
+
+#: ../classes/StatisticReport/NodeStatus.php:210
+msgid "Transit Info"
+msgstr "Informa&ccedil;&atilde;o de transito"
+
+#: ../classes/StatisticReport/NodeStatus.php:220 ../classes/User.php:1058
+#: ../classes/Node.php:1164 smarty.txt:16
+msgid "Statistics"
+msgstr "Estat&iacute;sticas"
+
+#: ../classes/StatisticReport/NodeStatus.php:225
+msgid "Average visits per day"
+msgstr "Quantidade m&eacute;dia de visitas por dia"
+
+#: ../classes/StatisticReport/NodeStatus.php:226
+#: ../classes/StatisticReport/NodeStatus.php:237
+msgid "(for the selected period)"
+msgstr "(para o per&iacute;odo selecionado)"
+
+#: ../classes/StatisticReport/NodeStatus.php:231
+msgid "Traffic"
+msgstr "Tr&aacute;fego"
+
+#: ../classes/StatisticReport/NodeStatus.php:233
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:102
+msgid "Incoming"
+msgstr "Entrada"
+
+#: ../classes/StatisticReport/NodeStatus.php:235
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:103
+msgid "Outgoing"
+msgstr "Sa&iacute;da"
+
+#: ../classes/StatisticReport/UserReport.php:64
+msgid "Individual user report"
+msgstr "Relat&oacute;rio individual de utilizadores"
+
+#: ../classes/StatisticReport/UserReport.php:111 ../classes/User.php:259
+#, php-format
+msgid "User id: %s could not be found in the database"
+msgstr "ID do utilizador: %s n&atilde;o foi encontrado na base de dados"
+
+#: ../classes/StatisticReport/UserReport.php:122
+#: ../classes/StatisticReport/UserReport.php:284
+#: ../classes/StatisticReport/RegistrationLog.php:123
+#: ../classes/StatisticReport/ConnectionLog.php:115
+#: ../classes/StatisticReport/ConnectionLog.php:164 ../classes/User.php:810
+#: ../classes/User.php:815 ../classes/User.php:864 smarty.txt:128
+#: smarty.txt:134
+msgid "Username"
+msgstr "Username"
+
+#: ../classes/StatisticReport/UserReport.php:137
+msgid "Unique ID"
+msgstr "ID &uacute;nico"
+
+#: ../classes/StatisticReport/UserReport.php:142
+msgid "Member since"
+msgstr "Membro desde"
+
+#: ../classes/StatisticReport/UserReport.php:147 ../classes/User.php:852
+#: smarty.txt:131
+msgid "Account Status"
+msgstr "Estado da Conta"
+
+#: ../classes/StatisticReport/UserReport.php:152
+msgid "Prefered Locale"
+msgstr "Idioma preferido"
+
+#: ../classes/StatisticReport/UserReport.php:165
+#, php-format
+msgid "%d Connections"
+msgstr "%d liga&ccedil;&otilde;es"
+
+#: ../classes/StatisticReport/UserReport.php:179
+msgid "Logged in"
+msgstr "Ligado"
+
+#: ../classes/StatisticReport/UserReport.php:180
+#: ../classes/StatisticReport/ConnectionLog.php:167
+msgid "Time spent"
+msgstr "Dura&ccedil;&atilde;o"
+
+#: ../classes/StatisticReport/UserReport.php:181
+msgid "Token status"
+msgstr "Estado do token"
+
+#: ../classes/StatisticReport/UserReport.php:183
+msgid "IP"
+msgstr "IP"
+
+#: ../classes/StatisticReport/UserReport.php:184
+msgid "D"
+msgstr "D"
+
+#: ../classes/StatisticReport/UserReport.php:185
+msgid "U"
+msgstr "U"
+
+#: ../classes/StatisticReport/UserReport.php:212
+msgid "N/A"
+msgstr "N/D"
+
+#: ../classes/StatisticReport/UserReport.php:223
+#: ../classes/StatisticReport/RegistrationLog.php:162
+#: ../classes/StatisticReport/MostPopularNodes.php:131
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:104
+#: ../classes/StatisticReport/UserRegistrationReport.php:153
+msgid "Total"
+msgstr "Total"
+
+#: ../classes/StatisticReport/UserReport.php:244
+#, php-format
+msgid "%d MAC addresses"
+msgstr "%d Endere&ccedil;os MAC"
+
+#: ../classes/StatisticReport/UserReport.php:248
+#: ../classes/StatisticReport/ConnectionLog.php:165
+msgid "MAC"
+msgstr "MAC"
+
+#: ../classes/StatisticReport/UserReport.php:249
+#: ../classes/StatisticReport/UserReport.php:285
+#: ../classes/StatisticReport/ContentReport.php:115
+msgid "Count"
+msgstr "N&uacute;mero de liga&ccedil;&otilde;es"
+
+#: ../classes/StatisticReport/UserReport.php:280
+#, php-format
+msgid "%d users"
+msgstr "%d usernames"
+
+#: ../classes/StatisticReport/MostFrequentUsers.php:66
+#, php-format
+msgid "%d most frequent users"
+msgstr "%d utilizadores mais frequentes"
+
+#: ../classes/StatisticReport/MostFrequentUsers.php:102
+msgid "Different days connected"
+msgstr "Dias diferentes ligado"
+
+#: ../classes/StatisticReport/RegistrationLog.php:64
+msgid "Registration Log (New user's first connection)"
+msgstr ""
+"Registo de inscri&ccedil;&otilde;es (liga&ccedil;&otilde;es de novos "
+"utilizadores)"
+
+#: ../classes/StatisticReport/RegistrationLog.php:116
+msgid "Users who signed up here"
+msgstr "Usus&aacute;rios que se inscreveram aqui"
+
+#: ../classes/StatisticReport/RegistrationLog.php:127
+msgid "MAC address"
+msgstr "Endere&ccedil;o MAC"
+
+#: ../classes/StatisticReport/RegistrationLog.php:130
+msgid "Registration date"
+msgstr "Data de registo"
+
+#: ../classes/StatisticReport/NetworkStatus.php:64
+msgid "Network status information"
+msgstr "Informa&ccedil;&atilde;o do estado da rede"
+
+#: ../classes/StatisticReport/NetworkStatus.php:87
+msgid "Sorry, this report requires you to select individual networks"
+msgstr "Este relat&oacute;rio requer a escolha redes individuais"
+
+#: ../classes/StatisticReport/NetworkStatus.php:104
+#: ../classes/VirtualHost.php:603 ../classes/Server.php:246
+#: ../classes/Node.php:1210 ../classes/ProfileTemplate.php:512
+#: ../classes/Role.php:369
+msgid "Creation date"
+msgstr "Data de cria&ccedil;&atilde;o"
+
+#: ../classes/StatisticReport/NetworkStatus.php:114
+msgid "Tech support email"
+msgstr "Email de suporte t&eacute;cnico"
+
+#: ../classes/StatisticReport/NetworkStatus.php:119
+msgid "Validation grace time"
+msgstr "B&oacute;nus de tempo para valida&ccedil;&atilde;o"
+
+#: ../classes/StatisticReport/NetworkStatus.php:124
+msgid "Validation email"
+msgstr "Email de valida&ccedil;&atilde;o"
+
+#: ../classes/StatisticReport/NetworkStatus.php:129
+msgid "Allows multiple login"
+msgstr "Permitir m&uacute;ltiplas conex&otilde;es"
+
+#: ../classes/StatisticReport/NetworkStatus.php:134
+msgid "Splash only nodes allowed"
+msgstr "Permitir HotSpots splash-only"
+
+#: ../classes/StatisticReport/NetworkStatus.php:139
+msgid "Custom portal redirect nodes allowed"
+msgstr "Permitir o redirecionamento de URL aos HotSpots"
+
+#: ../classes/StatisticReport/NetworkStatus.php:144
+msgid "Number of users"
+msgstr "N&uacute;mero de utilizadores"
+
+#: ../classes/StatisticReport/NetworkStatus.php:149
+msgid "Number of validated users"
+msgstr "N&uacute;mero de utilizadores v&aacute;lidos"
+
+#: ../classes/StatisticReport/NetworkStatus.php:154
+msgid "Number of users currently online"
+msgstr "N&uacute;mero de usernames actualmente ligados"
+
+#: ../classes/StatisticReport/MostPopularNodes.php:65
+msgid "Most popular nodes, by visit"
+msgstr "HotSpots mais populares, por visita"
+
+#: ../classes/StatisticReport/MostPopularNodes.php:110
+msgid "Visits"
+msgstr "Visitas"
+
+#: ../classes/StatisticReport/ConnectionLog.php:64
+msgid "Connection Log"
+msgstr "Registo de liga&ccedil;&otilde;es"
+
+#: ../classes/StatisticReport/ConnectionLog.php:89
+#: ../classes/StatisticReport/AnonymisedDataExport.php:97
+#: ../classes/VirtualHost.php:403 ../classes/VirtualHost.php:735
+#: ../classes/ProfileTemplate.php:602 ../classes/ContentTypeFilter.php:254
+#: ../classes/ContentTypeFilter.php:439
+msgid "Access denied"
+msgstr "Acesso negado"
+
+#: ../classes/StatisticReport/ConnectionLog.php:109
+msgid "Number of unique Users:"
+msgstr "N&uacute;mero de usernames &uacute;nicos: "
+
+#: ../classes/StatisticReport/ConnectionLog.php:116
+msgid "MAC Count"
+msgstr "Num. end. MAC"
+
+#: ../classes/StatisticReport/ConnectionLog.php:124
+msgid "Cx Count"
+msgstr "Num. liga&ccedil;&otilde;es"
+
+#: ../classes/StatisticReport/ConnectionLog.php:125
+msgid "Last seen"
+msgstr "Visto pela &uacute;ltima vez"
+
+#: ../classes/StatisticReport/ConnectionLog.php:159
+msgid "Number of non-unique connections:"
+msgstr "N&uacute;mero de liga&ccedil;&otilde;es: "
+
+#: ../classes/StatisticReport/ConnectionLog.php:163
+msgid "Node name"
+msgstr "HotSpot"
+
+#: ../classes/StatisticReport/ConnectionLog.php:166
+msgid "Date"
+msgstr "Data"
+
+#: ../classes/StatisticReport/ConnectionLog.php:192
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:119
+msgid "Unknown"
+msgstr "N/A"
+
+#: ../classes/StatisticReport/ConnectionGraphs.php:62
+msgid "Graph on network use per hour, weekday and month"
+msgstr "Exibir gr&aacute;fico de uso da rede por hora, semana e m&ecirc;s"
+
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:65
+#, php-format
+msgid "%d highest bandwidth consumers"
+msgstr "%d maiores consumidores de largura de banda"
+
+#: ../classes/StatisticReport/ContentReport.php:63
+msgid "Content display and clickthrough report"
+msgstr "Relat&oacute;rio de clicks em conte&uacute;do do portal/login"
+
+#: ../classes/StatisticReport/ContentReport.php:98
+msgid "Untitled Content"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:100
+msgid "Content report for:"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:104
+msgid "Clickthrough"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:105
+msgid "Prints"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:106
+msgid "Clickthrough/Prints"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:126
+msgid "First"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:133
+msgid "Last"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:141
+msgid "Rate"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:143
+#: ../classes/StatisticReport/ContentReport.php:149
+#, php-format
+msgid "%0.2f per day"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:157
+msgid "Unique users"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:168
+msgid "Unique locations"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:203
+msgid "Content group elements report"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:206
+msgid "Element # of prints"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:207
+msgid "Displayed content report"
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:233
+msgid ""
+"Note:  The statistics above include all the prints and clickthroughs of the "
+"displayed element, not just those resulting from it's display in this group."
+msgstr ""
+
+#: ../classes/StatisticReport/ContentReport.php:309
+msgid ""
+"Important note:  Currently, Report configuration options are ignored for "
+"this report."
+msgstr ""
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:62
+msgid "User registration report"
+msgstr "Relat&oacute;rio de inscri&ccedil;&atilde;o de utilizadores"
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:94
+msgid "First connection per node"
+msgstr "Primeira liga&ccedil;&atilde;o por HotSpot"
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:132
+msgid "# of new user first connection"
+msgstr "# de primeira liga&ccedil;&atilde;o de novos utilizadores"
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:157
+msgid ""
+"Note:  This is actually a list of how many new user's first connection "
+"occured at each hotspot, taking report restrictions into account.  It "
+"includes non-validated users who successfully connected."
+msgstr ""
+
+#: ../classes/StatisticReport/AnonymisedDataExport.php:65
+msgid "Anonymised SQL data export (for academic research)"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:62
+msgid "Breakdown of how many users actually use the network"
+msgstr "Relat&oacute;rio de utilizadores que efectivamente usam a rede"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:85
+msgid "User activity"
+msgstr "Actividade do utilizador"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:94
+msgid "Last day"
+msgstr "No &uacute;ltimo dia"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:95
+msgid "Last week"
+msgstr "Nesta semana"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:96
+msgid "Last month"
+msgstr "Neste m&ecirc;s"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:97
+msgid "Last 3 month"
+msgstr "Nos &uacute;ltimos 3 meses"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:98
+msgid "Last 6 months"
+msgstr "Nos &uacute;ltimos 6 meses"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:99
+msgid "Last year"
+msgstr "No &uacute;ltimo ano"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:100
+msgid "Ever"
+msgstr "Desde sempre"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:138
+#, php-format
+msgid "Activity report for the %d validated users"
+msgstr "Relat&oacute;rio de actividade dos %d utilizadores validados"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:141
+#: ../classes/StatisticReport/ActiveUserReport.php:172
+msgid "Period"
+msgstr "Per&iacute;odo"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:142
+#: ../classes/StatisticReport/ActiveUserReport.php:173
+msgid "# of users who used the network"
+msgstr "N&uacute;m. de utilizadores que se ligaram"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:169
+#, php-format
+msgid "Activity report for the %d non-validated users"
+msgstr "Relat&oacute;rio de actividade dos %d utilizadores não-validados"
+
+#: ../classes/StatisticReport/ActiveUserReport.php:198
+msgid "warning:  This report does not count connections at Splash-Only nodes"
+msgstr ""
+"Aviso: Este relat&oacute;rio n&atilde;o cont&eacute;m informa&ccedil;o de "
+"HotSpots Splash-Only"
+
+#: ../classes/NodeLists/NodeListRSS.php:157
+#: ../classes/NodeLists/NodeListHTML.php:221
+msgid "Newest Hotspots"
+msgstr "Hotspots mais novos"
+
+#: ../classes/NodeLists/NodeListRSS.php:169
+msgid "List of the most recent Hotspots opened by the network: "
+msgstr "Lista dos hotspots mais recentes abertos na rede:"
+
+#: ../classes/NodeLists/NodeListRSS.php:190
+msgid "Copyright "
+msgstr "Todos os direitos reservados "
+
+#: ../classes/NodeLists/NodeListRSS.php:358
+msgid "See Map"
+msgstr "Ver mapa"
+
+#: ../classes/NodeLists/NodeListRSS.php:371
+msgid "Contact"
+msgstr "Contato"
+
+#: ../classes/NodeLists/NodeListHTML.php:220
+msgid "Hotspot list"
+msgstr "Lista de HotSpots"
+
+#: ../classes/NodeLists/NodeListPDF.php:792
+msgid ""
+"To protect the server the PDF file has not been created, because the server "
+"is too busy right now!"
+msgstr ""
+
+#: ../classes/NodeLists/NodeListPDF.php:958
+#: ../classes/NodeLists/NodeListPDF.php:959
+#: ../classes/NodeLists/NodeListPDF.php:961
+#: ../classes/NodeLists/NodeListPDF.php:1039
+msgid "Hotspots"
+msgstr "HotSpots"
+
+#: ../classes/NodeLists/NodeListPDF.php:1048
+msgid "street name"
+msgstr ""
+
+#: ../classes/NodeLists/NodeListPDF.php:1052
+msgid "postal code"
+msgstr ""
+
+#: ../classes/NodeLists/NodeListPDF.php:1056
+msgid "city"
+msgstr ""
+
+#: ../classes/NodeLists/NodeListPDF.php:1060
+msgid "name"
+msgstr ""
+
+#: ../classes/NodeLists/NodeListPDF.php:1065
+#, php-format
+msgid "This list contains all Hotspots of %s sorted by %s."
+msgstr ""
+
+#: ../classes/NodeLists/NodeListPDF.php:1068
+#, php-format
+msgid "Number of Hotspots: %d"
+msgstr ""
+
+#: ../classes/NodeLists/NodeListPDF.php:1071
+#, php-format
+msgid "Last updated on: %s"
+msgstr ""
+
+#: ../classes/NodeLists/NodeListPDF.php:1083
+msgid "Hotspot"
+msgstr "Hotspot"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1249
+msgid "Postal code"
+msgstr "C&oacute;digo postal"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1239
+msgid "City"
+msgstr "Cidade"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1244
+msgid "Province / State"
+msgstr "Estado"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1269
+msgid "Homepage URL"
+msgstr "URL do site"
+
+#: ../classes/NodeLists/NodeListPDF.php:1093
+msgid "PDF file cannot be created because the FPDF library is not installed!"
+msgstr ""
+
+#: ../classes/NodeLists/NodeListKML.php:240
+#: ../classes/Content/RssAggregator/RssAggregator.php:752
+msgid "URL"
+msgstr "URL"
+
+#: ../classes/Content/File/File.php:131
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:131
+#: ../classes/Content/IFrame/IFrame.php:89
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:92
+#: ../classes/Content/ContentGroup/ContentGroup.php:115
+#: ../classes/Content/Picture/Picture.php:103 ../classes/Content.php:124
+#: ../classes/Content.php:275
+msgid "The content with the following id could not be found in the database: "
+msgstr ""
+"O conte&uacute;do com o seguinte id n&atilde;o foi encontrado na base de "
+"dados: "
+
+#: ../classes/Content/File/File.php:206
+msgid "File size exceeds limit specified in PHP.ini"
+msgstr "O tamanho do arquivo excede o limite especificado no PHP.ini"
+
+#: ../classes/Content/File/File.php:210
+msgid "File size exceeds limit specified HTML form"
+msgstr "O tamanho do arquivo excede o limite no formul&aacute;rio HTML"
+
+#: ../classes/Content/File/File.php:214
+msgid "File upload was interrupted"
+msgstr "O upload do arquivo foi interrompido"
+
+#: ../classes/Content/File/File.php:218
+msgid "Missing temp folder"
+msgstr "Diret&oacute;rio tempor&aacute;rio ausente"
+
+#: ../classes/Content/File/File.php:496
+msgid "Upload a new file (Uploading a new one will replace any existing file)"
+msgstr ""
+"Upload de novo arquivo (O upload ir&aacute; sobrescrever o arquivo existente)"
+
+#: ../classes/Content/File/File.php:505
+msgid "Remote file via URL"
+msgstr "Arquivo remoto via URL"
+
+#: ../classes/Content/File/File.php:522
+msgid "File URL"
+msgstr "URL do arquivo"
+
+#: ../classes/Content/File/File.php:532
+msgid "Filename to display"
+msgstr "Nome do arquivo a exibir"
+
+#: ../classes/Content/File/File.php:544
+msgid "MIME type"
+msgstr "Tipo MIME"
+
+#: ../classes/Content/File/File.php:553
+msgid "Locally stored file size"
+msgstr "Tamanho do arquivo armazenado localmente"
+
+#: ../classes/Content/File/File.php:554 ../classes/Content/File/File.php:653
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:354
+msgid "KB"
+msgstr "KB"
+
+#: ../classes/Content/File/File.php:560
+msgid "Remote file size (Automatically converted from KB to Bytes)"
+msgstr ""
+"Tamanho do arquivo remoto (Convertido automaticamente de KB para Bytes)"
+
+#: ../classes/Content/File/File.php:569 ../classes/Content/File/File.php:660
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:354
+msgid "Download"
+msgstr "Download"
+
+#: ../classes/Content/File/File.php:570
+msgid "Last update"
+msgstr ""
+
+#: ../classes/Content/File/File.php:708
+msgid "Could not delete this file, since it is persistent"
+msgstr "Imposs&iacute;vel apagar este arquivo, pois ele &eacute; persistente"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:198
+msgid "Illegal Flickr Photostream selection mode."
+msgstr "Modo de sele&ccedil;&atilde;o de fotos Flickr ilegal."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:238
+msgid "Illegal Flickr Photostream display mode."
+msgstr "Modo de visualiza&ccedil;&atilde;o Flickr Photostream inv&aacute;lido."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:441
+#, php-format
+msgid "%s: Options"
+msgstr ""
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:448
+msgid "Flickr API key"
+msgstr "Chave da API Flickr"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:456
+msgid "Shared secret"
+msgstr "Segredo compartilhado"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:464
+msgid "Photos display mode"
+msgstr "Mode de visualiza&ccedil;&atilde;o de fotos"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:466
+msgid "Grid display"
+msgstr "Exibir grade"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:466
+msgid "Feature photo (last one)"
+msgstr "&Uacute;ltima foto"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:466
+msgid "Feature photo + one at random"
+msgstr "&Uacute;ltima foto + uma aleat&oacute;ria"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:472
+msgid "Flick photo selection mode :"
+msgstr "Modo de sele&ccedil;&atilde;o de fotos Flick :"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:475
+msgid "Select by group"
+msgstr "Selecionar por grupo"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:475
+msgid "Select by tags"
+msgstr "Selecionar por «tags»"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:475
+msgid "Select by user"
+msgstr "Selecionar por username"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:491
+msgid "Flickr User ID + Username"
+msgstr "Identifica&ccedil;&atilde;o do utilizador Flickr + username"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:495
+msgid "Reset Flickr User ID"
+msgstr "Reiniciar o username Flickr"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:502
+msgid "Flickr User E-mail"
+msgstr "Email do username Flickr"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:518
+msgid "Group Photo Pool"
+msgstr "Groupo de fotos"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:531
+msgid "Could not find any group photo pool."
+msgstr "Imposs&iacute;vel encontrar um grupo de fotos."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:539
+msgid "Tags (comma-separated)"
+msgstr "«Tags» (separadas por v&iacute;rgulas)"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:543
+msgid "Match any tag"
+msgstr "Coincidir qualquer «tag»"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:543
+msgid "Match all tags"
+msgstr "Coincidir todas as «tags»"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:551
+msgid "Flickr photo display options"
+msgstr "Op&ccedil;&otilde;es de exibi&ccedil;&atilde;o de fotos Flickr"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:555
+msgid "Show Flickr photo title ?"
+msgstr "Exibir t&iacute;tulo da foto Flickr ?"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:564
+msgid "Show Flickr tags ?"
+msgstr "Exibir «tags» Flickr ?"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:573
+msgid "Show Flickr photo description ?"
+msgstr "Exibir descri&ccedil;&atilde;o da foto Flickr ?"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:582
+msgid "Preferred size"
+msgstr "Tamanho preferido"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Squared 75x75"
+msgstr "Quadricular 75x75"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Thumbnail 100x75"
+msgstr "Miniatura 100x75"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Small 240x180"
+msgstr "Pequeno 240x180"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Medium 500x375"
+msgstr "M&eacute;dio 500x375"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Large 1024x*"
+msgstr "Grande 1024x*"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Original size"
+msgstr "Tamanho original"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:596
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:852
+#, fuzzy, php-format
+msgid "Unable to connect to Flickr API: %s"
+msgstr "Imposs&iacute;vel ligar-se &agrave; API Flickr."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:600
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:856
+msgid "Some of the request parameters provided to Flickr API are invalid."
+msgstr ""
+"Alguns dos par&acirc;metros solicitados providos &agrave; API Flickr "
+"s&atilde;o inv&aacute;lidos."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:604
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:861
+msgid "Unable to parse Flickr's response."
+msgstr "Imposs&iacute;vel tratar resposta do Flickr"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:608
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:865
+msgid "Could not get content from Flickr : "
+msgstr "Imposs&iacute;vel obter o conte&uacute;do de Flickr : "
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:614
+msgid "YOU MUST SPECIFY AN API KEY BEFORE YOU CAN GO ON."
+msgstr "PRECISA DE ESPECIFICAR UMA CHAVE PARA A API ANTES DE CONTINUAR."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:620
+msgid "PEAR::Phlickr or PHP mudule CURL is not installed"
+msgstr ""
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:673
+msgid "Could not find a Flickr user with this e-mail."
+msgstr "Imposs&iacute;vel encontrar um utilizador Flickr com este email."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:689
+msgid "Could not complete successfully the saving procedure."
+msgstr "Imposs&iacute;vel completar com sucesso o processo de salvamento."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:847
+msgid "No Flickr content matches the request !"
+msgstr "Nenhuma foto Flickr corresponde &agrave; requisi&ccedil;&atilde;o !"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:872
+msgid "PEAR::Phlickr is not installed"
+msgstr "PEAR::Phlickr n&atilde;o est&aacute; instalado"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:119
+msgid "Actual URL after substitution"
+msgstr "URL actual depois da substitui&ccedil;&atilde;o"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:122
+msgid ""
+"The IFrameRest content type is meant to allow the result of REST-style "
+"queries to remote systems to be displayed in a IFrame.  To that end, The "
+"following strings will be replaced in the URL:"
+msgstr ""
+"O tipo de conte&uacute;do IFrameRest &eacute; o resultado de consultas do "
+"estilo REST a sistemas remotos exibidos num IFrame. Para este fim, as "
+"seguintes strings ser&atilde;o substituidas na URL:"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:128
+msgid ""
+"Will be replaced by the urlencoded node_id of the node\n"
+"                    where the content is displayed, or an empty string if "
+"there is no\n"
+"                    current node</td></tr>"
+msgstr ""
+"Ser&aacute; substituido pela url codificada node_id do HotSpot\n"
+"                    onde o conte&uacute;do ser&aacute; exibido, ou uma "
+"string vazia se n&atilde;o existir\n"
+"                    um HotSpot actual</td></tr>"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:133
+msgid "Will be replaced by the user_id"
+msgstr "Ser&aacute; substituida pelo user_id"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:137
+msgid ""
+"will be replaced by a ISO-8601 timestamp of the date the user was last shown "
+"this content, or an empty string if the user was never presented with this "
+"IFrame."
+msgstr ""
+"Ser&aacute; substituida por um selo de hora no formato ISO-8601 da data em "
+"que este conte&uacute;do foi exibido pela &uacute;ltima vez, ou uma string "
+"em branco se o username nunca recebeu este IFrame."
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:102
+msgid "Subscribe to Pattern Language"
+msgstr "Inscrever-se no Padr&atilde;o de Linguagem"
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:103
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:118
+msgid "Read narratives archives"
+msgstr "Ler arquivo de narrativas"
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:117
+msgid "Read my narrative"
+msgstr "Ler minha narrativa"
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:119
+msgid "Unsubscribe"
+msgstr "Desinscrever-se"
+
+#: ../classes/Content/IFrame/IFrame.php:231
+msgid "Width (suggested width is 600 (pixels))"
+msgstr "Largura (600 pixels sugerido)"
+
+#: ../classes/Content/IFrame/IFrame.php:240
+msgid "Height (suggested width is 400 (pixels))"
+msgstr "Altura (400 pixels sugerido)"
+
+#: ../classes/Content/IFrame/IFrame.php:247
+msgid "HTML content URL"
+msgstr "URL do conte&uacute;do HTML"
+
+#: ../classes/Content/IFrame/IFrame.php:296
+msgid "Your browser does not support IFrames."
+msgstr "Seu navegador n&atilde;o suporta IFrames."
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:172
+msgid "Embedded content"
+msgstr "Conte&uacute;do incorporado"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:190
+msgid "Attributes"
+msgstr "Atributos"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:192
+msgid ""
+"It is recommended to specify at least <b>width='x' height='y'</b> as "
+"attributes"
+msgstr ""
+"&Eacute; recomendado especificar pelo menos <b>width='x' height=y'</b> como "
+"atributos"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:198
+msgid "Parameters"
+msgstr "Par&acirc;metros"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:212
+msgid ""
+"Fallback content (Can be another embedded content to create a fallback "
+"hierarchy)"
+msgstr ""
+"Conte&uacute;do alternativo (Pode ser outro conte&uacute;do incorporado para "
+"criar uma hierarquia alternativa)"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:261
+msgid "You MUST choose a File object or any of its siblings."
+msgstr "You MUST choose a File object or any of its siblings."
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:397
+#: ../classes/Content/Langstring/Langstring.php:531
+#: ../classes/Content.php:1924
+msgid ""
+"Content is persistent (you must make it non persistent before you can delete "
+"it)"
+msgstr ""
+"O conte&uacute;do &eacute; persistente (deve alter&aacute;-lo para n&atilde;"
+"o persistente antes de o apagar)"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:219
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:225
+msgid "Unable to insert new content group element into database!"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:291
+#, php-format
+msgid "%s %d display conditions"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:301
+msgid "(Ignored if display type is random)"
+msgstr "(Ignorado se o modo de exibi&ccedil;&atilde;o for aleat&oacute;rio)"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:307
+msgid ""
+"Content can be displayed at any date if no start or end date is specified.  "
+"Warning:  If you do not specify a specific time of day, midnight is assumed."
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:308
+msgid "Only display from"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:334
+msgid "Only display at node(s):"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:349
+#: ../classes/Content.php:738 ../classes/ProfileTemplate.php:395
+msgid "Remove"
+msgstr "Remover"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:361
+msgid "Add new allowed node"
+msgstr "Adicionar um novo HotSpot permitido"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:364
+msgid ""
+"(Content can be displayed at ANY node unless one or more nodes are selected)"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:381
+#, php-format
+msgid "%s %d displayed content (%s)"
+msgstr "Conte&uacute;do exibido %s %d (%s)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:87
+msgid "Pick content elements randomly"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:88
+msgid ""
+"Pick content elements randomly, but not twice until all elements have been "
+"seen"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:89
+msgid "Pick content elements in sequential order"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:92
+#, fuzzy
+msgid "Content always rotates"
+msgstr "Filtros de tipo de conte&uacute;do"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:93
+msgid "Content rotates once per day"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:94
+msgid "Content rotates once per session"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:95
+#, fuzzy
+msgid "Content rotates each time you change node"
+msgstr "Modo de sele&ccedil;&atilde;o de conte&uacute;do"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:96
+msgid ""
+"Content never rotates.  Usefull when showing all elements simultaneously in "
+"a specific order."
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:99
+#, fuzzy
+msgid "Content can be shown more than once"
+msgstr ""
+"O conte&uacute;do pode ser exibido para o mesmo utilizador mais de uma vez?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:100
+msgid "Content can only be shown once"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:101
+#, fuzzy
+msgid "Content can be shown more than once, but not at the same node"
+msgstr ""
+"O conte&uacute;do pode ser exibido para o mesmo utilizador mais de uma vez?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:153
+msgid "Invalid content selection mode (must be part of CONTENT_ORDERING_MODES)"
+msgstr ""
+"Modo de sele&ccedil;&atilde;o de conte&uacute;do inv&aacute;lido (precisa "
+"ser parte de CONTENT_ORDERING_MODES)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:182
+msgid ""
+"Invalid content selection mode (must be part of CONTENT_CHANGES_ON_MODES)"
+msgstr ""
+"Modo de sele&ccedil;&atilde;o de conte&uacute;do inv&aacute;lido (precisa "
+"ser parte de CONTENT_CHANGES_ON_MODES)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:211
+msgid "Invalid content selection mode (must be part of ALLOW_REPEAT_MODES)"
+msgstr ""
+"Modo de sele&ccedil;&atilde;o de conte&uacute;do inv&aacute;lido (precisa "
+"ser parte de ALLOW_REPEAT_MODES)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:243
+#: ../classes/Content/RssAggregator/RssAggregator.php:198
+msgid "You must display at least one element"
+msgstr "Precisa de exibir pelo menos um elemento"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:264
+#, php-format
+msgid "%s configuration"
+msgstr "Configura&ccedil;&atilde;o %s"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:268
+msgid "In what order should the content displayed?"
+msgstr "Em que ordem o conte&uacute;do dever&aacute; ser exibido?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:277
+msgid "When does the content rotate?"
+msgstr "Quando o conte&uacute;do &eacute; mudado?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:286
+msgid "Can content be shown more than once to the same user?"
+msgstr ""
+"O conte&uacute;do pode ser exibido para o mesmo utilizador mais de uma vez?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:295
+msgid "Pick how many elements for each display?"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:310
+#, php-format
+msgid "%s display element list"
+msgstr "Mostrar elemento de lista %s"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:317
+msgid "Show expired group elements"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:323
+msgid "Hide expired group elements"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:334
+#: ../classes/ProfileTemplate.php:526
+#, php-format
+msgid "%s %d"
+msgstr "%s %d"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:337
+#, php-format
+msgid "Delete %s %d"
+msgstr "Apagar %s %d"
+
+#: ../classes/Content/Langstring/Langstring.php:131
+#, php-format
+msgid "(Empty %s)"
+msgstr ""
+
+#: ../classes/Content/Langstring/Langstring.php:215
+#: ../classes/Content/Langstring/Langstring.php:341
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:112
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:182 smarty.txt:22
+msgid "Language"
+msgstr "Idioma"
+
+#: ../classes/Content/Langstring/Langstring.php:228
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:145
+msgid "Add new string"
+msgstr "Adicionar"
+
+#: ../classes/Content/Langstring/Langstring.php:285
+#: ../classes/Content/SimpleString/SimpleString.php:130
+msgid "Only these HTML tags are allowed : "
+msgstr "Apenas estas tags HTML s&atilde;o permitidas: "
+
+#: ../classes/Content/Langstring/Langstring.php:352
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:209
+msgid "Delete string"
+msgstr "Apagar texto"
+
+#: ../classes/Content/Langstring/Langstring.php:549
+#: ../classes/Content.php:1958
+msgid "Access denied (not owner of content)"
+msgstr ""
+"Acesso negado (n&atilde;o &eacute; o propriet&aacute;rio do conte&uacute;do)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:114
+msgid ""
+"The RssAggregator content with the following id could not be found in the "
+"database: "
+msgstr ""
+"O agregador RSS de conte&uacute;do com o seguinte id n&atilde;o pode ser "
+"encontrado na base de dados: "
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:417
+msgid "The maximum age must be a positive integer or null"
+msgstr "A idade m&aacute;xima precisa ser um positivo inteiro ou nulo"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:503
+msgid "Total number of items to display (from all feeds)"
+msgstr "N&uacute;mero total de &iacute;tens a exibir (de todas as fontes)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:518
+msgid ""
+"How much bonus feeds that do not publish as often get over feed that publish "
+"more often.\n"
+"                                            The default is 0.75, with a "
+"typical range between 0 and 1.\n"
+"                                            At 0, you have a classic RSS "
+"aggregator, meaning the n most recent entries picked from all feeds\n"
+"                                            will be displayed. 1 is usually "
+"as high as you'll want to go:  Assuming that all feeds have \n"
+"                                            an homogenous internal "
+"distribution (ex:  one feed publishes exactly one entry a day, the\n"
+"                                            second once every two days, and "
+"the third once every three days), and you ask for 15 entries,\n"
+"                                            there will be 5 of each.  While "
+"that may not sound usefull, it still is, as the feed's distribution is\n"
+"                                            usually not homogenous."
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:526
+msgid "Algorithm Strength"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:542
+msgid ""
+"Set the criteria that determines which feed items will be shown expanded by "
+"default."
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:543
+msgid "Feed item expansion criteria"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:557
+msgid ""
+"Set in which order the feeds are displayed, and if items from all source "
+"should be merged together"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:558
+msgid "Item ordering"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:572
+msgid "Display empty feeds?"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:585
+msgid ""
+"Set the oldest entries (in seconds) you are willing to see.  Any entries "
+"older than this will not\n"
+"                                            be considered at all for "
+"display, even if it means that the configured number of items to be "
+"displayed isn't reached.\n"
+"                                            It's only usefull if all your "
+"feed publish very rarely, and you don't want very old entries to show up."
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:588
+msgid "Maximum age (seconds)"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:596
+msgid "seconds"
+msgstr "segundos"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:604
+msgid "Feeds:"
+msgstr "Fontes:"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:629
+msgid ""
+"Add a new feed or pick one from the other feeds in the system "
+"(most_popular_first)"
+msgstr ""
+"Adicione uma nova fonte ou selecione uma das existentes no sistema "
+"(most_popular_first)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:645
+#, php-format
+msgid "%s, used %d times"
+msgstr "%s, utilizada %d vezes"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:651
+msgid "Type URL manually"
+msgstr "Digite a URL manualmente"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:654
+#: ../classes/Content.php:545 ../classes/Content.php:967
+#: ../classes/ProfileTemplate.php:327 ../classes/ProfileTemplateField.php:137
+msgid "Add"
+msgstr "Adicionar"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:755
+msgid ""
+"WARNING:  Either the feed couldn't be retrieved, or it couldn't be parsed.  "
+"Please double check the URL."
+msgstr ""
+"ATEN&Ccedil;&Atilde;O:  Ou a fonte n&atilde;o pode ser recuperada, ou ela "
+"n&atilde;o pode ser lida. Por favor cheque a URL novamente."
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:775
+#, php-format
+msgid "The feed publishes an item every %.2f day(s)"
+msgstr "A fonte publica um &iacute;tem a cada %.2f dia(s)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:777
+msgid ""
+"WARNING:  This feed does not include the publication dates.\n"
+"                                                                                                                             The "
+"system needs to be able to compute approximate publication\n"
+"                                                                                                                             date "
+"for each entry, so the entry can be weighted against the\n"
+"                                                                                                                             others. "
+"In order for the aggregator to do a good job, you need\n"
+"                                                                                                                             to "
+"estimate fublication frequency of the items, in days.\n"
+"                                                                                                                             If "
+"unset, defaults to one day."
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:803
+msgid ""
+"The bias to be given to the source by the selection algorithm.\n"
+"                                                                                    Bias "
+"must be > 0 , typical values would be between 0.75 and 1.5\n"
+"                                                                                    and "
+"default is 1 (no bias).  A bias of 2 will cause the items\n"
+"                                                                                    to "
+"look twice as recent to the algorithm. A bias of 0.5 to\n"
+"                                                                                    look "
+"twice as old. Be carefull, a bias of 2 will statistically\n"
+"                                                                                    cause "
+"the feed to have MORE than twice as many items displayed."
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:810
+msgid "Algorithm bias for this feed"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:854
+msgid "The bias must be a positive real number"
+msgstr "O periodo precisa ser um n&uacute;mero real positivo"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:882
+msgid "The default publication must must be a positive integer or empty"
+msgstr ""
+"A publica&ccedil;&atilde;o padr&atilde;o precisa ser um inteiro positivo ou "
+"vazio"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:904
+msgid "The URL cannot be empty!"
+msgstr "A URL n&atilde;o pode estar vazia!"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:940
+msgid "See more"
+msgstr ""
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:940
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "-"
+msgstr "-"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:942
+#, php-format
+msgid "Could not get RSS feed: %s"
+msgstr "Imposs&iacute;vel obter a fonte RSS: %s"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:948
+msgid "RSS support is disabled"
+msgstr "O suporte a RSS est&aacute; desactivado"
+
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:227
+msgid "FCKeditor is not installed"
+msgstr "FCKeditor n&atilde;o est&aacute; instalado"
+
+#: ../classes/Content/Picture/Picture.php:272
+msgid "Hyperlink URL (leave empty if you don't need it)"
+msgstr ""
+
+#: ../classes/Content/Picture/Picture.php:280
+msgid "Width (leave empty if you want to keep original width)"
+msgstr "Largura (deixe em branco para manter a largura original)"
+
+#: ../classes/Content/Picture/Picture.php:287
+msgid "Height (leave empty if you want to keep original height)"
+msgstr "Altura (deixe em branco para manter a altura original)"
+
+#: ../classes/Content/Stylesheet/Stylesheet.php:106
+msgid ""
+"Hints:  Note that the order in which Stylesheets are assigned relative to "
+"other content doesn't matter (except relative to other Stylesheets).  "
+"Stylesheets will be linked to the page in the order they are assigned, but "
+"always after the base stylesheet and network theme pack (if applicable).  "
+"They must be written as patches to those stylesheets."
+msgstr ""
+
+#: ../classes/Content/SmartyTemplate/SmartyTemplate.php:85
+#, php-format
+msgid ""
+"To list the available Smarty variables, put %s in the input field, save and "
+"then click preview"
+msgstr ""
+
+#: ../classes/Content/SmartyTemplate/SmartyTemplate.php:86
+#, php-format
+msgid "There are also a few custom Smarty modifiers available: %s"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:82
+msgid "300x250 - IAB Medium Rectangle"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:83
+msgid "250x250 - IAB Square Pop-Up"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:84
+msgid "240x400 - IAB Vertical Rectangle"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:85
+msgid "336x280 - IAB Large Rectangle"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:86
+msgid "180x150 - IAB Rectangle"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:88
+msgid "468x60  - IAB Full Banner"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:89
+msgid "234x60  - IAB Half Banner"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:90
+msgid "88x31   - IAB Micro Bar"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:91
+msgid "120x90  - IAB Button 1"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:92
+msgid "120x60  - IAB Button 2"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:93
+msgid "120x240 - IAB Vertical Banner"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:94
+msgid "125x125 - IAB Square Button"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:95
+msgid "728x90  - IAB Leaderboard"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:97
+msgid "160x600 - IAB Wide Skyscraper"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:98
+msgid "120x600 - IAB Skyscraper"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:99
+msgid "300x600 - IAB Half Page Ad"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:128
+msgid "Maximum display size"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:131
+msgid "Use the values below for width and height"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:137
+msgid "Width"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:146
+msgid "Height"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:240
+msgid "Shout button 'onclick=' value (optionnal):"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:247
+#, php-format
+msgid ""
+"Note that the onclick parameter will appear inside double quotes in html.  "
+"They must be properly encoded fot that context.  You can access the shout "
+"text in Javascript with: %s"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:251 ../classes/Content.php:1553
+#: ../classes/Content.php:1572 ../classes/Content.php:1589
+#: ../classes/Content.php:1606 ../classes/Role.php:359
+#: ../classes/ProfileTemplateField.php:444
+#: ../classes/ProfileTemplateField.php:462
+#, php-format
+msgid "Delete %s (%s)"
+msgstr "Apagar %s (%s)"
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:251
+msgid "onclick parameter"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:330
+msgid "Shout!"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:335
+msgid "Sorry, you must be at a hotspot to use the shoutbox"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:346
+#, php-format
+msgid "Last %d messages:"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:372
+msgid "Sorry, I am unable to determine your current node"
+msgstr ""
+
+#: ../classes/Content/Avatar/Avatar.php:103
+msgid ""
+"Unable to process image (GD probably doesn't have support for it enabled)"
+msgstr ""
+
+#: ../classes/Content/HyperLink/HyperLink.php:95
+msgid "Warning: the URL is invalid!"
+msgstr ""
+
+#: ../classes/Content/HyperLink/HyperLink.php:117
+msgid "(invalid URL)"
+msgstr ""
+
+#: ../classes/Content/UIUserList/UIUserList.php:88
+msgid ""
+"This content type will display a list of online users at the current hotspot."
+msgstr ""
+
+#: ../classes/Content/UIUserList/UIUserList.php:152
+msgid "The online user list must be viewed at a specific node"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:87
+msgid ""
+"This content type will display a a graph of the user's remaining bandwidth "
+"according to dyabuse control rules."
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+#, fuzzy
+msgid "B"
+msgstr "KB"
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "kB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "MB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "GB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "TB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "PB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "EB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "ZB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "YB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:118
+#, php-format
+msgid ""
+"During the last %s period, you transfered %s / %s and were connected %s / %s "
+"at this node.  Throughout the network, you transfered %s / %s and were "
+"connected %s / %s"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:121
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:123
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:125
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:127
+msgid "Unlimited"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:122
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:126
+#, fuzzy
+msgid "None"
+msgstr "HotSpot"
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:132
+#, fuzzy
+msgid "Abuse control is currently disabled"
+msgstr "Sua conta actualmente est&aacute; valida."
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:136
+msgid "Unable to retrieve node specific restrictions (you are not at a node)"
+msgstr ""
+
+#: ../classes/VirtualHost.php:162
+msgid "Server::getAllServers: Fatal error: No servers in the database!"
+msgstr "Server::gelAllServers: Erro fatal: Nenhum servidor na base de dados"
+
+#: ../classes/VirtualHost.php:262 ../classes/Server.php:151
+msgid "Unable to insert the new server in the database!"
+msgstr ""
+"N&atilde;o foi poss&iacute;vel incluir o novo servidor na base de dados!"
+
+#: ../classes/VirtualHost.php:298
+msgid "Virtual host:"
+msgstr ""
+
+#: ../classes/VirtualHost.php:375
+msgid "Add a new virtual host for hostname"
+msgstr ""
+
+#: ../classes/VirtualHost.php:595
+msgid "Virtual hosts management"
+msgstr ""
+
+#: ../classes/VirtualHost.php:614
+msgid "Hostname"
+msgstr "Nome do host"
+
+#: ../classes/VirtualHost.php:622
+msgid "Default network for this vhost"
+msgstr ""
+
+#: ../classes/VirtualHost.php:639
+msgid "Make this Virtual Host the server's default?"
+msgstr ""
+
+#: ../classes/VirtualHost.php:655
+msgid "Use SSL on this server?"
+msgstr "Usar SSL neste servidor?"
+
+#: ../classes/VirtualHost.php:667
+msgid "Google public API key"
+msgstr "Chave da API publica Google"
+
+#: ../classes/VirtualHost.php:738
+msgid ""
+"Cannot delete default virtual host, create another one and select it before "
+"removing this one."
+msgstr ""
+
+#: ../classes/VirtualHost.php:743
+msgid "Could not delete server!"
+msgstr "Imposs&iacute;vel apagar servidor!"
+
+#: ../classes/VirtualHost.php:771
+msgid "Virtual Hosts"
+msgstr ""
+
+#: ../classes/Profile.php:206
+msgid "Unable to insert the new profile in the database!"
+msgstr ""
+
+#: ../classes/Profile.php:309
+msgid "Should this profile be publicly visible?"
+msgstr "Deseja que este perfil seja visto publicamente"
+
+#: ../classes/Profile.php:311 ../classes/Network.php:1716
+#: ../classes/Network.php:1722 ../classes/Network.php:1728
+#: ../classes/Network.php:1753 ../classes/Node.php:1335
+#: ../classes/Node.php:1350
+msgid "Yes"
+msgstr "Sim"
+
+#: ../classes/Profile.php:314
+msgid "Profile preferences"
+msgstr "Prefer&ecirc;ncias de perfil"
+
+#: ../classes/Profile.php:355
+msgid "Profile fields"
+msgstr "Campos do perfil"
+
+#: ../classes/Profile.php:423
+msgid "Sorry, this user has hidden his profile  temporarily."
+msgstr ""
+
+#: ../classes/Profile.php:446 ../classes/ProfileTemplateField.php:593
+#: ../classes/ProfileField.php:363
+msgid "Access denied (must have super admin access)"
+msgstr "Acesso negado (precisa de ter acesso super-admin)"
+
+#: ../classes/Profile.php:451
+msgid "Could not delete Profile!"
+msgstr "Imposs&iacute;vel"
+
+#: ../classes/Security.php:205
+#, php-format
+msgid "%s (%s) on  %s: %s"
+msgstr ""
+
+#: ../classes/Security.php:205
+msgid "Any"
+msgstr "Qualquer"
+
+#: ../classes/Security.php:208
+msgid ""
+"Some (possibly all) of the following permission(s) you don't have are "
+"required to perform the operation your requested:"
+msgstr ""
+"Algumas (possivelmente todas) das seguintes permiss&otilde;es que n&atilde;o "
+"tem sao obrigat&oacute;rias para realizar esta opera&ccedil;&atilde;o:"
+
+#: ../classes/FormSelectGenerator.php:103
+#: ../classes/FormSelectGenerator.php:112
+msgid " (Empty langstring, ID is displayed)"
+msgstr " (Langstring vazia, o ID ser&aacute; exibido)"
+
+#: ../classes/User.php:169
+#, php-format
+msgid "There is no user with username %s"
+msgstr "O utilizador %s n&atilde;o existe"
+
+#: ../classes/User.php:280
+msgid "Guest"
+msgstr ""
+
+#: ../classes/User.php:323
+msgid "View this user's profile."
+msgstr ""
+
+#: ../classes/User.php:361
+#, php-format
+msgid "Sorry, the username %s is not available"
+msgstr ""
+"Pedimos desculpa, mas o username %s n&atilde;o est&aacute; dispon&iacute;vel"
+
+#: ../classes/User.php:407
+msgid "Could not update email address."
+msgstr "Imposs&iacute;vel actualizar endere&ccedil;o de email."
+
+#: ../classes/User.php:441
+msgid "Could not update username locale."
+msgstr "Imposs&iacute;vel actualizar localiza&ccedil;&atilde;o do username."
+
+#: ../classes/User.php:463
+msgid "Could not update status."
+msgstr "Imposs&iacute;vel actualizar o estado."
+
+#: ../classes/User.php:484
+#, php-format
+msgid ""
+"Sorry, your %.0f minutes grace period to retrieve your email and validate "
+"your account has now expired. You will have to connect to the internet and "
+"validate your account from another location."
+msgstr ""
+"Os %.0f minutos para valida&ccedil;&atilde;o da<br>sua conta expiraram."
+"<br>Ter&aacute; que se ligar &agrave; Internet e <br>validar a sua conta "
+"noutro local."
+
+#: ../classes/User.php:487
+msgid "Your account is currently valid."
+msgstr "Sua conta actualmente est&aacute; valida."
+
+#: ../classes/User.php:491
+msgid "Sorry, your account is not valid: "
+msgstr "Pedimos desculpa, mas sua conta n&atilde;o &eacute; valida: "
+
+#: ../classes/User.php:599
+#, php-format
+msgid ""
+"During the last %s period, you transfered %s bytes throughout the network, "
+"which exceeds the %s bytes limit for the entire network."
+msgstr ""
+
+#: ../classes/User.php:602
+#, php-format
+msgid ""
+"During the last %s period, you transfered %s bytes at this node, which "
+"exceeds the %s bytes limit for this node."
+msgstr ""
+
+#: ../classes/User.php:605
+#, php-format
+msgid ""
+"During the last %s period, you were online for a duration of %s throughout "
+"the network, which exceeds the %s limit for the entire network."
+msgstr ""
+
+#: ../classes/User.php:608
+#, php-format
+msgid ""
+"During the last %s period, you were online for a duration of %s at this "
+"node, which exceeds the %s limit for this node."
+msgstr ""
+
+#: ../classes/User.php:660
+msgid "Password cannot be empty."
+msgstr "A password n&atilde;o pode ser vazia."
+
+#: ../classes/User.php:664
+msgid "Could not change user's password."
+msgstr "Imposs&iacute;vel alterar a password do utilizador"
+
+#: ../classes/User.php:680
+msgid "No users could not be found in the database"
+msgstr ""
+"N&atilde;o foi poss&iacute;vel encontrar nenhum username na base de dados"
+
+#: ../classes/User.php:689 ../classes/User.php:707 ../classes/User.php:724
+msgid "Registration system"
+msgstr "Sistema de registo"
+
+#: ../classes/User.php:692
+msgid " lost username request"
+msgstr " pedido de username"
+
+#: ../classes/User.php:693
+msgid ""
+"Hello,\n"
+"You have requested that the authentication server send you your username:\n"
+"Username: "
+msgstr ""
+"Caro utilizador,\n"
+"Na sequência do seu pedido, enviamos o seu Username. Por favor, tome nota "
+"dos seu novos dados num local seguro.\n"
+"Username: "
+
+#: ../classes/User.php:693 ../classes/User.php:728
+msgid ""
+"\n"
+"\n"
+"Have a nice day,\n"
+"The Team"
+msgstr ""
+"\n"
+"\n"
+"Obrigado"
+
+#: ../classes/User.php:699
+msgid "The user is not in validation period."
+msgstr ""
+"O username n&atilde;o est&aacute; no per&iacute;odo de valida&ccedil;&atilde;"
+"o."
+
+#: ../classes/User.php:702
+msgid "The validation token is empty."
+msgstr "O token de valida&ccedil;&atilde;o est&aacute; vazio."
+
+#: ../classes/User.php:710
+msgid " new user validation"
+msgstr " confirmação de nova conta"
+
+#: ../classes/User.php:712
+msgid ""
+"Hello,\n"
+"Please follow the link below to validate your account.\n"
+msgstr ""
+"Caro utilizador,\n"
+"\n"
+"Para confirmar o seu registo, por favor siga o seguinte endereço: \n"
+
+#: ../classes/User.php:712
+msgid ""
+"\n"
+"\n"
+"Thank you,\n"
+"The Team."
+msgstr ""
+"\n"
+"\n"
+"Obrigado"
+
+#: ../classes/User.php:727
+msgid " new password request"
+msgstr " nova password"
+
+#: ../classes/User.php:728
+msgid ""
+"Hello,\n"
+"You have requested that the authentication server send you a new password:\n"
+"Username: "
+msgstr ""
+"Caro utilizador,\n"
+"Na sequência do seu pedido, enviamos a sua password. Por favor, tome nota "
+"dos seu novos dados num local seguro.\n"
+"Username: "
+
+#: ../classes/User.php:728
+msgid ""
+"\n"
+"Password: "
+msgstr ""
+"\n"
+"Password: "
+
+#: ../classes/User.php:848
+msgid "Get user statistics"
+msgstr "Obter estat&iacute;sticas deste utilizador"
+
+#: ../classes/User.php:853
+msgid "Note that Error is for internal use only"
+msgstr ""
+
+#: ../classes/User.php:859
+msgid "Administrative options"
+msgstr "Op&ccedil;&otilde;s administrativas"
+
+#: ../classes/User.php:867
+msgid "Be carefull when changing this: it's the username you use to log in!"
+msgstr ""
+"Tenha cuidado ao alterar: este &eacute; o seu username de liga&ccedil;"
+"&atilde;o!"
+
+#: ../classes/User.php:873
+msgid "Your current password"
+msgstr "Password actual"
+
+#: ../classes/User.php:879
+msgid "Your new password"
+msgstr "Nova password"
+
+#: ../classes/User.php:884
+msgid "Your new password (again)"
+msgstr "Nova passsword (novamente)"
+
+#: ../classes/User.php:889
+msgid "Change my password"
+msgstr "Alterar minha password"
+
+#: ../classes/User.php:891
+msgid "User preferences"
+msgstr "Prefer&ecirc;ncias"
+
+#: ../classes/User.php:903
+msgid "Completely delete my public profile"
+msgstr ""
+
+#: ../classes/User.php:912
+msgid "Create my public profile"
+msgstr ""
+
+#: ../classes/User.php:944
+msgid "Wrong password."
+msgstr "Password incorreta."
+
+#: ../classes/User.php:1038
+msgid "Online Users"
+msgstr "Utilizadores Ligados"
+
+#: ../classes/User.php:1044
+msgid "Import NoCat user database"
+msgstr "Importar base de dados de utilizadores NoCat"
+
+#: ../classes/User.php:1051
+msgid "User manager"
+msgstr "Gest&atilde;o de utilizadores"
+
+#: ../classes/User.php:1063
+msgid "User administration"
+msgstr "Gest&atilde;o de utilizadores"
+
+#: ../classes/Network.php:124 ../classes/Network.php:265
+msgid "Network::getAllNetworks:  Fatal error: No networks in the database!"
+msgstr "Network::getAllNetworks:  Erro fatal: Nenhuma rede na base de dados!"
+
+#: ../classes/Network.php:201
+msgid "Unable to insert the new network in the database!"
+msgstr "Imposs&iacute;vel inserir a nova rede na base de dados!"
+
+#: ../classes/Network.php:276 ../classes/Network.php:282
+msgid "Network:"
+msgstr "Rede:"
+
+#: ../classes/Network.php:323
+msgid "Create a new network with ID"
+msgstr "Criar uma nova rede com o ID"
+
+#: ../classes/Network.php:737 ../classes/Statistics.php:124
+#: ../classes/Content.php:335 ../classes/NodeList.php:162
+msgid "Unable to open directory "
+msgstr "Imposs&iacute;vel abrir diret&oacute;rio "
+
+#: ../classes/Network.php:1041
+msgid "Satellite"
+msgstr "Satelite"
+
+#: ../classes/Network.php:1041
+msgid "Hybrid"
+msgstr "Hibrido"
+
+#: ../classes/Network.php:1629
+msgid "Network management"
+msgstr "Administra&ccedil;&atilde;o da rede"
+
+#: ../classes/Network.php:1635
+msgid "Network content"
+msgstr "Conte&uacute;do de rede"
+
+#: ../classes/Network.php:1646
+msgid "Network ID"
+msgstr "ID da rede"
+
+#: ../classes/Network.php:1651
+msgid "Network name"
+msgstr "Nome da rede"
+
+#: ../classes/Network.php:1656
+msgid "Network creation date"
+msgstr "Data de cria&ccedil;&atilde;o da rede"
+
+#: ../classes/Network.php:1661
+msgid "Network's web site"
+msgstr "Site da rede"
+
+#: ../classes/Network.php:1666
+msgid "Technical support email"
+msgstr "Email de suporte t&eacute;cnico"
+
+#: ../classes/Network.php:1671
+msgid "Information about the network"
+msgstr "Informa&ccedil;&atilde;o da rede"
+
+#: ../classes/Network.php:1679
+msgid "Network authenticator class"
+msgstr ""
+
+#: ../classes/Network.php:1680
+msgid ""
+"The subclass of Authenticator to be used for user authentication. Example: "
+"AuthenticatorRadius"
+msgstr ""
+
+#: ../classes/Network.php:1687
+msgid "Authenticator parameters"
+msgstr ""
+
+#: ../classes/Network.php:1688
+#, fuzzy
+msgid ""
+"The explicit parameters to be passed to the authenticator. You MUST read the "
+"constructor documentation of your desired authenticator class (in wifidog/"
+"classes/Authenticators/) BEFORE you start playing with this.  Example: "
+"'my_network_id', '192.168.0.11', 1812, 1813, 'secret_key', 'CHAP_MD5'"
+msgstr ""
+"Os par&acirc;metros a serem passados para o autenticador (ex: "
+"'my_network_id', '192.168.0.11', 1812, 1813, 'secret_key', 'CHAP_MD5')"
+
+#: ../classes/Network.php:1693
+msgid "Network Authentication"
+msgstr ""
+
+#: ../classes/Network.php:1701
+msgid "Selected theme pack for this network"
+msgstr "Pacote de tema selecionado para esta rede"
+
+#: ../classes/Network.php:1706
+msgid "Network properties"
+msgstr ""
+
+#: ../classes/Network.php:1714
+msgid "Splash-only nodes"
+msgstr ""
+
+#: ../classes/Network.php:1715
+msgid "Are nodes allowed to be set as splash-only (no login)?"
+msgstr ""
+"&Eacute; permitido aos HotSpots n&atilde;o autenticar os utilizadores (sem "
+"login)?"
+
+#: ../classes/Network.php:1720
+msgid "Portal page redirection"
+msgstr ""
+
+#: ../classes/Network.php:1721
+msgid ""
+"Are nodes allowed to redirect users to an arbitrary web page instead of the "
+"portal?"
+msgstr ""
+"&Eacute; permitido aos HotSpots redirecionar os utilizadores para uma "
+"p&aacute;gina, em vez do portal?"
+
+#: ../classes/Network.php:1726 ../classes/Node.php:1348
+msgid "Original URL redirection"
+msgstr ""
+
+#: ../classes/Network.php:1727
+#, fuzzy
+msgid ""
+"Are nodes allowed to redirect users to the web page they originally "
+"requested instead of the portal?"
+msgstr ""
+"&Eacute; permitido aos HotSpots redirecionar os utilizadores para uma "
+"p&aacute;gina, em vez do portal?"
+
+#: ../classes/Network.php:1732
+msgid "Network's node properties"
+msgstr ""
+
+#: ../classes/Network.php:1740
+msgid "Validation grace period"
+msgstr ""
+
+#: ../classes/Network.php:1741
+msgid ""
+"The length of the validation grace period in seconds.  A new user is granted "
+"Internet access for this period check his email and validate his account."
+msgstr ""
+"A dura&ccedil;&atilde;o do b&oacute;nus de tempo de valida&ccedil;&atilde;o "
+"em segundos. A um novo utilizador &eacute; concedido acesso &agrave; "
+"Internet por este per&iacute;odo para confirmar o seu email e validar a sua "
+"conta."
+
+#: ../classes/Network.php:1746
+msgid "This will be the from address of the validation email"
+msgstr ""
+
+#: ../classes/Network.php:1751
+msgid "Multiple connections"
+msgstr ""
+
+#: ../classes/Network.php:1752
+msgid "Can an account be connected more than once at the same time?"
+msgstr "Uma conta pode ligar-se mais do que uma vez ao mesmo tempo?"
+
+#: ../classes/Network.php:1757
+msgid "Network's user verification"
+msgstr ""
+
+#: ../classes/Network.php:1767
+msgid "Abuse control window"
+msgstr ""
+
+#: ../classes/Network.php:1768
+msgid ""
+"The length of the window during which the user must not have exceeded the "
+"limits below.  Any valid postgresql interval expression is acceptable, "
+"typically '1 month' '1 week'.  A user who exceeds the limits will be denied "
+"access until his usage falls below the limits."
+msgstr ""
+
+#: ../classes/Network.php:1773
+msgid "Network max total bytes transfered"
+msgstr ""
+
+#: ../classes/Network.php:1774 ../classes/Network.php:1786
+msgid "Maximum data transfer during the abuse control window"
+msgstr ""
+
+#: ../classes/Network.php:1779
+#, fuzzy
+msgid "Network max connection duration"
+msgstr "Data de cria&ccedil;&atilde;o da rede"
+
+#: ../classes/Network.php:1780 ../classes/Network.php:1792
+msgid ""
+"Maximum connection duration during the abuse control window.  Any valid "
+"postgresql interval expression is acceptable, such as hh:mm:ss"
+msgstr ""
+
+#: ../classes/Network.php:1785
+msgid "Node max total bytes transfered"
+msgstr ""
+
+#: ../classes/Network.php:1791
+#, fuzzy
+msgid "Node max connection duration"
+msgstr "Configura&ccedil;&atilde;o do HotSpot"
+
+#: ../classes/Network.php:1797
+#, fuzzy
+msgid "You do not have access to edit these options"
+msgstr "(N&atilde;o tem permiss&otilde;s para editar este conte&uacute;do)"
+
+#: ../classes/Network.php:1800
+msgid "Dynamic abuse control"
+msgstr ""
+
+#: ../classes/Network.php:1813 ../classes/Server.php:281
+#: ../classes/Node.php:1362
+msgid "Access rights"
+msgstr "Direitos de acesso"
+
+#: ../classes/Network.php:1829
+msgid "Note that to be valid, all 3 values must be present."
+msgstr ""
+
+#: ../classes/Network.php:1830 ../classes/Node.php:1288
+msgid "Latitude"
+msgstr "Latitude"
+
+#: ../classes/Network.php:1831
+#, fuzzy
+msgid "Center latitude for the area covered by your wireless network"
+msgstr "Latitude central da area da sua rede sem fios"
+
+#: ../classes/Network.php:1835 ../classes/Node.php:1293
+msgid "Longitude"
+msgstr "Longitude"
+
+#: ../classes/Network.php:1836
+#, fuzzy
+msgid "Center longitude for the area covered by your wireless network"
+msgstr "Longitude central da area da sua rede sem fios"
+
+#: ../classes/Network.php:1840
+msgid "Zoomlevel"
+msgstr "N&iacute;vel de zoom"
+
+#: ../classes/Network.php:1841
+#, fuzzy
+msgid "Zoomlevel of the Google Map.  12 is a typical value."
+msgstr ""
+"N&iacute;vel de zoom do Google Maps para a &aacute;rea da sua rede sem fios"
+
+#: ../classes/Network.php:1845
+msgid "Map type"
+msgstr "Tipo de mapa"
+
+#: ../classes/Network.php:1846
+msgid "Default Google Map type for your the area of your wireless network"
+msgstr ""
+"Tipo padr&atilde;o de mapa do Google Maps para a &aacute;rea da sua rede sem "
+"fio"
+
+#: ../classes/Network.php:1851 ../classes/Node.php:1315
+msgid "GIS data"
+msgstr "Dados GIS"
+
+#: ../classes/Network.php:1855
+msgid "Network profile templates"
+msgstr ""
+
+#: ../classes/Network.php:2106
+#, fuzzy
+msgid ""
+"Cannot delete default network, create another one and select it before you "
+"remove this one."
+msgstr ""
+"N&atilde;o &eacute; poss&iacute;vel apagar a rede padr&atilde;o, crie outra "
+"rede e selecione-a antes de apagar esta."
+
+#: ../classes/Network.php:2111
+msgid "Could not delete network!"
+msgstr "Imposs&iacute;vel apagar a rede!"
+
+#: ../classes/Network.php:2147
+#, fuzzy, php-format
+msgid "Add a new network on this server"
+msgstr "Adicionar um novo propriet&aacute;rio de HotSpot"
+
+#: ../classes/Network.php:2152
+msgid "Network administration"
+msgstr "Gest&atilde;o de redes"
+
+#: ../classes/Statistics.php:85
+msgid "Usernames"
+msgstr "Usernames"
+
+#: ../classes/Statistics.php:86
+msgid "MAC addresses"
+msgstr "Endere&ccedil;o MAC"
+
+#: ../classes/Statistics.php:152 ../classes/Statistics.php:156
+msgid "No restriction..."
+msgstr "Nenhuma restri&ccedil;&atilde;o..."
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "yesterday"
+msgstr "ontem"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "today"
+msgstr "hoje"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "2 days ago"
+msgstr "2 dias atr&aacute;s"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "3 days ago"
+msgstr "3 dias atr&aacute;s"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "1 week ago"
+msgstr "1 semana atr&aacute;s"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "2 weeks ago"
+msgstr "2 semanas atr&aacute;s"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "3 weeks ago"
+msgstr "3 semanas atr&aacute;s"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "1 month ago"
+msgstr "1 m&ecirc;s atr&aacute;s"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "2 months ago"
+msgstr "2 meses atr&aacute;s"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "6 months ago"
+msgstr "6 meses atr&aacute;s"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "1 year ago"
+msgstr "1 ano atr&aacute;s"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "Select from and to..."
+msgstr "Selecione in&iacute;cio e fim..."
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "yesterday (whole day)"
+msgstr "ontem (o dia inteiro)"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "today (whole day)"
+msgstr "hoje (o dia inteiro)"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "this month"
+msgstr "este m&ecirc;s"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "last month"
+msgstr "m&ecirc;s passado"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "this year"
+msgstr "este ano"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "forever"
+msgstr "para sempre"
+
+#: ../classes/Statistics.php:161
+msgid "From"
+msgstr "De"
+
+#: ../classes/Statistics.php:176
+msgid "To"
+msgstr "Para"
+
+#: ../classes/Statistics.php:456
+msgid "Invalid parameter"
+msgstr "Par&acirc;metro inv&aacute;lido"
+
+#: ../classes/Statistics.php:494
+msgid "Username or MAC address, depending on selection above"
+msgstr "Username ou MAC address (conforme selec&ccedil;&atilde;o acima)"
+
+#: ../classes/Statistics.php:590
+msgid "Report configuration"
+msgstr "Configura&ccedil;&atilde;o do relat&oacute;rio"
+
+#: ../classes/Statistics.php:613
+msgid "Restrict the time range for which statistics will be computed"
+msgstr ""
+"Restringir o per&iacute;odo de tempo em que as estat&iacute;sticas "
+"ser&atilde;o geradas"
+
+#: ../classes/Statistics.php:621
+msgid "Restrict stats to the following nodes"
+msgstr "Restringir estat&iacute;sticas aos seguintes HotSpots"
+
+#: ../classes/Statistics.php:631
+msgid "Distinguish users by"
+msgstr "Distinguir usernames por"
+
+#: ../classes/Statistics.php:640
+msgid "Restrict stats to the selected users"
+msgstr "Restringir estat&iacute;sticas aos usernames selecionados"
+
+#: ../classes/Statistics.php:649
+msgid "Selected reports"
+msgstr "Relat&oacute;rios selecionados"
+
+#: ../classes/AbstractDb.php:93
+msgid "It appears the postgresql module isn't loaded"
+msgstr ""
+
+#: ../classes/AbstractDb.php:99
+#, fuzzy, php-format
+msgid "Unable to connect to the database at %s"
+msgstr "Imposs&iacute;vel ligar-se &agrave; base de dados em %s"
+
+#: ../classes/AbstractDb.php:121 ../classes/AbstractDb.php:214
+#: ../classes/AbstractDb.php:402 ../classes/AbstractDb.php:475
+msgid "SQL Query"
+msgstr "Consulta SQL"
+
+#: ../classes/AbstractDb.php:126 ../classes/AbstractDb.php:219
+msgid "Query plan"
+msgstr "Plano de consulta"
+
+#: ../classes/AbstractDb.php:144 ../classes/AbstractDb.php:237
+#: ../classes/AbstractDb.php:412
+#, php-format
+msgid "Elapsed time for query execution : %.6f second(s)"
+msgstr "Tempo decorrido na execu&ccedil;&atilde;o da consulta: %.6f segundo(s)"
+
+#: ../classes/AbstractDb.php:148 ../classes/AbstractDb.php:241
+#: ../classes/AbstractDb.php:416 ../classes/AbstractDb.php:426
+#: ../classes/AbstractDb.php:490
+msgid "An error occured while executing the following SQL query"
+msgstr "Um erro ocorreu na execu&ccedil;&atilde;o da seguinte consulta SQL"
+
+#: ../classes/AbstractDb.php:149 ../classes/AbstractDb.php:242
+#: ../classes/AbstractDb.php:417 ../classes/AbstractDb.php:491
+msgid "Error message"
+msgstr "Mensagem de erro"
+
+#: ../classes/AbstractDb.php:150 ../classes/AbstractDb.php:243
+#: ../classes/AbstractDb.php:492
+msgid "Backtrace:"
+msgstr ""
+
+#: ../classes/AbstractDb.php:173
+#, php-format
+msgid "The query returned %d results"
+msgstr "A consulta retornou %d resultados"
+
+#: ../classes/AbstractDb.php:427
+#, php-format
+msgid ""
+"The query returned %d results, although there should have been only one."
+msgstr "A consulta retornou %d resultados, entretanto existe apenas um."
+
+#: ../classes/AbstractDb.php:435
+#, php-format
+msgid "The query returned %d result(s)"
+msgstr "A consulta retornou %d resultado(s)"
+
+#: ../classes/AbstractDb.php:484 ../classes/AbstractDb.php:502
+#, php-format
+msgid "%d rows affected by the SQL query."
+msgstr "%d linhas afetadas pela consulta SQL."
+
+#: ../classes/AbstractDb.php:485
+#, php-format
+msgid "Elapsed time for query execution : %6f second(s)"
+msgstr "Tempo decorrido na execu&ccedil;&atilde;o da consulta: %6f segundo(s)"
+
+#: ../classes/Server.php:91
+msgid "Main server object"
+msgstr ""
+
+#: ../classes/Server.php:229
+msgid "Server management"
+msgstr "Gerenciamento de servidores"
+
+#: ../classes/Server.php:255
+msgid "Timezone check:  The following must be in the same timezone"
+msgstr ""
+
+#: ../classes/Server.php:259
+#, php-format
+msgid "Timezone from postgresql: %s"
+msgstr ""
+
+#: ../classes/Server.php:262
+#, php-format
+msgid "Timezone from PHP: %s"
+msgstr ""
+
+#: ../classes/Server.php:270
+#, fuzzy
+msgid "Authentication"
+msgstr "servidor de autentica&ccedil;&atilde;o"
+
+#: ../classes/Server.php:271
+msgid ""
+"Use the users of default Virtual Host's network across all networks on the "
+"server."
+msgstr ""
+
+#: ../classes/Server.php:320
+msgid "The server can never be deleted!"
+msgstr ""
+
+#: ../classes/Server.php:330
+#, fuzzy
+msgid "Server configuration"
+msgstr "Configura&ccedil;&atilde;o do relat&oacute;rio"
+
+#: ../classes/Server.php:335
+msgid "Server administration"
+msgstr "Gest&atilde;o de servidores"
+
+#: ../classes/Content.php:150
+msgid "Untitled content"
+msgstr "Conte&uacute;do sem t&iacute;tulo"
+
+#: ../classes/Content.php:181
+msgid "Content type is optionnal, but cannot be empty!"
+msgstr ""
+"O tipo de conte&uacute;do &eacute; opcional, mas n&atilde;o pode ficar vazio!"
+
+#: ../classes/Content.php:189 ../classes/ProfileTemplateField.php:176
+msgid "Unable to insert new content into database!"
+msgstr "Imposs&iacute;vel inserir novo conte&uacute;do na base de dados!"
+
+#: ../classes/Content.php:221
+msgid "It appears that you have not installed any Content plugin !"
+msgstr "N&atilde;o est&aacute; instalado nenhum plugin de Conte&uacute;do!"
+
+#: ../classes/Content.php:223 ../classes/Content.php:1511
+msgid "You must select a content type: "
+msgstr "Precisa de selecionar um tipo de conte&uacute;do:"
+
+#: ../classes/Content.php:520
+msgid "Add new Content of type"
+msgstr "Adicionar novo conte&uacute;do, do tipo"
+
+#: ../classes/Content.php:534
+msgid "No content type matches the filter."
+msgstr "Nenhum conte&uacute; encontrado com este filtro"
+
+#: ../classes/Content.php:543
+#, php-format
+msgid "Add a %s"
+msgstr "Adicionar um %s"
+
+#: ../classes/Content.php:719
+msgid "Display page"
+msgstr "Exibir p&aacute;gina"
+
+#: ../classes/Content.php:719
+msgid "Area"
+msgstr "&Aacute;rea"
+
+#: ../classes/Content.php:719
+msgid "Order"
+msgstr "Ordem"
+
+#: ../classes/Content.php:719
+msgid "Content"
+msgstr "Conte&uacute;do"
+
+#: ../classes/Content.php:719 ../classes/ProfileTemplate.php:383
+msgid "Actions"
+msgstr "A&ccedil;&otilde;es"
+
+#: ../classes/Content.php:911
+msgid "Select from reusable content library"
+msgstr "Seleccionar conte&uacute;do reutiliz&aacute;vel"
+
+#: ../classes/Content.php:925
+msgid "Title"
+msgstr "T&iacute;tulo"
+
+#: ../classes/Content.php:925
+msgid "Content type"
+msgstr "Tipo de conte&uacute;do"
+
+#: ../classes/Content.php:972 ../classes/Content.php:979
+msgid "Sorry, no elligible content available in the database"
+msgstr "Nao existem conte&uacute;dos na base de dados"
+
+#: ../classes/Content.php:1048
+msgid "KVP key cannot be null"
+msgstr ""
+
+#: ../classes/Content.php:1122
+msgid "The following content type isn't valid: "
+msgstr "O seguinte tipo de conte&uacute;do &eacute; inv&aacute;lido: "
+
+#: ../classes/Content.php:1127
+msgid "Update was unsuccessfull (database error)"
+msgstr "actualiza&ccedil;&atilde;o sem sucesso (erro na base de dados)"
+
+#: ../classes/Content.php:1144
+msgid "Unable to insert the new Owner into database."
+msgstr "Imposs&iacute;vel inserir novo propriet&aacute;rio na base de dados."
+
+#: ../classes/Content.php:1161
+msgid "Unable to remove the owner from the database."
+msgstr "Imposs&iacute;vel remover propriet&aacute;rio da base de dados."
+
+#: ../classes/Content.php:1360
+msgid "Author(s):"
+msgstr "Autor(es):"
+
+#: ../classes/Content.php:1381
+msgid "Project information:"
+msgstr "Informa&ccedil;&otilde;es do projeto:"
+
+#: ../classes/Content.php:1502
+msgid "(You do not have access to edit this piece of content)"
+msgstr "(N&atilde;o tem permiss&otilde;s para editar este conte&uacute;do)"
+
+#: ../classes/Content.php:1532
+#, php-format
+msgid "%s MetaData"
+msgstr "Metadados %s"
+
+#: ../classes/Content.php:1535
+msgid "Display the title?"
+msgstr ""
+
+#: ../classes/Content.php:1544 ../classes/Content.php:1549
+msgid "Title:"
+msgstr "T&iacute;tulo:"
+
+#: ../classes/Content.php:1553
+msgid "title"
+msgstr "t&iacute;tulo"
+
+#: ../classes/Content.php:1564 ../classes/Content.php:1568
+#: ../classes/Role.php:351 ../classes/Role.php:355
+msgid "Description:"
+msgstr "Descri&ccedil;&atilde;o:"
+
+#: ../classes/Content.php:1572 ../classes/Role.php:359
+msgid "description"
+msgstr "descri&ccedil;&atilde;o"
+
+#: ../classes/Content.php:1581 ../classes/Content.php:1585
+msgid "Long description:"
+msgstr "Descri&ccedil;&atilde;o longa:"
+
+#: ../classes/Content.php:1589
+msgid "long description"
+msgstr "descri&ccedil;&atilde;o longa"
+
+#: ../classes/Content.php:1598 ../classes/Content.php:1602
+msgid "Information on this project:"
+msgstr "Informa&ccedil;&otilde;es sobre este projeto:"
+
+#: ../classes/Content.php:1606
+msgid "project information"
+msgstr "informa&ccedil;&otilde;es do projeto"
+
+#: ../classes/Content.php:1620
+#, php-format
+msgid "%s access control"
+msgstr "Controlo de acesso %s"
+
+#: ../classes/Content.php:1624
+msgid "Is part of reusable content library (protected from deletion)?"
+msgstr ""
+
+#: ../classes/Content.php:1634
+msgid "Content owner list"
+msgstr "Lista de propriet&aacute;rios de conte&uacute;do"
+
+#: ../classes/Content.php:1655
+msgid "Remove owner"
+msgstr "Remover propriet&aacute;rio"
+
+#: ../classes/Content.php:1664
+msgid "Add owner"
+msgstr "Adicionar propriet&aacute;rio"
+
+#: ../classes/Content.php:1796
+msgid "Unable to set as author in the database."
+msgstr "Imposs&iacute;vel definir o autor na base de dados."
+
+#: ../classes/Content.php:1970
+msgid "Reusable content library"
+msgstr "Biblioteca de conte&uacute;do reutiliz&aacute;vel"
+
+#: ../classes/NodeList.php:210 smarty.txt:40
+msgid "Deployed HotSpots map"
+msgstr "Mapa dos <i>HotSpots</i>"
+
+#: ../classes/NodeList.php:221
+#, php-format
+msgid "List in %s format"
+msgstr "Lista em %s"
+
+#: ../classes/NodeList.php:227
+msgid "Full node technical status (includes non-deployed nodes)"
+msgstr "Estado t&eacute;cnico completo dos <i>HotSpots</i>"
+
+#: ../classes/NodeList.php:231
+msgid "Find Hotspots"
+msgstr "Procurar HotSpots"
+
+#: ../classes/MainUI.php:78
+#, php-format
+msgid ""
+"Your current user (%s) does not have the required level of access.  Please "
+"login with with a user with the required permission(s) to try this operation "
+"again."
+msgstr ""
+
+#: ../classes/MainUI.php:81
+#, php-format
+msgid ""
+"You didn't log-in or your session timed-out.  Please login to try this "
+"operation again."
+msgstr ""
+
+#: ../classes/MainUI.php:89
+#, php-format
+msgid "%s"
+msgstr ""
+
+#: ../classes/MainUI.php:91
+#, php-format
+msgid "%s was thrown in %s, line %d\n"
+msgstr ""
+
+#: ../classes/MainUI.php:102
+#, php-format
+msgid "Detailed error was:  Uncaught %s %s (%s) thrown in file %s, line %d"
+msgstr ""
+
+#: ../classes/MainUI.php:232 ../classes/MainUI.php:234
+msgid "authentication server"
+msgstr "servidor de autentica&ccedil;&atilde;o"
+
+#: ../classes/MainUI.php:262
+#, php-format
+msgid "%s is not a valid structural display area"
+msgstr "%s n&atilde;o &eacute; uma &aacute;rea v&aacute;lida"
+
+#: ../classes/MainUI.php:680
+#, php-format
+msgid "%s Login"
+msgstr "Ligar %s"
+
+#: ../classes/MainUI.php:680 smarty.txt:21 smarty.txt:32
+msgid "Login"
+msgstr "Ligar"
+
+#: ../classes/MainUI.php:684
+#, php-format
+msgid "Click <a href='%s'>here</a> to continue"
+msgstr "Clique <a href='%s'>aqui</a> para continuar"
+
+#: ../classes/MainUI.php:684
+msgid ""
+"The transfer from secure login back to regular http may cause a warning."
+msgstr ""
+"A altera&ccedil;&atilde;o de liga&ccedil;&atilde;o segura para http regular "
+"pode causar um alerta."
+
+#: ../classes/Mail.php:405
+#, php-format
+msgid "PHPMailer couldn't sent mail.  Error was: %s"
+msgstr ""
+
+#: ../classes/Node.php:222
+msgid "Could not delete node!"
+msgstr "Imposs&iacute;vel apagar o HotSpot!"
+
+#: ../classes/Node.php:255
+msgid "PUT_GATEWAY_ID_HERE"
+msgstr ""
+
+#: ../classes/Node.php:271
+msgid "New node"
+msgstr "Novo HotSpot"
+
+#: ../classes/Node.php:280
+#, php-format
+msgid "Sorry, a node for the gateway %s already exists."
+msgstr ""
+
+#: ../classes/Node.php:286
+msgid "Unable to insert new node into database!"
+msgstr "Imposs&iacute;vel inserir novo HotSpot na base de dados!"
+
+#: ../classes/Node.php:370
+msgid "Filter:"
+msgstr "Filtro:"
+
+#: ../classes/Node.php:378
+msgid "Node Name"
+msgstr "Nome do HotSpot"
+
+#: ../classes/Node.php:379 ../classes/Node.php:1176
+msgid "Gateway ID"
+msgstr "ID do HotSpot"
+
+#: ../classes/Node.php:402
+msgid "Sorry, no nodes available in the database"
+msgstr "Não existe nenenhum HotSpot dispon&iacute;vel na base de dados"
+
+#: ../classes/Node.php:427
+msgid "Add a new node for the gateway ID"
+msgstr "Adicionar um novo nodo para este gateway"
+
+#: ../classes/Node.php:437
+msgid "in "
+msgstr "na "
+
+#: ../classes/Node.php:493
+msgid "Here is what you can do to fix this:"
+msgstr "Isto &eacute; o que poder&aacute; fazer para resolver o problema:"
+
+#: ../classes/Node.php:497
+#, php-format
+msgid ""
+"You can create a new node with %s as it's associated gateway id.  This is "
+"typical for new installations."
+msgstr ""
+
+#: ../classes/Node.php:510
+#, php-format
+msgid "Add a new node in %s"
+msgstr "Adicionar um Hotspot em %s"
+
+#: ../classes/Node.php:512
+msgid "Add node"
+msgstr "Adicionar Hotspot"
+
+#: ../classes/Node.php:519
+#, php-format
+msgid ""
+"You can \"steal\" an existing node.  The node's gateway id will be replaced "
+"with %s.  This is typical when replacing hardware."
+msgstr ""
+"Poder&aacute; \"roubar\" um Hotspot existente. O gateway id ser&aacute; "
+"substituido por %s. Esta situa&ccedil;&atilde;o &eacute; comum quando o "
+"hardware &eacute; substitu&iacute;do."
+
+#: ../classes/Node.php:538
+msgid "Steal node"
+msgstr "Roubar Hotspot"
+
+#: ../classes/Node.php:614
+msgid "No deployment statuses could be found in the database"
+msgstr ""
+"N&atilde;o foi poss&iacute;vel encontrar estados de implanta&ccedil;&atilde;"
+"o na base de dados"
+
+#: ../classes/Node.php:681
+#, php-format
+msgid "The node with %s: %s could not be found in the database!"
+msgstr "O nodo %s: %s n&atilde;o foi encontrado na base de dados"
+
+#: ../classes/Node.php:1154
+msgid "Edit a node"
+msgstr "Editar um HotSpot"
+
+#: ../classes/Node.php:1165
+msgid "Allow public access to some node statistics."
+msgstr ""
+
+#: ../classes/Node.php:1166
+msgid "Get access statistics"
+msgstr "Obter estat&iacute;sticas de acesso"
+
+#: ../classes/Node.php:1190
+msgid "Node content"
+msgstr "Conte&uacute;do do HotSpot"
+
+#: ../classes/Node.php:1229
+msgid "Civic number"
+msgstr "N&uacute;mero civil"
+
+#: ../classes/Node.php:1234
+msgid "Street name"
+msgstr "Nome da rua"
+
+#: ../classes/Node.php:1254
+msgid "Country"
+msgstr "Pa&iacute;s"
+
+#: ../classes/Node.php:1259
+msgid "Public phone number"
+msgstr "N&uacute;mero p&uacute;blico de telefone"
+
+#: ../classes/Node.php:1264
+msgid "Public email"
+msgstr "Email p&uacute;blico"
+
+#: ../classes/Node.php:1274
+msgid "Mass transit info"
+msgstr "Informa&ccedil;&atilde;o sobre transporte maci&ccedil;o"
+
+#: ../classes/Node.php:1279
+msgid "Information about the node"
+msgstr "Informa&ccedil;&otilde;es sobre o HotSpot"
+
+#: ../classes/Node.php:1299 ../classes/Node.php:1303
+msgid "Geocode the address or postal code above"
+msgstr "Descobrir as coordenadas atrav&eacute;s do c&oacute;digo postal"
+
+#: ../classes/Node.php:1300
+msgid "Check using Google Maps"
+msgstr "Verificar com o Google Maps"
+
+#: ../classes/Node.php:1301
+msgid ""
+"Use a geocoding service, then use Google Maps to pinpoint the exact location."
+msgstr ""
+"Utilize um servi&ccedil;o de geolocaliza&ccedil;&atilde;o e/ou use o Google "
+"Maps para identificar a localiza&ccedil;&atilde;o exacta."
+
+#: ../classes/Node.php:1304
+msgid "Use a geocoding service"
+msgstr "Utilize um servi&ccedil;o de geolocaliza&ccedil;&atilde;o"
+
+#: ../classes/Node.php:1310
+msgid "Map URL"
+msgstr "URL do mapa"
+
+#: ../classes/Node.php:1323
+msgid "Node deployment status"
+msgstr "Status de implenta&ccedil;&atilde;o do HotSpot"
+
+#: ../classes/Node.php:1328
+#, fuzzy
+msgid "Node Network"
+msgstr "Rede"
+
+#: ../classes/Node.php:1334
+msgid "Is this node splash-only (no login)?"
+msgstr "Este HotSpot &eacute; splash-only (sem login)?"
+
+#: ../classes/Node.php:1341
+msgid "URL to show instead of the portal"
+msgstr "URL a ser mostrado, em vez do portal"
+
+#: ../classes/Node.php:1343
+msgid ""
+"If this is not empty, the portal will be disabled and this URL will be shown "
+"instead"
+msgstr "Se este campo estiver preenchido, o portal ser&aacute; desactivado"
+
+#: ../classes/Node.php:1349
+#, fuzzy
+msgid ""
+"Are nodes allowed to redirect users to the web page they originally "
+"requested instead of the portal? this will overide the custom portal URL"
+msgstr ""
+"&Eacute; permitido aos HotSpots redirecionar os utilizadores para uma "
+"p&aacute;gina, em vez do portal?"
+
+#: ../classes/Node.php:1354
+msgid "Node configuration"
+msgstr "Configura&ccedil;&atilde;o do HotSpot"
+
+#: ../classes/Node.php:1492
+msgid ""
+"It appears that the Geocoder could not be reached or could not geocode the "
+"given address."
+msgstr ""
+"A geolocaliza&ccedil;&atilde;o n&atilde;o pode ser encontrada, ou o c&oacute;"
+"digo de geolocaliza&ccedil;&atilde;o n&atilde;o &eacute; v&aacute;lido."
+
+#: ../classes/Node.php:1495
+msgid "You must enter a valid address."
+msgstr "Precisa de utilizar um endere&ccedil;o v&aacute;lido."
+
+#: ../classes/Node.php:1499
+msgid "Unable to create geocoder.  Are you sure you set the country?"
+msgstr ""
+"N&atilde;o foi poss&iacute;vel criar o <i>geocoder</i>. O pa&iacute;s "
+"est&aacute; definido?"
+
+#: ../classes/Node.php:1759
+msgid "Edit nodes"
+msgstr "Editar Hotspots"
+
+#: ../classes/Node.php:1774
+#, php-format
+msgid "Add a new node"
+msgstr "Adicionar um novo HotSpot"
+
+#: ../classes/Node.php:1779
+msgid "Node administration"
+msgstr "Gest&atilde;o de HotSpots"
+
+#: ../classes/ProfileTemplate.php:229
+msgid "Unable to insert the new profile template in the database!"
+msgstr "Imposs&iacute;vel adicionar o novo perfil &agrave; base de dados!"
+
+#: ../classes/ProfileTemplate.php:240
+#, fuzzy
+msgid "Add a new profile template with ID"
+msgstr "Adicionar novo HotSpot com o ID"
+
+#: ../classes/ProfileTemplate.php:313
+msgid "Profile template"
+msgstr "Template de perfil"
+
+#: ../classes/ProfileTemplate.php:318 ../classes/ContentTypeFilter.php:310
+#: ../classes/ProfileTemplateField.php:118
+#: ../classes/ProfileTemplateField.php:427
+msgid "No label"
+msgstr "Sem etiqueta"
+
+#: ../classes/ProfileTemplate.php:383
+msgid "Profile template label"
+msgstr "Etiqueta de template de perfil"
+
+#: ../classes/ProfileTemplate.php:484
+msgid "Profile template management"
+msgstr "Gest&atilde;o de templates de perfil"
+
+#: ../classes/ProfileTemplate.php:491
+msgid "ProfileTemplate ID"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:502 ../classes/ContentTypeFilter.php:375
+msgid "Label"
+msgstr "Etiqueta"
+
+#: ../classes/ProfileTemplate.php:521
+msgid "Profile template fields"
+msgstr "Campos do template de perfil"
+
+#: ../classes/ProfileTemplate.php:531
+#, php-format
+msgid "Delete %s %d, used in %d/%d profiles"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:595
+msgid "Could not delete ProfileTemplate!"
+msgstr "Imposs&iacute; apagar o ProfileTemplate"
+
+#: ../classes/ProfileTemplate.php:627
+msgid "Profile templates"
+msgstr "Templates de perfil"
+
+#: ../classes/ThemePack.php:87
+#, php-format
+msgid "Theme pack %s cannot be found in %s"
+msgstr "O pacote de tema %s n&atilde;o foi encontrado em &s"
+
+#: ../classes/ThemePack.php:94
+#, php-format
+msgid "%s (Theme did not include a name.txt file)"
+msgstr "%s (O tema n&atilde;o inclui um arquivo nome.txt)"
+
+#: ../classes/ThemePack.php:100
+#, php-format
+msgid "%s (Theme did not include a description.txt file)"
+msgstr "%s (O tema n&atilde;o inclui um arquivo descricao.txt)"
+
+#: ../classes/ThemePack.php:121
+msgid "Theme pack:"
+msgstr "Pacote de tema:"
+
+#: ../classes/ThemePack.php:144
+msgid "Unable to open the network theme packs directory"
+msgstr "Imposs&iacute;vel abrir o diret&oacute;rio de temas"
+
+#: ../classes/ThemePack.php:151
+#, php-format
+msgid "No network theme packs available in %s"
+msgstr "Nenhum pacote de tema de rede dispon&iacute;vel em %s"
+
+#: ../classes/Role.php:151
+#, php-format
+msgid "Sorry: No available roles in the database for stakeholder type: %s!"
+msgstr ""
+
+#: ../classes/Role.php:164 ../classes/Role.php:170
+msgid "Role:"
+msgstr "Regra:"
+
+#: ../classes/Role.php:228 ../classes/ContentTypeFilter.php:199
+msgid "Unable to insert the new ContentTypeFilter in the database!"
+msgstr ""
+"Imposs&iacute;vel adicionar o novo ContentTypeFilter &agrave; base de dados"
+
+#: ../classes/Role.php:245
+#, php-format
+msgid "Add a new role of type %s with id %s"
+msgstr "Adicionar uma nova regra do tipo %s com o ID %s"
+
+#: ../classes/Role.php:309
+msgid "User roles management"
+msgstr "Regras de utilizadores"
+
+#: ../classes/Role.php:316
+msgid "Stakeholder type"
+msgstr "Tipo de gestor"
+
+#: ../classes/Role.php:325
+msgid "This role is a system role"
+msgstr "Esta &eacute; uma regra do sistema"
+
+#: ../classes/Role.php:332
+msgid "Role ID"
+msgstr "Regra num."
+
+#: ../classes/Role.php:386
+msgid "Permissions"
+msgstr "Permiss&otilde;es"
+
+#: ../classes/Role.php:492
+msgid "Could not delete object!"
+msgstr "Imposs&iacute;vel apagar o objecto"
+
+#: ../classes/Role.php:513
+msgid "User roles"
+msgstr "Regras de utilizadores"
+
+#: ../classes/ContentTypeFilter.php:220
+msgid "Add a new content type filter with these rules"
+msgstr "Adicionar um novo Content Type Filter com estas regras"
+
+#: ../classes/ContentTypeFilter.php:221
+msgid "Example:"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:302
+#: ../classes/ProfileTemplateField.php:424
+msgid "Content type filter"
+msgstr "Filtro de tipo de conte&uacute;do"
+
+#: ../classes/ContentTypeFilter.php:357
+msgid "ContentTypeFilter management"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:364
+msgid "ContentTypeFilter ID"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:386
+msgid "Rules (must be a valid array definition)"
+msgstr ""
+"Regras (dever&aacute; ser um array de defini&ccedil;&otilde;s v&aacute;lido)"
+
+#: ../classes/ContentTypeFilter.php:418
+msgid "The rules must be given as a PHP array declaration."
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:444
+msgid "Could not delete ContentTypeFilter!"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:472
+msgid "Content type filters"
+msgstr "Filtros de tipo de conte&uacute;do"
+
+#: ../classes/ProfileTemplateField.php:122
+msgid "Add new profile template field filtered by"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:131
+msgid "Sorry, no content type filter exists."
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:404
+msgid "Display order"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:422
+msgid "Sorry, content type filter is missing."
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:434
+msgid "Display label"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:440
+#, php-format
+msgid "%s display label (%s)"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:444
+msgid "display label"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:451
+msgid "Admin label"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:458
+#, php-format
+msgid "%s admin label (%s)"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:462
+msgid "admin label"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:469
+msgid "Semantic ID"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:477
+msgid "Full name"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:478
+msgid "Nickname"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:479
+msgid "E-mail"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:480
+msgid "Hashed e-mail"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:481
+msgid "Picture"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:482
+msgid "URL of a blog"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:483
+msgid "URL of a homepage"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:598
+msgid "Could not delete ProfileTemplateField!"
+msgstr ""
+
+#: ../classes/ProfileField.php:251
+msgid "Unable to insert the new profile fields in the database!"
+msgstr ""
+
+#: ../classes/ProfileField.php:281
+#, php-format
+msgid "Delete %s"
+msgstr ""
+
+#: ../classes/ProfileField.php:368
+msgid "Could not delete ProfileField!"
+msgstr ""
+
+#: ../classes/Permission.php:85
+msgid "User is allowed to view online users troughout the network"
+msgstr ""
+
+#: ../classes/Permission.php:86
+msgid "User is allowed to edit any user for this network"
+msgstr ""
+
+#: ../classes/Permission.php:87
+msgid "User is allowed to edit the configuration of this network"
+msgstr ""
+
+#: ../classes/Permission.php:88
+#, fuzzy
+msgid "User is allowed to delete this network"
+msgstr "Imposs&iacute;vel apagar a rede!"
+
+#: ../classes/Permission.php:89
+msgid "User is allowed to view all statistics for this network"
+msgstr ""
+
+#: ../classes/Permission.php:90
+msgid "User is allowed to edit any configuration of any node on the network"
+msgstr ""
+
+#: ../classes/Permission.php:91
+msgid "User is allowed to create a new Node on this network"
+msgstr ""
+
+#: ../classes/Permission.php:92
+msgid "User is allowed to set dynamic abuse control options for the network"
+msgstr ""
+
+#: ../classes/Permission.php:94
+msgid "User is allowed to edit user role definitions"
+msgstr ""
+
+#: ../classes/Permission.php:95
+msgid "User is allowed to edit any virtual host definition"
+msgstr ""
+
+#: ../classes/Permission.php:96
+msgid "User is allowed to edit general server configuration"
+msgstr ""
+
+#: ../classes/Permission.php:97
+msgid "User is allowed to edit the profile templates"
+msgstr ""
+
+#: ../classes/Permission.php:98
+msgid "User is allowed to edit the content type filters on the network"
+msgstr ""
+
+#: ../classes/Permission.php:99
+msgid "User is allowed to create reusable content"
+msgstr ""
+
+#: ../classes/Permission.php:100
+msgid "User is allowed to create a new Network on this server"
+msgstr ""
+
+#: ../classes/Permission.php:102
+msgid "User is allowed to change the gateway id of this node"
+msgstr ""
+
+#: ../classes/Permission.php:103
+#, fuzzy
+msgid "User is allowed to change the public name of this node"
+msgstr "O username j&aacute; &eacute; o propriet&aacute;rio deste HotSpot."
+
+#: ../classes/Permission.php:104
+#, fuzzy
+msgid "User is allowed to change the deployment date of this node"
+msgstr "O username j&aacute; &eacute; o propriet&aacute;rio deste HotSpot."
+
+#: ../classes/Permission.php:106
+msgid ""
+"TEMPORARY:  User is allowed to edit general configuration for this node.  "
+"This will be replaced with more granular permissions in the future"
+msgstr ""
+
+#: ../classes/Permission.php:107
+msgid "User is allowed to exceed dynamic abuse control limits at this node"
+msgstr ""
+
+#: ../classes/Permission.php:108
+#, fuzzy
+msgid ""
+"User is allowed to turn on publicly accessible aggregate statistics for this "
+"node"
+msgstr "O username j&aacute; &eacute; o propriet&aacute;rio deste HotSpot."
+
+#: ../classes/Stakeholder.php:88
+msgid "Remove stakeholder"
+msgstr "Remover"
+
+#: ../classes/Stakeholder.php:94
+msgid "Add stakeholder"
+msgstr "Adicionar"
+
+#: ../classes/Stakeholder.php:121 ../classes/Stakeholder.php:147
+#, php-format
+msgid "User %s already has role %s for this object"
+msgstr "O utilizador %s j&aacute; tem a regra %s para este objecto"
+
+#: ../classes/GenericDataObject.php:124
+#, php-format
+msgid "Delete not supported on class %s"
+msgstr ""
+
+#: ../classes/Dependency.php:414 ../classes/Dependency.php:430
+#, php-format
+msgid "File %s not found"
+msgstr ""
+
+#: ../classes/Dependency.php:444 ../classes/Dependency.php:458
+#, fuzzy, php-format
+msgid "File %s not found in %s"
+msgstr "O pacote de tema %s n&atilde;o foi encontrado em &s"
+
+#: ../classes/Dependency.php:519
+#, php-format
+msgid ""
+"To install this standard PHP extension, look for a package with a similar "
+"name in your distribution's package manager.  Ex: For Debian based "
+"distributions, you may try 'sudo apt-get install php5-%s'"
+msgstr ""
+
+#: ../classes/Dependency.php:525
+#, fuzzy, php-format
+msgid "Install %s"
+msgstr "Total"
+
+#: ../classes/Dependency.php:530
+#, php-format
+msgid "Sorry, i couldn't find the source for %s in installSourceUrl"
+msgstr ""
+
+#: ../classes/Dependency.php:543
+#, php-format
+msgid ""
+"To install this standard PEAR extension, try 'sudo pear install --"
+"onlyreqdeps %s'"
+msgstr ""
+
+#: ../classes/Dependency.php:554
+#, php-format
+msgid "To install this standard PEAR extension, try 'sudo pecl install %s'"
+msgstr ""
+
+#: ../classes/Dependency.php:563
+#, php-format
+msgid ""
+"url_to_the_tarball (Sorry, i couldn't find the source for %s in "
+"installSourceUrl)"
+msgstr ""
+
+#: ../classes/Dependency.php:565
+#, php-format
+msgid "To install this custom PEAR extension, use 'sudo pear install %s'"
+msgstr ""
+
+#: ../classes/Dependency.php:570
+#, php-format
+msgid "Sorry, I don't know how to install a %s extension"
+msgstr ""
+
+#: ../classes/DependenciesList.php:105
+#, php-format
+msgid "Version %s needed"
+msgstr ""
+
+#: ../classes/DependenciesList.php:122
+#, php-format
+msgid "%s may work, but version %s is recommended"
+msgstr ""
+
+#: ../classes/DependenciesList.php:125
+#, php-format
+msgid "%s is too old, version %s needed"
+msgstr "%s &eacute; demasiado antigp. Vers&atilde;o necess&aacute;ria: %s"
+
+#: ../classes/DependenciesList.php:135
+msgid "Component"
+msgstr "Componente"
+
+#: ../classes/DependenciesList.php:135
+msgid "Click for the component's website"
+msgstr ""
+
+#: ../classes/DependenciesList.php:136
+msgid "Type"
+msgstr "Tipo"
+
+#: ../classes/DependenciesList.php:138
+#, fuzzy
+msgid "Information"
+msgstr "informa&ccedil;&otilde;es do projeto"
+
+#: ../classes/DependenciesList.php:178
+msgid "Install message"
+msgstr ""
+
+#: ../classes/DependenciesList.php:181
+#, fuzzy
+msgid "Detection message"
+msgstr "Mensagem de erro"
+
+#: ../classes/DependenciesList.php:184
+#, fuzzy
+msgid "To install"
+msgstr "Total"
+
+#: ../classes/DependenciesList.php:206
+msgid "Dependencies"
+msgstr "Depend&ecirc;ncias"
+
+#: smarty.txt:2
+#, fuzzy
+msgid "Status of all nodes on "
+msgstr "Status de todos os HotSpots do"
+
+#: smarty.txt:3
+#, fuzzy
+msgid "Status of all nodes of the "
+msgstr "Status de todos os HotSpots do"
+
+#: smarty.txt:4
+msgid "Status of all nodes of the"
+msgstr "Status de todos os HotSpots do"
+
+#: smarty.txt:6
+#, fuzzy
+msgid "Node id"
+msgstr "HotSpot: "
+
+#: smarty.txt:7
+#, fuzzy
+msgid "Gateway id"
+msgstr "ID do HotSpot"
+
+#: smarty.txt:9
+msgid "Local content demo"
+msgstr "Demonstra&ccedil;&atilde;o de conte&uacute;do local"
+
+#: smarty.txt:10
+msgid "Opened on"
+msgstr "Aberto em"
+
+#: smarty.txt:11 smarty.txt:132
+msgid "Online users"
+msgstr "Utilizadores ligados"
+
+#: smarty.txt:12 smarty.txt:13
+msgid "days"
+msgstr "dias"
+
+#: smarty.txt:14
+msgid "Login page"
+msgstr "Autentica&ccedil;&atilde;o"
+
+#: smarty.txt:15
+msgid "Portal page"
+msgstr "Portal"
+
+#: smarty.txt:17
+msgid "Logged in as"
+msgstr "Ligado como"
+
+#: smarty.txt:18
+#, fuzzy
+msgid "Profile / Settings"
+msgstr "Estado"
+
+#: smarty.txt:19
+msgid "Logout"
+msgstr "Desligar"
+
+#: smarty.txt:20
+msgid "I am not logged in."
+msgstr "Sem sess&atilde;o iniciada."
+
+#: smarty.txt:23
+msgid "user is online at this hotspot"
+msgstr "utilizador est&aacute; ligado a este <i>HotSpot</i>"
+
+#: smarty.txt:24
+msgid "users are online at this hotspot"
+msgstr "utilizadores est&atilde;o ligados a este <i>HotSpot</i>"
+
+#: smarty.txt:25
+msgid "Nobody is online at this hotspot"
+msgstr "N&atilde;o est&aacute; ningu&eacute;m ligado a este <i>HotSpot</i>"
+
+#: smarty.txt:26
+msgid "Recent Users:"
+msgstr "Utilizadores recentes:"
+
+#: smarty.txt:27
+msgid "Most Active Users:"
+msgstr "Utilizadores mais activos:"
+
+#: smarty.txt:28
+msgid "Login or Signup here"
+msgstr "Ligar ou inscrever-se"
+
+#: smarty.txt:29
+#, fuzzy
+msgid "Login Here"
+msgstr "Autentica&ccedil;&atilde;o"
+
+#: smarty.txt:30
+msgid "Username (or email)"
+msgstr "Username (ou email)"
+
+#: smarty.txt:31 smarty.txt:53
+msgid "Password"
+msgstr "Password"
+
+#: smarty.txt:33
+#, fuzzy
+msgid "Signup Here"
+msgstr "Registar"
+
+#: smarty.txt:34
+msgid "Create a free account"
+msgstr "Criar uma conta gratuita"
+
+#: smarty.txt:35
+msgid "You must specify your username and password"
+msgstr "Precisa de especificar o seu username e password"
+
+#: smarty.txt:36
+msgid "Show me the closest hotspot"
+msgstr "Mostrar o HotSpot mais pr&oacute;ximo"
+
+#: smarty.txt:37
+msgid "Enter your postal code"
+msgstr "Introduza o seu c&oacute;digo postal"
+
+#: smarty.txt:38
+msgid "Show"
+msgstr "Exibir"
+
+#: smarty.txt:39
+msgid "Refresh map"
+msgstr "Actualizar mapa"
+
+#: smarty.txt:42
+msgid "Legend"
+msgstr "Legenda"
+
+#: smarty.txt:43
+msgid "the hotspot is operational"
+msgstr "o hotspot est&aacute; operacional"
+
+#: smarty.txt:44
+msgid "the hotspot is down"
+msgstr "o hotspot est&aacute; fora de servi&ccedil;o"
+
+#: smarty.txt:45
+msgid "not monitored"
+msgstr "n&atilde;o monitorizados"
+
+#: smarty.txt:46 smarty.txt:74 smarty.txt:98 smarty.txt:106
+msgid "I'm having difficulties"
+msgstr "Dificuldades em ligar?"
+
+#: smarty.txt:50
+msgid "Register a free account with"
+msgstr "Registar uma conta gratuita no"
+
+#: smarty.txt:51
+msgid "Username desired"
+msgstr "Username"
+
+#: smarty.txt:52 smarty.txt:80 smarty.txt:111
+msgid "Your email address"
+msgstr "Endere&ccedil;o de email"
+
+#: smarty.txt:54
+msgid "Password (again)"
+msgstr "Password  (novamente)"
+
+#: smarty.txt:55
+msgid "Sign-up"
+msgstr "Registar"
+
+#: smarty.txt:56
+msgid "Please note"
+msgstr "Aten&ccedil;&atilde;o"
+
+#: smarty.txt:57
+msgid ""
+"While accounts are free, we <em>strongly</em> suggest that you use your "
+"previously created account if you have one."
+msgstr ""
+"Mesmo tratando-se de um servi&ccedil;o gratuito, recomendados "
+"<em>fortemente</em> que utilize a sua conta previamente criada, se j&aacute; "
+"tiver uma."
+
+#: smarty.txt:58
+msgid ""
+"<b>Your email address must be valid</b> in order for your account to be "
+"activated."
+msgstr ""
+"<b>O seu endere&ccedil;o de email precisa de ser v&aacute;lido</b> para que "
+"a sua conta seja activada."
+
+#: smarty.txt:59
+msgid "A validation email will be sent to that email address."
+msgstr ""
+"Um email de valida&ccedil;&atilde;o ser&aacute; enviado para este "
+"endere&ccedil;o."
+
+#: smarty.txt:60
+msgid "To fully activate your account you must respond to that email."
+msgstr ""
+"Para activar completamente a sua conta necessita de responder a este email."
+
+#: smarty.txt:61
+msgid "Note to free web-based email users"
+msgstr "Nota aos usernames de email baseados em web"
+
+#: smarty.txt:62
+msgid ""
+"Sometimes our validation email ends up in the 'spam' folder of some "
+"providers. If you have not received any email with the validation URL 5 "
+"minutes after submitting this form, please take a look in the spam folder."
+msgstr ""
+"Por vezes, o nosso email de valida&ccedil;&atilde;o &eacute; classificado "
+"como 'spam'. Se n&atilde;o recebeu o email com o URL de valida&ccedil;"
+"&atilde;o 5 minutos ap&oacute;s ter feito o registo, verifique sua pasta de "
+"spam."
+
+#: smarty.txt:63
+msgid "You can also use the following links if you need help"
+msgstr "Pode ainda utilizar os seguintes links para ajuda"
+
+#: smarty.txt:66
+#, php-format
+msgid "Status of the %d open %s Hotspots"
+msgstr ""
+
+#: smarty.txt:67
+msgid "Hotspot / Status"
+msgstr "Hotspot / Estado"
+
+#: smarty.txt:69
+msgid "Location"
+msgstr "Localiza&ccedil;&atilde;o"
+
+#: smarty.txt:70
+msgid "Hotspot in testing phase"
+msgstr "Hotspot em fase de testes"
+
+#: smarty.txt:71
+msgid "Hotspot not monitored"
+msgstr "HotSpot n&atilde;o monitorizado"
+
+#: smarty.txt:72
+#, php-format
+msgid "Opened on %s"
+msgstr "Aberto em %s"
+
+#: smarty.txt:78
+msgid "Lost password"
+msgstr "Password perdida"
+
+#: smarty.txt:79 smarty.txt:103
+msgid "Your username"
+msgstr "Username"
+
+#: smarty.txt:81
+msgid "Reset my password"
+msgstr "Gerar nova password"
+
+#: smarty.txt:82
+msgid "Please enter your username or email address to reset your password"
+msgstr ""
+"Por favor preencha com o seu username ou endere&ccedil;o de email para gerar "
+"uma nova password"
+
+#: smarty.txt:83
+#, php-format
+msgid "The %s network currently has one valid user."
+msgstr "A rede %s tem um utilizador registado."
+
+#: smarty.txt:84
+#, php-format
+msgid "The %s network currently has %d valid users."
+msgstr "A rede %s tem %d utilizadores registados."
+
+#: smarty.txt:85 smarty.txt:116
+msgid "One user is currently online."
+msgstr "Um utilizador on-line"
+
+#: smarty.txt:86 smarty.txt:117
+#, php-format
+msgid "%d users are currently online."
+msgstr "Est&atilde;o %d utilizadores <i>on-line</i>."
+
+#: smarty.txt:87 smarty.txt:118
+msgid "This network currently has 1 deployed hotspot."
+msgstr "Esta rede tem 1 <i>HotSpot</i> em funcionamento."
+
+#: smarty.txt:88 smarty.txt:119
+#, php-format
+msgid "This network currently has %d deployed hotspots."
+msgstr "Esta rede tem %d HotSpots em funcionamento."
+
+#: smarty.txt:89 smarty.txt:120
+msgid "One hotspot is currently operational."
+msgstr "Existe um <i>HotSpot</i> operacional."
+
+#: smarty.txt:90 smarty.txt:121
+#, php-format
+msgid "%d hotspots are currently operational."
+msgstr "Existem %d <i>HotSpots</i> operacionais."
+
+#: smarty.txt:91 smarty.txt:122
+msgid ""
+"One hotspot isn't monitored so we don't know if it's currently operational."
+msgstr "Existe um HotSpot n&atilde;o monitorizado."
+
+#: smarty.txt:92 smarty.txt:123
+#, php-format
+msgid ""
+"%d hotspots aren't monitored so we don't know if they are currently "
+"operational."
+msgstr "Existem %d n&atilde;o monitorizados."
+
+#: smarty.txt:93
+msgid "Please get in touch with "
+msgstr "Por favor entre em contato com "
+
+#: smarty.txt:94
+msgid ""
+"We are a not-for-profit group dedicated to making no-fee wireless Internet "
+"access generally available."
+msgstr ""
+"HotSpots somos um grupo sem fins lucrativos dedicados a fornecer acesso sem "
+"fios &agrave; Internet gratuitamente."
+
+#: smarty.txt:95
+msgid ""
+"Our aim is to encourage the growth of wireless networking and to build "
+"community in interesting and innovative ways."
+msgstr ""
+"O nosso objetivo &eacute; encorajar o crescimento de redes sem fios e "
+"construir uma comunidade de uma maneira inovadora."
+
+#: smarty.txt:96
+msgid ""
+"We do this by setting up wireless Internet networks in parks, cafés, "
+"restaurants, bars and other publically-accessible locations across the city."
+msgstr ""
+"Fazemos isso instalando redes sem fios a Internet em parques, caf&eacute;s, "
+"restaurantes, bares e outras localidades de acesso p&uacute;blico pela "
+"cidade."
+
+#: smarty.txt:97
+msgid "For a complete and up-to-date listing of our nodes, visit"
+msgstr "Para uma lista completa e actualizada de HotSpots, visite"
+
+#: smarty.txt:102
+msgid "Re-send validation email"
+msgstr "Reenviar email de valida&ccedil;&atilde;o"
+
+#: smarty.txt:104
+msgid "Re-send"
+msgstr "Reenviar"
+
+#: smarty.txt:105
+msgid ""
+"Please enter your username and the validation email will be resent to your "
+"email address"
+msgstr ""
+"Por favor preencha com o seu endere&ccedil;o de email para que o email de "
+"valida&ccedil;&atilde;o seja reenviado"
+
+#: smarty.txt:110
+msgid "Lost username"
+msgstr "Username perdido"
+
+#: smarty.txt:112
+msgid "Retrieve"
+msgstr "Recuperar"
+
+#: smarty.txt:113
+msgid "Please enter your email address to recover your username"
+msgstr ""
+"Por favor preencha com o seu endere&ccedil;o de email para recuperar o seu "
+"username"
+
+#: smarty.txt:114
+#, fuzzy
+msgid "The server currently has one valid user."
+msgstr "A rede %s tem um utilizador registado."
+
+#: smarty.txt:115
+#, fuzzy, php-format
+msgid "The server currently has %d valid users."
+msgstr "A rede %s tem %d utilizadores registados."
+
+#: smarty.txt:124
+msgid "User list"
+msgstr "Lista de utilizadores"
+
+#: smarty.txt:125
+msgid "Sort by:"
+msgstr "Classificar por:"
+
+#: smarty.txt:126
+msgid "Direction:"
+msgstr "Dire&ccedil;&atilde;o:"
+
+#: smarty.txt:127
+msgid "Sort"
+msgstr "Classificar"
+
+#: smarty.txt:130
+msgid "Registered On"
+msgstr "Registado em"
+
+#: smarty.txt:135
+msgid "Origin"
+msgstr "Origem"
+
+#: smarty.txt:136
+msgid "Logged in Since"
+msgstr "Ligado Desde"
+
+#: smarty.txt:137
+msgid "Traffic IN/OUT"
+msgstr "Tr&aacute;fego IN/OUT"
+
+#~ msgid "No nodes could not be found in the database"
+#~ msgstr "N&atilde;o foi poss&iacute;vel encontrar o HotSpot na base de dados"
+
+#~ msgid "Is this network the default network?"
+#~ msgstr "Esta rede &eacute; a rede padr&atilde;o?"
+
+#~ msgid "Component %s is not installed (not found in %s)"
+#~ msgstr ""
+#~ "O componente %s n&atilde;o est&aacute; instalado (n&atilde;o encontrado "
+#~ "em %s)"
+
+#~ msgid "Message"
+#~ msgstr "Mensagem"
+
+#~ msgid ""
+#~ " are and will remain <emp>totally free</emp>, use the left menu to create "
+#~ "a new one or recover a lost username or password."
+#~ msgstr ""
+#~ " s&atilde;o e continuar&atilde;o <emp>totalmente gratuitos</emp>, use o "
+#~ "menu da esquerda para criar um novo ou recuperar um username ou password "
+#~ "perdido."
+
+#~ msgid " could not be found in the database"
+#~ msgstr " n&atilde;o foi encontrado na base de dados"
+
+#~ msgid " cumulative user statistics"
+#~ msgstr " estat&iacute;sticas de utiliza&ccedil;&atilde;o"
+
+#~ msgid " in the database"
+#~ msgstr " na base de dados"
+
+#~ msgid " in the database."
+#~ msgstr " na base de dados."
+
+#~ msgid ""
+#~ " minutes grace period to retrieve your email and validate your account "
+#~ "has now expired. You will have to connect to the internet and validate "
+#~ "your account from another location or create a new account. For help, "
+#~ "please "
+#~ msgstr ""
+#~ " minutos para consultar o seu email e validar a sua conta. Ter&aacute; "
+#~ "que se ligar &agrave; internet e validar a sua conta noutro local ou "
+#~ "criar uma nova conta. Para ajuda, por favor "
+
+#~ msgid ""
+#~ " with funding from the New Media Research Networks Fund at the Department "
+#~ "of Canadian Heritage."
+#~ msgstr ""
+#~ " com recursos do New Media Research Networks Fund do Departamento do "
+#~ "Canadien Heritage."
+
+#~ msgid "', ownership should be set to user "
+#~ msgstr "', a propriedade dever&aacute; ser designada ao utilizador "
+
+#~ msgid ""
+#~ "(Content can be displayed on ANY node unless one or more nodes are "
+#~ "selected)"
+#~ msgstr ""
+#~ "(O conte&uacute;do poder&aacute; ser exibido em QUALQUER HotSpot a "
+#~ "n&atilde;o ser que um ou mais HotSpots sejam selecionados)"
+
+#~ msgid "(again)"
+#~ msgstr "(novamente)"
+
+#~ msgid ": Newest HotSpots"
+#~ msgstr ": <i>HotSpots</i> Recentes"
+
+#~ msgid "About"
+#~ msgstr "Sobre"
+
+#~ msgid "About Pattern Language"
+#~ msgstr "Sobre o Padr&atilde;o de Linguagem"
+
+#~ msgid "Accounts on"
+#~ msgstr "Contas em"
+
+#~ msgid "Accounts on "
+#~ msgstr "Contas em "
+
+#~ msgid "Accounts on %s are and will stay completely free."
+#~ msgstr ""
+#~ "As contas em %s s&atilde;o e permanecer&atilde;o totalmente gratuitas."
+
+#~ msgid "Action"
+#~ msgstr "A&ccedil;&atilde;o"
+
+#~ msgid "Add a"
+#~ msgstr "Adicionar um"
+
+#~ msgid "Add a new content OR select previously created content"
+#~ msgstr "Adicione um novo conte&uacute;do OU selecione um previamente criado"
+
+#~ msgid "Add a new displayed content OR select an existing one"
+#~ msgstr "Adicione um novo conte&uacute;do OU selecione um existente"
+
+#~ msgid "Add a new hotspot"
+#~ msgstr "Adicionar um novo <i>HotSpot</i>"
+
+#~ msgid "Add new content"
+#~ msgstr "Adicionar um novo conte&uacute;do"
+
+#~ msgid "Add new node"
+#~ msgstr "Adicionar novo HotSpot"
+
+#~ msgid "Address:"
+#~ msgstr "Endere&ccedil;o:"
+
+#~ msgid "Administrators"
+#~ msgstr "Administradores"
+
+#~ msgid "AllowedNodes:"
+#~ msgstr "HotSpots permitidos:"
+
+#~ msgid ""
+#~ "An email with confirmation instructions was sent to your email address.  "
+#~ "Your account has been granted 15 minutes of access to retrieve your email "
+#~ "and validate your account."
+#~ msgstr ""
+#~ "Um email com instru&ccedil;&otilde;es de confirma&ccedil;&atilde;o foi "
+#~ "enviado para o seu endere&ccedil;o de email. Foram lhe concedidos 15 "
+#~ "minutos de acesso &agrave; sua conta para que possa aceder ao seu email e "
+#~ "validar a sua conta."
+
+#~ msgid ""
+#~ "An email with confirmation instructions was sent to your email address.  "
+#~ "Your account has been granted 15 minutes of access to retrieve your email "
+#~ "and validate your account.  You may now open a browser window and go to "
+#~ "any remote Internet address to obtain the login page."
+#~ msgstr ""
+#~ "Um email com instru&ccedil;&otilde;es de confirma&ccedil;&atilde;o foi "
+#~ "enviado para o seu endere&ccedil;o de email.  Foram lhe concedidos 15 "
+#~ "minutos de acesso &agrave; sua conta para que possa aceder ao seu email e "
+#~ "validar a sua conta. Pode agora abrir o seu browser e aceder a qualquer "
+#~ "p&aacute;gina da Internet."
+
+#~ msgid "An internal error occured, please contact us."
+#~ msgstr "Ocorreu um erro interno, por favor entre em contato conosco."
+
+#~ msgid ""
+#~ "By clicking the link below you will subscribe to Pattern Language. "
+#~ "Pattern Language will appear in the user subscribed content section at "
+#~ "the bottom of portal pages. As you visit participating hotspots thoughout "
+#~ "Montr&eacute;al you will receive patterns that will create your unique "
+#~ "narrative. You can always read other people's narrative using the "
+#~ "archives."
+#~ msgstr ""
+#~ "By clicking the link below you will subscribe to Pattern Language. "
+#~ "Pattern Language will appear in the user subscribed content section at "
+#~ "the bottom of portal pages. As you visit participating hotspots thoughout "
+#~ "Montr&eacute;al you will receive patterns that will create your unique "
+#~ "narrative. You can always read other people's narrative using the "
+#~ "archives."
+
+#~ msgid "Can not write to directory '"
+#~ msgstr "N&atilde;o foi poss&iacute;vel gravar no diret&oacute;rio '"
+
+#~ msgid "Change password"
+#~ msgstr "Alterar password"
+
+#~ msgid "Channel: "
+#~ msgstr "Canal: "
+
+#~ msgid "Configurations of all nodes of the"
+#~ msgstr "Configura&ccedil;&atilde;o de todos os HotSpots de"
+
+#~ msgid "Contact Kate Armstrong"
+#~ msgstr "Contatar Kate Armstrong"
+
+#~ msgid "Contact:"
+#~ msgstr "Contato:"
+
+#~ msgid "Content from:"
+#~ msgstr "Conte&uacute;do de:"
+
+#~ msgid "Content group elements:"
+#~ msgstr "Elementos do grupo de conte&uacute;do:"
+
+#~ msgid "Content manager"
+#~ msgstr "Gerenciador de conte&uacute;do"
+
+#~ msgid "Content successfully deleted"
+#~ msgstr "Conte&uacute;do apagado com sucesso"
+
+#~ msgid "Content type: "
+#~ msgstr "Tipo de conte&uacute;do: "
+
+#~ msgid "Could not add owner"
+#~ msgstr "Imposs&iacute;vel adicionar propriet&aacute;rio"
+
+#~ msgid "Could not change your password"
+#~ msgstr "Imposs&iacute;vel alterar sua password"
+
+#~ msgid "Could not delete node owners!"
+#~ msgstr "Imposs&iacute;vel apagar propriet&aacute;rios de HotSpot!"
+
+#~ msgid ""
+#~ "Could not get a default account origin, make sure you config.php has at "
+#~ "least one AUTH_SOURCE_ARRAY entry."
+#~ msgstr ""
+#~ "Imposs&iacute;vel obter uma conta de origem padr&atilde;o, assegure que "
+#~ "seu config.php possui pelo menos uma entrada AUTH_SOURCE_ARRAY."
+
+#~ msgid "Could not get hotspot RSS feed"
+#~ msgstr "Imposs&iacute;vel obter a fonte RSS do <i>HotSpot</i>"
+
+#~ msgid "Could not get network RSS feed"
+#~ msgstr "Imposs&iacute;vel obter a fonte RSS da rede"
+
+#~ msgid "Could not remove owner"
+#~ msgstr "Imposs&iacute;vel remover o propriet&aacute;rio"
+
+#~ msgid "Create a new account"
+#~ msgstr "Criar uma nova conta"
+
+#~ msgid "Create new account"
+#~ msgstr "Criar nova conta"
+
+#~ msgid "Cumulative user statistics"
+#~ msgstr "Estatisticas dos utilizadores"
+
+#~ msgid "Deployed HotSpots status with coordinates"
+#~ msgstr "Estado dos <i>HotSpots</i> com localiza&ccedil;&otilde;es"
+
+#~ msgid "Displayed content:"
+#~ msgstr "Conte&uacute;do exibido:"
+
+#~ msgid "Do I have to pay to get access to the Internet"
+#~ msgstr "Eu preciso pagar para ter acesso a Internet"
+
+#~ msgid "Edit a hotspot"
+#~ msgstr "Editar um <i>HotSpot</i>"
+
+#~ msgid "Edit a hotspot with"
+#~ msgstr "Editar um <i>HotSpot</i> com"
+
+#~ msgid "Email me my username"
+#~ msgstr "Enviar o meu username por email"
+
+#~ msgid ""
+#~ "Enter your login information. You will be given 15 minutes of Internet "
+#~ "access, plenty of time to check your email and click on the link"
+#~ msgstr ""
+#~ "Introduza as suas informa&ccedil;&otilde;es de identifica&ccedil;&atilde;"
+#~ "o. Ter&aacute; 15 minutos de acesso &aacute; Internet para que consulte o "
+#~ "seu email e clique no link"
+
+#~ msgid "Error"
+#~ msgstr "Erro"
+
+#~ msgid "Error: "
+#~ msgstr "Erro: "
+
+#~ msgid "Existing users, please log-in"
+#~ msgstr "usernames existentes, por favor iniciem uma sess&atilde;o"
+
+#~ msgid "FREE WIRELESS INTERNET"
+#~ msgstr "INTERNET WIRELESS GRATUITA"
+
+#~ msgid "Find a User ID : "
+#~ msgstr "Encontrar um username: "
+
+#~ msgid "Find more HotSpots"
+#~ msgstr "Encontrar mais HotSpots"
+
+#~ msgid "Flickr support isn't enabled in the config file"
+#~ msgstr ""
+#~ "O suporte a objectos Flickr est&aacute; desactivado no arquivo de "
+#~ "configura&ccedil;&atilde;o"
+
+#~ msgid ""
+#~ "For now, you need to be logged in at a hotspot or to fake a login from "
+#~ "one of the HotSpot login pages to have your administrative clearance "
+#~ "recognised."
+#~ msgstr ""
+#~ "De momento, precisa de estar ligado a um <i>HotSpot</i> ou simular uma "
+#~ "liga&ccedil;&atilde;o a partir de um <i>HotSpot</i> para obter acesso "
+#~ "administrativo."
+
+#~ msgid "Forgot my password"
+#~ msgstr "Esqueci-me da minha password"
+
+#~ msgid "Forgot my username"
+#~ msgstr "Esqueci-me do meu username"
+
+#~ msgid "French translation by Bernard Schutze"
+#~ msgstr "Tradu&ccedil;&atilde;o para o portugu&ecirc;s por Gabriel Hahmann"
+
+#~ msgid "Frequently Asked Questions"
+#~ msgstr "Perguntas Frequentes"
+
+#~ msgid "Get an account here."
+#~ msgstr "Criar uma conta aqui."
+
+#~ msgid "Give a user rights to administer this node"
+#~ msgstr "Conceder direitos para um utilizador administrar este HotSpot"
+
+#~ msgid "Go back to this <i>HotSpot</i> portal page"
+#~ msgstr "Voltar para o portal deste </i>HotSpot</i>"
+
+#~ msgid "Go to the site I originally requested"
+#~ msgstr "Ir para a p&aacute;gina requisitada originalmente"
+
+#~ msgid "Here is an overview of the steps"
+#~ msgstr "Aqui est&aacute; uma vis&atilde;o geral dos passos"
+
+#~ msgid "HotSpot"
+#~ msgstr "HotSpot"
+
+#~ msgid "HotSpots"
+#~ msgstr "HotSpots"
+
+#~ msgid "Hotspot creation and configuration"
+#~ msgstr ""
+#~ "Cria&ccedil;&atilde;o e configura&ccedil;&atilde;o de <i>HotSpots</i>"
+
+#~ msgid "Hotspot logs"
+#~ msgstr "Registo dos HotSpots"
+
+#~ msgid "Hotspot owner administration"
+#~ msgstr "Administra&ccedil;&atilde;o do dono do <i>HotSpot</i>"
+
+#~ msgid "I already have an account, but"
+#~ msgstr "J&aacute; possuo uma conta, mas"
+
+#~ msgid "I have failed to validate my account in x minutes"
+#~ msgstr "N&atilde;o validei a minha conta em x minutos"
+
+#~ msgid "I have trouble connecting and I would like some help"
+#~ msgstr "Estou com problemas em ligar-me e preciso de ajuda"
+
+#~ msgid "I would like to login virtually."
+#~ msgstr "Gostaria de me ligar virtualmente."
+
+#~ msgid "I'm NOT at a hotspot."
+#~ msgstr "N&Atilde;O est&aacute; actualmente num <i>HotSpots</i>."
+
+#~ msgid "Id"
+#~ msgstr "Id"
+
+#~ msgid ""
+#~ "If you fail to validate your account in 15 minutes, you will have to "
+#~ "validate it from somewhere else."
+#~ msgstr ""
+#~ "Se não confirmar a sua conta em 15 minutos ter&aacute; de confirm&aacute;-"
+#~ "la noutro lugar."
+
+#~ msgid ""
+#~ "If you get prompted for a login, enter the username and password you have "
+#~ "just created."
+#~ msgstr ""
+#~ "Se lhe for solicitado um login, utilize o username e password que acabou "
+#~ "de criar."
+
+#~ msgid "Internal Error"
+#~ msgstr "Erro Interno"
+
+#~ msgid "Internal error"
+#~ msgstr "Erro interno"
+
+#~ msgid ""
+#~ "Invalid content selection mode (must be part of CONTENT_SELECTION_MODES)"
+#~ msgstr ""
+#~ "Modo de sele&ccedil;&atilde;o de conte&uacute;do inv&aacute;lido (precisa "
+#~ "ser parte de CONTENT_SELECTION_MODES)"
+
+#~ msgid "Invalid user id "
+#~ msgstr "username inv&aacute;lido "
+
+#~ msgid "Invalid user!"
+#~ msgstr "username inv&aacute;lido!"
+
+#~ msgid "Language:"
+#~ msgstr "Idioma:"
+
+#~ msgid "List of all HotSpots"
+#~ msgstr "Lista de todos os <i>HotSpots</i>"
+
+#~ msgid "Log in : "
+#~ msgstr "Log in : "
+
+#~ msgid "Logged in as:"
+#~ msgstr "Ligado como:"
+
+#~ msgid "Login to this hotspot."
+#~ msgstr "Ligar-se a este <i>HotSpot</i>."
+
+#~ msgid "Login?"
+#~ msgstr "Ligar?"
+
+#~ msgid "Mass transit:"
+#~ msgstr "Transporte maci&ccedil;o:"
+
+#~ msgid "My Profile"
+#~ msgstr "Meu Perfil"
+
+#~ msgid "My content"
+#~ msgstr "Meu conte&uacute;do"
+
+#~ msgid "My profile"
+#~ msgstr "Meu perfil"
+
+#~ msgid "NOT IMPLEMENTED YET, ACCESS DENIED"
+#~ msgstr "ACESSO NEGADO, AINDA N&Atilde;O IMPLEMENTADO"
+
+#~ msgid "NOT logged in."
+#~ msgstr "N&Atilde;O ligado."
+
+#~ msgid "Narrative"
+#~ msgstr "Narrativa"
+
+#~ msgid "Narrative for "
+#~ msgstr "Narrativa para "
+
+#~ msgid ""
+#~ "Narrative fragments associated with each hotspot correspond to the point "
+#~ "of view of one character, so that repeatedly logging into the system from "
+#~ "a single hotspot will produce a narrative from a single point of view, "
+#~ "while moving between hotspots will insert new characters and perspectives "
+#~ "into the text."
+#~ msgstr ""
+#~ "Fragmentos de narrativa associados a cada <i>HotSpot</i> correspondem ao "
+#~ "ponto de vista de um caracter, assim, ligar-se repetidamente no sistema a "
+#~ "partir de um mesmo <i>HotSpot</i> ir&aacute; produzir uma narrativa de um "
+#~ "&uacute;nico ponto de vista, enquanto movendo entre <i>HotSpots</i> "
+#~ "ir&aacute; inserir novos caracteres e perspectivas no texto."
+
+#~ msgid "Narratives Archives"
+#~ msgstr "Arquivos de Narrativas"
+
+#~ msgid "Network administration:"
+#~ msgstr "Administra&ccedil;&atilde;o da rede:"
+
+#~ msgid "Network content:"
+#~ msgstr "Conte&uacute;do da rede:"
+
+#~ msgid "Network::delete() not supported"
+#~ msgstr "Network::delete() n&atilde;o &eacute; suportado"
+
+#~ msgid "Newest"
+#~ msgstr "Mais recente"
+
+#~ msgid "No info to update node with!"
+#~ msgstr "Nenhuma informa&ccedil;&atilde;o para actualizar o HotSpot!"
+
+#~ msgid ""
+#~ "No user matches the default account origin, a new user admin/admin will "
+#~ "be created. Change the password as soon as possible !"
+#~ msgstr ""
+#~ "Nenhum username conincide com a conta de origem padr&atilde;o, "
+#~ "ser&aacute; criado um novo username admin/admin. Modifique a password "
+#~ "assim que poss&iacute;vel!"
+
+#~ msgid "No username specified!"
+#~ msgstr "username n&atilde;o especificado!"
+
+#~ msgid ""
+#~ "No, Internet access is provided for free by the venue you are actually at"
+#~ msgstr ""
+#~ "N&atilde;o, o acesso a Internet &eacute; provido gratuitamente pela "
+#~ "localidade em que voc&ecirc; est&aacute;"
+
+#~ msgid "NoCat passwd file (user database) import"
+#~ msgstr "Importar arquivo de passwords NoCat (base de dados de username)"
+
+#~ msgid "Nobody is online at this hotspot..."
+#~ msgstr "N&atilde;o est&aacute; ningu&eacute;m ligado a este <i>HotSpot</i>."
+
+#~ msgid "Nobody's online!"
+#~ msgstr "N&atilde; est&aacute; ningu&eacute; ligado."
+
+#~ msgid "Node administration:"
+#~ msgstr "Administra&ccedil;&atilde;o do HotSpot:"
+
+#~ msgid "Node content:"
+#~ msgstr "Conte&uacute;do do HotSpot:"
+
+#~ msgid "Once that last step is done, you will have full free Internet access"
+#~ msgstr ""
+#~ "Assim que o &uacute;ltimo passo estiver conclu&iacute;do, ter&aacute; "
+#~ "acesso total a Internet"
+
+#~ msgid ""
+#~ "Once the account is created, you need Internet access in order to check "
+#~ "your email and click the validation link. In order to get temporary "
+#~ "access to the Internet during your validation period, visit any URL (for "
+#~ "example www.google.com) to get the login page again"
+#~ msgstr ""
+#~ "Assim que sua conta estiver criada, ir&aacute; precisar de acesso "
+#~ "&agrave; Internet para consultar o seu email e clicar no link de "
+#~ "valida&ccedil;&atilde;o. Para ter acesso tempor&aacute;rio &agrave; "
+#~ "Internet durante o tempo de valida&ccedil;&atilde;o, visite qualquer URL "
+#~ "(ex. www.google.com) para aceder &aacute; p&aacute;gina de login novamente"
+
+#~ msgid ""
+#~ "Once the fragments have been delivered they are compiled into a document "
+#~ "that is unique to each participant. Each individual narrative is archived "
+#~ "and viewable online. Users may read the documents they have generated or "
+#~ "those that have been generated by others. Participation in Pattern "
+#~ "Language  is limited to those using the system in Montreal, although "
+#~ "narratives generated by participants may be read by anyone visiting the "
+#~ "website."
+#~ msgstr ""
+#~ "Once the fragments have been delivered they are compiled into a document "
+#~ "that is unique to each participant. Each individual narrative is archived "
+#~ "and viewable online. Users may read the documents they have generated or "
+#~ "those that have been generated by others. Participation in Pattern "
+#~ "Language  is limited to those using the system in Montreal, although "
+#~ "narratives generated by participants may be read by anyone visiting the "
+#~ "website."
+
+#~ msgid "Online at this hotspot"
+#~ msgstr "Ligados neste <i>HotSpot</i>"
+
+#~ msgid "Opened on "
+#~ msgstr "Aberto em "
+
+#~ msgid "Or"
+#~ msgstr "Ou"
+
+#~ msgid "Owner"
+#~ msgstr "Propriet&aacute;rio"
+
+#~ msgid "Owner hotspot with"
+#~ msgstr "Propriet&aacute;rio de <i>HotSpot</i> com"
+
+#~ msgid "Participating hotspots"
+#~ msgstr "<i>HotSpots</i> participantes"
+
+#~ msgid "Pattern Language - About"
+#~ msgstr "Linguagem Padr&atilde;o - Sobre"
+
+#~ msgid "Pattern Language - Hotspots list"
+#~ msgstr "Linguagem Padr&atilde;o - Lista de <i>HotSpots</i>"
+
+#~ msgid "Pattern Language - Narrative"
+#~ msgstr "Linguagem Padr&atilde;o - Narrativa"
+
+#~ msgid "Pattern Language - Narratives Archives"
+#~ msgstr "Linguagem Padr&atilde;o - Arquivo de Narrativas"
+
+#~ msgid "Pattern Language - Subscription"
+#~ msgstr "Linguagem Padr&atilde;o - Assinatura"
+
+#~ msgid "Pattern Language Subscription"
+#~ msgstr "Assinatura de Linguagem Padr&atilde;o"
+
+#~ msgid "Pattern Language is a commission by the Locative Media Lab and the "
+#~ msgstr ""
+#~ "A Linguagem Padr&atilde;o &eacute; um projeto do Locative Media Lab e do "
+
+#~ msgid ""
+#~ "Pattern Language is a location-aware fiction project by Kate Armstrong "
+#~ "that attaches patterns of narrative to individuals as they move through "
+#~ "the city of Montreal. Each person's path is logged in the system and "
+#~ "compiled into a document that can be read online. The work is meant to "
+#~ "engage with the rhythms of the city: by evolving according to the "
+#~ "patterns of an individual, each story forms both a map or trace of "
+#~ "movement and a fabric of sound."
+#~ msgstr ""
+#~ "Pattern Language is a location-aware fiction project by Kate Armstrong "
+#~ "that attaches patterns of narrative to individuals as they move through "
+#~ "the city of Montreal. Each person's path is logged in the system and "
+#~ "compiled into a document that can be read online. The work is meant to "
+#~ "engage with the rhythms of the city: by evolving according to the "
+#~ "patterns of an individual, each story forms both a map or trace of "
+#~ "movement and a fabric of sound."
+
+#~ msgid ""
+#~ "Pattern Language is activated through the login system of the Île Sans "
+#~ "Fil network. Once a user subscribes to Pattern Language , a piece of the "
+#~ "story is delivered whenever s/he logs into the ISF wireless network using "
+#~ "a WiFi-enabled laptop or mobile device."
+#~ msgstr ""
+#~ "Pattern Language is activated through the login system of the Île Sans "
+#~ "Fil network. Once a user subscribes to Pattern Language , a piece of the "
+#~ "story is delivered whenever s/he logs into the ISF wireless network using "
+#~ "a WiFi-enabled laptop or mobile device."
+
+#~ msgid "Personal user management"
+#~ msgstr "Gerenciamento de contas"
+
+#~ msgid ""
+#~ "Pick a username, enter your email address, and enter the password you "
+#~ "would like. An email will be sent to you with a link you can click to "
+#~ "validate your account"
+#~ msgstr ""
+#~ "Escolha um username, introduza o seu endere&ccedil;o de email e uma "
+#~ "password &agrave; sua escolha. Um email ser&aacute; enviado com um link "
+#~ "para validar a sua conta"
+
+#~ msgid "Picture preview"
+#~ msgstr "Pre-visualizar imagem"
+
+#~ msgid ""
+#~ "Please enter your current username, your current password, and your new "
+#~ "password (with confirmation)"
+#~ msgstr ""
+#~ "Por favor preencha com o seu username e password actuais, e sua nova "
+#~ "password (com confirma&ccedil;&atilde;o)"
+
+#~ msgid "Please inform us of any problem or service interruption at:"
+#~ msgstr ""
+#~ "Por favor informe-nos de qualquer problema ou interrup&ccedil;&atilde;o "
+#~ "do servi&ccedil;o em:"
+
+#~ msgid "Please log-in or"
+#~ msgstr "Por favor lige-se ou"
+
+#~ msgid "Please report any problem or interruption in our service to"
+#~ msgstr ""
+#~ "Por favor reporte qualquer problema ou interrup&ccedil;&atilde;o do nosso "
+#~ "servi&ccedil;o para:"
+
+#~ msgid "Please report any problem or interruption in our service to:"
+#~ msgstr ""
+#~ "Por favor reporte qualquer problema ou interrup&ccedil;&atilde;o do nosso "
+#~ "servi&ccedil;o para:"
+
+#~ msgid "Programming by Benoît Gr&eacute;goire and Fran&ccedil;ois Proulx"
+#~ msgstr ""
+#~ "Programa&ccedil;&atilde;o por Benoît Gr&eacute;goire et Fran&ccedil;ois "
+#~ "Proulx"
+
+#~ msgid "Project sponsor:"
+#~ msgstr "Patrocinadores do projeto:"
+
+#~ msgid "RSS URL"
+#~ msgstr "URL do RSS"
+
+#~ msgid "Read narrative"
+#~ msgstr "Ler narrativa"
+
+#~ msgid "Real name"
+#~ msgstr "Nome verdadeiro"
+
+#~ msgid "Remote file size"
+#~ msgstr "Tamanho do arquivo remoto"
+
+#~ msgid "Select existing Content : "
+#~ msgstr "Selecionar conte&uacute;do existente :"
+
+#~ msgid "Show all content"
+#~ msgstr "Exibir todo conte&uacute;do"
+
+#~ msgid "Show only persistent content"
+#~ msgstr "Exibir apenas conte&uacute;do persistente"
+
+#~ msgid "Sign up : "
+#~ msgstr "Registo:"
+
+#~ msgid "Sign-up, it's free!"
+#~ msgstr "Registe-se, &eacute; gratuito!"
+
+#~ msgid "Sorry, no content available in the database"
+#~ msgstr ""
+#~ "N&atilde;o existe nenhum conte&uacute;do dispon&iacute;vel na base de "
+#~ "dados"
+
+#~ msgid ""
+#~ "Sorry, no elements available at this hotspot or all elements of the "
+#~ "content group have already been shown"
+#~ msgstr ""
+#~ "N&atilde;o existe nenhum elemento dispon&iacute;vel neste <i>HotSpot</i> "
+#~ "ou todos os elementos do grupo de conte&uacute;do j&aacute; foi exibido"
+
+#~ msgid "Sorry, the user must have a email adress."
+#~ msgstr "O username precisa ter um endere&ccedil;o de email."
+
+#~ msgid "Sorry, this email address is already registered."
+#~ msgstr "O este endere&ccedil;o de email j&aacute; est&aacute; registado."
+
+#~ msgid "Sorry, your "
+#~ msgstr ""
+#~ "Pedimos desculpa, mas o seu per&iacute;odo de valida&ccedil;&atilde;o de "
+
+#~ msgid ""
+#~ "Sorry, your $validation_grace_time minutes grace period to retrieve your "
+#~ "email and validate your account has now expired. ($validation_grace_time "
+#~ "min grace period started on $user_info[reg_date]).  You will have to "
+#~ "connect to the internet and validate your account from another location."
+#~ msgstr ""
+#~ "Pedimos desculpa, mas o seu per&iacute;odo de valida&ccedil;&atilde;o de "
+#~ "$validation_grace_time minutos para recuperar o seu email e validar a sua "
+#~ "conta expirou. (O per&iacute;odo de valida&ccedil;&atilde;o de "
+#~ "$validation_grace_time min come&ccedil;ou em $user_info[reg_date]).  "
+#~ "Ter&aacute; de se ligar &agrave; Internet e validar a sua conta noutro "
+#~ "local."
+
+#~ msgid "Sorry, your validation token is not valid!"
+#~ msgstr "Seu token de valida&ccedil;&atilde;o n&atilde;o &eacute; valido!"
+
+#~ msgid "Sponsor of this project:"
+#~ msgstr "Patrocinadores do projeto:"
+
+#~ msgid "Statistics:"
+#~ msgstr "Estat&iacute;sticas:"
+
+#~ msgid "Street address"
+#~ msgstr "Endere&ccedil;o"
+
+#~ msgid "Subscribe now"
+#~ msgstr "Inscrever-se agora"
+
+#~ msgid ""
+#~ "Subscribe to Pattern Language by clicking the link below. Once you have "
+#~ "subscribed you will receive a fragment of text each time you log in to a "
+#~ "participating hotspot in the city of Montreal. These text fragments will "
+#~ "accumulate to form a unique narrative for every user. You can read your "
+#~ "narrative anytime by clicking on \"Read Narrative\", or you can read the "
+#~ "narratives generated by other users by going to \"Archives\"."
+#~ msgstr ""
+#~ "Subscribe to Pattern Language by clicking the link below. Once you have "
+#~ "subscribed you will receive a fragment of text each time you log in to a "
+#~ "participating hotspot in the city of Montreal. These text fragments will "
+#~ "accumulate to form a unique narrative for every user. You can read your "
+#~ "narrative anytime by clicking on \"Read Narrative\", or you can read the "
+#~ "narratives generated by other users by going to \"Archives\"."
+
+#~ msgid "Subscription"
+#~ msgstr "Inscri&ccedil;&atilde;o"
+
+#~ msgid "Tags"
+#~ msgstr "«Tags»"
+
+#~ msgid "Thank you for subscribing"
+#~ msgstr "Obrigado por se inscrever"
+
+#~ msgid ""
+#~ "The database schema is not up to date.  Do you want to try to update it?  "
+#~ "This operation is irreversible."
+#~ msgstr ""
+#~ "O esquema da base de dados n&atilde;o est&aacute; actualizado. Gostaria "
+#~ "de actualiz&aacute;-lo?  Esta opera&ccedil;&atilde;o &eacute; "
+#~ "irrevers&iacute;vel."
+
+#~ msgid "The email address must be of the form user@domain.com."
+#~ msgstr "O endere&ccedil;o de email precisa estar na forma user@dominio.com."
+
+#~ msgid "The id $node_id_str could not be found in the database"
+#~ msgstr "O id $node_id_str n&atilde;o foi encontrado na base de dados"
+
+#~ msgid "The network currently has"
+#~ msgstr "A rede possui actualmente"
+
+#~ msgid "The secified network doesn't exist: "
+#~ msgstr "A rede especificada n&atilde;o existe: "
+
+#~ msgid "The specified network doesn't exist: "
+#~ msgstr "A rede especificada n&atilde;o existe: "
+
+#~ msgid "The website I requested"
+#~ msgstr "O site web eu solicitei"
+
+#~ msgid "There are no hotspot on this network."
+#~ msgstr "N&atilde;o existem <i>HotSpots</i> nesta rede."
+
+#~ msgid ""
+#~ "This is the 'virtual login' page you can use to get the credentials which "
+#~ "will then give you access to management functions on the network without "
+#~ "being at a hotspot."
+#~ msgstr ""
+#~ "Esta &eacute; a p&aacute;gina de 'login virtual' que pode usar para obter "
+#~ "as credenciais necess&aacute;rias para aceder &agrave;s fun&ccedil;"
+#~ "&otilde;es de gerenciamento da rede sem estar num <i>HotSpot</i>."
+
+#~ msgid "This node already exists."
+#~ msgstr "Este HotSpot j&aacute; existe."
+
+#~ msgid "This page displays a map of the deployed hotspots."
+#~ msgstr ""
+#~ "Esta p&aacute;gina mostra um mapa dos <i>HotSpots</i> implementados."
+
+#~ msgid "Try to update database schema"
+#~ msgstr "Tente actualizar o esquema da base de dados"
+
+#~ msgid "Unable to find "
+#~ msgstr "Imposs&iacute;vel encontrar "
+
+#~ msgid "Unable to locate "
+#~ msgstr "Imposs&iacute;vel localizar "
+
+#~ msgid "Unable to update database!"
+#~ msgstr "Imposs&iacute;vel actualizar base de dados!"
+
+#~ msgid "Unknown section:"
+#~ msgstr "Se&ccedil;&atilde;o desconhecida:"
+
+#~ msgid "Unsubscribe now"
+#~ msgstr "Terminar inscri&ccedil;&atilde;o agora"
+
+#~ msgid "Unsupported selection mode: "
+#~ msgstr "Modo de sele&ccedil;&atilde;o n&atilde;o suportado: "
+
+#~ msgid "Update node"
+#~ msgstr "actualizar HotSpot"
+
+#~ msgid "User ID"
+#~ msgstr "Nome do utilizador"
+
+#~ msgid "User Profile"
+#~ msgstr "Perfil do utilizador"
+
+#~ msgid "User id: "
+#~ msgstr "Identifica&ccedil;&atilde;o do utilizador: "
+
+#~ msgid "User logs"
+#~ msgstr "Hist&oacute;rico dos utilizadores"
+
+#~ msgid "User management"
+#~ msgstr "Gest&atilde;o de utilizadores"
+
+#~ msgid "Users Online"
+#~ msgstr "Utilizadores ligados"
+
+#~ msgid ""
+#~ "Users may choose to actively engage Pattern Language by deliberately "
+#~ "travelling between points in the city in order to generate narrative "
+#~ "activity, or they may decide to have the project running in the "
+#~ "background as they go about their regular activities, only stopping to "
+#~ "read their document now and then over a period of time."
+#~ msgstr ""
+#~ "Users may choose to actively engage Pattern Language by deliberately "
+#~ "travelling between points in the city in order to generate narrative "
+#~ "activity, or they may decide to have the project running in the "
+#~ "background as they go about their regular activities, only stopping to "
+#~ "read their document now and then over a period of time."
+
+#~ msgid "Virtual login"
+#~ msgstr "Login virtual"
+
+#~ msgid "Website URL"
+#~ msgstr "URL do site Web"
+
+#~ msgid "Welcome!"
+#~ msgstr "Bemvindo!"
+
+#~ msgid "Welcome! Hotspot:"
+#~ msgstr "Bem-vindo! Hotspot:"
+
+#~ msgid ""
+#~ "What steps are required in order to create and validate a new account?"
+#~ msgstr ""
+#~ "Que passos s&atilde;o necess&aacute;rios para criar e validar uma nova "
+#~ "conta?"
+
+#~ msgid "Where am I?"
+#~ msgstr "Onde estou eu?"
+
+#~ msgid "Why is this service free ?"
+#~ msgstr "Porque é que este servi&ccedil;o &eacute; gratuito?"
+
+#~ msgid "WiFiDog list of the most recent HotSpots opened by "
+#~ msgstr "Lista dos HotSpots mais recentes abertos por "
+
+#~ msgid "WiFiDog list of the most recent HotSpots opened by the network: "
+#~ msgstr "Lista dos HotSpots mais recentes abertos pela rede: "
+
+#~ msgid "With thanks to tobias c. van Veen & Michael Longford"
+#~ msgstr "Agradecimentos a tobias c. van Veen & Michael Longford"
+
+#~ msgid "Yes, I am sure:"
+#~ msgstr "Sim, tenho certeza:"
+
+#~ msgid "You MUST fill in all the fields."
+#~ msgstr "PRECISA de preencher todos os campos."
+
+#~ msgid ""
+#~ "You are already subscribed to Pattern Language, you can terminate your "
+#~ "participation by clicking below."
+#~ msgstr ""
+#~ "j&aacute; est&aacute; registado na Linguagem Padr&atilde;o, pode terminar "
+#~ "sua inscri&ccedil;&atilde;o clicando abaixo."
+
+#~ msgid "You are not a hotspot owner"
+#~ msgstr "N&atilde;o &eacute; um propriet&aacute;rio de hotspot"
+
+#~ msgid "You are not currently at a hotspot..."
+#~ msgstr "N&atilde;o est&aacute; ligado a nenhum HotSpot..."
+
+#~ msgid "You are now unsubscribed"
+#~ msgstr "Agora est&aacute; inscrito"
+
+#~ msgid "You do not have administrator privileges"
+#~ msgstr "N&atilde;o possui privil&eacute;gios de administrador"
+
+#~ msgid "You do not have owner privileges"
+#~ msgstr "N&atilde;o possui privil&eacute;gios de propriet&aacute;rio"
+
+#~ msgid ""
+#~ "You have been given an amount of minutes of Internet access in order to "
+#~ "retrieve the email we sent to you and validate your free account. What "
+#~ "you can do now is either <a href='signup.php'>create a new account</a> "
+#~ "and then validate it properly, or get on the Internet from somewhere else "
+#~ "(home, free Internet cafe, etc.) and validate the account you just "
+#~ "created. If you need us to resend you the validation email, please <a "
+#~ "href='resend_validation.php'>click here</a>"
+#~ msgstr ""
+#~ "Foram lhe concedidos alguns minutos de acesso &agrave; Internet para que "
+#~ "possa aceder o email que foi enviado e validar a sua conta. O que pode "
+#~ "fazer agora &eacute; ou <a href='signup.php'>criar uma nova conta</a> e "
+#~ "ent&atilde;o valid&aacute;-la corretamente, ou aceder &agrave; Internet "
+#~ "de outro lugar (de casa, por exemplo) e validar a conta que acabou de "
+#~ "criar."
+
+#~ msgid "You have failed to validate your account in 15 minutes."
+#~ msgstr ""
+#~ "A sua conta n&atilde;o foi validade nos 15 minutos necess&aacute;rios."
+
+#~ msgid ""
+#~ "You have now been granted 15 minutes of Internet access without being "
+#~ "validated to go and activate your account."
+#~ msgstr ""
+#~ "Foram-lhe concedidos 15 minutos de acesso livre &aacute; Internet para "
+#~ "que possa activar sua conta."
+
+#~ msgid ""
+#~ "You may now browse to a remote Internet address and take advantage of the "
+#~ "free Internet access!"
+#~ msgstr ""
+#~ "Agora pode aceder a um site na Internet usufruir acesso gratuito &agrave; "
+#~ "Internet!"
+
+#~ msgid "You must be logged in to access the administration panel."
+#~ msgstr ""
+#~ "Precisa de estar ligado para aceder ao painel de administra&ccedil;"
+#~ "&atilde;o."
+
+#~ msgid "You must be logged in to read your narrative"
+#~ msgstr "Precisa de estar ligado para ler sua narrativa"
+
+#~ msgid "You must be logged in to subscribe !"
+#~ msgstr "Precisa de estar ligado para se inscrever !"
+
+#~ msgid "Your MUST fill in all the fields"
+#~ msgstr "PRECISA de preencher todos os campos"
+
+#~ msgid "Your account has been succesfully activated!"
+#~ msgstr "A sua conta foi activada com sucesso!"
+
+#~ msgid ""
+#~ "Your email address must be valid in order for your account to be activated"
+#~ msgstr ""
+#~ "Seu endere&ccedil;o de email precisa de ser valido para que sua conta "
+#~ "possa ser activada"
+
+#~ msgid "Your password has been changed succesfully."
+#~ msgstr "password foi alterada com sucesso."
+
+#~ msgid "Your user_id and password do not match"
+#~ msgstr "username e password s&atilde;o inv&aacute;lidos"
+
+#~ msgid "Your username and password do not match"
+#~ msgstr "O seu username e password s&atilde;o inv&aacute;lidos"
+
+#~ msgid ""
+#~ "are and will remain <emp>totally free</emp>, use the left menu to create "
+#~ "a new one or recover a lost username or password"
+#~ msgstr ""
+#~ "s&atilde;o e continuar&atilde;o sendo <emp>totalmente gratuitos</emp>, "
+#~ "use o menu esquerdo para criar um novo ou recuperar um username e "
+#~ "password perdidos"
+
+#~ msgid "click here."
+#~ msgstr "clique aqui."
+
+#~ msgid "in the database."
+#~ msgstr "na base de dados."
+
+#~ msgid "is unknown to this authentication server."
+#~ msgstr ""
+#~ "n&atilde;o &eacute; conhecido por este servidor de autentica&ccedil;"
+#~ "&atilde;o."
+
+#~ msgid "network"
+#~ msgstr "rede"
+
+#~ msgid "new users"
+#~ msgstr "novos utilizadores"
+
+#~ msgid "open"
+#~ msgstr "oberto"
+
+#~ msgid "other users online at this hotspot..."
+#~ msgstr "outros utilizadores ligados a hotspot..."
+
+#~ msgid "sign-up."
+#~ msgstr "registar."
+
+#~ msgid "user(s) are currently online"
+#~ msgstr "username(s) actualmente ligado(s)"
+
+#~ msgid "user(s) online"
+#~ msgstr "username(s) ligado(s)"
+
+#~ msgid "valid users"
+#~ msgstr "usernames v&aacute;lidos"
+
+#~ msgid "Administration"
+#~ msgstr "Administra&ccedil;&atilde;o"
+
+#~ msgid "Create"
+#~ msgstr "Criar"
+
+#~ msgid ""
+#~ "Accept users with no email adresses (Normally, NoCat usernames are "
+#~ "expected to be the user's email adress, and the username is generated "
+#~ "from the prefix."
+#~ msgstr ""
+#~ "Aceitar usernames sem endere&ccedil;o de email (Normalmente, o nome do "
+#~ "username NoCat &eacute; derivado do prefixo do seu endere&ccedil;o de "
+#~ "email)."
+
+#~ msgid "Select the time range for which statistics will be computed."
+#~ msgstr ""
+#~ "Escolha o per&iacute;odo de tempo em que as estat&iacute;sticas "
+#~ "ser&atilde;o computadas."
+
+#~ msgid "Network Profile"
+#~ msgstr "Perfil de rede"
+
+#~ msgid "Registrations per month"
+#~ msgstr "Inscri&ccedil;&otilde;es por m&ecirc;s"
+
+#~ msgid "Most registrations per node"
+#~ msgstr "HotSpots com mais inscri&ccedil;&otilde;es"
+
+#~ msgid "Most connections per node"
+#~ msgstr "HotSpots com mais conex&otilde;es"
+
+#~ msgid "Connections"
+#~ msgstr "Liga&ccedil;&otilde;es"
+
+#~ msgid "No information for specified time frame"
+#~ msgstr "Nenhuma informa&ccedil;&atilde;o para o per&iacute;odo especificado"
+
+#~ msgid "Ten most mobile users"
+#~ msgstr "Dez utilizadores mais m&oacute;veis"
+
+#~ msgid "User"
+#~ msgstr "username"
+
+#~ msgid "Ten most frequent users"
+#~ msgstr "Dez utilizadores mais frequentes"
+
+#~ msgid "Ten most greedy users"
+#~ msgstr "Dez utilizadores mais consumidores"
+
+#~ msgid "Connections per hour of the day"
+#~ msgstr "Liga&ccedil;&otilde;es por hora do dia"
+
+#~ msgid "Connections per week day"
+#~ msgstr "Liga&ccedil;&otilde;es por dia da semana"
+
+#~ msgid "Connections per month"
+#~ msgstr "Liga&ccedil;&otilde;es por m&ecirc;s"
+
+#~ msgid "Real Name"
+#~ msgstr "Nome Completo"
+
+#~ msgid "Website"
+#~ msgstr "Site Web"
+
+#~ msgid " is not installed"
+#~ msgstr " n&atilde;o est&aacute; instalado"
+
+#~ msgid "You do not have permissions to access any administration functions."
+#~ msgstr ""
+#~ "N&atilde;o tem permiss&atilde;o para aceder a qualquer fun&ccedil;&atilde;"
+#~ "o administrativa."
+
+#~ msgid "Building your wireless community"
+#~ msgstr "Construindo a sua comunidade wireless"
+
+#~ msgid ""
+#~ "Network::getDefaultNetwork:  Fatal error: Unable to find the default "
+#~ "network!"
+#~ msgstr ""
+#~ "Network::getDefaultNetwork:  Erro fatal: N&atilde;o foi possivel "
+#~ "encontrar a rede padr&atilde;o!"
+
+#~ msgid "Create new network with id"
+#~ msgstr "Criar nova rede com o id"
+
+#~ msgid ""
+#~ "Network authenticator class.  The subclass of Authenticator to be used "
+#~ "for user authentication (ex: AuthenticatorRadius)"
+#~ msgstr ""
+#~ "Classe do autenticador da rede. A subclasse do Autenticador a ser "
+#~ "utilizada para a autentica&ccedil;&atilde;o dos usernames (ex: "
+#~ "AuthenticatorRadius)"
+
+#~ msgid "This will be the from adress of the validation email"
+#~ msgstr ""
+#~ "Este ser&aacute; o endere&ccedil;o de origem do email de valida&ccedil;"
+#~ "&atilde;o"
+
+#~ msgid "Network stakeholders"
+#~ msgstr "Gerentes da rede"
+
+#~ msgid "New node ID"
+#~ msgstr "ID do novo <i>HotSpot</i>"
+
+#~ msgid "Create a new node"
+#~ msgstr "Criar um novo <i>HotSpot</i>"
+
+#~ msgid "Create new node with id"
+#~ msgstr "Criar um novo HotSpot com o id"
+
+#~ msgid "in network:"
+#~ msgstr "na rede:"
+
+#~ msgid "Information about the node:"
+#~ msgstr "Informa&ccedil;&otilde;es sobre o HotSpot:"
+
+#~ msgid "ID"
+#~ msgstr "ID"
+
+#~ msgid "Geocode only"
+#~ msgstr "Geo-localizador"
+
+#~ msgid "Geocode location"
+#~ msgstr "Localiza&ccedil;&atilde;o do geocode"
+
+#~ msgid "Node configuration:"
+#~ msgstr "Configura&ccedil;&atilde;o do HotSpot:"
+
+#~ msgid ""
+#~ "URL to show instead of the portal (if this is not empty, the portal will "
+#~ "be disabled and this URL will be shown instead)"
+#~ msgstr ""
+#~ "URL a exibir ao inv&eacute;s do portal (se n&atilde;o estiver em branco, "
+#~ "o portal ser&aacute; desabilitado e esta URL ser&aacute; mostrada)"
+
+#~ msgid "Node owners"
+#~ msgstr "Propriet&aacute;rios do HotSpot"
+
+#~ msgid "Technical officers"
+#~ msgstr "Oficiais t&eacute;cnicos"
+
+#~ msgid "Remove technical officer"
+#~ msgstr "Remover oficial t&eacute;cnico"
+
+#~ msgid "Add technical officer"
+#~ msgstr "Adicionar oficial t&eacute;cnico"
+
+#~ msgid "The user is already a technical officer of this node."
+#~ msgstr ""
+#~ "O username j&aacute; &eacute; um oficial t&eacute;cnico deste HotSpot."
+
+#~ msgid "No deployment statues  could be found in the database"
+#~ msgstr ""
+#~ "N&atilde;o foi poss&iacute;vel encontrar estados de implementa&ccedil;"
+#~ "&atilde;o na base de dados."
+
+#~ msgid "Could not add tech officer"
+#~ msgstr "Imposs&iacute;vel adicionar oficial t&eacute;cnico."
+
+#~ msgid "Could not remove tech officer"
+#~ msgstr "Imposs&iacute;vel remover oficial t&eacute;cnico"
+
+#~ msgid ""
+#~ "Sorry, your %s minutes grace period to retrieve your email and validate "
+#~ "your account has now expired. You will have to connect to the internet "
+#~ "and validate your account from another location or create a new account. "
+#~ "For help, please %s click here %s."
+#~ msgstr ""
+#~ "Os %.0f minutos para valida&ccedil;&atilde;o da<br>sua conta expiraram."
+#~ "<br>Ter&aacute; que se ligar &agrave; Internet e <br>validar a sua conta "
+#~ "noutro local.<br>Se precisar de ajuda, por favor %s clique aqui %s."
+
+#~ msgid "Expand portal"
+#~ msgstr "Expandir o portal"
+
+#~ msgid "Collapse portal"
+#~ msgstr "Reduzir o portal"
+
+#~ msgid ""
+#~ "For some reason, we were unable to determine the web site you initially "
+#~ "wanted to see.  You should now enter a web address in your URL bar."
+#~ msgstr ""
+#~ "Por alguma raz&atilde;o, n&atilde;o foi poss&iacute;vel identificar o "
+#~ "site que solicitou inicialmente. Deve introduzir agora com o "
+#~ "endere&ccedil;o web no browser."
+
+#~ msgid ""
+#~ "How much bonus feeds that do not publish as often get over feed that "
+#~ "publish more often.\n"
+#~ "\t\t\t\t\t  \tThe default is 0.75, with a typical range between 0 and "
+#~ "1.  \n"
+#~ "\t\t\t\t\t \tAt 0, you have a classic RSS aggregator, meaning the n most "
+#~ "recent entries picked from all feeds\n"
+#~ "\t\t\t\t\t \twill be displayed. 1 is usually as high as you'll want to "
+#~ "go:  Assuming that all \n"
+#~ "\t\t\t\t\t \tan homogenous internal distribution (ex:  one feed publishes "
+#~ "exactly one entry a day, the \n"
+#~ "\t\t\t\t\t \tsecond once every two days, and the third once every three "
+#~ "days), and you ask for 15 entries,\n"
+#~ "\t\t\t\t\t \tthere will be 5 of each.  While that may not sound usefull, "
+#~ "it still is, as the feed's distribution is \n"
+#~ "\t\t\t\t\t \tusually not homogenous."
+#~ msgstr ""
+#~ "Quanto as fontes que n&atilde;o publicam regularmente ir&atilde;o "
+#~ "sobrescrever as que publicam regularmente.\n"
+#~ "\t\t\t\t\t  \tO padr&atilde;o &eacute; 0.75, com um intervalo t&iacute;"
+#~ "pico entre 0 e 1.  \n"
+#~ "\t\t\t\t\t \tEm 0, voc&ecirc; tem um agregador RSS cl&aacute;ssico, "
+#~ "significando que as n entradas mais recentes das fontes\n"
+#~ "\t\t\t\t\t \te ser&atilde;o exibidas. 1 &eacute; normalmente o mais alto "
+#~ "que ir&aacute;:  Assumindo que todas \n"
+#~ "\t\t\t\t\t \ts&atilde;o fontes internas homog&ecirc;neas (ex:  uma fonte "
+#~ "publica exactamente uma entrada por dia, a \n"
+#~ "\t\t\t\t\t \tsegunda a cada dois dias, e a terceira a cada tr&ecirc;"
+#~ "sdias), e solicitou 15 entradas,\n"
+#~ "\t\t\t\t\t \texistir&atilde;o 5 de cada.  Enquanto isto pode n&atilde;o "
+#~ "parecer &uacute;til, ele ainda &eacute;, visto que as fontes de "
+#~ "distribui&ccedil;&atilde;o \n"
+#~ "\t\t\t\t\t \tnormalmente n&atilde;o s&atilde;o homog&ecirc;neas."
+
+#~ msgid ""
+#~ "Set the oldest entries (in seconds) you are willing to see.  Any entries "
+#~ "older than this will not\n"
+#~ "\t\t\t\t\t \tbe considered at all for display, even if it means that the "
+#~ "configured number of items to be displayed isn't reached.\n"
+#~ "\t\t\t\t\t\tIt's only usefull if\n"
+#~ "\t\t\t\t\t \tall your feed publish very rarely, and you don't want very "
+#~ "old entries to show up."
+#~ msgstr ""
+#~ "Set the oldest entries (in seconds) you are willing to see.  Any entries "
+#~ "older than this will not\n"
+#~ "\t\t\t\t\t \tbe considered at all for display, even if it means that the "
+#~ "configured number of items to be displayed isn't reached.\n"
+#~ "\t\t\t\t\t\tIt's only usefull if\n"
+#~ "\t\t\t\t\t \tall your feed publish very rarely, and you don't want very "
+#~ "old entries to show up."
+
+#~ msgid ""
+#~ "WARNING:  This feed does not include the publication dates. \n"
+#~ "\t\t\tThe system needs to be able to compute approximate publication date "
+#~ "for each entry, so the entry can be weighted against the others. In order "
+#~ "for the aggregator to do a good job, you need to estimate fublication "
+#~ "frequency of the items, in days.\n"
+#~ "\t\t\t  If unset, defaults to one day. \n"
+#~ "\t\t\t\t\t"
+#~ msgstr ""
+#~ "ATEN&Ccedil;&Atilde;O:  Esta fonte n&atilde;o inclue as datas de "
+#~ "publica&ccedil;&atilde;o. \n"
+#~ "\t\t\tO sistema necessita computar a data aproximada de publica&ccedil;"
+#~ "&atilde;o para cada entrada, assim ela pode ser compara &agrave;s outras. "
+#~ "Para que o agregador fa&ccedil;a um bom trabalho, necessita estimar a "
+#~ "frequ&ecirc;ncia de publica&ccedil;&atilde;o dos &iacute;tens, em dias.\n"
+#~ "\t\t\t  Se n&atilde;o for definido, o padr&atilde;o &eacute; um dia. \n"
+#~ "\t\t\t\t\t"
+
+#~ msgid ""
+#~ "The bias to be given to the source by the selection algorithm.\n"
+#~ "\t\t\t\t\t    Bias must be > 0 , typical values would be between 0.75 and "
+#~ "1.5 and default is 1 (no bias).  A bias of 2 will cause the items to "
+#~ "\"look\" twice as recent to the algorithm.\n"
+#~ "\t\t\t\t\t    A bias of 0.5 to look twice as old.  Be carefull, a bias of "
+#~ "2 will statistically cause the \n"
+#~ "\t\t\t\t\t  feed to have MORE than twice as many items displayed. "
+#~ msgstr ""
+#~ "The bias to be given to the source by the selection algorithm.\n"
+#~ "\t\t\t\t\t    Bias must be > 0 , typical values would be between 0.75 and "
+#~ "1.5 and default is 1 (no bias).  A bias of 2 will cause the items to "
+#~ "\"look\" twice as recent to the algorithm.\n"
+#~ "\t\t\t\t\t    A bias of 0.5 to look twice as old.  Be carefull, a bias of "
+#~ "2 will statistically cause the \n"
+#~ "\t\t\t\t\t  feed to have MORE than twice as many items displayed. "
+
+#~ msgid "No"
+#~ msgstr "N&atilde;o"
+
+#~ msgid "By unique MACs"
+#~ msgstr "Por endere&ccedil;os MAC"
+
+#~ msgid "By unique usernames"
+#~ msgstr "Por utilizadores"
+
+#~ msgid "Group connections ?"
+#~ msgstr "Agrupar conex&otilde;es ?"
+
+#~ msgid "Start of range ..."
+#~ msgstr "In&iacute;cio do per&iacute;odo ..."
+
+#~ msgid "Choose a range ..."
+#~ msgstr "Escolha o per&iacute;odo ..."
+
+#~ msgid "End of range ..."
+#~ msgstr "Fim do per&iacute;odo ..."
+
+#~ msgid "Cumulative registrations"
+#~ msgstr "Inscri&ccedil;&otilde;es cumulativas"
+
+#~ msgid "Number of unique Usernames:"
+#~ msgstr "N&uacute;mero de utilizadores ligados: "
+
+#~ msgid "Username: "
+#~ msgstr "Username: "
+
+#~ msgid ""
+#~ "The %s network currently has %s valid users, %s user(s) are currently "
+#~ "online"
+#~ msgstr ""
+#~ "A rede %s possui actualmente %s usernames v&aacute;lidos, %s usu&aacute;"
+#~ "rio(s) actualmente ligado(s)"
+
+#~ msgid "MAC adresses"
+#~ msgstr "Endere&ccedil;os MAC"
+
+#~ msgid "I already have an account:"
+#~ msgstr "J&aacute; possuo uma conta:"
+
+#~ msgid "Frequently asked questions"
+#~ msgstr "Perguntas frequentes (FAQ)"
+
+#~ msgid "Node content (login):"
+#~ msgstr "Conte&uacute;do do HotSpot (login):"
+
+#~ msgid "Node content (portal):"
+#~ msgstr "Conte&uacute;do do HotSpot (portal):"
+
+#~ msgid "Could not set existing user as tech officer"
+#~ msgstr ""
+#~ "Imposs&iacute;vel definir o username existente como oficial t&eacute;cnico"
+
+#~ msgid ""
+#~ "Unable to retrieve schema version. The database schema is too old to be "
+#~ "updated."
+#~ msgstr ""
+#~ "Imposs&iacute;vel recuperar a vers&atilde;o do esquema. O esquema da base "
+#~ "de dados &eacute; muito velho para ser actualizado."
+
+#~ msgid ""
+#~ "Will be replaced by the urlencoded node_id of the node\n"
+#~ "\t  where the content is displayed, or an empty string if there is no\n"
+#~ "\t  current node</td></tr>"
+#~ msgstr ""
+#~ "Ser&aacute; substituida pela url node_id do HotSpot\n"
+#~ "\t  onde o conte&uacute;do &eacute; exibido, ou uma string em branco se \n"
+#~ "\t  n&atilde;o existir um HotSpot actual</td></tr>"
+
+#~ msgid ""
+#~ "Note:  This is actually a list of how many new user's first connection "
+#~ "occured at each hotspot, taking report restrictions into account."
+#~ msgstr ""
+#~ "Nota:  Este &eacute; de fato uma lista das primeiras conex&otilde;es de "
+#~ "novos usernames que ocorreram em cada hotspot, levando em conta "
+#~ "restri&ccedil;&otilde;es de relat&oacute;rio."
+
+#~ msgid "Q:"
+#~ msgstr "P:"
+
+#~ msgid "A:"
+#~ msgstr "R:"
+
+#~ msgid "Status of the"
+#~ msgstr "Estado do"
+
+#~ msgid "Hotspots (Get this list as a <a href='?format=RSS'>RSS feed</a>)"
+#~ msgstr ""
+#~ "Hotspots (Obter esta lista como uma <a href='?format=RSS'>fonte RSS</a>)"
+
+#~ msgid "h"
+#~ msgstr "h"
+
+#~ msgid "min"
+#~ msgstr "min"
+
+#~ msgid "addSourceFeed(): url is empty!"
+#~ msgstr "addSourceFeed(): url em branco!"
+
+#~ msgid "computePublicationInterval(): Missing feed!"
+#~ msgstr "computePublicationInterval(): Fonte ausente!"
+
+#~ msgid "computePublicationInterval(): uasort() failed"
+#~ msgstr "computePublicationInterval(): uasort() falhou"
+
+#~ msgid "get_rss_info(): Feed missing"
+#~ msgstr "get_rss_info(): Fonte ausente"
+
+#~ msgid "get_rss_info(): uasort() failed!"
+#~ msgstr "get_rss_info(): uasort() falhou!"
+
+#~ msgid "Source: "
+#~ msgstr "Origem: "
+
+#~ msgid "Today"
+#~ msgstr "Hoje"
+
+#~ msgid "owner"
+#~ msgstr "dono"
+
+#~ msgid "technical officer"
+#~ msgstr "oficial t&eacute;cnico"
+
+#~ msgid "Select existing content"
+#~ msgstr "Selecionar conteudo existente"
+
+#~ msgid "Please inform us of any problem or service interruption at: %s"
+#~ msgstr ""
+#~ "Por favor informe-nos de qualquer problema ou interrup&ccedil;&atilde;o "
+#~ "do servi&ccedil;o em: %s"
+
+#~ msgid "Node content (login)"
+#~ msgstr "Conte&uacute;do do HotSpot (login)"
+
+#~ msgid "Node content (portal)"
+#~ msgstr "Conte&uacute;do do HotSpot (portal)"
+
+#~ msgid ""
+#~ "Server::getDefaultServer: Fatal error: Unable to find the default server!"
+#~ msgstr ""
+#~ "Server::getDefaultServer: Erro fatal: Nao foi possivel encontrar o "
+#~ "servidor padrao!"
+
+#~ msgid ""
+#~ "Server::getCurrentServer: Fatal error: Unable to find current server in "
+#~ "the database!"
+#~ msgstr ""
+#~ "Server::getCurrentServer: Erro fatal: Nao foi possivel encontrar o "
+#~ "servidor actual na base de dados!"
+
+#~ msgid "Server:"
+#~ msgstr "Servidor:"
+
+#~ msgid "Server::getSelectServerUI: Fatal error: No servers in the database!"
+#~ msgstr ""
+#~ "Server::getSelectServerUI: Erro fatal: Nenhum servidor na base de dados!"
+
+#~ msgid "Add a new server with ID"
+#~ msgstr "Adicionar um novo servidor com o ID"
+
+#~ msgid "Server ID"
+#~ msgstr "ID do servidor"
+
+#~ msgid "Server name"
+#~ msgstr "Nome do servidor"
+
+#~ msgid "Is this server the default server?"
+#~ msgstr "Este &eacute; o servidor padr&atilde;o?"
+
+#~ msgid ""
+#~ "Cannot delete default server, create another one and select it before "
+#~ "removing this one."
+#~ msgstr ""
+#~ "N&atilde;o &eacute; poss&iacute;vel apagar o servidor padr&atilde;o, crie "
+#~ "outro servidor e o selecione antes de apagar este."
+
+#~ msgid "Could not update real name."
+#~ msgstr "Imposs&iacute;vel actualizar nome."
+
+#~ msgid "Could not update website URL."
+#~ msgstr "Imposs&iacute;vel actualizar endere&ccedil;o do site web."
+
+#~ msgid "Could not update username visibility flag."
+#~ msgstr ""
+#~ "Imposs&iacute;vel actualizar informa&ccedil;&atilde;o de visibilidade do "
+#~ "username."
+
+#~ msgid "Nodes"
+#~ msgstr "HotSpots"
+
+#~ msgid "Add new Node"
+#~ msgstr "Adicionar novo HotSpot"
+
+#~ msgid "Networks"
+#~ msgstr "Redes"
+
+#~ msgid "Servers"
+#~ msgstr "Servidores"
+
+#~ msgid "Get this list as a RSS feed"
+#~ msgstr "Gerar uma fonte RSS com esta lista"
+
+#~ msgid "Telefone"
+#~ msgstr "Telefone"
+
+#~ msgid "Welcome at"
+#~ msgstr "Bem-vindo ao HotSpot"
+
+#~ msgid "The"
+#~ msgstr "A"
+
+#~ msgid "network currently has"
+#~ msgstr "actualmente possui"
+
+#~ msgid "valid"
+#~ msgstr "v&aacute;lido(s)"
+
+#~ msgid "user,"
+#~ msgstr "username,"
+
+#~ msgid "users,"
+#~ msgstr "usernames,"
+
+#~ msgid "user is"
+#~ msgstr "username &eacute;"
+
+#~ msgid "users are"
+#~ msgstr "username(s) est&atilde;o"
+
+#~ msgid "currently online"
+#~ msgstr "actualmente ligado(s)"
+
+#~ msgid "It currently has"
+#~ msgstr "actualmente possui"
+
+#~ msgid "deployed"
+#~ msgstr "implantado(s)"
+
+#~ msgid "hotspot,"
+#~ msgstr "hotspot,"
+
+#~ msgid "hotspots,"
+#~ msgstr "hotspots,"
+
+#~ msgid "hotspot is"
+#~ msgstr "hotspot est&aacute;"
+
+#~ msgid "hotspots are"
+#~ msgstr "hotspots est&atilde;o"
+
+#~ msgid "currently operational"
+#~ msgstr "actualmente operacional(ais)"
+
+#~ msgid "I already have an account"
+#~ msgstr "J&aacute; possuo uma conta"
+
+#~ msgid "Continue to your requested homepage"
+#~ msgstr "Continuar para a p&aacute;gina requisitada"
+
+#~ msgid "Your account has been granted"
+#~ msgstr "A sua conta foi activada"
+
+#~ msgid "minutes of access to retrieve your email and validate your account."
+#~ msgstr "minutos de acesso para recuperar o seu email e validar a sua conta."
+
+#~ msgid "Is persistent (reusable and read-only)?"
+#~ msgstr "&Eacute; persistente (reutiliz&aacute;vel e apenas de leitura)?"
+
+#~ msgid "The node %s could not be found in the database!"
+#~ msgstr "O HotSpot %s n&atilde;o foi encontrado na base de dados!"
+
+#~ msgid "Startpage"
+#~ msgstr "P&aacute;gina inicial"
+
+#~ msgid "Deployed Hotspots map"
+#~ msgstr "Mapa dos hotspots"
+
+#~ msgid "Deployed Hotspots status"
+#~ msgstr "Estado dos hotspots"
+
+#~ msgid "FAQ"
+#~ msgstr "FAQ"
+
+#~ msgid "Support"
+#~ msgstr "Suporte"
+
+#~ msgid "For Hotspot owners"
+#~ msgstr "Para donos de hotspots"
+
+#~ msgid "Impress"
+#~ msgstr "Imprimir"
+
+#~ msgid "Telefon"
+#~ msgstr "Telefone"
+
+#~ msgid "Deployed Hotspots status with coordinates"
+#~ msgstr "Estado dos hotspots, com coordenadas"
+
+#~ msgid "Search the web"
+#~ msgstr "Procurar na web"
+
+#~ msgid "Error while obtaingin your LDAP information."
+#~ msgstr "Erro ao obter sua informa&ccedil;&atilde;o LDAP."
+
+#~ msgid "Content from"
+#~ msgstr "Conte&uacute;do de"
+
+#~ msgid "You must login before you can change your password."
+#~ msgstr "Precisa se ligar antes de alterar a sua password."
+
+#~ msgid "Sorry, user %s does not exist !"
+#~ msgstr "O username %s n&atilde;o existe!"
+
+#~ msgid "The password for %s has been successfully changed."
+#~ msgstr "A password para %s foi alterada com sucesso."
+
+#~ msgid "Sorry, invalid change password request !"
+#~ msgstr ""
+#~ "A requisi&ccedil;&atilde;o de troca de password &eacute; inv&aacute;lida!"
+
+#~ msgid "%s %d display order and location"
+#~ msgstr "Mostrar ordem e localiza&ccedil;&atilde;o %s %d"
+
+#~ msgid ""
+#~ "Unable to retrieve the selected network, the %s REQUEST parameter does "
+#~ "not exist"
+#~ msgstr ""
+#~ "Imposs&iacute;vel selecionar esta rede, o par&acirc;metro de "
+#~ "requisi&ccedil;&atilde;o %s n&atilde;o existe"
+
+#~ msgid "Add existing content"
+#~ msgstr "Adicionar conte&uacute;do existente"
+
+#~ msgid "sponsor"
+#~ msgstr "patrocinador"
+
+#~ msgid "Preferences"
+#~ msgstr "Prefer&ecirc;ncias"
+
+#~ msgid "Use the Internet"
+#~ msgstr "Usar a Internet"
+
+#~ msgid "Get this list as a PDF file"
+#~ msgstr "Gerar PDF com esta lista"
+
+#~ msgid "Get this list for Google Earth"
+#~ msgstr "Gerar ficheiro <i>Google Earth</i>"
+
+#~ msgid "One hotspot is currently operationnal."
+#~ msgstr "Est&aacute; um HotSpot operacional."
+
+#~ msgid "%d hotspots are currently operationnal."
+#~ msgstr "Est&atilde;o %d HotSpots operacionais."
+
+#~ msgid ""
+#~ "Sorry, your %.0f minutes grace period to retrieve your email and validate "
+#~ "your account has now expired. You will have to connect to the internet "
+#~ "and validate your account from another location. For more help, please %s "
+#~ "click here %s."
+#~ msgstr ""
+#~ "Os %.0f minutos para valida&ccedil;&atilde;o da<br>sua conta expiraram."
+#~ "<br>Ter&aacute; que se ligar &agrave; Internet e <br>validar a sua conta "
+#~ "noutro local.<br>Se precisar de ajuda, por favor %s clique aqui %s."
+
+#~ msgid ""
+#~ "Because of one hotspot not being monitored we don't know if it is "
+#~ "currently operationnal."
+#~ msgstr ""
+#~ "N&atilde;o foi poss&iacute;vel saber o estado do HotSpot pois n&atilde;o "
+#~ "est&aacute; a ser monitorizado"
+
+#~ msgid "edit profile"
+#~ msgstr "editar"
Index: /branches/newtoken/wifidog/locale/bg/LC_MESSAGES/messages.po
===================================================================
--- /branches/newtoken/wifidog/locale/bg/LC_MESSAGES/messages.po	(revision 1397)
+++ /branches/newtoken/wifidog/locale/bg/LC_MESSAGES/messages.po	(revision 1397)
@@ -0,0 +1,5943 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-26 11:47-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../node_list.php:131 ../classes/Node.php:323 ../classes/Node.php:685
+msgid "Deployed"
+msgstr "В действие(внедрен)"
+
+#: ../node_list.php:132 ../classes/Node.php:324 ../classes/Node.php:686
+msgid "In planning"
+msgstr "В процес на планиране"
+
+#: ../node_list.php:132 ../classes/Node.php:325 ../classes/Node.php:687
+msgid "In testing"
+msgstr "В процес на тестване"
+
+#: ../node_list.php:132 ../classes/Node.php:326 ../classes/Node.php:688
+msgid "Non-Wifidog node"
+msgstr "Възел, различен от Wifidog"
+
+#: ../node_list.php:132 ../classes/Node.php:327 ../classes/Node.php:689
+msgid "Permanently closed"
+msgstr "Постоянно затворен"
+
+#: ../node_list.php:132 ../classes/Node.php:328 ../classes/Node.php:690
+msgid "Temporarily closed"
+msgstr "Временно затворен"
+
+#: ../node_list.php:173 ../classes/NodeLists/NodeListHTML.php:173
+msgid "All"
+msgstr ""
+
+#: ../node_list.php:173 ../hotspots_map.php:114
+#: ../classes/NodeLists/NodeListHTML.php:175
+msgid "Change network"
+msgstr "Смяна на мрежата"
+
+#: ../node_list.php:177 ../classes/NodeLists/NodeListHTML.php:176
+#: ../classes/NodeLists/NodeListHTML.php:221
+#, fuzzy
+msgid "All networks"
+msgstr "мрежа"
+
+#: ../validate.php:58
+msgid "No token specified!"
+msgstr "Няма уточнен признак!"
+
+#: ../validate.php:61
+msgid "No user ID specified!"
+msgstr "Няма уточнен ID на потребителя!"
+
+#: ../validate.php:66
+msgid "The validation token does not match the one in the database."
+msgstr "Ключът за активация не съвпада с този в базата данни."
+
+#: ../validate.php:69
+msgid "Your account has already been activated."
+msgstr "Вашият акаунт вече е активиран."
+
+#: ../validate.php:77
+msgid ""
+"Your account has been succesfully activated!\n"
+"\n"
+"You may now browse to a remote Internet address and take advantage of the "
+"free Internet access!\n"
+"\n"
+"If you get prompted for a login, enter the username and password you have "
+"just created."
+msgstr ""
+"Вашият акаунт бе успешно активиран! Сега можете да влезете в интернет и да "
+"се възползвате от безплатния интернет достъп! Ако ви се поиска потребителско "
+"име и парола, въведете тези, които току-що създадохте."
+
+#: ../lost_password.php:103 ../resend_validation.php:100 ../signup.php:197
+#: ../lost_username.php:101
+msgid "Sorry, this network does not exist !"
+msgstr "Съжалявам, тази мрежа не съществува!"
+
+#: ../lost_password.php:107
+msgid "Please specify a username or email address"
+msgstr "Моля уточнете потребителско име или и-мейл адрес"
+
+#: ../lost_password.php:117
+#, fuzzy
+msgid "Please specify EITHER your username or your email, not both"
+msgstr "Моля уточнете потребителско име или и-мейл адрес"
+
+#: ../lost_password.php:126
+#, fuzzy
+msgid "You need to specify your username or your email"
+msgstr "Вие трябва да уточните вашето потребителско име и парола"
+
+#: ../lost_password.php:136
+msgid "This username or email could not be found in our database"
+msgstr ""
+"Това потребителско име или и-мейл не може да бъдат намерени в нашата база "
+"данни"
+
+#: ../lost_password.php:139
+msgid "A new password has been emailed to you."
+msgstr "Нова парола ви бе изпратена по електронната поща."
+
+#: ../hotspots_map.php:97
+msgid ""
+"Unable to get the google API key, because I couldn't find a vhost matching "
+"the current hostname"
+msgstr ""
+
+#: ../hotspots_map.php:145
+msgid "Sorry, your browser does not support Google Maps."
+msgstr "Съжаляваме, но вашия браузър не поддържа Google Maps."
+
+#: ../hotspots_map.php:145 ../classes/StatisticReport/NodeStatus.php:190
+#: ../classes/StatisticReport/NetworkStatus.php:109
+msgid "Homepage"
+msgstr "Собствена интернет страница"
+
+#: ../hotspots_map.php:145
+msgid "Show me on the map"
+msgstr "Покажи ме на картата"
+
+#: ../hotspots_map.php:145 smarty.txt:41
+msgid "Loading, please wait..."
+msgstr "Зарежда се, моля изчакайте..."
+
+#: ../hotspots_map.php:159
+msgid "Hotspots status map"
+msgstr "Карта със състоянието на хотспотове"
+
+#: ../resend_validation.php:104
+msgid "Please specify a username"
+msgstr "Моля уточнете потребителско име"
+
+#: ../resend_validation.php:111
+msgid "This username could not be found in our database"
+msgstr "Това потребителско име не може да се намери в нашата база данни"
+
+#: ../resend_validation.php:116 ../signup.php:228
+msgid "An email with confirmation instructions was sent to your email address."
+msgstr "И-мейл с инструкции за потвърждение бе изпратен на вашия адрес"
+
+#: ../signup.php:81
+msgid "Username is required."
+msgstr "Нужно е потребитеслско име."
+
+#: ../signup.php:85
+msgid "Username contains invalid characters."
+msgstr "Потребителското име съдържа невалидни символи."
+
+#: ../signup.php:103
+msgid "A valid email address is required."
+msgstr "Нужен е валиден и-мейл адрес."
+
+#: ../signup.php:107
+msgid ""
+"The email address must be valid (i.e. user@domain.com). Please understand "
+"that we also black-listed various temporary-email-address providers."
+msgstr ""
+"Имейл адресът трябва да е валиден (напр. user@domain.com). Моля разберете, "
+"че също така си водим черен списък с различни доставчици на временни имейл "
+"адреси."
+
+#: ../signup.php:126
+msgid "A password of at least 6 characters is required."
+msgstr "Нужна е парола от поне 6 символа."
+
+#: ../signup.php:130
+#, fuzzy
+msgid ""
+"Password contains invalid characters.  Allowed characters are 0-9, a-z and A-"
+"Z"
+msgstr "Тази парола съдържа невалидни символи."
+
+#: ../signup.php:134
+msgid "You must type your password twice."
+msgstr "Трябва да въведете вашата парола два пъти."
+
+#: ../signup.php:138 ../classes/User.php:947
+msgid "Passwords do not match."
+msgstr "Паролите не съответстват."
+
+#: ../signup.php:142
+msgid "Password is too short, it must be 6 characters minimum."
+msgstr "Паролата е твърде къса, трябва да е минимум 6 символа."
+
+#: ../signup.php:201
+msgid "Sorry, this network does not accept new user registration !"
+msgstr "Съжалявам, тази мрежа не приема регистрацията на нови потребители!"
+
+#: ../signup.php:211
+msgid ""
+"Sorry, a user account is already associated to this username. Pick another "
+"one."
+msgstr ""
+"Съжалявам, вече има потребителски акаунт свързан с това потребителско име. "
+"Изберете друго име."
+
+#: ../signup.php:215
+msgid "Sorry, a user account is already associated to this email address."
+msgstr "Съжалявам, потребителски акаунт вече има за този и-мейл адрес."
+
+#: ../signup.php:229 ../portal/index.php:163
+#, php-format
+msgid ""
+"Your account has been granted %s minutes of access to retrieve your email "
+"and validate your account."
+msgstr ""
+"Вашия акаунт бе оторизиран с %s минути за достъп за извличане на вашия имейл "
+"и валидиране на вашия акаунт."
+
+#: ../signup.php:230
+msgid ""
+"You may now open a browser window or start your email client and go to any "
+"remote Internet address to obtain the validation email."
+msgstr ""
+"Сега можете да отворите нов прозорец на браузъра или да стартирате вашият "
+"имейл клиент и да посетите който и да е отдалечен интернет адрес, за да "
+"получите имейл за оторизация."
+
+#: ../lost_username.php:105
+msgid "Please specify an email address"
+msgstr "Моля уточнете и-мейл"
+
+#: ../lost_username.php:112
+msgid "This email could not be found in our database"
+msgstr "Този и-мейл не може да бъде открит в нашата база данни"
+
+#: ../lost_username.php:117
+msgid "Your username has been emailed to you."
+msgstr "Вашето потребителско име ви бе изпратено на и-мнейла."
+
+#: ../gw_message.php:61
+#, php-format
+msgid "You have failed to validate your account in %d minutes."
+msgstr "Вие не успяхте да валидирате вашия акаунт за %d минути."
+
+#: ../gw_message.php:62
+msgid "Please validate your account from somewhere else or create a new one."
+msgstr "Моля валидирайте вашия акаунт от друго място или създайте нов."
+
+#: ../gw_message.php:67
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:895
+#: ../classes/Statistics.php:376 ../classes/Statistics.php:379
+#: ../classes/Content.php:901 ../classes/Node.php:231 ../classes/Role.php:501
+msgid "Access denied!"
+msgstr "Достъпа е отказан!"
+
+#: ../gw_message.php:73
+#, php-format
+msgid ""
+"You have now been granted %d minutes of Internet access without being "
+"validated to go and activate your account."
+msgstr ""
+"Сега са ви предоставени %d минути на интернет достъп без да сте оторизирани "
+"в което време трябва да активирате вашия акаунт."
+
+#: ../gw_message.php:74
+#, php-format
+msgid ""
+"If you fail to validate your account in %d minutes, you will have to "
+"validate it from somewhere else."
+msgstr ""
+"Ако не успеете да потвърдите вашия акаунт след %d минути, вие ше трябва да "
+"го потвърдите някъде другаде."
+
+#: ../gw_message.php:75
+msgid ""
+"If you do not receive an email from our validation server in the next "
+"minute, perhaps you have made a typo in your email address, you might have "
+"to create another account."
+msgstr ""
+"Ако не получите имейл от нашия сървър за валидация в следващите минути, може "
+"би сте направили грешка при изписването на имейл адреса и ще трябва да "
+"създадете нов акаунт."
+
+#: ../gw_message.php:80
+msgid "Unknown message specified! (this is probably an error)"
+msgstr "Упоменато е неизвестно съобщение (това най-вероятно е грешка)"
+
+#: ../gw_message.php:85
+msgid "No message has been specified! (this is probably an error)"
+msgstr "Няма уточнено съобщение! (това вероятно е грешка)"
+
+#: ../config_available_locales.php:58
+msgid "French"
+msgstr "Френски език"
+
+#: ../config_available_locales.php:59
+msgid "English"
+msgstr "Английски език"
+
+#: ../config_available_locales.php:60
+msgid "German"
+msgstr "Немски език"
+
+#: ../config_available_locales.php:61
+msgid "Spanish"
+msgstr "Испански език"
+
+#: ../config_available_locales.php:62
+#, fuzzy
+msgid "Brazilian Portuguese"
+msgstr "Португалски език"
+
+#: ../config_available_locales.php:63
+msgid "Portuguese"
+msgstr "Португалски език"
+
+#: ../config_available_locales.php:64
+msgid "Japanese"
+msgstr "Японски език"
+
+#: ../config_available_locales.php:65
+msgid "Greek"
+msgstr ""
+
+#: ../config_available_locales.php:66
+msgid "Bulgarian"
+msgstr ""
+
+#: ../config_available_locales.php:67
+msgid "Swedish"
+msgstr ""
+
+#: ../config_available_locales.php:68
+msgid "Italian"
+msgstr ""
+
+#: ../config_available_locales.php:69
+msgid "Catalan"
+msgstr ""
+
+#: ../admin/generic_object_admin.php:80
+msgid "Sorry, the 'object_class' parameter must be specified"
+msgstr "Съжаляваме, параметъра \"object_class\" трябва да се уточни"
+
+#: ../admin/generic_object_admin.php:93
+#, php-format
+msgid "Create %s"
+msgstr "%s създаване"
+
+#: ../admin/generic_object_admin.php:94
+#, php-format
+msgid "Add %s"
+msgstr "%s прибавяне"
+
+#: ../admin/generic_object_admin.php:95
+#, php-format
+msgid "Create a new %s"
+msgstr "Създаване на нов %s"
+
+#: ../admin/generic_object_admin.php:96
+#, php-format
+msgid "Add a new %s"
+msgstr "Добавяне на нов %s"
+
+#: ../admin/generic_object_admin.php:97
+#, php-format
+msgid "Show all %s"
+msgstr "Показване на всички %s"
+
+#: ../admin/generic_object_admin.php:98
+#, php-format
+msgid "Show only persistant %s"
+msgstr "Показване само на непроменливите %s"
+
+#: ../admin/generic_object_admin.php:99 ../classes/Network.php:2140
+#: ../classes/Node.php:1767
+#, php-format
+msgid "Edit %s"
+msgstr "Редактиране %s"
+
+#: ../admin/generic_object_admin.php:149
+msgid ""
+"Sorry, the object couldn't be created.  You probably didn't fill the form "
+"properly"
+msgstr ""
+"Съжаляваме, обекта не може да бъде създаден. Вероятно не сте попълнили "
+"формата правилно."
+
+#: ../admin/generic_object_admin.php:187
+msgid "Showing preview as it would appear at "
+msgstr "Показване на преглед, така както би изглеждало на:"
+
+#: ../admin/generic_object_admin.php:202
+#: ../classes/StatisticReport/UserReport.php:182
+#: ../classes/StatisticReport/RegistrationLog.php:120
+#: ../classes/StatisticReport/MostPopularNodes.php:109
+#: ../classes/StatisticReport/UserRegistrationReport.php:131 smarty.txt:133
+msgid "Node"
+msgstr "Хотспот"
+
+#: ../admin/generic_object_admin.php:211 ../admin/generic_object_admin.php:414
+#: ../classes/Content/Picture/Picture.php:294
+msgid "Preview"
+msgstr "Преглед"
+
+#: ../admin/generic_object_admin.php:217 ../classes/Content.php:736
+#: ../classes/ProfileTemplate.php:393
+msgid "Edit"
+msgstr "Редактирай"
+
+#: ../admin/generic_object_admin.php:224 ../admin/generic_object_admin.php:246
+msgid "Object successfully deleted"
+msgstr "Обекта бе изтрит успешно."
+
+#: ../admin/generic_object_admin.php:226 ../admin/generic_object_admin.php:249
+msgid "Deletion failed, error was: "
+msgstr "Изтриването бе неуспешно, грешката беше: "
+
+#: ../admin/generic_object_admin.php:383
+msgid "Sorry, the 'object_id' parameter must be specified"
+msgstr "Съжаляваме, трябва да се уточни параметъра \"object_id\""
+
+#: ../admin/generic_object_admin.php:399
+msgid "Save"
+msgstr "Запази"
+
+#: ../admin/generic_object_admin.php:404 ../admin/generic_object_admin.php:424
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:204
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:228
+#: ../classes/Content/RssAggregator/RssAggregator.php:620
+#: ../classes/Content.php:955
+msgid "Delete"
+msgstr "Изтрий"
+
+#: ../admin/generic_object_admin.php:449
+msgid "Generic object editor"
+msgstr "Редактор на родов обект"
+
+#: ../admin/import_user_database.php:66
+msgid "NoCat user database import"
+msgstr "Вмъкване на NoCat-потребителска база данни"
+
+#: ../admin/import_user_database.php:72
+msgid "Please select the NoCat passwd file you want to import."
+msgstr "Моля изберете файла с NoCat парола, който желаете да вмъкнете."
+
+#: ../admin/import_user_database.php:76
+msgid ""
+"Accept users with no email addresses (Normally, NoCat usernames are expected "
+"to be the user's email address, and the username is generated from the "
+"prefix."
+msgstr ""
+"Приемане на потребители без електронни пощенски адреси (Обикновено "
+"потребителски имена, неспадащи към определена категория се иска да са с "
+"електронни пощенски адреси на потребителя, а потребителското име се генерира "
+"от представката."
+
+#: ../admin/import_user_database.php:78
+msgid "Upload file"
+msgstr "Качване на файл"
+
+#: ../admin/import_user_database.php:81
+msgid ""
+"I am sure I want to import (Otherwise, the import will only be simulated)."
+msgstr ""
+"Сигурен съм, че искам да вмъквам (В противен случай вмъкването няма да се "
+"симулира)"
+
+#: ../admin/import_user_database.php:175
+msgid "Sorry, a user account is already associated to the email address: "
+msgstr "Съжаляваме, потребителски акаунт вече е асоцииран с имейл адреса: "
+
+#: ../admin/import_user_database.php:181
+msgid "Sorry, the user must have a email address."
+msgstr "Съжаляваме, но потребителя трябва да има електронен пощенски адрес."
+
+#: ../admin/import_user_database.php:190
+msgid "Sorry, a user account already exists with the username: "
+msgstr ""
+"Съжаляваме, потребителски акаунт вече съществува с това потребителско име: "
+
+#: ../admin/import_user_database.php:211
+msgid "SQL error on: "
+msgstr "SQL грешка при: "
+
+#: ../admin/import_user_database.php:217
+msgid "Report"
+msgstr "Доклад"
+
+#: ../admin/stats.php:66
+msgid "Connections at"
+msgstr "Връзки при"
+
+#: ../admin/stats.php:72
+msgid "User information for"
+msgstr "Потребителска информация за"
+
+#: ../admin/stats.php:77
+msgid "Connections from MAC"
+msgstr "Връзки от MAC адреси"
+
+#: ../admin/stats.php:83
+msgid "Network information for"
+msgstr "Мрежова информация за "
+
+#: ../admin/stats.php:97
+msgid "Generate statistics"
+msgstr "Генериране на статистика"
+
+#: ../admin/user_log.php:113
+msgid "Internal error."
+msgstr "Вътрешна грешка."
+
+#: ../admin/user_log.php:121
+msgid "Find a user ID : "
+msgstr "Търсене на потребител: "
+
+#: ../admin/hotspot_location_map.php:59
+msgid "Hotspot location map"
+msgstr "Карта на хотспотове"
+
+#: ../admin/hotspot_location_map.php:70
+msgid ""
+"Click anywhere on the map to extract the GIS location, then click on the "
+"button to save the data."
+msgstr ""
+"Кликнете на която и да е точка на картата, за да извлечете глобалното "
+"местоположение, след което кликнете на бутона, за да запазите данните"
+
+#: ../admin/hotspot_location_map.php:72
+msgid "Use these coordinates"
+msgstr "Използвай тези координати"
+
+#: ../admin/hotspot_location_map.php:80
+msgid ""
+"Error:  You need to set the GIS coordinates of the center of your network"
+msgstr ""
+"Грешка: Трябва да нагласите координатите за глобална информационна система в "
+"центъра на вашата мрежа"
+
+#: ../admin/hotspot_location_map.php:124
+msgid "You need to set a node ID."
+msgstr "Трябва да настроите хотспот"
+
+#: ../cron/page.php:79
+msgid "Monitoring system"
+msgstr "Система за мониторинг"
+
+#: ../cron/page.php:82
+msgid "node"
+msgstr "хотспот"
+
+#: ../cron/page.php:84
+#, php-format
+msgid "Node %s (%s) has been down for %d minutes (since %s)"
+msgstr "Хотспот %s (%s) е за %d минути неактивен (от %s)"
+
+#: ../cron/page.php:86
+msgid "Success"
+msgstr ""
+
+#: ../cron/page.php:86
+msgid "Failed sending mail"
+msgstr ""
+
+#: ../cron/page.php:102
+msgid "No deployed nodes could not be found in the database"
+msgstr "Не може да се намерят действащи възли (хотспотове в базата данни."
+
+#: ../include/schema_validate.php:72
+msgid ""
+"I am unable to retrieve the schema version. Either the wifidog database "
+"hasn't been created yet, the postgresql server is down, or pg_hba.conf does "
+"not allow your web server to connect to the wifidog database."
+msgstr ""
+
+#: ../include/schema_validate.php:74
+msgid "Try running the"
+msgstr "Опитайте се да стартирате"
+
+#: ../include/schema_validate.php:74
+msgid "installation script"
+msgstr "инсталационен скрипт"
+
+#: ../include/schema_validate.php:106
+msgid ""
+"No user matches the default network, a new user admin/admin will be created. "
+"Change the password as soon as possible !"
+msgstr ""
+"На мрежата по подразбиране не съвпада със съществуващ потребител, ще бъде "
+"създаден нов потребител с администраторски права. Сменете паролата възможно "
+"най-скоро!"
+
+#: ../include/schema_validate.php:118
+msgid "Could not get a default network!"
+msgstr "Не може да се изведе мрежа по подразбиране!"
+
+#: ../include/schema_validate.php:150
+msgid "Trying to update the database schema."
+msgstr "Опитваме се да актуализираме схемата с база данни."
+
+#: ../include/schema_validate.php:155
+msgid ""
+"Unable to retrieve schema version.  The database schema is too old to be "
+"updated."
+msgstr ""
+"Не може да се изведе версията на схемата. Схемата с база данни е твърде "
+"стара, за да се актуализира."
+
+#: ../include/common.php:142
+msgid "Unused"
+msgstr "Неизползван"
+
+#: ../include/common.php:143
+msgid "In use"
+msgstr "В употреба"
+
+#: ../include/common.php:144
+msgid "Used"
+msgstr "Използван"
+
+#: ../login/index.php:211
+#, php-format
+msgid "Unable to generate token for user %s"
+msgstr "Не може да се генерира справка за потребител %s"
+
+#: ../login/index.php:261
+msgid "I'm having difficulties:"
+msgstr ""
+
+#: ../login/index.php:263 smarty.txt:47 smarty.txt:64 smarty.txt:75
+#: smarty.txt:99 smarty.txt:107
+msgid "I Forgot my username"
+msgstr "Забравих си  потребителското име.."
+
+#: ../login/index.php:264 smarty.txt:48 smarty.txt:65 smarty.txt:76
+#: smarty.txt:100 smarty.txt:108
+msgid "I Forgot my password"
+msgstr "Забравих си   паролата.."
+
+#: ../login/index.php:265 smarty.txt:49 smarty.txt:77 smarty.txt:101
+#: smarty.txt:109
+msgid "Re-send the validation email"
+msgstr "Повторно изпращане на имейл за валидация."
+
+#: ../login/index.php:271
+#, php-format
+msgid "%s login page for %s"
+msgstr "%s страница за влизане за %s"
+
+#: ../login/index.php:273
+msgid "Offsite login page"
+msgstr "Офсайт страница за влизане"
+
+#: ../login/index.php:282 ../portal/index.php:157
+msgid "Welcome to"
+msgstr "Добре дошли в"
+
+#: ../portal/index.php:97
+msgid "No Hotspot specified!"
+msgstr "Няма уточнен Хотспот!"
+
+#: ../portal/index.php:152
+#, php-format
+msgid "%s portal for %s"
+msgstr "%s портал за %s"
+
+#: ../portal/index.php:162
+msgid ""
+"You NEED to confirm your account.  An email with confirmation instructions "
+"was sent to your email address.  If you don't see it in your inbox, make "
+"sure to look in your spam folder."
+msgstr ""
+
+#: ../portal/index.php:224
+msgid "Show all available contents for this hotspot"
+msgstr "Покожи всичкото налично съдържание за този Хотспот"
+
+#: ../classes/StatisticGraph/RegistrationsPerMonth.php:62
+msgid "Number of validated user registration for the selected network(s)"
+msgstr "Брой на регистрациите за оторизирани потребители за избраната мрежа(и)"
+
+#: ../classes/StatisticGraph/RegistrationsCumulative.php:62
+msgid "Cumulative number of validated users for the selected network(s)"
+msgstr "Общ брой на оторизирани потребители за избраната мрежа(и)"
+
+#: ../classes/StatisticGraph/VisitsPerMonth.php:62
+msgid "Number of individual user visits per month"
+msgstr "Брой на индивидуални потребителски посещения на месец"
+
+#: ../classes/StatisticGraph/VisitsPerMonth.php:82
+#: ../classes/StatisticGraph/VisitsPerWeekday.php:82
+#: ../classes/StatisticReport/MostPopularNodes.php:135
+msgid ""
+"Note:  A visit is like counting connections, but only counting one "
+"connection per day for each user at a single node"
+msgstr ""
+"Бележка: Посещението е като да се броят връзките, но броене на само една "
+"връзка на ден за всеки потребител при един единствен хотспот"
+
+#: ../classes/StatisticGraph/VisitsPerWeekday.php:62
+msgid "Number of individual user visits per weekday"
+msgstr "Брой на индивидуални потребителски посещения в ден от седмицата"
+
+#: ../classes/StatisticGraph/ConnectionsPerHour.php:62
+msgid "Number of new connections opening per hour of the day"
+msgstr "Брой на нови връзки, отварящи се на час от деня"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:117
+#, fuzzy, php-format
+msgid "Fatal error:  Username cannot be empty"
+msgstr "Адреса не може да е празен!"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:132
+#: ../classes/Authenticators/AuthenticatorLDAP.php:257
+#: ../classes/Authenticators/AuthenticatorLDAP.php:267
+#: ../classes/Authenticators/AuthenticatorRadius.php:263
+#: ../classes/Authenticators/AuthenticatorRadius.php:283
+msgid "Login successfull"
+msgstr "Влизането е успешно"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:146
+msgid "Unknown username or email"
+msgstr "Непознато потребителско име или електронна поща."
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:148
+msgid "Incorrect password (Maybe you have CAPS LOCK on?)"
+msgstr "Неправилна парола (проверете дали са включени CAPS LOCK?)"
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:167
+#: ../classes/Authenticators/AuthenticatorLDAP.php:172
+msgid "Error while connecting to the LDAP server."
+msgstr "Грешка при свързването с LDAP сървъра."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:179
+msgid "Error while obtaining your LDAP information."
+msgstr "Грешка при получаване на вашата LDAP информация."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:185
+#: ../classes/Authenticators/AuthenticatorLDAP.php:191
+#: ../classes/Authenticators/AuthenticatorLDAP.php:197
+msgid "Error while obtaining your username or password from the LDAP server."
+msgstr ""
+"Грешка при извличането на вашето потребителско име или парола от LDAP "
+"сървъра."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:204
+msgid "Error in username or password."
+msgstr "Грешка в потребителското име или парола."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:211
+msgid "Error connecting to the LDAP Server."
+msgstr "Грешка при LDAP сървъра."
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:202
+msgid "Invalid RADIUS encryption method."
+msgstr "Невалиден метод за шифроване RADIUS ."
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:239
+msgid "Could not initiate PEAR RADIUS Auth class : "
+msgstr "Не може да се стартира автентикацията PEAR-RADIUS: "
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:247
+msgid "Failed to send authentication request to the RADIUS server. : "
+msgstr ""
+"Изпращането на искане за автентикация към сървъра на RADIUS бе неуспешно:"
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:288
+msgid "The RADIUS server rejected this username/password combination."
+msgstr "RADIUS сървъра отхвърли тази комбинация от потребителско име/парола."
+
+#: ../classes/StatisticReport/MostMobileUsers.php:65
+#, php-format
+msgid "%d most mobile users"
+msgstr "%d най-много мобилни потребители"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:97
+#: ../classes/StatisticReport/MostFrequentUsers.php:98
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:98
+msgid "User (username)"
+msgstr "Потребител (потребителско име)"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:99
+#: ../classes/StatisticReport/MostFrequentUsers.php:100
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:100
+msgid "User (MAC address)"
+msgstr "Потребител (MAC адрес)"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:101
+msgid "Nodes visited"
+msgstr "Посетени хотспотове"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:133
+#: ../classes/StatisticReport/UserReport.php:174
+#: ../classes/StatisticReport/MostFrequentUsers.php:133
+#: ../classes/StatisticReport/MostPopularNodes.php:142
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:136
+#: ../classes/StatisticReport/UserRegistrationReport.php:164
+msgid "No information found matching the report configuration"
+msgstr "Няма намерена информация съответстваща на отчетената конфигурация"
+
+#: ../classes/StatisticReport/NodeStatus.php:64
+msgid "Node status information"
+msgstr "Информация за състоянието на хотспота"
+
+#: ../classes/StatisticReport/NodeStatus.php:87
+msgid "Sorry, this report requires you to select individual nodes"
+msgstr ""
+"Съжаляваме, този доклад има нужда от уточняването на индивидуални хотспотове"
+
+#: ../classes/StatisticReport/NodeStatus.php:99
+#: ../classes/DependenciesList.php:137 smarty.txt:5
+msgid "Status"
+msgstr "Статус"
+
+#: ../classes/StatisticReport/NodeStatus.php:105
+msgid "WifiDog status"
+msgstr "WiFiDog статус"
+
+#: ../classes/StatisticReport/NodeStatus.php:110
+msgid "Last heartbeat"
+msgstr "Последen signal ot hotspot"
+
+#: ../classes/StatisticReport/NodeStatus.php:111
+#, php-format
+msgid "%s ago"
+msgstr "преди %s"
+
+#: ../classes/StatisticReport/NodeStatus.php:115
+msgid "WifiDog version"
+msgstr "WiFiDog версия"
+
+#: ../classes/StatisticReport/NodeStatus.php:119
+#, fuzzy
+msgid "WifiDog uptime"
+msgstr "WiFiDog статус"
+
+#: ../classes/StatisticReport/NodeStatus.php:123
+msgid "System uptime"
+msgstr ""
+
+#: ../classes/StatisticReport/NodeStatus.php:127
+msgid "System load"
+msgstr ""
+
+#: ../classes/StatisticReport/NodeStatus.php:131
+msgid "System free memory"
+msgstr ""
+
+#: ../classes/StatisticReport/NodeStatus.php:135
+msgid "IP Address"
+msgstr "IP адрес"
+
+#: ../classes/StatisticReport/NodeStatus.php:139
+msgid "Number of users online"
+msgstr "Брой потребители онлайн"
+
+#: ../classes/StatisticReport/NodeStatus.php:148
+#: ../classes/StatisticReport/UserReport.php:117 ../classes/Profile.php:357
+msgid "Profile"
+msgstr "Профил"
+
+#: ../classes/StatisticReport/NodeStatus.php:152
+#: ../classes/StatisticReport/NetworkStatus.php:99 ../classes/Node.php:1199
+#: ../classes/Node.php:1204 smarty.txt:8
+msgid "Name"
+msgstr "Име"
+
+#: ../classes/StatisticReport/NodeStatus.php:156
+msgid "Node ID"
+msgstr "Идентификационен номер на хотспота"
+
+#: ../classes/StatisticReport/NodeStatus.php:160 ../classes/Node.php:380
+msgid "Deployment Status"
+msgstr "Статус на разгръщане"
+
+#: ../classes/StatisticReport/NodeStatus.php:164
+msgid "Deployment date"
+msgstr "Дата на разгръщане"
+
+#: ../classes/StatisticReport/NodeStatus.php:168 ../classes/Content.php:925
+#: ../classes/Node.php:1223 ../classes/DependenciesList.php:175 smarty.txt:68
+msgid "Description"
+msgstr "Описание"
+
+#: ../classes/StatisticReport/NodeStatus.php:172
+#: ../classes/StatisticReport/UserReport.php:132 smarty.txt:129
+msgid "Network"
+msgstr "Мрежа"
+
+#: ../classes/StatisticReport/NodeStatus.php:176
+msgid "GIS Location"
+msgstr "GPS позиция"
+
+#: ../classes/StatisticReport/NodeStatus.php:181 ../classes/Network.php:1041
+#: smarty.txt:73
+msgid "Map"
+msgstr "Карта"
+
+#: ../classes/StatisticReport/NodeStatus.php:185
+msgid "NOT SET"
+msgstr "НЕ СА УТОЧНЕНИ"
+
+#: ../classes/StatisticReport/NodeStatus.php:194
+#: ../classes/NodeLists/NodeListRSS.php:324
+#: ../classes/NodeLists/NodeListPDF.php:1083
+#: ../classes/NodeLists/NodeListKML.php:238
+msgid "Address"
+msgstr "Адрес"
+
+#: ../classes/StatisticReport/NodeStatus.php:202
+#: ../classes/NodeLists/NodeListPDF.php:1083
+msgid "Telephone"
+msgstr "Телефон"
+
+#: ../classes/StatisticReport/NodeStatus.php:206
+#: ../classes/StatisticReport/UserReport.php:127
+#: ../classes/NodeLists/NodeListPDF.php:1083
+#: ../classes/NodeLists/NodeListKML.php:241
+msgid "Email"
+msgstr "Имейл"
+
+#: ../classes/StatisticReport/NodeStatus.php:210
+msgid "Transit Info"
+msgstr "Транзитна информация"
+
+#: ../classes/StatisticReport/NodeStatus.php:220 ../classes/User.php:1058
+#: ../classes/Node.php:1164 smarty.txt:16
+msgid "Statistics"
+msgstr "Статистика"
+
+#: ../classes/StatisticReport/NodeStatus.php:225
+msgid "Average visits per day"
+msgstr "Среден брой на посещенията на ден"
+
+#: ../classes/StatisticReport/NodeStatus.php:226
+#: ../classes/StatisticReport/NodeStatus.php:237
+msgid "(for the selected period)"
+msgstr "(за избрания период)"
+
+#: ../classes/StatisticReport/NodeStatus.php:231
+msgid "Traffic"
+msgstr "Трафик"
+
+#: ../classes/StatisticReport/NodeStatus.php:233
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:102
+msgid "Incoming"
+msgstr "Влизащ"
+
+#: ../classes/StatisticReport/NodeStatus.php:235
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:103
+msgid "Outgoing"
+msgstr "Излизащ"
+
+#: ../classes/StatisticReport/UserReport.php:64
+msgid "Individual user report"
+msgstr "Доклад за отделен потребител"
+
+#: ../classes/StatisticReport/UserReport.php:111 ../classes/User.php:259
+#, php-format
+msgid "User id: %s could not be found in the database"
+msgstr "ИН на потребителя: %s не може да се намери в базата данни"
+
+#: ../classes/StatisticReport/UserReport.php:122
+#: ../classes/StatisticReport/UserReport.php:284
+#: ../classes/StatisticReport/RegistrationLog.php:123
+#: ../classes/StatisticReport/ConnectionLog.php:115
+#: ../classes/StatisticReport/ConnectionLog.php:164 ../classes/User.php:810
+#: ../classes/User.php:815 ../classes/User.php:864 smarty.txt:128
+#: smarty.txt:134
+msgid "Username"
+msgstr "Потребителско име"
+
+#: ../classes/StatisticReport/UserReport.php:137
+msgid "Unique ID"
+msgstr "Уникален идентификационен номер"
+
+#: ../classes/StatisticReport/UserReport.php:142
+msgid "Member since"
+msgstr "Член от"
+
+#: ../classes/StatisticReport/UserReport.php:147 ../classes/User.php:852
+#: smarty.txt:131
+msgid "Account Status"
+msgstr "Статус на акаунта"
+
+#: ../classes/StatisticReport/UserReport.php:152
+msgid "Prefered Locale"
+msgstr "Предпочитан локален език"
+
+#: ../classes/StatisticReport/UserReport.php:165
+#, php-format
+msgid "%d Connections"
+msgstr "%d Връзки"
+
+#: ../classes/StatisticReport/UserReport.php:179
+msgid "Logged in"
+msgstr "Логнат в"
+
+#: ../classes/StatisticReport/UserReport.php:180
+#: ../classes/StatisticReport/ConnectionLog.php:167
+msgid "Time spent"
+msgstr "Прекарано време"
+
+#: ../classes/StatisticReport/UserReport.php:181
+msgid "Token status"
+msgstr "Статус на признака"
+
+#: ../classes/StatisticReport/UserReport.php:183
+msgid "IP"
+msgstr "IP адрес"
+
+#: ../classes/StatisticReport/UserReport.php:184
+msgid "D"
+msgstr "D"
+
+#: ../classes/StatisticReport/UserReport.php:185
+msgid "U"
+msgstr "U"
+
+#: ../classes/StatisticReport/UserReport.php:212
+msgid "N/A"
+msgstr "не е налично"
+
+#: ../classes/StatisticReport/UserReport.php:223
+#: ../classes/StatisticReport/RegistrationLog.php:162
+#: ../classes/StatisticReport/MostPopularNodes.php:131
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:104
+#: ../classes/StatisticReport/UserRegistrationReport.php:153
+msgid "Total"
+msgstr "Общо"
+
+#: ../classes/StatisticReport/UserReport.php:244
+#, php-format
+msgid "%d MAC addresses"
+msgstr "%d MAC адреси"
+
+#: ../classes/StatisticReport/UserReport.php:248
+#: ../classes/StatisticReport/ConnectionLog.php:165
+msgid "MAC"
+msgstr "MAC адрес"
+
+#: ../classes/StatisticReport/UserReport.php:249
+#: ../classes/StatisticReport/UserReport.php:285
+#: ../classes/StatisticReport/ContentReport.php:115
+msgid "Count"
+msgstr "Брой"
+
+#: ../classes/StatisticReport/UserReport.php:280
+#, php-format
+msgid "%d users"
+msgstr "%d потребители"
+
+#: ../classes/StatisticReport/MostFrequentUsers.php:66
+#, php-format
+msgid "%d most frequent users"
+msgstr "%d най-чести потребители"
+
+#: ../classes/StatisticReport/MostFrequentUsers.php:102
+msgid "Different days connected"
+msgstr "Свързан в различни дни"
+
+#: ../classes/StatisticReport/RegistrationLog.php:64
+msgid "Registration Log (New user's first connection)"
+msgstr "Лог на регистрация (Първо свързване на нов потребител)"
+
+#: ../classes/StatisticReport/RegistrationLog.php:116
+msgid "Users who signed up here"
+msgstr "Потребители, които са се записали тука"
+
+#: ../classes/StatisticReport/RegistrationLog.php:127
+msgid "MAC address"
+msgstr "MAC адрес"
+
+#: ../classes/StatisticReport/RegistrationLog.php:130
+msgid "Registration date"
+msgstr "Дата на регистрация"
+
+#: ../classes/StatisticReport/NetworkStatus.php:64
+msgid "Network status information"
+msgstr "Информация за състоянието на мрежата"
+
+#: ../classes/StatisticReport/NetworkStatus.php:87
+msgid "Sorry, this report requires you to select individual networks"
+msgstr "Съжаляваме, този доклад ви кара да изберете отделни мрежи"
+
+#: ../classes/StatisticReport/NetworkStatus.php:104
+#: ../classes/VirtualHost.php:603 ../classes/Server.php:246
+#: ../classes/Node.php:1210 ../classes/ProfileTemplate.php:512
+#: ../classes/Role.php:369
+msgid "Creation date"
+msgstr "Дата на създаване"
+
+#: ../classes/StatisticReport/NetworkStatus.php:114
+msgid "Tech support email"
+msgstr "Имейл за техническа поддръжка"
+
+#: ../classes/StatisticReport/NetworkStatus.php:119
+msgid "Validation grace time"
+msgstr "Гратисен период за оторизиране"
+
+#: ../classes/StatisticReport/NetworkStatus.php:124
+msgid "Validation email"
+msgstr "Имейл за оторизиране"
+
+#: ../classes/StatisticReport/NetworkStatus.php:129
+msgid "Allows multiple login"
+msgstr "Позволява множество влизания"
+
+#: ../classes/StatisticReport/NetworkStatus.php:134
+msgid "Splash only nodes allowed"
+msgstr "Само хотспотове от вида \"splash\" са позволени"
+
+#: ../classes/StatisticReport/NetworkStatus.php:139
+msgid "Custom portal redirect nodes allowed"
+msgstr "Портал с разрешени пренасочващи хотспотове"
+
+#: ../classes/StatisticReport/NetworkStatus.php:144
+msgid "Number of users"
+msgstr "Брой потребители"
+
+#: ../classes/StatisticReport/NetworkStatus.php:149
+msgid "Number of validated users"
+msgstr "Брой оторизирани потребители"
+
+#: ../classes/StatisticReport/NetworkStatus.php:154
+msgid "Number of users currently online"
+msgstr "Брой потребители, които в момента са онлайн"
+
+#: ../classes/StatisticReport/MostPopularNodes.php:65
+msgid "Most popular nodes, by visit"
+msgstr "Най-популярни хотспотове, по брой на посещенията"
+
+#: ../classes/StatisticReport/MostPopularNodes.php:110
+msgid "Visits"
+msgstr "Посещения"
+
+#: ../classes/StatisticReport/ConnectionLog.php:64
+msgid "Connection Log"
+msgstr "Лог на връзката"
+
+#: ../classes/StatisticReport/ConnectionLog.php:89
+#: ../classes/StatisticReport/AnonymisedDataExport.php:97
+#: ../classes/VirtualHost.php:403 ../classes/VirtualHost.php:735
+#: ../classes/ProfileTemplate.php:602 ../classes/ContentTypeFilter.php:254
+#: ../classes/ContentTypeFilter.php:439
+msgid "Access denied"
+msgstr "Достъпа е забранен"
+
+#: ../classes/StatisticReport/ConnectionLog.php:109
+msgid "Number of unique Users:"
+msgstr "Брой уникални потребители:"
+
+#: ../classes/StatisticReport/ConnectionLog.php:116
+msgid "MAC Count"
+msgstr "MAC числа"
+
+#: ../classes/StatisticReport/ConnectionLog.php:124
+msgid "Cx Count"
+msgstr "Cx числа"
+
+#: ../classes/StatisticReport/ConnectionLog.php:125
+msgid "Last seen"
+msgstr "Последно видян"
+
+#: ../classes/StatisticReport/ConnectionLog.php:159
+msgid "Number of non-unique connections:"
+msgstr "Брой неуникални връзки:"
+
+#: ../classes/StatisticReport/ConnectionLog.php:163
+msgid "Node name"
+msgstr "Име на хотспота"
+
+#: ../classes/StatisticReport/ConnectionLog.php:166
+msgid "Date"
+msgstr "Дата"
+
+#: ../classes/StatisticReport/ConnectionLog.php:192
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:119
+msgid "Unknown"
+msgstr "Неизвестно"
+
+#: ../classes/StatisticReport/ConnectionGraphs.php:62
+msgid "Graph on network use per hour, weekday and month"
+msgstr "График за натоварване  на мрежата  за час, ден и месец"
+
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:65
+#, php-format
+msgid "%d highest bandwidth consumers"
+msgstr "%d потребители с най-голям мрежови трафик"
+
+#: ../classes/StatisticReport/ContentReport.php:63
+msgid "Content display and clickthrough report"
+msgstr "Онагледяване на съдържанието и цялостен доклад"
+
+#: ../classes/StatisticReport/ContentReport.php:98
+msgid "Untitled Content"
+msgstr "Ненаименовано Съдържание"
+
+#: ../classes/StatisticReport/ContentReport.php:100
+msgid "Content report for:"
+msgstr "Тематичен доклад относно:"
+
+#: ../classes/StatisticReport/ContentReport.php:104
+msgid "Clickthrough"
+msgstr "Кликвания"
+
+#: ../classes/StatisticReport/ContentReport.php:105
+msgid "Prints"
+msgstr "Разпечатки"
+
+#: ../classes/StatisticReport/ContentReport.php:106
+msgid "Clickthrough/Prints"
+msgstr "Кликвания/Разпечатки"
+
+#: ../classes/StatisticReport/ContentReport.php:126
+msgid "First"
+msgstr "Първи"
+
+#: ../classes/StatisticReport/ContentReport.php:133
+msgid "Last"
+msgstr "Последен"
+
+#: ../classes/StatisticReport/ContentReport.php:141
+msgid "Rate"
+msgstr "Скорост"
+
+#: ../classes/StatisticReport/ContentReport.php:143
+#: ../classes/StatisticReport/ContentReport.php:149
+#, php-format
+msgid "%0.2f per day"
+msgstr "%0.2f на ден"
+
+#: ../classes/StatisticReport/ContentReport.php:157
+msgid "Unique users"
+msgstr "Уникални потребители"
+
+#: ../classes/StatisticReport/ContentReport.php:168
+msgid "Unique locations"
+msgstr "Уникални местоположения"
+
+#: ../classes/StatisticReport/ContentReport.php:203
+msgid "Content group elements report"
+msgstr "Доклад със съдържание за групови елементи"
+
+#: ../classes/StatisticReport/ContentReport.php:206
+msgid "Element # of prints"
+msgstr " Брой  разпечатки"
+
+#: ../classes/StatisticReport/ContentReport.php:207
+msgid "Displayed content report"
+msgstr "Доклад за показаното съдържание"
+
+#: ../classes/StatisticReport/ContentReport.php:233
+msgid ""
+"Note:  The statistics above include all the prints and clickthroughs of the "
+"displayed element, not just those resulting from it's display in this group."
+msgstr ""
+"Забележка: Горната статистика включва всички разпечатки и кликвания на "
+"показания елемент, не само тези, които се виждат в тази група."
+
+#: ../classes/StatisticReport/ContentReport.php:309
+msgid ""
+"Important note:  Currently, Report configuration options are ignored for "
+"this report."
+msgstr ""
+"Важна забележка: В момента, опциите за конфигурация на доклада са "
+"неизползваеми за този доклад."
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:62
+msgid "User registration report"
+msgstr "Доклад за потребителска регистрация"
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:94
+msgid "First connection per node"
+msgstr "Първо свързване на хотспот"
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:132
+msgid "# of new user first connection"
+msgstr "брой на първи свързвания от нови потребители"
+
+#: ../classes/StatisticReport/UserRegistrationReport.php:157
+msgid ""
+"Note:  This is actually a list of how many new user's first connection "
+"occured at each hotspot, taking report restrictions into account.  It "
+"includes non-validated users who successfully connected."
+msgstr ""
+"Бележка: Това всъщност е списък с колко на брой първи свързвания на нови "
+"потребители са се осъществили на всяка гореща точка, като се вземат в "
+"предвид ограниченията при даването на сведения. Включват се и не-потвърдени "
+"потребители, които успешно са се включили."
+
+#: ../classes/StatisticReport/AnonymisedDataExport.php:65
+msgid "Anonymised SQL data export (for academic research)"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:62
+msgid "Breakdown of how many users actually use the network"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:85
+msgid "User activity"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:94
+msgid "Last day"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:95
+msgid "Last week"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:96
+msgid "Last month"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:97
+msgid "Last 3 month"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:98
+msgid "Last 6 months"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:99
+msgid "Last year"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:100
+msgid "Ever"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:138
+#, php-format
+msgid "Activity report for the %d validated users"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:141
+#: ../classes/StatisticReport/ActiveUserReport.php:172
+msgid "Period"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:142
+#: ../classes/StatisticReport/ActiveUserReport.php:173
+msgid "# of users who used the network"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:169
+#, php-format
+msgid "Activity report for the %d non-validated users"
+msgstr ""
+
+#: ../classes/StatisticReport/ActiveUserReport.php:198
+msgid "warning:  This report does not count connections at Splash-Only nodes"
+msgstr ""
+
+#: ../classes/NodeLists/NodeListRSS.php:157
+#: ../classes/NodeLists/NodeListHTML.php:221
+msgid "Newest Hotspots"
+msgstr "Най-нови хотспотове"
+
+#: ../classes/NodeLists/NodeListRSS.php:169
+msgid "List of the most recent Hotspots opened by the network: "
+msgstr "Списък с най-актуалните хотспотов намиращи се в мрежата "
+
+#: ../classes/NodeLists/NodeListRSS.php:190
+msgid "Copyright "
+msgstr "Авторско право"
+
+#: ../classes/NodeLists/NodeListRSS.php:358
+msgid "See Map"
+msgstr "Вижте карта"
+
+#: ../classes/NodeLists/NodeListRSS.php:371
+msgid "Contact"
+msgstr "Контакт"
+
+#: ../classes/NodeLists/NodeListHTML.php:220
+msgid "Hotspot list"
+msgstr "Списък на хотспотове"
+
+#: ../classes/NodeLists/NodeListPDF.php:792
+msgid ""
+"To protect the server the PDF file has not been created, because the server "
+"is too busy right now!"
+msgstr ""
+"За да се предпази сървъра PDF файла не бе създаден, защото съръра е много "
+"зает точно сега!"
+
+#: ../classes/NodeLists/NodeListPDF.php:958
+#: ../classes/NodeLists/NodeListPDF.php:959
+#: ../classes/NodeLists/NodeListPDF.php:961
+#: ../classes/NodeLists/NodeListPDF.php:1039
+msgid "Hotspots"
+msgstr "Хотспотове"
+
+#: ../classes/NodeLists/NodeListPDF.php:1048
+msgid "street name"
+msgstr " Име на улицата"
+
+#: ../classes/NodeLists/NodeListPDF.php:1052
+msgid "postal code"
+msgstr "пощенски код"
+
+#: ../classes/NodeLists/NodeListPDF.php:1056
+msgid "city"
+msgstr "град"
+
+#: ../classes/NodeLists/NodeListPDF.php:1060
+msgid "name"
+msgstr "име"
+
+#: ../classes/NodeLists/NodeListPDF.php:1065
+#, php-format
+msgid "This list contains all Hotspots of %s sorted by %s."
+msgstr "Списъкът съдържа всички хотспотове на %s сортирани по %s."
+
+#: ../classes/NodeLists/NodeListPDF.php:1068
+#, php-format
+msgid "Number of Hotspots: %d"
+msgstr "Брой на хотспотове: %d"
+
+#: ../classes/NodeLists/NodeListPDF.php:1071
+#, php-format
+msgid "Last updated on: %s"
+msgstr "Последно актуализиран на: %s"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083
+msgid "Hotspot"
+msgstr "Хотспот"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1249
+msgid "Postal code"
+msgstr "Пощенски код"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1239
+msgid "City"
+msgstr "Град"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1244
+msgid "Province / State"
+msgstr "Провинция / Щат"
+
+#: ../classes/NodeLists/NodeListPDF.php:1083 ../classes/Node.php:1269
+msgid "Homepage URL"
+msgstr "Домашна страница"
+
+#: ../classes/NodeLists/NodeListPDF.php:1093
+msgid "PDF file cannot be created because the FPDF library is not installed!"
+msgstr ""
+"PDF файла не може да се създаде, защото библиотеката FPDF не е инсталирана!"
+
+#: ../classes/NodeLists/NodeListKML.php:240
+#: ../classes/Content/RssAggregator/RssAggregator.php:752
+msgid "URL"
+msgstr "Адрес"
+
+#: ../classes/Content/File/File.php:131
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:131
+#: ../classes/Content/IFrame/IFrame.php:89
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:92
+#: ../classes/Content/ContentGroup/ContentGroup.php:115
+#: ../classes/Content/Picture/Picture.php:103 ../classes/Content.php:124
+#: ../classes/Content.php:275
+msgid "The content with the following id could not be found in the database: "
+msgstr ""
+"Съдържанието със следния идентификатор  не може да бъде намерено в базата "
+"данни:"
+
+#: ../classes/Content/File/File.php:206
+msgid "File size exceeds limit specified in PHP.ini"
+msgstr "Размерът на файла надвишава границата разрешена в PHP.ini"
+
+#: ../classes/Content/File/File.php:210
+msgid "File size exceeds limit specified HTML form"
+msgstr "Размерът на файла надвишава границата разрешена в HTML формата"
+
+#: ../classes/Content/File/File.php:214
+msgid "File upload was interrupted"
+msgstr "Качването на файла бе прекъснато"
+
+#: ../classes/Content/File/File.php:218
+msgid "Missing temp folder"
+msgstr "Липсваща папка с временни файлове"
+
+#: ../classes/Content/File/File.php:496
+msgid "Upload a new file (Uploading a new one will replace any existing file)"
+msgstr ""
+"Качване на нов файл (Качването на нов файл ще замени всякакъв друг "
+"съществуващ файл)"
+
+#: ../classes/Content/File/File.php:505
+msgid "Remote file via URL"
+msgstr "Отдалечен файл през URL"
+
+#: ../classes/Content/File/File.php:522
+msgid "File URL"
+msgstr "Адрес"
+
+#: ../classes/Content/File/File.php:532
+msgid "Filename to display"
+msgstr "Име на файла за виждане"
+
+#: ../classes/Content/File/File.php:544
+msgid "MIME type"
+msgstr "MIME вид"
+
+#: ../classes/Content/File/File.php:553
+msgid "Locally stored file size"
+msgstr "Размер на файла съхранен на местния сървър"
+
+#: ../classes/Content/File/File.php:554 ../classes/Content/File/File.php:653
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:354
+msgid "KB"
+msgstr "kB"
+
+#: ../classes/Content/File/File.php:560
+msgid "Remote file size (Automatically converted from KB to Bytes)"
+msgstr ""
+"Размер на файла на отдалечен сървър (Автоматично превърнат от килобайти на "
+"байти)"
+
+#: ../classes/Content/File/File.php:569 ../classes/Content/File/File.php:660
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:354
+msgid "Download"
+msgstr "Даунлоуд"
+
+#: ../classes/Content/File/File.php:570
+msgid "Last update"
+msgstr "Последна актуализация"
+
+#: ../classes/Content/File/File.php:708
+msgid "Could not delete this file, since it is persistent"
+msgstr "Не може да се изтрие този файл, тъй като е със стаус \" непроменлив\""
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:198
+msgid "Illegal Flickr Photostream selection mode."
+msgstr "Неправилно избран режим на Flickr Photostream."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:238
+msgid "Illegal Flickr Photostream display mode."
+msgstr "Невалиден Flickr Photostream режим на виждане"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:441
+#, php-format
+msgid "%s: Options"
+msgstr "%s: Опции"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:448
+msgid "Flickr API key"
+msgstr "Ключ Flickr API"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:456
+msgid "Shared secret"
+msgstr "Обща тайна (shared secret)"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:464
+msgid "Photos display mode"
+msgstr "режим на дисплей под формата на фотоси"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:466
+msgid "Grid display"
+msgstr "Дисплей под формата на решетка"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:466
+msgid "Feature photo (last one)"
+msgstr "Особена снимка (последна)"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:466
+msgid "Feature photo + one at random"
+msgstr "Особена снимка + една случайна снимка"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:472
+msgid "Flick photo selection mode :"
+msgstr "Режим на избор Flick photo:"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:475
+msgid "Select by group"
+msgstr "Избор по група"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:475
+msgid "Select by tags"
+msgstr "Избор по тагове"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:475
+msgid "Select by user"
+msgstr "Избор по потребител"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:491
+msgid "Flickr User ID + Username"
+msgstr "Flickr потребител + потребителско име"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:495
+msgid "Reset Flickr User ID"
+msgstr "Пренастройване на Flickr потребител"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:502
+msgid "Flickr User E-mail"
+msgstr "Flickr потребителски имейл"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:518
+msgid "Group Photo Pool"
+msgstr "Общ набор от групови снимки"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:531
+msgid "Could not find any group photo pool."
+msgstr "Не може да се намери какъвто и да е общ набор от групови снимки"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:539
+msgid "Tags (comma-separated)"
+msgstr "Тагове (разделени със запетаи)"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:543
+msgid "Match any tag"
+msgstr "Съчетаване с който и да е таг"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:543
+msgid "Match all tags"
+msgstr "Съчетаване с всички тагове"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:551
+msgid "Flickr photo display options"
+msgstr "Опции за виждане на Flickr снимки"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:555
+msgid "Show Flickr photo title ?"
+msgstr "Да се покаже ли заглавието на Titel снимка?"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:564
+msgid "Show Flickr tags ?"
+msgstr "Да се покажат ли Flickr тагове?"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:573
+msgid "Show Flickr photo description ?"
+msgstr "Да се покаже ли описанието на една Flickr снимка?"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:582
+msgid "Preferred size"
+msgstr "Предпочитан размер"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Squared 75x75"
+msgstr "Квадратен (75 x 75)"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Thumbnail 100x75"
+msgstr "Малко прозорче (100 x 75)"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Small 240x180"
+msgstr "Малък (240 x 180)"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Medium 500x375"
+msgstr "Среден (500 x 375)"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Large 1024x*"
+msgstr "Широк 1024x*"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:584
+msgid "Original size"
+msgstr "Оригинален размер"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:596
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:852
+#, fuzzy, php-format
+msgid "Unable to connect to Flickr API: %s"
+msgstr "Не може да се осъществи връзката с Flickr API"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:600
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:856
+msgid "Some of the request parameters provided to Flickr API are invalid."
+msgstr "Някои от исканите параметри предоставени на Flickr API са невалидни."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:604
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:861
+msgid "Unable to parse Flickr's response."
+msgstr "Не може да се направи разбор на отговора на Flickr."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:608
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:865
+msgid "Could not get content from Flickr : "
+msgstr "Не може да се изведе съдържанието от Flickr:"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:614
+msgid "YOU MUST SPECIFY AN API KEY BEFORE YOU CAN GO ON."
+msgstr "ТРЯБВА ДА УТОЧНИТЕ API КЛЮЧ ПРЕДИ ДА МОЖЕ ДА ПРОДЪЛЖИТЕ."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:620
+msgid "PEAR::Phlickr or PHP mudule CURL is not installed"
+msgstr ""
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:673
+msgid "Could not find a Flickr user with this e-mail."
+msgstr ""
+"Не може да се намери Flickr потребител със зададен имейл като критерий."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:689
+msgid "Could not complete successfully the saving procedure."
+msgstr "Не може да се завърши успешно процедурата по запазване."
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:847
+msgid "No Flickr content matches the request !"
+msgstr "Няма Flickr съдържание, което да отговаря на заявката !"
+
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:872
+msgid "PEAR::Phlickr is not installed"
+msgstr "PEAR::Phlickr не е инсталиран"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:119
+msgid "Actual URL after substitution"
+msgstr "Действителен адрес URL след заместването"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:122
+msgid ""
+"The IFrameRest content type is meant to allow the result of REST-style "
+"queries to remote systems to be displayed in a IFrame.  To that end, The "
+"following strings will be replaced in the URL:"
+msgstr ""
+"Типа на IFrameRest съдържанието е предназначен да позволи резултата на "
+"заявките от вида REST към отдалечени системи да бъде видян в IFrame. До "
+"самия край, Следните връзки ще бъдат заменени в адреса URL:"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:128
+msgid ""
+"Will be replaced by the urlencoded node_id of the node\n"
+"                    where the content is displayed, or an empty string if "
+"there is no\n"
+"                    current node</td></tr>"
+msgstr ""
+"Ще бъде заменено от криптираната точка\n"
+"там, където се вижда съдържанието, или ще има празна връзка, ако няма\n"
+"актуална точка</td></tr>"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:133
+msgid "Will be replaced by the user_id"
+msgstr "Ще се замени от идентификационния номер на потребителя"
+
+#: ../classes/Content/IFrameRest/IFrameRest.php:137
+msgid ""
+"will be replaced by a ISO-8601 timestamp of the date the user was last shown "
+"this content, or an empty string if the user was never presented with this "
+"IFrame."
+msgstr ""
+"ще се замени от ISO-8601 времеви щемпел на деня в който на потребителя му е "
+"показано това съдържание, или празна връзка ако потребителя никога не е бил "
+"представен с този IFrame."
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:102
+msgid "Subscribe to Pattern Language"
+msgstr "Заявка(абонамент) за  Езиков шаблон"
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:103
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:118
+msgid "Read narratives archives"
+msgstr "Четене на описателни архиви"
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:117
+msgid "Read my narrative"
+msgstr "Четене на мое описание"
+
+#: ../classes/Content/PatternLanguage/PatternLanguage.php:119
+msgid "Unsubscribe"
+msgstr "Изключване на абонамента"
+
+#: ../classes/Content/IFrame/IFrame.php:231
+msgid "Width (suggested width is 600 (pixels))"
+msgstr "Ширина (предполагаемата ширина е 600 пиксела)"
+
+#: ../classes/Content/IFrame/IFrame.php:240
+msgid "Height (suggested width is 400 (pixels))"
+msgstr "Височина (предполагаемата височина е 400 пиксела)"
+
+#: ../classes/Content/IFrame/IFrame.php:247
+msgid "HTML content URL"
+msgstr "Адресно съдържание на HTML"
+
+#: ../classes/Content/IFrame/IFrame.php:296
+msgid "Your browser does not support IFrames."
+msgstr "Вашият браузър не поддържа IFrames."
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:172
+msgid "Embedded content"
+msgstr "Обхванато съдържание"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:190
+msgid "Attributes"
+msgstr "Атрибути"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:192
+msgid ""
+"It is recommended to specify at least <b>width='x' height='y'</b> as "
+"attributes"
+msgstr ""
+"Препоръчително е да се уточнят поне <b>width='x' height='y'</b> като атрибути"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:198
+msgid "Parameters"
+msgstr "Параметри"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:212
+msgid ""
+"Fallback content (Can be another embedded content to create a fallback "
+"hierarchy)"
+msgstr ""
+"Резервно съдържание (Може да има още едно обхванато съдържание, за да се "
+"създаде резервна йерархия) "
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:261
+msgid "You MUST choose a File object or any of its siblings."
+msgstr "Вие трябва да изберете \"Файлов\" обект или някой от подобните"
+
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:397
+#: ../classes/Content/Langstring/Langstring.php:531
+#: ../classes/Content.php:1924
+msgid ""
+"Content is persistent (you must make it non persistent before you can delete "
+"it)"
+msgstr ""
+"Съдържанието е непроменливо (трябва да го направите променливо преди да може "
+"да го изтриете)"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:219
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:225
+msgid "Unable to insert new content group element into database!"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:291
+#, php-format
+msgid "%s %d display conditions"
+msgstr "%s %d условия на дисплей"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:301
+msgid "(Ignored if display type is random)"
+msgstr "(Не се взема предвид, ако вида на съдържанието е произволно)"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:307
+msgid ""
+"Content can be displayed at any date if no start or end date is specified.  "
+"Warning:  If you do not specify a specific time of day, midnight is assumed."
+msgstr ""
+"Съдържанието може да се види на която и да е дата, ако няма уточнена начална "
+"или крайна дата. Внимание: Ако не уточните конкретно време от деня, приема "
+"се полунощ по подразбиране."
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:308
+msgid "Only display from"
+msgstr "Покажи само от"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:334
+msgid "Only display at node(s):"
+msgstr "Покажи само при точка (и)"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:349
+#: ../classes/Content.php:738 ../classes/ProfileTemplate.php:395
+msgid "Remove"
+msgstr "Премахване"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:361
+msgid "Add new allowed node"
+msgstr "Прибавяне на нов позволен хотспот"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:364
+msgid ""
+"(Content can be displayed at ANY node unless one or more nodes are selected)"
+msgstr ""
+"(Съдържанието може да се покаже във ВСЯКА точка, освен ако една или повече "
+"точки не се изберат)"
+
+#: ../classes/Content/ContentGroup/ContentGroupElement.php:381
+#, php-format
+msgid "%s %d displayed content (%s)"
+msgstr "%s %d показано съдържание (%s)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:87
+#, fuzzy
+msgid "Pick content elements randomly"
+msgstr "Доклад със съдържание за групови елементи"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:88
+msgid ""
+"Pick content elements randomly, but not twice until all elements have been "
+"seen"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:89
+msgid "Pick content elements in sequential order"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:92
+msgid "Content always rotates"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:93
+msgid "Content rotates once per day"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:94
+msgid "Content rotates once per session"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:95
+msgid "Content rotates each time you change node"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:96
+msgid ""
+"Content never rotates.  Usefull when showing all elements simultaneously in "
+"a specific order."
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:99
+#, fuzzy
+msgid "Content can be shown more than once"
+msgstr ""
+"Може ли съдържанието да се покаже повече от един път на един и същ "
+"потребител?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:100
+msgid "Content can only be shown once"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:101
+#, fuzzy
+msgid "Content can be shown more than once, but not at the same node"
+msgstr ""
+"Може ли съдържанието да се покаже повече от един път на един и същ "
+"потребител?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:153
+msgid "Invalid content selection mode (must be part of CONTENT_ORDERING_MODES)"
+msgstr ""
+"Избран режим с невалидно съдържание (трябва да е част от "
+"CONTENT_ORDERING_MODES sein)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:182
+msgid ""
+"Invalid content selection mode (must be part of CONTENT_CHANGES_ON_MODES)"
+msgstr ""
+"Избран режим с невалидно съдържание (трябва да е част от "
+"CONTENT_CHANGES_ON_MODES)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:211
+msgid "Invalid content selection mode (must be part of ALLOW_REPEAT_MODES)"
+msgstr ""
+"Избран режим с невалидно съдържание (трябва да е част от ALLOW_REPEAT_MODES)"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:243
+#: ../classes/Content/RssAggregator/RssAggregator.php:198
+msgid "You must display at least one element"
+msgstr "Трябва да покажете поне един елемент"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:264
+#, php-format
+msgid "%s configuration"
+msgstr "%s конфигурация"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:268
+msgid "In what order should the content displayed?"
+msgstr "В каква последователност трябва да се покаже съдържанието?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:277
+msgid "When does the content rotate?"
+msgstr "Кога ще се завърти съдържанието?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:286
+msgid "Can content be shown more than once to the same user?"
+msgstr ""
+"Може ли съдържанието да се покаже повече от един път на един и същ "
+"потребител?"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:295
+msgid "Pick how many elements for each display?"
+msgstr ""
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:310
+#, php-format
+msgid "%s display element list"
+msgstr "%s списък с дисплей елементи"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:317
+msgid "Show expired group elements"
+msgstr "Показване на изтекли групови елементи"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:323
+msgid "Hide expired group elements"
+msgstr "Скриване на изтекли групови елементи"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:334
+#: ../classes/ProfileTemplate.php:526
+#, php-format
+msgid "%s %d"
+msgstr "%s %d"
+
+#: ../classes/Content/ContentGroup/ContentGroup.php:337
+#, php-format
+msgid "Delete %s %d"
+msgstr "%s %d изтриване"
+
+#: ../classes/Content/Langstring/Langstring.php:131
+#, php-format
+msgid "(Empty %s)"
+msgstr "(Празно %s)"
+
+#: ../classes/Content/Langstring/Langstring.php:215
+#: ../classes/Content/Langstring/Langstring.php:341
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:112
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:182 smarty.txt:22
+msgid "Language"
+msgstr "Език"
+
+#: ../classes/Content/Langstring/Langstring.php:228
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:145
+msgid "Add new string"
+msgstr "Прибавяне на нова връзка"
+
+#: ../classes/Content/Langstring/Langstring.php:285
+#: ../classes/Content/SimpleString/SimpleString.php:130
+msgid "Only these HTML tags are allowed : "
+msgstr "Само тези HTML тагове са позволени:"
+
+#: ../classes/Content/Langstring/Langstring.php:352
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:209
+msgid "Delete string"
+msgstr "Изтриване на връзка"
+
+#: ../classes/Content/Langstring/Langstring.php:549
+#: ../classes/Content.php:1958
+msgid "Access denied (not owner of content)"
+msgstr "Достъпа е забранен (не сте собственик на съдържанието)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:114
+msgid ""
+"The RssAggregator content with the following id could not be found in the "
+"database: "
+msgstr ""
+"Съдържанието RssAggregator със следните идентификационни номера не може да "
+"се намери в базата данни:"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:417
+msgid "The maximum age must be a positive integer or null"
+msgstr "Максималната възраст трябва да е положително цяло число или нула"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:503
+msgid "Total number of items to display (from all feeds)"
+msgstr "Общия брой обекти за онагледяване (от всички форми)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:518
+msgid ""
+"How much bonus feeds that do not publish as often get over feed that publish "
+"more often.\n"
+"                                            The default is 0.75, with a "
+"typical range between 0 and 1.\n"
+"                                            At 0, you have a classic RSS "
+"aggregator, meaning the n most recent entries picked from all feeds\n"
+"                                            will be displayed. 1 is usually "
+"as high as you'll want to go:  Assuming that all feeds have \n"
+"                                            an homogenous internal "
+"distribution (ex:  one feed publishes exactly one entry a day, the\n"
+"                                            second once every two days, and "
+"the third once every three days), and you ask for 15 entries,\n"
+"                                            there will be 5 of each.  While "
+"that may not sound usefull, it still is, as the feed's distribution is\n"
+"                                            usually not homogenous."
+msgstr ""
+"Колко бонус форми, които не се публикуват толкова често, надвишават тези "
+"форми които се публикуват по-често.\n"
+"Стойността по подразбиране е 0.75, с обичаен диапазон между 0 и 1.\n"
+"При 0, имаме класически RSS агрегатор, което значи, че n-те най-скорошни "
+"влизания избрани от всички форми\n"
+"ще се видят. 1 обикновено е най-високата стойност: Имайки предвид, чеl\n"
+"едно хомогенно вътрешно разпределение (напр: една форма публикува точно едно "
+"записване на ден, \n"
+"второто ще е веднъж на всеки два дни, а третото ще е веднъж на всеки три "
+"дни) като в същото време искате 15 записвания,\n"
+"резултата ще е по 5 за всяко. Това може да не ви звучи като полезна идея, но "
+"то все още е, както при формата на дистрибуция, обикновено не хомогенен "
+"резултат."
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:526
+msgid "Algorithm Strength"
+msgstr "Сила на използвания алгоритъм"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:542
+msgid ""
+"Set the criteria that determines which feed items will be shown expanded by "
+"default."
+msgstr ""
+"Покажване на критерия, който ще определи кои полета ще се покажат по "
+"подразбиране."
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:543
+msgid "Feed item expansion criteria"
+msgstr "Подаващ номер за разширен  критерий"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:557
+msgid ""
+"Set in which order the feeds are displayed, and if items from all source "
+"should be merged together"
+msgstr ""
+"Настройте в каква последователност подхранващите механизми ще се показват, и "
+"дали обекти от всякакъв произход ще се обединяват"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:558
+msgid "Item ordering"
+msgstr "Подреждане на артикулите"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:572
+msgid "Display empty feeds?"
+msgstr "Показване на празни подхранващи механизми?"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:585
+msgid ""
+"Set the oldest entries (in seconds) you are willing to see.  Any entries "
+"older than this will not\n"
+"                                            be considered at all for "
+"display, even if it means that the configured number of items to be "
+"displayed isn't reached.\n"
+"                                            It's only usefull if all your "
+"feed publish very rarely, and you don't want very old entries to show up."
+msgstr ""
+"Нагласете най-старите записвания (в секунди), които искате да видите. Всички "
+"записвания по-стари от тези няма\n"
+"да бъдат счетени за показване дори, ако не се достигне указания брой "
+"влизания.\n"
+"Това е полезно само когато формата се пубикува много рядко, и не искате да "
+"се показват много стари влизания."
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:588
+msgid "Maximum age (seconds)"
+msgstr "Максимална възраст (в секунди)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:596
+msgid "seconds"
+msgstr "секунди"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:604
+msgid "Feeds:"
+msgstr "RSS форми:"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:629
+msgid ""
+"Add a new feed or pick one from the other feeds in the system "
+"(most_popular_first)"
+msgstr ""
+"Прибави нова форма или избери от другите в системата (първо_най-популярните)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:645
+#, php-format
+msgid "%s, used %d times"
+msgstr "%s, използвани %d пъти"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:651
+msgid "Type URL manually"
+msgstr "Въведете ръчно адреса"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:654
+#: ../classes/Content.php:545 ../classes/Content.php:967
+#: ../classes/ProfileTemplate.php:327 ../classes/ProfileTemplateField.php:137
+msgid "Add"
+msgstr "Прибавяне"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:755
+msgid ""
+"WARNING:  Either the feed couldn't be retrieved, or it couldn't be parsed.  "
+"Please double check the URL."
+msgstr ""
+"ВНИМАНИЕ: Или формата не може да се изведе, или не може да се направи "
+"разбор. Моля проверете пак адреса."
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:775
+#, php-format
+msgid "The feed publishes an item every %.2f day(s)"
+msgstr "Тази RSS форма публикува по един обект всеки %.2f ден(дни)"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:777
+msgid ""
+"WARNING:  This feed does not include the publication dates.\n"
+"                                                                                                                             The "
+"system needs to be able to compute approximate publication\n"
+"                                                                                                                             date "
+"for each entry, so the entry can be weighted against the\n"
+"                                                                                                                             others. "
+"In order for the aggregator to do a good job, you need\n"
+"                                                                                                                             to "
+"estimate fublication frequency of the items, in days.\n"
+"                                                                                                                             If "
+"unset, defaults to one day."
+msgstr ""
+"ВНИМАНИЕ: Тази форма не включва датите на публикация.\n"
+"                                                                                                                             Системата "
+"трябва да може да изчисли приблизителна дата на\n"
+"                                                                                                                             публикация "
+"на всяко влизане така, че влизанието да може да \n"
+"                                                                                                                             се "
+"съпостави с другите. За да може агрегатора да свърши добра работа, вие "
+"трябва да\n"
+"                                                                                                                             направите "
+"приблизителна оценка на честотата на публикуване на обектите, в дни.\n"
+"                                                                                                                             Ако "
+"не е указано, по подразбиране е взета стойността 1 ден."
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:803
+msgid ""
+"The bias to be given to the source by the selection algorithm.\n"
+"                                                                                    Bias "
+"must be > 0 , typical values would be between 0.75 and 1.5\n"
+"                                                                                    and "
+"default is 1 (no bias).  A bias of 2 will cause the items\n"
+"                                                                                    to "
+"look twice as recent to the algorithm. A bias of 0.5 to\n"
+"                                                                                    look "
+"twice as old. Be carefull, a bias of 2 will statistically\n"
+"                                                                                    cause "
+"the feed to have MORE than twice as many items displayed."
+msgstr ""
+"Отклонението трябва да се даде чрез селектирането на алгоритъм.\n"
+"Основата трябва да е > 0 , обичайни стойности биха били между 0.75 and 1.5\n"
+"а по подразбиране е 1 (няма отклонение).  Едно отклонение от 2 ще накара "
+"обектите\n"
+"да изглеждат два пъти по-актуални към алгоритъма. Едно отклонение от 0.5 да\n"
+"изглежда два пъти по-старо. Внимавайте, едно отклонение от 2 статистически "
+"ще\n"
+"накара формата да извлече ПОВЕЧЕ от два пъти броя на показаните обекти."
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:810
+msgid "Algorithm bias for this feed"
+msgstr "Алгоритъм за тази задача"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:854
+msgid "The bias must be a positive real number"
+msgstr "Отклонението трябва да бъде положително реално число"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:882
+msgid "The default publication must must be a positive integer or empty"
+msgstr ""
+"Публикацията по подразбиране трябва да е положително цяло число или нищо"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:904
+msgid "The URL cannot be empty!"
+msgstr "Адреса не може да е празен!"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:940
+msgid "See more"
+msgstr "Вижте още"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:940
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "-"
+msgstr "-"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:942
+#, php-format
+msgid "Could not get RSS feed: %s"
+msgstr "Не може да се извлече RSS форма: %s"
+
+#: ../classes/Content/RssAggregator/RssAggregator.php:948
+msgid "RSS support is disabled"
+msgstr "RSS поддръжката е неактивирана"
+
+#: ../classes/Content/HTMLeditor/HTMLeditor.php:227
+msgid "FCKeditor is not installed"
+msgstr "FCK editor не е инсталиран"
+
+#: ../classes/Content/Picture/Picture.php:272
+msgid "Hyperlink URL (leave empty if you don't need it)"
+msgstr "Хипервръзка URL (оставете празно, ако не ви е нужно)"
+
+#: ../classes/Content/Picture/Picture.php:280
+msgid "Width (leave empty if you want to keep original width)"
+msgstr "Ширина (оставете празно, ако искате да запазите първоначалната ширина)"
+
+#: ../classes/Content/Picture/Picture.php:287
+msgid "Height (leave empty if you want to keep original height)"
+msgstr ""
+"Височина (оставете празно, ако искате да запазите първоначалната височинаl)"
+
+#: ../classes/Content/Stylesheet/Stylesheet.php:106
+msgid ""
+"Hints:  Note that the order in which Stylesheets are assigned relative to "
+"other content doesn't matter (except relative to other Stylesheets).  "
+"Stylesheets will be linked to the page in the order they are assigned, but "
+"always after the base stylesheet and network theme pack (if applicable).  "
+"They must be written as patches to those stylesheets."
+msgstr ""
+"Кратки съвети: Отбележете, че реда в който \"Стилизирани листове\" се "
+"определят в съответсвтие с друго съдържание не от значение (освен ако не са "
+"свързани с други \"Стилизирани листове\"). \"Стилизирани листове\" ше бъдат "
+"свързани към страницата в реда в който са определени, но винаги след "
+"основния \"Стилизиран лист\" и мрежовия тематичен пакет (ако е приложимо). "
+"Те трябва да са написани като пачове на тези \"Стилизирани листове\"."
+
+#: ../classes/Content/SmartyTemplate/SmartyTemplate.php:85
+#, php-format
+msgid ""
+"To list the available Smarty variables, put %s in the input field, save and "
+"then click preview"
+msgstr ""
+
+#: ../classes/Content/SmartyTemplate/SmartyTemplate.php:86
+#, php-format
+msgid "There are also a few custom Smarty modifiers available: %s"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:82
+msgid "300x250 - IAB Medium Rectangle"
+msgstr "300x250 - IAB Среден правоъгълник"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:83
+msgid "250x250 - IAB Square Pop-Up"
+msgstr "250x250 - IAB Показващ се квадрат"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:84
+msgid "240x400 - IAB Vertical Rectangle"
+msgstr "240x400 - IAB Вертикален правоъгълник"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:85
+msgid "336x280 - IAB Large Rectangle"
+msgstr "336x280 - IAB Голям правоъгълник"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:86
+msgid "180x150 - IAB Rectangle"
+msgstr "180x150 - IAB Правоъгълник"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:88
+msgid "468x60  - IAB Full Banner"
+msgstr "468x60  - IAB Пълен флаг"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:89
+msgid "234x60  - IAB Half Banner"
+msgstr "234x60  - IAB Половин флаг"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:90
+msgid "88x31   - IAB Micro Bar"
+msgstr "88x31   - IAB Микро флаг"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:91
+msgid "120x90  - IAB Button 1"
+msgstr "120x90  - IAB Бутон 1"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:92
+msgid "120x60  - IAB Button 2"
+msgstr "120x60  - IAB Бутон 2"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:93
+msgid "120x240 - IAB Vertical Banner"
+msgstr "120x240 - IAB Вертикален флаг"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:94
+msgid "125x125 - IAB Square Button"
+msgstr "125x125 - IAB Квадратен бутон"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:95
+msgid "728x90  - IAB Leaderboard"
+msgstr "728x90  - IAB Водещ борд"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:97
+msgid "160x600 - IAB Wide Skyscraper"
+msgstr "160x600 - IAB Широк небостъргач"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:98
+msgid "120x600 - IAB Skyscraper"
+msgstr "120x600 - IAB Небостъргач"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:99
+msgid "300x600 - IAB Half Page Ad"
+msgstr "300x600 - IAB Реклама на половин страница"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:128
+msgid "Maximum display size"
+msgstr "Максимален размер на дисплей"
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:131
+msgid "Use the values below for width and height"
+msgstr "Използвайте стойностите дадени по-долу за широчина и височина."
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:137
+msgid "Width"
+msgstr ""
+
+#: ../classes/Content/BannerAdGroup/BannerAdGroup.php:146
+msgid "Height"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:240
+msgid "Shout button 'onclick=' value (optionnal):"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:247
+#, php-format
+msgid ""
+"Note that the onclick parameter will appear inside double quotes in html.  "
+"They must be properly encoded fot that context.  You can access the shout "
+"text in Javascript with: %s"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:251 ../classes/Content.php:1553
+#: ../classes/Content.php:1572 ../classes/Content.php:1589
+#: ../classes/Content.php:1606 ../classes/Role.php:359
+#: ../classes/ProfileTemplateField.php:444
+#: ../classes/ProfileTemplateField.php:462
+#, php-format
+msgid "Delete %s (%s)"
+msgstr "%s изтриване (%s)"
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:251
+msgid "onclick parameter"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:330
+msgid "Shout!"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:335
+msgid "Sorry, you must be at a hotspot to use the shoutbox"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:346
+#, php-format
+msgid "Last %d messages:"
+msgstr ""
+
+#: ../classes/Content/ShoutBox/ShoutBox.php:372
+msgid "Sorry, I am unable to determine your current node"
+msgstr ""
+
+#: ../classes/Content/Avatar/Avatar.php:103
+msgid ""
+"Unable to process image (GD probably doesn't have support for it enabled)"
+msgstr ""
+
+#: ../classes/Content/HyperLink/HyperLink.php:95
+msgid "Warning: the URL is invalid!"
+msgstr ""
+
+#: ../classes/Content/HyperLink/HyperLink.php:117
+msgid "(invalid URL)"
+msgstr ""
+
+#: ../classes/Content/UIUserList/UIUserList.php:88
+msgid ""
+"This content type will display a list of online users at the current hotspot."
+msgstr ""
+
+#: ../classes/Content/UIUserList/UIUserList.php:152
+msgid "The online user list must be viewed at a specific node"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:87
+msgid ""
+"This content type will display a a graph of the user's remaining bandwidth "
+"according to dyabuse control rules."
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+#, fuzzy
+msgid "B"
+msgstr "kB"
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "kB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "MB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "GB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "TB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "PB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "EB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "ZB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:94
+msgid "YB"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:118
+#, php-format
+msgid ""
+"During the last %s period, you transfered %s / %s and were connected %s / %s "
+"at this node.  Throughout the network, you transfered %s / %s and were "
+"connected %s / %s"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:121
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:123
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:125
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:127
+msgid "Unlimited"
+msgstr ""
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:122
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:126
+#, fuzzy
+msgid "None"
+msgstr "Хотспот"
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:132
+#, fuzzy
+msgid "Abuse control is currently disabled"
+msgstr "В момента вашия акаунт е валиден."
+
+#: ../classes/Content/UIAllowedBandwidth/UIAllowedBandwidth.php:136
+msgid "Unable to retrieve node specific restrictions (you are not at a node)"
+msgstr ""
+
+#: ../classes/VirtualHost.php:162
+msgid "Server::getAllServers: Fatal error: No servers in the database!"
+msgstr "Сървър::getAllServers: Фатална грешкаr: Няма сървъри в базата данни!"
+
+#: ../classes/VirtualHost.php:262 ../classes/Server.php:151
+msgid "Unable to insert the new server in the database!"
+msgstr "Не може да се въведе новият сървър в базата данни!"
+
+#: ../classes/VirtualHost.php:298
+msgid "Virtual host:"
+msgstr ""
+
+#: ../classes/VirtualHost.php:375
+msgid "Add a new virtual host for hostname"
+msgstr ""
+
+#: ../classes/VirtualHost.php:595
+msgid "Virtual hosts management"
+msgstr ""
+
+#: ../classes/VirtualHost.php:614
+msgid "Hostname"
+msgstr "Име на хоста"
+
+#: ../classes/VirtualHost.php:622
+msgid "Default network for this vhost"
+msgstr ""
+
+#: ../classes/VirtualHost.php:639
+msgid "Make this Virtual Host the server's default?"
+msgstr ""
+
+#: ../classes/VirtualHost.php:655
+msgid "Use SSL on this server?"
+msgstr "Използвате ли SSL на този сървър?"
+
+#: ../classes/VirtualHost.php:667
+msgid "Google public API key"
+msgstr "Обществен API ключ на Google"
+
+#: ../classes/VirtualHost.php:738
+msgid ""
+"Cannot delete default virtual host, create another one and select it before "
+"removing this one."
+msgstr ""
+
+#: ../classes/VirtualHost.php:743
+msgid "Could not delete server!"
+msgstr "Не може да се изтрие сървъра!"
+
+#: ../classes/VirtualHost.php:771
+msgid "Virtual Hosts"
+msgstr ""
+
+#: ../classes/Profile.php:206
+msgid "Unable to insert the new profile in the database!"
+msgstr ""
+
+#: ../classes/Profile.php:309
+msgid "Should this profile be publicly visible?"
+msgstr ""
+
+#: ../classes/Profile.php:311 ../classes/Network.php:1716
+#: ../classes/Network.php:1722 ../classes/Network.php:1728
+#: ../classes/Network.php:1753 ../classes/Node.php:1335
+#: ../classes/Node.php:1350
+msgid "Yes"
+msgstr "Да"
+
+#: ../classes/Profile.php:314
+msgid "Profile preferences"
+msgstr ""
+
+#: ../classes/Profile.php:355
+msgid "Profile fields"
+msgstr ""
+
+#: ../classes/Profile.php:423
+msgid "Sorry, this user has hidden his profile  temporarily."
+msgstr ""
+
+#: ../classes/Profile.php:446 ../classes/ProfileTemplateField.php:593
+#: ../classes/ProfileField.php:363
+msgid "Access denied (must have super admin access)"
+msgstr "Достъпа е отказан (трябва да имате достъп като супер администратор)"
+
+#: ../classes/Profile.php:451
+msgid "Could not delete Profile!"
+msgstr ""
+
+#: ../classes/Security.php:205
+#, php-format
+msgid "%s (%s) on  %s: %s"
+msgstr ""
+
+#: ../classes/Security.php:205
+msgid "Any"
+msgstr ""
+
+#: ../classes/Security.php:208
+msgid ""
+"Some (possibly all) of the following permission(s) you don't have are "
+"required to perform the operation your requested:"
+msgstr ""
+
+#: ../classes/FormSelectGenerator.php:103
+#: ../classes/FormSelectGenerator.php:112
+msgid " (Empty langstring, ID is displayed)"
+msgstr " (Празно текстово поле, ИН се вижда)"
+
+#: ../classes/User.php:169
+#, php-format
+msgid "There is no user with username %s"
+msgstr ""
+
+#: ../classes/User.php:280
+msgid "Guest"
+msgstr "Посетител"
+
+#: ../classes/User.php:323
+msgid "View this user's profile."
+msgstr ""
+
+#: ../classes/User.php:361
+#, php-format
+msgid "Sorry, the username %s is not available"
+msgstr "Съжаляваме, това потребителско име %s не е налично"
+
+#: ../classes/User.php:407
+msgid "Could not update email address."
+msgstr "Не е възможно да се актуализира вашия електронен пощенски адрес."
+
+#: ../classes/User.php:441
+msgid "Could not update username locale."
+msgstr "Не може да се актуализира локала на потребителското име "
+
+#: ../classes/User.php:463
+msgid "Could not update status."
+msgstr "Не може да се актуализира статуса."
+
+#: ../classes/User.php:484
+#, php-format
+msgid ""
+"Sorry, your %.0f minutes grace period to retrieve your email and validate "
+"your account has now expired. You will have to connect to the internet and "
+"validate your account from another location."
+msgstr ""
+
+#: ../classes/User.php:487
+msgid "Your account is currently valid."
+msgstr "В момента вашия акаунт е валиден."
+
+#: ../classes/User.php:491
+msgid "Sorry, your account is not valid: "
+msgstr "Съжаляваме, вашия акаунт не е валиден:"
+
+#: ../classes/User.php:599
+#, php-format
+msgid ""
+"During the last %s period, you transfered %s bytes throughout the network, "
+"which exceeds the %s bytes limit for the entire network."
+msgstr ""
+
+#: ../classes/User.php:602
+#, php-format
+msgid ""
+"During the last %s period, you transfered %s bytes at this node, which "
+"exceeds the %s bytes limit for this node."
+msgstr ""
+
+#: ../classes/User.php:605
+#, php-format
+msgid ""
+"During the last %s period, you were online for a duration of %s throughout "
+"the network, which exceeds the %s limit for the entire network."
+msgstr ""
+
+#: ../classes/User.php:608
+#, php-format
+msgid ""
+"During the last %s period, you were online for a duration of %s at this "
+"node, which exceeds the %s limit for this node."
+msgstr ""
+
+#: ../classes/User.php:660
+msgid "Password cannot be empty."
+msgstr ""
+
+#: ../classes/User.php:664
+msgid "Could not change user's password."
+msgstr "Не може да се спени паролата на потребителя."
+
+#: ../classes/User.php:680
+msgid "No users could not be found in the database"
+msgstr "Никакви потребители не могат да бъдат намерени в базата данни"
+
+#: ../classes/User.php:689 ../classes/User.php:707 ../classes/User.php:724
+msgid "Registration system"
+msgstr "Регистрационна система"
+
+#: ../classes/User.php:692
+msgid " lost username request"
+msgstr "изгубена е заявката за потребителско име"
+
+#: ../classes/User.php:693
+msgid ""
+"Hello,\n"
+"You have requested that the authentication server send you your username:\n"
+"Username: "
+msgstr ""
+"Здравейте,\n"
+"Вие подадохте заявка сървъра да ви предостави ваше потребителско име:\n"
+"Потребителско име: "
+
+#: ../classes/User.php:693 ../classes/User.php:728
+msgid ""
+"\n"
+"\n"
+"Have a nice day,\n"
+"The Team"
+msgstr ""
+"\n"
+"\n"
+"Лек ден,\n"
+"От екипа"
+
+#: ../classes/User.php:699
+msgid "The user is not in validation period."
+msgstr "Потребителят не се намира в период на валидация."
+
+#: ../classes/User.php:702
+msgid "The validation token is empty."
+msgstr "Потвърждението на валидацията е несъстоятелно."
+
+#: ../classes/User.php:710
+msgid " new user validation"
+msgstr "валидация на нов потребител"
+
+#: ../classes/User.php:712
+msgid ""
+"Hello,\n"
+"Please follow the link below to validate your account.\n"
+msgstr ""
+"Здравейте,\n"
+"Моля проследете линка долу, за да потвърдите вашия акаунт.\n"
+
+#: ../classes/User.php:712
+msgid ""
+"\n"
+"\n"
+"Thank you,\n"
+"The Team."
+msgstr ""
+"\n"
+"\n"
+"Благодарим,\n"
+"Екипът"
+
+#: ../classes/User.php:727
+msgid " new password request"
+msgstr "искане за нова парола"
+
+#: ../classes/User.php:728
+msgid ""
+"Hello,\n"
+"You have requested that the authentication server send you a new password:\n"
+"Username: "
+msgstr ""
+"Здравейте,\n"
+"Вие поискахте сървъра за валидация да ви изпрати нова парола:\n"
+"Потребителско име: "
+
+#: ../classes/User.php:728
+msgid ""
+"\n"
+"Password: "
+msgstr ""
+"\n"
+"Парола: "
+
+#: ../classes/User.php:848
+msgid "Get user statistics"
+msgstr ""
+
+#: ../classes/User.php:853
+msgid "Note that Error is for internal use only"
+msgstr ""
+
+#: ../classes/User.php:859
+msgid "Administrative options"
+msgstr ""
+
+#: ../classes/User.php:867
+msgid "Be carefull when changing this: it's the username you use to log in!"
+msgstr ""
+"Внимавайте когато променяте това: това е потребителското име, което "
+"използвате, за да се логнете!"
+
+#: ../classes/User.php:873
+msgid "Your current password"
+msgstr "Вашата актуална парола"
+
+#: ../classes/User.php:879
+msgid "Your new password"
+msgstr "Вашата нова парола"
+
+#: ../classes/User.php:884
+msgid "Your new password (again)"
+msgstr ""
+
+#: ../classes/User.php:889
+msgid "Change my password"
+msgstr "Промяна на моята парола"
+
+#: ../classes/User.php:891
+msgid "User preferences"
+msgstr ""
+
+#: ../classes/User.php:903
+msgid "Completely delete my public profile"
+msgstr ""
+
+#: ../classes/User.php:912
+msgid "Create my public profile"
+msgstr ""
+
+#: ../classes/User.php:944
+msgid "Wrong password."
+msgstr "Грешна парола."
+
+#: ../classes/User.php:1038
+msgid "Online Users"
+msgstr "Онлайн потребители"
+
+#: ../classes/User.php:1044
+msgid "Import NoCat user database"
+msgstr "Вмъкване на NoCat потребителска база данни"
+
+#: ../classes/User.php:1051
+msgid "User manager"
+msgstr ""
+
+#: ../classes/User.php:1063
+msgid "User administration"
+msgstr "Потребителкса администрация"
+
+#: ../classes/Network.php:124 ../classes/Network.php:265
+msgid "Network::getAllNetworks:  Fatal error: No networks in the database!"
+msgstr "Мрежа::Всички мрежи: Фатална грешка: Няма мрежи в базата данни!"
+
+#: ../classes/Network.php:201
+msgid "Unable to insert the new network in the database!"
+msgstr "Не е възможно да се вмъкне новата мрежа в базата данни!"
+
+#: ../classes/Network.php:276 ../classes/Network.php:282
+msgid "Network:"
+msgstr "Мрежа:"
+
+#: ../classes/Network.php:323
+msgid "Create a new network with ID"
+msgstr "Създаване на нова мрежа с ИН"
+
+#: ../classes/Network.php:737 ../classes/Statistics.php:124
+#: ../classes/Content.php:335 ../classes/NodeList.php:162
+msgid "Unable to open directory "
+msgstr "Не може да се отвори директорията"
+
+#: ../classes/Network.php:1041
+msgid "Satellite"
+msgstr "Сателит"
+
+#: ../classes/Network.php:1041
+msgid "Hybrid"
+msgstr "Хибрид"
+
+#: ../classes/Network.php:1629
+msgid "Network management"
+msgstr "Управление на мрежата"
+
+#: ../classes/Network.php:1635
+msgid "Network content"
+msgstr "мрежово съдържание"
+
+#: ../classes/Network.php:1646
+msgid "Network ID"
+msgstr "Идентификация на мрежата"
+
+#: ../classes/Network.php:1651
+msgid "Network name"
+msgstr "Име на мрежата"
+
+#: ../classes/Network.php:1656
+msgid "Network creation date"
+msgstr "Дата на създаване на мрежата"
+
+#: ../classes/Network.php:1661
+msgid "Network's web site"
+msgstr "Интернет адрес на мрежата"
+
+#: ../classes/Network.php:1666
+msgid "Technical support email"
+msgstr "Имейл за техническа поддръжка"
+
+#: ../classes/Network.php:1671
+msgid "Information about the network"
+msgstr "Информация за мрежата"
+
+#: ../classes/Network.php:1679
+msgid "Network authenticator class"
+msgstr "Валидиращ мрежов клас"
+
+#: ../classes/Network.php:1680
+msgid ""
+"The subclass of Authenticator to be used for user authentication. Example: "
+"AuthenticatorRadius"
+msgstr ""
+"Подкласа на валидатора трябва да се използва за автентикация на потребителя. "
+"Например: AuthenticatorRadius"
+
+#: ../classes/Network.php:1687
+msgid "Authenticator parameters"
+msgstr "Параметри на валидатора"
+
+#: ../classes/Network.php:1688
+#, fuzzy
+msgid ""
+"The explicit parameters to be passed to the authenticator. You MUST read the "
+"constructor documentation of your desired authenticator class (in wifidog/"
+"classes/Authenticators/) BEFORE you start playing with this.  Example: "
+"'my_network_id', '192.168.0.11', 1812, 1813, 'secret_key', 'CHAP_MD5'"
+msgstr ""
+"Изричните параметри ще се предадат на валидатора. Например: 'my_network_id', "
+"'192.168.0.11', 1812, 1813, 'secret_key', 'CHAP_MD5'"
+
+#: ../classes/Network.php:1693
+msgid "Network Authentication"
+msgstr "Валидация на мрежата"
+
+#: ../classes/Network.php:1701
+msgid "Selected theme pack for this network"
+msgstr "Селектиран тематичен пакет за тази мрежа"
+
+#: ../classes/Network.php:1706
+msgid "Network properties"
+msgstr "Свойства на мрежата"
+
+#: ../classes/Network.php:1714
+msgid "Splash-only nodes"
+msgstr "Само хотспотове от вида Splash(информационни, без регистрация)"
+
+#: ../classes/Network.php:1715
+msgid "Are nodes allowed to be set as splash-only (no login)?"
+msgstr ""
+"Позволено ли е на хотспотовете да бъдат настроени само като 'SPLASH\" (без "
+"задължително влизане)?"
+
+#: ../classes/Network.php:1720
+msgid "Portal page redirection"
+msgstr "Пренасочване към порталната страница"
+
+#: ../classes/Network.php:1721
+msgid ""
+"Are nodes allowed to redirect users to an arbitrary web page instead of the "
+"portal?"
+msgstr ""
+"Позволено ли е на хотспотовете да пренасочват потребителите към случайна "
+"интернет страница, вместо към портала?"
+
+#: ../classes/Network.php:1726 ../classes/Node.php:1348
+#, fuzzy
+msgid "Original URL redirection"
+msgstr "Пренасочване към порталната страница"
+
+#: ../classes/Network.php:1727
+#, fuzzy
+msgid ""
+"Are nodes allowed to redirect users to the web page they originally "
+"requested instead of the portal?"
+msgstr ""
+"Позволено ли е на хотспотовете да пренасочват потребителите към случайна "
+"интернет страница, вместо към портала?"
+
+#: ../classes/Network.php:1732
+msgid "Network's node properties"
+msgstr "Свойства на мрежовите точки"
+
+#: ../classes/Network.php:1740
+msgid "Validation grace period"
+msgstr "Период на отложена валидация"
+
+#: ../classes/Network.php:1741
+msgid ""
+"The length of the validation grace period in seconds.  A new user is granted "
+"Internet access for this period check his email and validate his account."
+msgstr ""
+"Времетраене на гратисния период за валидация в секунди. На новия потребител "
+"му се дава интернет достъп за времето през което да провери имейла си и "
+"потвърди акаунта си."
+
+#: ../classes/Network.php:1746
+msgid "This will be the from address of the validation email"
+msgstr "Това ще е обратния адрес на и-мейла за валидация"
+
+#: ../classes/Network.php:1751
+msgid "Multiple connections"
+msgstr "Множество връзки"
+
+#: ../classes/Network.php:1752
+msgid "Can an account be connected more than once at the same time?"
+msgstr "Може ли един акаунт да се свърже повече от веднъж в едно и също време?"
+
+#: ../classes/Network.php:1757
+msgid "Network's user verification"
+msgstr "Валидация на потребителя в мрежата"
+
+#: ../classes/Network.php:1767
+msgid "Abuse control window"
+msgstr ""
+
+#: ../classes/Network.php:1768
+msgid ""
+"The length of the window during which the user must not have exceeded the "
+"limits below.  Any valid postgresql interval expression is acceptable, "
+"typically '1 month' '1 week'.  A user who exceeds the limits will be denied "
+"access until his usage falls below the limits."
+msgstr ""
+
+#: ../classes/Network.php:1773
+msgid "Network max total bytes transfered"
+msgstr ""
+
+#: ../classes/Network.php:1774 ../classes/Network.php:1786
+msgid "Maximum data transfer during the abuse control window"
+msgstr ""
+
+#: ../classes/Network.php:1779
+#, fuzzy
+msgid "Network max connection duration"
+msgstr "Дата на създаване на мрежата"
+
+#: ../classes/Network.php:1780 ../classes/Network.php:1792
+msgid ""
+"Maximum connection duration during the abuse control window.  Any valid "
+"postgresql interval expression is acceptable, such as hh:mm:ss"
+msgstr ""
+
+#: ../classes/Network.php:1785
+msgid "Node max total bytes transfered"
+msgstr ""
+
+#: ../classes/Network.php:1791
+#, fuzzy
+msgid "Node max connection duration"
+msgstr "Конфигурация на хотспота"
+
+#: ../classes/Network.php:1797
+#, fuzzy
+msgid "You do not have access to edit these options"
+msgstr "(Вие нямате достъп, за да променяте тази част от съдържанието)"
+
+#: ../classes/Network.php:1800
+msgid "Dynamic abuse control"
+msgstr ""
+
+#: ../classes/Network.php:1813 ../classes/Server.php:281
+#: ../classes/Node.php:1362
+msgid "Access rights"
+msgstr "Права на достъп"
+
+#: ../classes/Network.php:1829
+msgid "Note that to be valid, all 3 values must be present."
+msgstr ""
+
+#: ../classes/Network.php:1830 ../classes/Node.php:1288
+msgid "Latitude"
+msgstr "Географска ширина"
+
+#: ../classes/Network.php:1831
+#, fuzzy
+msgid "Center latitude for the area covered by your wireless network"
+msgstr "Централна географска ширина на площта на вашата безжична мрежа"
+
+#: ../classes/Network.php:1835 ../classes/Node.php:1293
+msgid "Longitude"
+msgstr "Географска дължина"
+
+#: ../classes/Network.php:1836
+#, fuzzy
+msgid "Center longitude for the area covered by your wireless network"
+msgstr "Централна географска дължина на площта на вашата безжична мрежа"
+
+#: ../classes/Network.php:1840
+msgid "Zoomlevel"
+msgstr "Ниво на приближение"
+
+#: ../classes/Network.php:1841
+#, fuzzy
+msgid "Zoomlevel of the Google Map.  12 is a typical value."
+msgstr "Степен на приближение на Goggle Map за площта на вашата безжична мрежа"
+
+#: ../classes/Network.php:1845
+msgid "Map type"
+msgstr "Тип на картата"
+
+#: ../classes/Network.php:1846
+msgid "Default Google Map type for your the area of your wireless network"
+msgstr "Вид на Google Map по подразбиране за площта на вашата безжична мрежа"
+
+#: ../classes/Network.php:1851 ../classes/Node.php:1315
+msgid "GIS data"
+msgstr "Географска информация"
+
+#: ../classes/Network.php:1855
+msgid "Network profile templates"
+msgstr ""
+
+#: ../classes/Network.php:2106
+#, fuzzy
+msgid ""
+"Cannot delete default network, create another one and select it before you "
+"remove this one."
+msgstr ""
+"Не е възможно премахването на мрежата по подразбиране, създайте още една "
+"мрежа и я изберете преди да изтриете тази."
+
+#: ../classes/Network.php:2111
+msgid "Could not delete network!"
+msgstr "Не може да се премахне мрежата!"
+
+#: ../classes/Network.php:2147
+#, fuzzy, php-format
+msgid "Add a new network on this server"
+msgstr "Използвате ли SSL на този сървър?"
+
+#: ../classes/Network.php:2152
+msgid "Network administration"
+msgstr "Мрежова администрация"
+
+#: ../classes/Statistics.php:85
+msgid "Usernames"
+msgstr "Потребителски имена"
+
+#: ../classes/Statistics.php:86
+msgid "MAC addresses"
+msgstr "МАС адреси"
+
+#: ../classes/Statistics.php:152 ../classes/Statistics.php:156
+msgid "No restriction..."
+msgstr "Без ограничения..."
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "yesterday"
+msgstr "вчера"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "today"
+msgstr "днес"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "2 days ago"
+msgstr "преди 2 дни"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "3 days ago"
+msgstr "преди 3 дни"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "1 week ago"
+msgstr "преди 1 седмица"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "2 weeks ago"
+msgstr "преди 2 седмици"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "3 weeks ago"
+msgstr "преди 3 седмици"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "1 month ago"
+msgstr "преди 1 месец"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "2 months ago"
+msgstr "преди 2 месеца"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "6 months ago"
+msgstr "преди 6 месеца"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "1 year ago"
+msgstr "преди 1 година"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "Select from and to..."
+msgstr "Избери от и до..."
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "yesterday (whole day)"
+msgstr "вчера (целия ден)"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "today (whole day)"
+msgstr "днес (целия ден)"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "this month"
+msgstr "този месец"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "last month"
+msgstr "миналия месец"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "this year"
+msgstr "тази година"
+
+#: ../classes/Statistics.php:153 ../classes/Statistics.php:157
+msgid "forever"
+msgstr "завинаги"
+
+#: ../classes/Statistics.php:161
+msgid "From"
+msgstr "От"
+
+#: ../classes/Statistics.php:176
+msgid "To"
+msgstr "До"
+
+#: ../classes/Statistics.php:456
+msgid "Invalid parameter"
+msgstr "Невалиден параметър"
+
+#: ../classes/Statistics.php:494
+msgid "Username or MAC address, depending on selection above"
+msgstr ""
+"Потребителско име или МАС адрес, в зависимост от направения избор по-горе"
+
+#: ../classes/Statistics.php:590
+msgid "Report configuration"
+msgstr "Конфигурация на доклада"
+
+#: ../classes/Statistics.php:613
+msgid "Restrict the time range for which statistics will be computed"
+msgstr ""
+"Ограничаване на времевия диапазон за който статистиката ще се изчислява"
+
+#: ../classes/Statistics.php:621
+msgid "Restrict stats to the following nodes"
+msgstr "Ограничи статистиката за следните хотспотове"
+
+#: ../classes/Statistics.php:631
+msgid "Distinguish users by"
+msgstr "Разграничи потребителите чрез"
+
+#: ../classes/Statistics.php:640
+msgid "Restrict stats to the selected users"
+msgstr "Ограничи статистическите данни за избраните потребители"
+
+#: ../classes/Statistics.php:649
+msgid "Selected reports"
+msgstr "Избрани доклади"
+
+#: ../classes/AbstractDb.php:93
+msgid "It appears the postgresql module isn't loaded"
+msgstr ""
+
+#: ../classes/AbstractDb.php:99
+#, fuzzy, php-format
+msgid "Unable to connect to the database at %s"
+msgstr "Невъзможност за връзка с базата данни на %s"
+
+#: ../classes/AbstractDb.php:121 ../classes/AbstractDb.php:214
+#: ../classes/AbstractDb.php:402 ../classes/AbstractDb.php:475
+msgid "SQL Query"
+msgstr "SQL заявка"
+
+#: ../classes/AbstractDb.php:126 ../classes/AbstractDb.php:219
+msgid "Query plan"
+msgstr "План на заявките"
+
+#: ../classes/AbstractDb.php:144 ../classes/AbstractDb.php:237
+#: ../classes/AbstractDb.php:412
+#, php-format
+msgid "Elapsed time for query execution : %.6f second(s)"
+msgstr "Изтекло време за изпълнение на заявката: %.6f секунда(и)"
+
+#: ../classes/AbstractDb.php:148 ../classes/AbstractDb.php:241
+#: ../classes/AbstractDb.php:416 ../classes/AbstractDb.php:426
+#: ../classes/AbstractDb.php:490
+msgid "An error occured while executing the following SQL query"
+msgstr "Появи се грешка при изпълнение на следната SQL заявка"
+
+#: ../classes/AbstractDb.php:149 ../classes/AbstractDb.php:242
+#: ../classes/AbstractDb.php:417 ../classes/AbstractDb.php:491
+msgid "Error message"
+msgstr "Съобщение на грешка"
+
+#: ../classes/AbstractDb.php:150 ../classes/AbstractDb.php:243
+#: ../classes/AbstractDb.php:492
+msgid "Backtrace:"
+msgstr ""
+
+#: ../classes/AbstractDb.php:173
+#, php-format
+msgid "The query returned %d results"
+msgstr "Заявката донесе %d резултата"
+
+#: ../classes/AbstractDb.php:427
+#, php-format
+msgid ""
+"The query returned %d results, although there should have been only one."
+msgstr ""
+"Заявката доведе %d резултата въпреки, че трябваше да има само един резултат."
+
+#: ../classes/AbstractDb.php:435
+#, php-format
+msgid "The query returned %d result(s)"
+msgstr "Заявката доведе %d резултат(а)"
+
+#: ../classes/AbstractDb.php:484 ../classes/AbstractDb.php:502
+#, php-format
+msgid "%d rows affected by the SQL query."
+msgstr "%d реда бяха повлияни от SQL заявката."
+
+#: ../classes/AbstractDb.php:485
+#, php-format
+msgid "Elapsed time for query execution : %6f second(s)"
+msgstr "Изминало време за изпълнение на заявката: %.6f секунда(и)"
+
+#: ../classes/Server.php:91
+msgid "Main server object"
+msgstr ""
+
+#: ../classes/Server.php:229
+msgid "Server management"
+msgstr "Маниджмънт на сървъра"
+
+#: ../classes/Server.php:255
+msgid "Timezone check:  The following must be in the same timezone"
+msgstr ""
+
+#: ../classes/Server.php:259
+#, php-format
+msgid "Timezone from postgresql: %s"
+msgstr ""
+
+#: ../classes/Server.php:262
+#, php-format
+msgid "Timezone from PHP: %s"
+msgstr ""
+
+#: ../classes/Server.php:270
+#, fuzzy
+msgid "Authentication"
+msgstr "Валидация на мрежата"
+
+#: ../classes/Server.php:271
+msgid ""
+"Use the users of default Virtual Host's network across all networks on the "
+"server."
+msgstr ""
+
+#: ../classes/Server.php:320
+msgid "The server can never be deleted!"
+msgstr ""
+
+#: ../classes/Server.php:330
+#, fuzzy
+msgid "Server configuration"
+msgstr "Конфигурация на доклада"
+
+#: ../classes/Server.php:335
+msgid "Server administration"
+msgstr "Сървърна администрация"
+
+#: ../classes/Content.php:150
+msgid "Untitled content"
+msgstr "Съдържание без заглавие"
+
+#: ../classes/Content.php:181
+msgid "Content type is optionnal, but cannot be empty!"
+msgstr "Видът на съдържанието е по желание, но не може да бъде празно!"
+
+#: ../classes/Content.php:189 ../classes/ProfileTemplateField.php:176
+msgid "Unable to insert new content into database!"
+msgstr " Невъзможно вмъкването на ново съдържание в базата данни!"
+
+#: ../classes/Content.php:221
+msgid "It appears that you have not installed any Content plugin !"
+msgstr "Изглежда не сте инсталирали никакъв plugin  за съдържание!"
+
+#: ../classes/Content.php:223 ../classes/Content.php:1511
+msgid "You must select a content type: "
+msgstr "Трябва да изберете тип на съдържанието: "
+
+#: ../classes/Content.php:520
+msgid "Add new Content of type"
+msgstr "Прибавяне на нов тип на съдържанието"
+
+#: ../classes/Content.php:534
+msgid "No content type matches the filter."
+msgstr "Никакво съдържание не отговаря на зададения филтър."
+
+#: ../classes/Content.php:543
+#, php-format
+msgid "Add a %s"
+msgstr "Добавяне на %s"
+
+#: ../classes/Content.php:719
+msgid "Display page"
+msgstr "Дисплей страница"
+
+#: ../classes/Content.php:719
+msgid "Area"
+msgstr "Площ"
+
+#: ../classes/Content.php:719
+msgid "Order"
+msgstr "Ред"
+
+#: ../classes/Content.php:719
+msgid "Content"
+msgstr "Съдържание"
+
+#: ../classes/Content.php:719 ../classes/ProfileTemplate.php:383
+msgid "Actions"
+msgstr "Действия"
+
+#: ../classes/Content.php:911
+msgid "Select from reusable content library"
+msgstr "Изберете от библиотека със съдържание с повторна употреба"
+
+#: ../classes/Content.php:925
+msgid "Title"
+msgstr "Име"
+
+#: ../classes/Content.php:925
+msgid "Content type"
+msgstr "Вид на съдържанието"
+
+#: ../classes/Content.php:972 ../classes/Content.php:979
+msgid "Sorry, no elligible content available in the database"
+msgstr "Съжаляваме, няма годно съдържание налична в базата данни."
+
+#: ../classes/Content.php:1048
+msgid "KVP key cannot be null"
+msgstr ""
+
+#: ../classes/Content.php:1122
+msgid "The following content type isn't valid: "
+msgstr "Следния вид на съдържанието не е валиден: "
+
+#: ../classes/Content.php:1127
+msgid "Update was unsuccessfull (database error)"
+msgstr "Актуализацията бе неуспешна (грешка в базата данни)"
+
+#: ../classes/Content.php:1144
+msgid "Unable to insert the new Owner into database."
+msgstr "Не може да се вмъкне новия собственик в базата данни."
+
+#: ../classes/Content.php:1161
+msgid "Unable to remove the owner from the database."
+msgstr "Не може да се премахне собственика от базата данни."
+
+#: ../classes/Content.php:1360
+msgid "Author(s):"
+msgstr "Автор(и):"
+
+#: ../classes/Content.php:1381
+msgid "Project information:"
+msgstr "Информация за проекта:"
+
+#: ../classes/Content.php:1502
+msgid "(You do not have access to edit this piece of content)"
+msgstr "(Вие нямате достъп, за да променяте тази част от съдържанието)"
+
+#: ../classes/Content.php:1532
+#, php-format
+msgid "%s MetaData"
+msgstr "%s Мета данни"
+
+#: ../classes/Content.php:1535
+msgid "Display the title?"
+msgstr "Да се покаже ли заглавието?"
+
+#: ../classes/Content.php:1544 ../classes/Content.php:1549
+msgid "Title:"
+msgstr "Заглавие:"
+
+#: ../classes/Content.php:1553
+msgid "title"
+msgstr "заглавие"
+
+#: ../classes/Content.php:1564 ../classes/Content.php:1568
+#: ../classes/Role.php:351 ../classes/Role.php:355
+msgid "Description:"
+msgstr "Описание:"
+
+#: ../classes/Content.php:1572 ../classes/Role.php:359
+msgid "description"
+msgstr "описание"
+
+#: ../classes/Content.php:1581 ../classes/Content.php:1585
+msgid "Long description:"
+msgstr "Дълго описание:"
+
+#: ../classes/Content.php:1589
+msgid "long description"
+msgstr "дълго описание"
+
+#: ../classes/Content.php:1598 ../classes/Content.php:1602
+msgid "Information on this project:"
+msgstr "Информация по този проект:"
+
+#: ../classes/Content.php:1606
+msgid "project information"
+msgstr "информация за проекта"
+
+#: ../classes/Content.php:1620
+#, php-format
+msgid "%s access control"
+msgstr "%s контрол на достъп"
+
+#: ../classes/Content.php:1624
+msgid "Is part of reusable content library (protected from deletion)?"
+msgstr ""
+"Част от библиотека със съдържание с повторна употреба (защитена от "
+"изтриване) ли е?"
+
+#: ../classes/Content.php:1634
+msgid "Content owner list"
+msgstr "Списък с притежатели на съдържание"
+
+#: ../classes/Content.php:1655
+msgid "Remove owner"
+msgstr "Заличаване на потребителя"
+
+#: ../classes/Content.php:1664
+msgid "Add owner"
+msgstr "Прибавяне на собственик"
+
+#: ../classes/Content.php:1796
+msgid "Unable to set as author in the database."
+msgstr "Не е възможно да се настрои като автор в базата данни."
+
+#: ../classes/Content.php:1970
+msgid "Reusable content library"
+msgstr ""
+
+#: ../classes/NodeList.php:210 smarty.txt:40
+msgid "Deployed HotSpots map"
+msgstr "Карта на действащи Хотспотове"
+
+#: ../classes/NodeList.php:221
+#, php-format
+msgid "List in %s format"
+msgstr ""
+
+#: ../classes/NodeList.php:227
+msgid "Full node technical status (includes non-deployed nodes)"
+msgstr "Пълен технически статус на възела(включва не задействани възли)"
+
+#: ../classes/NodeList.php:231
+#, fuzzy
+msgid "Find Hotspots"
+msgstr "Откриване на още хотспотове"
+
+#: ../classes/MainUI.php:78
+#, php-format
+msgid ""
+"Your current user (%s) does not have the required level of access.  Please "
+"login with with a user with the required permission(s) to try this operation "
+"again."
+msgstr ""
+
+#: ../classes/MainUI.php:81
+#, php-format
+msgid ""
+"You didn't log-in or your session timed-out.  Please login to try this "
+"operation again."
+msgstr ""
+
+#: ../classes/MainUI.php:89
+#, php-format
+msgid "%s"
+msgstr ""
+
+#: ../classes/MainUI.php:91
+#, php-format
+msgid "%s was thrown in %s, line %d\n"
+msgstr ""
+
+#: ../classes/MainUI.php:102
+#, php-format
+msgid "Detailed error was:  Uncaught %s %s (%s) thrown in file %s, line %d"
+msgstr ""
+
+#: ../classes/MainUI.php:232 ../classes/MainUI.php:234
+msgid "authentication server"
+msgstr "Сървър за автентикация"
+
+#: ../classes/MainUI.php:262
+#, php-format
+msgid "%s is not a valid structural display area"
+msgstr "%s невалидна структурна  повърхност за изображение"
+
+#: ../classes/MainUI.php:680
+#, php-format
+msgid "%s Login"
+msgstr "%s Влизане (login)"
+
+#: ../classes/MainUI.php:680 smarty.txt:21 smarty.txt:32
+msgid "Login"
+msgstr "Влизане (login)"
+
+#: ../classes/MainUI.php:684
+#, php-format
+msgid "Click <a href='%s'>here</a> to continue"
+msgstr "Кликнете <a href='%s'>тук</a>, за да продължите"
+
+#: ../classes/MainUI.php:684
+msgid ""
+"The transfer from secure login back to regular http may cause a warning."
+msgstr ""
+"Преминаването от защитен login (https) към обикновено http може да доведе до "
+"изписването на съобщение да се внимава ."
+
+#: ../classes/Mail.php:405
+#, php-format
+msgid "PHPMailer couldn't sent mail.  Error was: %s"
+msgstr ""
+
+#: ../classes/Node.php:222
+msgid "Could not delete node!"
+msgstr "Не може да се премахне хотспота!"
+
+#: ../classes/Node.php:255
+msgid "PUT_GATEWAY_ID_HERE"
+msgstr "ВЪВЕДЕТЕ_ИДЕНТИФИКАЦИОНЕН НОМЕР НА ШЛЮЗА_ТУК"
+
+#: ../classes/Node.php:271
+msgid "New node"
+msgstr "Нов хотспот"
+
+#: ../classes/Node.php:280
+#, php-format
+msgid "Sorry, a node for the gateway %s already exists."
+msgstr "Съжалявам, точка за този шлюз %s вече съществува."
+
+#: ../classes/Node.php:286
+msgid "Unable to insert new node into database!"
+msgstr "Не може да се вмъкне нов хотспот в базата данни!"
+
+#: ../classes/Node.php:370
+msgid "Filter:"
+msgstr "Филтър:"
+
+#: ../classes/Node.php:378
+msgid "Node Name"
+msgstr "Име на точката"
+
+#: ../classes/Node.php:379 ../classes/Node.php:1176
+msgid "Gateway ID"
+msgstr "Идентификационен номер на входа (Gateway)"
+
+#: ../classes/Node.php:402
+msgid "Sorry, no nodes available in the database"
+msgstr "Съжаляваме, няма никакви хотспотове налични в базата данни"
+
+#: ../classes/Node.php:427
+msgid "Add a new node for the gateway ID"
+msgstr "Прибавете нова точка за идентификационния номер на този шлюз "
+
+#: ../classes/Node.php:437
+msgid "in "
+msgstr "в "
+
+#: ../classes/Node.php:493
+msgid "Here is what you can do to fix this:"
+msgstr ""
+
+#: ../classes/Node.php:497
+#, php-format
+msgid ""
+"You can create a new node with %s as it's associated gateway id.  This is "
+"typical for new installations."
+msgstr ""
+
+#: ../classes/Node.php:510
+#, fuzzy, php-format
+msgid "Add a new node in %s"
+msgstr "Прибавяне на нов хотспот"
+
+#: ../classes/Node.php:512
+#, fuzzy
+msgid "Add node"
+msgstr "Прибавяне на нов хотспот"
+
+#: ../classes/Node.php:519
+#, php-format
+msgid ""
+"You can \"steal\" an existing node.  The node's gateway id will be replaced "
+"with %s.  This is typical when replacing hardware."
+msgstr ""
+
+#: ../classes/Node.php:538
+#, fuzzy
+msgid "Steal node"
+msgstr "Нов хотспот"
+
+#: ../classes/Node.php:614
+msgid "No deployment statuses could be found in the database"
+msgstr "Няма състояния на проявяване в базата данни"
+
+#: ../classes/Node.php:681
+#, php-format
+msgid "The node with %s: %s could not be found in the database!"
+msgstr "Точката с %s: %s не може да бъде намерена в базата данни!"
+
+#: ../classes/Node.php:1154
+msgid "Edit a node"
+msgstr "Редактиране на хотспот"
+
+#: ../classes/Node.php:1165
+msgid "Allow public access to some node statistics."
+msgstr ""
+
+#: ../classes/Node.php:1166
+msgid "Get access statistics"
+msgstr "Получаване на статистика за достъпа"
+
+#: ../classes/Node.php:1190
+msgid "Node content"
+msgstr "Съдържание на хотспота"
+
+#: ../classes/Node.php:1229
+msgid "Civic number"
+msgstr "Граждански номер"
+
+#: ../classes/Node.php:1234
+msgid "Street name"
+msgstr "Име на улица"
+
+#: ../classes/Node.php:1254
+msgid "Country"
+msgstr "Държава"
+
+#: ../classes/Node.php:1259
+msgid "Public phone number"
+msgstr "Обществен телефонен номер"
+
+#: ../classes/Node.php:1264
+msgid "Public email"
+msgstr "Обществен и-мейл"
+
+#: ../classes/Node.php:1274
+msgid "Mass transit info"
+msgstr "Информация за масов транзит"
+
+#: ../classes/Node.php:1279
+msgid "Information about the node"
+msgstr "Информация за хотспота"
+
+#: ../classes/Node.php:1299 ../classes/Node.php:1303
+msgid "Geocode the address or postal code above"
+msgstr "Да се геокодира адреса или горния пощенски код"
+
+#: ../classes/Node.php:1300
+msgid "Check using Google Maps"
+msgstr "Провери с Google Maps"
+
+#: ../classes/Node.php:1301
+msgid ""
+"Use a geocoding service, then use Google Maps to pinpoint the exact location."
+msgstr ""
+"Използвайте геокодираща услуга, след което изполвайте картата на Google, за "
+"да определите точното местоположение."
+
+#: ../classes/Node.php:1304
+msgid "Use a geocoding service"
+msgstr "Използване на геокодираща услуга"
+
+#: ../classes/Node.php:1310
+msgid "Map URL"
+msgstr "Карта на интернет адреса"
+
+#: ../classes/Node.php:1323
+msgid "Node deployment status"
+msgstr "Състояние на внедряването на хотспотове"
+
+#: ../classes/Node.php:1328
+#, fuzzy
+msgid "Node Network"
+msgstr "Мрежа"
+
+#: ../classes/Node.php:1334
+msgid "Is this node splash-only (no login)?"
+msgstr "Този хотспот само \"SPLASH\" ли е (без Login)?"
+
+#: ../classes/Node.php:1341
+msgid "URL to show instead of the portal"
+msgstr "Интернет страницата ще се покаже вместо портала"
+
+#: ../classes/Node.php:1343
+msgid ""
+"If this is not empty, the portal will be disabled and this URL will be shown "
+"instead"
+msgstr ""
+"Ако това поле не е празно, портала ще се деактивира и вместо това ще се "
+"покаже тази интернет страница."
+
+#: ../classes/Node.php:1349
+#, fuzzy
+msgid ""
+"Are nodes allowed to redirect users to the web page they originally "
+"requested instead of the portal? this will overide the custom portal URL"
+msgstr ""
+"Позволено ли е на хотспотовете да пренасочват потребителите към случайна "
+"интернет страница, вместо към портала?"
+
+#: ../classes/Node.php:1354
+msgid "Node configuration"
+msgstr "Конфигурация на хотспота"
+
+#: ../classes/Node.php:1492
+msgid ""
+"It appears that the Geocoder could not be reached or could not geocode the "
+"given address."
+msgstr ""
+"По всичко личи, че Геокода не може да се достигне и не може да геокодира "
+"дадения адрес."
+
+#: ../classes/Node.php:1495
+msgid "You must enter a valid address."
+msgstr "Вие трябва да въведете валиден адрес."
+
+#: ../classes/Node.php:1499
+msgid "Unable to create geocoder.  Are you sure you set the country?"
+msgstr ""
+"Не е възможно създаването на геокодер. Сигурни ли сте, че направихте "
+"съответните настройки за съответната страна?"
+
+#: ../classes/Node.php:1759
+msgid "Edit nodes"
+msgstr ""
+
+#: ../classes/Node.php:1774
+#, php-format
+msgid "Add a new node"
+msgstr "Прибавяне на нов хотспот"
+
+#: ../classes/Node.php:1779
+msgid "Node administration"
+msgstr "Администрация на хотспота"
+
+#: ../classes/ProfileTemplate.php:229
+msgid "Unable to insert the new profile template in the database!"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:240
+#, fuzzy
+msgid "Add a new profile template with ID"
+msgstr "Прибавете нов хотспот с ИН"
+
+#: ../classes/ProfileTemplate.php:313
+msgid "Profile template"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:318 ../classes/ContentTypeFilter.php:310
+#: ../classes/ProfileTemplateField.php:118
+#: ../classes/ProfileTemplateField.php:427
+msgid "No label"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:383
+msgid "Profile template label"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:484
+msgid "Profile template management"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:491
+msgid "ProfileTemplate ID"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:502 ../classes/ContentTypeFilter.php:375
+msgid "Label"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:521
+msgid "Profile template fields"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:531
+#, php-format
+msgid "Delete %s %d, used in %d/%d profiles"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:595
+msgid "Could not delete ProfileTemplate!"
+msgstr ""
+
+#: ../classes/ProfileTemplate.php:627
+msgid "Profile templates"
+msgstr ""
+
+#: ../classes/ThemePack.php:87
+#, php-format
+msgid "Theme pack %s cannot be found in %s"
+msgstr "Тематичния пакет %s не може да се намери в %s"
+
+#: ../classes/ThemePack.php:94
+#, php-format
+msgid "%s (Theme did not include a name.txt file)"
+msgstr "%s (Темата не включваше име в текстов файл)"
+
+#: ../classes/ThemePack.php:100
+#, php-format
+msgid "%s (Theme did not include a description.txt file)"
+msgstr "%s (темата не включва описане в текстов файл)"
+
+#: ../classes/ThemePack.php:121
+msgid "Theme pack:"
+msgstr "Тематичен пакет:"
+
+#: ../classes/ThemePack.php:144
+msgid "Unable to open the network theme packs directory"
+msgstr "Не е възможно отварянето на директорията с теми от мрежови пакети)"
+
+#: ../classes/ThemePack.php:151
+#, php-format
+msgid "No network theme packs available in %s"
+msgstr "Няма налични тематични пакети в %s"
+
+#: ../classes/Role.php:151
+#, php-format
+msgid "Sorry: No available roles in the database for stakeholder type: %s!"
+msgstr ""
+
+#: ../classes/Role.php:164 ../classes/Role.php:170
+msgid "Role:"
+msgstr ""
+
+#: ../classes/Role.php:228 ../classes/ContentTypeFilter.php:199
+msgid "Unable to insert the new ContentTypeFilter in the database!"
+msgstr ""
+
+#: ../classes/Role.php:245
+#, php-format
+msgid "Add a new role of type %s with id %s"
+msgstr ""
+
+#: ../classes/Role.php:309
+msgid "User roles management"
+msgstr ""
+
+#: ../classes/Role.php:316
+msgid "Stakeholder type"
+msgstr ""
+
+#: ../classes/Role.php:325
+msgid "This role is a system role"
+msgstr ""
+
+#: ../classes/Role.php:332
+msgid "Role ID"
+msgstr ""
+
+#: ../classes/Role.php:386
+msgid "Permissions"
+msgstr ""
+
+#: ../classes/Role.php:492
+msgid "Could not delete object!"
+msgstr ""
+
+#: ../classes/Role.php:513
+msgid "User roles"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:220
+msgid "Add a new content type filter with these rules"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:221
+msgid "Example:"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:302
+#: ../classes/ProfileTemplateField.php:424
+msgid "Content type filter"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:357
+msgid "ContentTypeFilter management"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:364
+msgid "ContentTypeFilter ID"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:386
+msgid "Rules (must be a valid array definition)"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:418
+msgid "The rules must be given as a PHP array declaration."
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:444
+msgid "Could not delete ContentTypeFilter!"
+msgstr ""
+
+#: ../classes/ContentTypeFilter.php:472
+msgid "Content type filters"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:122
+msgid "Add new profile template field filtered by"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:131
+msgid "Sorry, no content type filter exists."
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:404
+msgid "Display order"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:422
+msgid "Sorry, content type filter is missing."
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:434
+msgid "Display label"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:440
+#, php-format
+msgid "%s display label (%s)"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:444
+msgid "display label"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:451
+msgid "Admin label"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:458
+#, php-format
+msgid "%s admin label (%s)"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:462
+msgid "admin label"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:469
+msgid "Semantic ID"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:477
+msgid "Full name"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:478
+msgid "Nickname"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:479
+msgid "E-mail"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:480
+msgid "Hashed e-mail"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:481
+msgid "Picture"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:482
+msgid "URL of a blog"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:483
+msgid "URL of a homepage"
+msgstr ""
+
+#: ../classes/ProfileTemplateField.php:598
+msgid "Could not delete ProfileTemplateField!"
+msgstr ""
+
+#: ../classes/ProfileField.php:251
+msgid "Unable to insert the new profile fields in the database!"
+msgstr ""
+
+#: ../classes/ProfileField.php:281
+#, php-format
+msgid "Delete %s"
+msgstr ""
+
+#: ../classes/ProfileField.php:368
+msgid "Could not delete ProfileField!"
+msgstr ""
+
+#: ../classes/Permission.php:85
+msgid "User is allowed to view online users troughout the network"
+msgstr ""
+
+#: ../classes/Permission.php:86
+msgid "User is allowed to edit any user for this network"
+msgstr ""
+
+#: ../classes/Permission.php:87
+msgid "User is allowed to edit the configuration of this network"
+msgstr ""
+
+#: ../classes/Permission.php:88
+#, fuzzy
+msgid "User is allowed to delete this network"
+msgstr "Не може да се премахне мрежата!"
+
+#: ../classes/Permission.php:89
+msgid "User is allowed to view all statistics for this network"
+msgstr ""
+
+#: ../classes/Permission.php:90
+msgid "User is allowed to edit any configuration of any node on the network"
+msgstr ""
+
+#: ../classes/Permission.php:91
+msgid "User is allowed to create a new Node on this network"
+msgstr ""
+
+#: ../classes/Permission.php:92
+msgid "User is allowed to set dynamic abuse control options for the network"
+msgstr ""
+
+#: ../classes/Permission.php:94
+msgid "User is allowed to edit user role definitions"
+msgstr ""
+
+#: ../classes/Permission.php:95
+msgid "User is allowed to edit any virtual host definition"
+msgstr ""
+
+#: ../classes/Permission.php:96
+msgid "User is allowed to edit general server configuration"
+msgstr ""
+
+#: ../classes/Permission.php:97
+msgid "User is allowed to edit the profile templates"
+msgstr ""
+
+#: ../classes/Permission.php:98
+msgid "User is allowed to edit the content type filters on the network"
+msgstr ""
+
+#: ../classes/Permission.php:99
+msgid "User is allowed to create reusable content"
+msgstr ""
+
+#: ../classes/Permission.php:100
+msgid "User is allowed to create a new Network on this server"
+msgstr ""
+
+#: ../classes/Permission.php:102
+msgid "User is allowed to change the gateway id of this node"
+msgstr ""
+
+#: ../classes/Permission.php:103
+#, fuzzy
+msgid "User is allowed to change the public name of this node"
+msgstr "Потребителят е вече притежател на този хотспот."
+
+#: ../classes/Permission.php:104
+#, fuzzy
+msgid "User is allowed to change the deployment date of this node"
+msgstr "Потребителят е вече притежател на този хотспот."
+
+#: ../classes/Permission.php:106
+msgid ""
+"TEMPORARY:  User is allowed to edit general configuration for this node.  "
+"This will be replaced with more granular permissions in the future"
+msgstr ""
+
+#: ../classes/Permission.php:107
+msgid "User is allowed to exceed dynamic abuse control limits at this node"
+msgstr ""
+
+#: ../classes/Permission.php:108
+#, fuzzy
+msgid ""
+"User is allowed to turn on publicly accessible aggregate statistics for this "
+"node"
+msgstr "Потребителят е вече притежател на този хотспот."
+
+#: ../classes/Stakeholder.php:88
+msgid "Remove stakeholder"
+msgstr ""
+
+#: ../classes/Stakeholder.php:94
+msgid "Add stakeholder"
+msgstr ""
+
+#: ../classes/Stakeholder.php:121 ../classes/Stakeholder.php:147
+#, php-format
+msgid "User %s already has role %s for this object"
+msgstr ""
+
+#: ../classes/GenericDataObject.php:124
+#, php-format
+msgid "Delete not supported on class %s"
+msgstr ""
+
+#: ../classes/Dependency.php:414 ../classes/Dependency.php:430
+#, php-format
+msgid "File %s not found"
+msgstr ""
+
+#: ../classes/Dependency.php:444 ../classes/Dependency.php:458
+#, fuzzy, php-format
+msgid "File %s not found in %s"
+msgstr "Тематичния пакет %s не може да се намери в %s"
+
+#: ../classes/Dependency.php:519
+#, php-format
+msgid ""
+"To install this standard PHP extension, look for a package with a similar "
+"name in your distribution's package manager.  Ex: For Debian based "
+"distributions, you may try 'sudo apt-get install php5-%s'"
+msgstr ""
+
+#: ../classes/Dependency.php:525
+#, fuzzy, php-format
+msgid "Install %s"
+msgstr "Общо"
+
+#: ../classes/Dependency.php:530
+#, php-format
+msgid "Sorry, i couldn't find the source for %s in installSourceUrl"
+msgstr ""
+
+#: ../classes/Dependency.php:543
+#, php-format
+msgid ""
+"To install this standard PEAR extension, try 'sudo pear install --"
+"onlyreqdeps %s'"
+msgstr ""
+
+#: ../classes/Dependency.php:554
+#, php-format
+msgid "To install this standard PEAR extension, try 'sudo pecl install %s'"
+msgstr ""
+
+#: ../classes/Dependency.php:563
+#, php-format
+msgid ""
+"url_to_the_tarball (Sorry, i couldn't find the source for %s in "
+"installSourceUrl)"
+msgstr ""
+
+#: ../classes/Dependency.php:565
+#, php-format
+msgid "To install this custom PEAR extension, use 'sudo pear install %s'"
+msgstr ""
+
+#: ../classes/Dependency.php:570
+#, php-format
+msgid "Sorry, I don't know how to install a %s extension"
+msgstr ""
+
+#: ../classes/DependenciesList.php:105
+#, php-format
+msgid "Version %s needed"
+msgstr ""
+
+#: ../classes/DependenciesList.php:122
+#, php-format
+msgid "%s may work, but version %s is recommended"
+msgstr ""
+
+#: ../classes/DependenciesList.php:125
+#, php-format
+msgid "%s is too old, version %s needed"
+msgstr ""
+
+#: ../classes/DependenciesList.php:135
+#, fuzzy
+msgid "Component"
+msgstr "Съдържание"
+
+#: ../classes/DependenciesList.php:135
+msgid "Click for the component's website"
+msgstr ""
+
+#: ../classes/DependenciesList.php:136
+msgid "Type"
+msgstr ""
+
+#: ../classes/DependenciesList.php:138
+#, fuzzy
+msgid "Information"
+msgstr "информация за проекта"
+
+#: ../classes/DependenciesList.php:178
+msgid "Install message"
+msgstr ""
+
+#: ../classes/DependenciesList.php:181
+#, fuzzy
+msgid "Detection message"
+msgstr "Съобщение на грешка"
+
+#: ../classes/DependenciesList.php:184
+#, fuzzy
+msgid "To install"
+msgstr "Общо"
+
+#: ../classes/DependenciesList.php:206
+msgid "Dependencies"
+msgstr ""
+
+#: smarty.txt:2
+#, fuzzy
+msgid "Status of all nodes on "
+msgstr "Статус на всички хотспотове на"
+
+#: smarty.txt:3
+#, fuzzy
+msgid "Status of all nodes of the "
+msgstr "Статус на всички хотспотове на"
+
+#: smarty.txt:4
+msgid "Status of all nodes of the"
+msgstr "Статус на всички хотспотове на"
+
+#: smarty.txt:6
+#, fuzzy
+msgid "Node id"
+msgstr "Хотспот:"
+
+#: smarty.txt:7
+#, fuzzy
+msgid "Gateway id"
+msgstr "Идентификационен номер на входа (Gateway)"
+
+#: smarty.txt:9
+msgid "Local content demo"
+msgstr "Демо с местно съдържание"
+
+#: smarty.txt:10
+msgid "Opened on"
+msgstr "Отворено на"
+
+#: smarty.txt:11 smarty.txt:132
+msgid "Online users"
+msgstr "Онлайн потребители"
+
+#: smarty.txt:12 smarty.txt:13
+msgid "days"
+msgstr "дни"
+
+#: smarty.txt:14
+msgid "Login page"
+msgstr "Страница за влизане (login)"
+
+#: smarty.txt:15
+msgid "Portal page"
+msgstr "Портална страница"
+
+#: smarty.txt:17
+msgid "Logged in as"
+msgstr "Влязъл съм като"
+
+#: smarty.txt:18
+#, fuzzy
+msgid "Profile / Settings"
+msgstr "Провинция / Щат"
+
+#: smarty.txt:19
+msgid "Logout"
+msgstr "Изход (logout)"
+
+#: smarty.txt:20
+msgid "I am not logged in."
+msgstr "Не съм влязъл в системата."
+
+#: smarty.txt:23
+msgid "user is online at this hotspot"
+msgstr "потребителя е онлайн при този хотспот"
+
+#: smarty.txt:24
+msgid "users are online at this hotspot"
+msgstr "потребителите са онлайн при този хотспот"
+
+#: smarty.txt:25
+msgid "Nobody is online at this hotspot"
+msgstr "Никой не е онлайн при този хотспот"
+
+#: smarty.txt:26
+msgid "Recent Users:"
+msgstr ""
+
+#: smarty.txt:27
+msgid "Most Active Users:"
+msgstr ""
+
+#: smarty.txt:28
+msgid "Login or Signup here"
+msgstr "Влезте или направете нова регистрация"
+
+#: smarty.txt:29
+#, fuzzy
+msgid "Login Here"
+msgstr "Страница за влизане (login)"
+
+#: smarty.txt:30
+msgid "Username (or email)"
+msgstr "Потребителско име (или електронен пощенски адрес)"
+
+#: smarty.txt:31 smarty.txt:53
+msgid "Password"
+msgstr "Парола"
+
+#: smarty.txt:33
+#, fuzzy
+msgid "Signup Here"
+msgstr "Записване"
+
+#: smarty.txt:34
+msgid "Create a free account"
+msgstr "Създаване на безплатен акаунт"
+
+#: smarty.txt:35
+#, fuzzy
+msgid "You must specify your username and password"
+msgstr "Вие трябва да уточните вашето потребителско име и парола"
+
+#: smarty.txt:36
+msgid "Show me the closest hotspot"
+msgstr "Покажете ми най-близкия хотспот"
+
+#: smarty.txt:37
+msgid "Enter your postal code"
+msgstr "Въведете вашия пощенски код"
+
+#: smarty.txt:38
+msgid "Show"
+msgstr "Покажи"
+
+#: smarty.txt:39
+msgid "Refresh map"
+msgstr "Актуализирай картата"
+
+#: smarty.txt:42
+msgid "Legend"
+msgstr "Легенда"
+
+#: smarty.txt:43
+msgid "the hotspot is operational"
+msgstr "Този хотспот работи"
+
+#: smarty.txt:44
+msgid "the hotspot is down"
+msgstr "Този хотспот не работи"
+
+#: smarty.txt:45
+msgid "not monitored"
+msgstr "не се наблюдава"
+
+#: smarty.txt:46 smarty.txt:74 smarty.txt:98 smarty.txt:106
+msgid "I'm having difficulties"
+msgstr "Имам проблеми.."
+
+#: smarty.txt:50
+msgid "Register a free account with"
+msgstr "Регистриране на безплатен акаунт с "
+
+#: smarty.txt:51
+msgid "Username desired"
+msgstr "Желано потребителско име"
+
+#: smarty.txt:52 smarty.txt:80 smarty.txt:111
+msgid "Your email address"
+msgstr "Вашия имейл адрес"
+
+#: smarty.txt:54
+msgid "Password (again)"
+msgstr "Парола (отново)"
+
+#: smarty.txt:55
+msgid "Sign-up"
+msgstr "Записване"
+
+#: smarty.txt:56
+msgid "Please note"
+msgstr "Моля отбележете"
+
+#: smarty.txt:57
+msgid ""
+"While accounts are free, we <em>strongly</em> suggest that you use your "
+"previously created account if you have one."
+msgstr ""
+"Докато акаунтите са безплатни, ние <b>горещо</b> препоръчваме да използвате "
+"ваш предишно създаден акаунт, ако имате такъв."
+
+#: smarty.txt:58
+msgid ""
+"<b>Your email address must be valid</b> in order for your account to be "
+"activated."
+msgstr ""
+"<b>Вашият имейл адрес трябва да е валиден,</b> за да може да се активира "
+"вашия акаунт."
+
+#: smarty.txt:59
+msgid "A validation email will be sent to that email address."
+msgstr "Имейл за валидиране  ще се изпрати на този имейл адрес."
+
+#: smarty.txt:60
+msgid "To fully activate your account you must respond to that email."
+msgstr ""
+"За да активирате вашия акаунт напълно, вие трябва да отговорите на този "
+"имейл."
+
+#: smarty.txt:61
+msgid "Note to free web-based email users"
+msgstr "Бележка към до потребители, използващи безплатни уеб базирани имейли"
+
+#: smarty.txt:62
+msgid ""
+"Sometimes our validation email ends up in the 'spam' folder of some "
+"providers. If you have not received any email with the validation URL 5 "
+"minutes after submitting this form, please take a look in the spam folder."
+msgstr ""
+"Понякога нашия имейл за валидация попада в пaпките за спам на някои "
+"доставчици. Ако не сте получили още такъв имейл в рамките на 5 минути след "
+"предаването на формата, моля вижте в папката за спам."
+
+#: smarty.txt:63
+msgid "You can also use the following links if you need help"
+msgstr "Вие можете още да използвате следните линкове, ако ви е нужна помощ"
+
+#: smarty.txt:66
+#, php-format
+msgid "Status of the %d open %s Hotspots"
+msgstr "Статус на %d активните %s хотспотове"
+
+#: smarty.txt:67
+msgid "Hotspot / Status"
+msgstr "Хотспот / Статус"
+
+#: smarty.txt:69
+msgid "Location"
+msgstr "Адрес"
+
+#: smarty.txt:70
+msgid "Hotspot in testing phase"
+msgstr "Хотспот в изпитателна фаза"
+
+#: smarty.txt:71
+msgid "Hotspot not monitored"
+msgstr "Хотспотове не се отчитат"
+
+#: smarty.txt:72
+#, php-format
+msgid "Opened on %s"
+msgstr "Отворен на %s"
+
+#: smarty.txt:78
+msgid "Lost password"
+msgstr "Загубена парола"
+
+#: smarty.txt:79 smarty.txt:103
+msgid "Your username"
+msgstr "Вашето потребителско име"
+
+#: smarty.txt:81
+msgid "Reset my password"
+msgstr "Промени моята парола"
+
+#: smarty.txt:82
+msgid "Please enter your username or email address to reset your password"
+msgstr ""
+"Моля въведете вашето потребителско име или имейл адрес, за да се промени "
+"вашата парола"
+
+#: smarty.txt:83
+#, php-format
+msgid "The %s network currently has one valid user."
+msgstr "Мрежата %s в момента има един валиден потребител."
+
+#: smarty.txt:84
+#, php-format
+msgid "The %s network currently has %d valid users."
+msgstr "Мрежата %s в момента има %d валидни потребителя."
+
+#: smarty.txt:85 smarty.txt:116
+msgid "One user is currently online."
+msgstr "Един потребител в момента е онлайн."
+
+#: smarty.txt:86 smarty.txt:117
+#, php-format
+msgid "%d users are currently online."
+msgstr "%d потребителя в момента са онлайн."
+
+#: smarty.txt:87 smarty.txt:118
+msgid "This network currently has 1 deployed hotspot."
+msgstr "Тази мрежа в момента има 1 действащ хотспот."
+
+#: smarty.txt:88 smarty.txt:119
+#, php-format
+msgid "This network currently has %d deployed hotspots."
+msgstr "Тази мрежа в момента има %d действащи хотспота. "
+
+#: smarty.txt:89 smarty.txt:120
+msgid "One hotspot is currently operational."
+msgstr ""
+
+#: smarty.txt:90 smarty.txt:121
+#, php-format
+msgid "%d hotspots are currently operational."
+msgstr ""
+
+#: smarty.txt:91 smarty.txt:122
+msgid ""
+"One hotspot isn't monitored so we don't know if it's currently operational."
+msgstr ""
+
+#: smarty.txt:92 smarty.txt:123
+#, php-format
+msgid ""
+"%d hotspots aren't monitored so we don't know if they are currently "
+"operational."
+msgstr ""
+
+#: smarty.txt:93
+msgid "Please get in touch with "
+msgstr "Моля свържете се с: "
+
+#: smarty.txt:94
+msgid ""
+"We are a not-for-profit group dedicated to making no-fee wireless Internet "
+"access generally available."
+msgstr ""
+"Ние сме организация с идеална цел, посветена на осъществяването на безтаксов "
+"безжичен интернет достъп,който да е достъпен за всички."
+
+#: smarty.txt:95
+msgid ""
+"Our aim is to encourage the growth of wireless networking and to build "
+"community in interesting and innovative ways."
+msgstr ""
+"Наша цел е да насърчим разстежа на безжичната мрежа и да изградим една "
+"общност по един интересен и иновативен начин."
+
+#: smarty.txt:96
+msgid ""
+"We do this by setting up wireless Internet networks in parks, cafés, "
+"restaurants, bars and other publically-accessible locations across the city."
+msgstr ""
+"Ние постигаме нашата цел като изграждаме мрежи за безжичен интернет в "
+"паркове, заведения, ресторанти, барове и други обществено достъпни "
+"местоположения в рамките на града."
+
+#: smarty.txt:97
+msgid "For a complete and up-to-date listing of our nodes, visit"
+msgstr "За пълен и актуален списък на наши точки за достъп, посетете"
+
+#: smarty.txt:102
+msgid "Re-send validation email"
+msgstr "Повторно изпращане на имейл за валидация"
+
+#: smarty.txt:104
+msgid "Re-send"
+msgstr "Повторно изпращане"
+
+#: smarty.txt:105
+msgid ""
+"Please enter your username and the validation email will be resent to your "
+"email address"
+msgstr ""
+"Моля въведете вашето потребителско име и имейл за валидация ще бъде изпратен "
+"повторно на вашия имейл адрес."
+
+#: smarty.txt:110
+msgid "Lost username"
+msgstr "Загубено потребителско име"
+
+#: smarty.txt:112
+msgid "Retrieve"
+msgstr "Извличам"
+
+#: smarty.txt:113
+msgid "Please enter your email address to recover your username"
+msgstr ""
+"Моля въведете вашия имейл адрес, за да възстановите вашето потребителско име"
+
+#: smarty.txt:114
+#, fuzzy
+msgid "The server currently has one valid user."
+msgstr "Мрежата %s в момента има един валиден потребител."
+
+#: smarty.txt:115
+#, fuzzy, php-format
+msgid "The server currently has %d valid users."
+msgstr "Мрежата %s в момента има %d валидни потребителя."
+
+#: smarty.txt:124
+msgid "User list"
+msgstr "Списък с потребители"
+
+#: smarty.txt:125
+msgid "Sort by:"
+msgstr "Сортиране по:"
+
+#: smarty.txt:126
+msgid "Direction:"
+msgstr "Посока:"
+
+#: smarty.txt:127
+msgid "Sort"
+msgstr "Сортиране"
+
+#: smarty.txt:130
+msgid "Registered On"
+msgstr "Регистриран на"
+
+#: smarty.txt:135
+msgid "Origin"
+msgstr "Произход"
+
+#: smarty.txt:136
+msgid "Logged in Since"
+msgstr "Логнат От"
+
+#: smarty.txt:137
+msgid "Traffic IN/OUT"
+msgstr "Трафик ВХОДЯЩ/ИЗХОДЯЩ"
+
+#~ msgid "No nodes could not be found in the database"
+#~ msgstr "Няма възли в базата данни"
+
+#~ msgid "Is this network the default network?"
+#~ msgstr "Тази ли е мрежата по подразбиране?"
+
+#~ msgid "Component %s is not installed (not found in %s)"
+#~ msgstr "Компонент %s не е инсталиран (не е намерен в: %s)"
+
+#, fuzzy
+#~ msgid "Message"
+#~ msgstr "Съобщение на грешка"
+
+#~ msgid "You MUST fill in all the fields."
+#~ msgstr "Вие ТРЯБВА да попълните всички полета"
+
+#~ msgid "Your password has been changed succesfully."
+#~ msgstr "Вашата парола бе променена успешно."
+
+#~ msgid ": Newest Hotspots"
+#~ msgstr ": Най-новите горещи точки"
+
+#~ msgid "WiFiDog list of the most recent Hotspots opened by the network: "
+#~ msgstr "Списък с най-актуалните горещи точки отворени от мрежата:"
+
+#~ msgid "Address:"
+#~ msgstr "Адрес:"
+
+#~ msgid "Mass transit:"
+#~ msgstr "Масов транзитен поток:"
+
+#~ msgid "Contact:"
+#~ msgstr "Контакт:"
+
+#~ msgid "Deployed Hotspots map"
+#~ msgstr "Карта на действащи хотспотове"
+
+#~ msgid "Deployed Hotspots status with coordinates"
+#~ msgstr "Задействани хотспотове с техните географски координати"
+
+#~ msgid "Change password"
+#~ msgstr "Смяна на парола"
+
+#~ msgid "I have trouble connecting and I would like some help"
+#~ msgstr "Имам проблем със свързването и бих искал помощ"
+
+#~ msgid "Administration"
+#~ msgstr "Администрация"
+
+#~ msgid "The email address must be of the form user@domain.com."
+#~ msgstr "И-мейл адреса трябва да е от вида user@domain.com."
+
+#~ msgid "User Profile"
+#~ msgstr "Профил на потребителя"
+
+#~ msgid "Create"
+#~ msgstr "Създай"
+
+#~ msgid ""
+#~ "Accept users with no email adresses (Normally, NoCat usernames are "
+#~ "expected to be the user's email adress, and the username is generated "
+#~ "from the prefix."
+#~ msgstr ""
+#~ "Приемане на потребители без имейл адреси (Обикновено NoCat потребителски "
+#~ "имена се иска да е този на потребителя, а потребителското име се генерира "
+#~ "от представката."
+
+#~ msgid "Sorry, the user must have a email adress."
+#~ msgstr "Съжалявам, потребителя трябва да има имейл адрес."
+
+#~ msgid "Can not write to directory '"
+#~ msgstr "Не е възможно писането в директорията"
+
+#~ msgid "', ownership should be set to user "
+#~ msgstr "', Регистрация на потребител като собственик"
+
+#~ msgid "You are not a hotspot owner"
+#~ msgstr "Вие не сте притежател на хотспот"
+
+#~ msgid "Nobody is online at this hotspot..."
+#~ msgstr "Никой не е онлайн в този хотспот ..."
+
+#~ msgid "You are not currently at a hotspot..."
+#~ msgstr "В момента не се намирате на  Hotspot..."
+
+#~ msgid "Content from:"
+#~ msgstr "Съдържание от:"
+
+#~ msgid "Content type: "
+#~ msgstr "Вид на съдържанието: "
+
+#~ msgid "Add a"
+#~ msgstr "Прибави"
+
+#~ msgid "Select existing Content : "
+#~ msgstr "Избиране на съществуващо съдържание: "
+
+#~ msgid "Sorry, no content available in the database"
+#~ msgstr "Съжалявам, няма налично съдържание в базата данни"
+
+#~ msgid "Project sponsor:"
+#~ msgstr "Спонсор за проекта:"
+
+#~ msgid "Sponsor of this project:"
+#~ msgstr "Спонсор на този проект:"
+
+#~ msgid "AllowedNodes:"
+#~ msgstr "Позволени хотспотове:"
+
+#~ msgid ""
+#~ "(Content can be displayed on ANY node unless one or more nodes are "
+#~ "selected)"
+#~ msgstr ""
+#~ "(Съдържанието може да се види на КОЙТО И ДА Е хотспот, освен ако не са "
+#~ "избрани един или няколко хотспота)"
+
+#~ msgid "Displayed content:"
+#~ msgstr "Съдържание за виждане:"
+
+#~ msgid "Add a new displayed content OR select an existing one"
+#~ msgstr ""
+#~ "Прибавете ново съдържание за виждане ИЛИ изберете съществуващо такова"
+
+#~ msgid " is not installed"
+#~ msgstr "не е инсталирано"
+
+#~ msgid "You do not have permissions to access any administration functions."
+#~ msgstr ""
+#~ "Нямате права за достъп, за да имате достъп до административните функции."
+
+#~ msgid "User logs"
+#~ msgstr "Потребителски логове"
+
+#~ msgid "Content manager"
+#~ msgstr "Мениджър на съдържанието"
+
+#~ msgid "Node administration:"
+#~ msgstr "Администрация на хотспот"
+
+#~ msgid "Network administration:"
+#~ msgstr "Мрежова администрация"
+
+#~ msgid "Unknown section:"
+#~ msgstr "Неизвестна секция:"
+
+#~ msgid "Logged in as:"
+#~ msgstr "Влезнал (logged in) като: "
+
+#~ msgid "My Profile"
+#~ msgstr "Моят профил"
+
+#~ msgid "Where am I?"
+#~ msgstr "Къде съм?"
+
+#~ msgid "Building your wireless community"
+#~ msgstr "Изграждане на безжично общество"
+
+#~ msgid "Accounts on %s are and will stay completely free."
+#~ msgstr "Акаунтите в %s са все още напълно безплатни и ще останат такива."
+
+#~ msgid "Please inform us of any problem or service interruption at:"
+#~ msgstr ""
+#~ "Моля информирайте ни за проблеми или прекъсване на услугата на адрес: "
+
+#~ msgid ""
+#~ "Network::getDefaultNetwork:  Fatal error: Unable to find the default "
+#~ "network!"
+#~ msgstr ""
+#~ "Мрежа::Всички мрежи: Фатална грешка: Не е възможно намирането на мрежата "
+#~ "по подразбиране!"
+
+#~ msgid "Create new network with id"
+#~ msgstr "Създаване на нова мрежа с идентификация"
+
+#~ msgid ""
+#~ "Network authenticator class.  The subclass of Authenticator to be used "
+#~ "for user authentication (ex: AuthenticatorRadius)"
+#~ msgstr "Клас "
+
+#~ msgid ""
+#~ "The explicit parameters to be passed to the authenticator (ex: "
+#~ "'my_network_id', '192.168.0.11', 1812, 1813, 'secret_key', 'CHAP_MD5')"
+#~ msgstr ""
+#~ " Определени параметри се предават към Автентикатора(напр. "
+#~ "'Моето_мрежово_id', '192.168.0.11', 1812, 1813, ' секретен_ код', "
+#~ "'CHAP_MD5')"
+
+#~ msgid "This will be the from adress of the validation email"
+#~ msgstr "Това ще е обратния адрес на имейла за валидация"
+
+#~ msgid "Network stakeholders"
+#~ msgstr "Акционери на Мрежата"
+
+#~ msgid "New node ID"
+#~ msgstr "Нов  идентификационен номер на хотспот"
+
+#~ msgid "Create a new node"
+#~ msgstr "Създаване на нов хотспот"
+
+#~ msgid "Network content:"
+#~ msgstr "Мрежово съдържание:"
+
+#~ msgid "This node already exists."
+#~ msgstr "Този хотспот вече съществува."
+
+#~ msgid "Create new node with id"
+#~ msgstr "Създаване на нов хотспот с идентификационен номер:"
+
+#~ msgid "in network:"
+#~ msgstr "в мрежа:"
+
+#~ msgid "No deployment statues  could be found in the database"
+#~ msgstr "В базата данни не може да се намери  статут на внедряване"
+
+#~ msgid "Statistics:"
+#~ msgstr "Статистика:"
+
+#~ msgid "Information about the node:"
+#~ msgstr "Информация за хотспота"
+
+#~ msgid "ID"
+#~ msgstr "Идентификационен номер"
+
+#~ msgid "Geocode only"
+#~ msgstr "Само геокод"
+
+#~ msgid "Geocode location"
+#~ msgstr "Местоположение на геокода"
+
+#~ msgid "Node configuration:"
+#~ msgstr "Конфигурация на хотспотовете:"
+
+#~ msgid ""
+#~ "URL to show instead of the portal (if this is not empty, the portal will "
+#~ "be disabled and this URL will be shown instead)"
+#~ msgstr ""
+#~ "Показване на интернет адреса вместо портала (ако това не е празно, "
+#~ "портала ще въде неактивен и този адрес ще бъде показан вместо това)"
+
+#~ msgid "Node owners"
+#~ msgstr "Притежатели на хотспотовете"
+
+#~ msgid "Technical officers"
+#~ msgstr "Технически отговорник"
+
+#~ msgid "Remove technical officer"
+#~ msgstr "Премахване на технически отговорник"
+
+#~ msgid "Add technical officer"
+#~ msgstr "Добавяне на технически отговорник"
+
+#~ msgid "Node content (login):"
+#~ msgstr "Съдържание на хотспота (при влизане):"
+
+#~ msgid "Node content (portal):"
+#~ msgstr "Съдържание на хотспота (портала)"
+
+#~ msgid "Invalid user!"
+#~ msgstr "Невалиден потребител!"
+
+#~ msgid "The user is already a technical officer of this node."
+#~ msgstr "Потребителя вече технически обслужва този хотспот."
+
+#~ msgid "Could not add owner"
+#~ msgstr "Не може да се добави собственик"
+
+#~ msgid "Could not add tech officer"
+#~ msgstr "Не може да се добави техническо длъжностно лице."
+
+#~ msgid "Could not set existing user as tech officer"
+#~ msgstr ""
+#~ "Не може да се определи съществуващия потребител на техническо длъжностно "
+#~ "лице"
+
+#~ msgid "Could not remove owner"
+#~ msgstr "Не може да се отстрани притежателя"
+
+#~ msgid "Could not remove tech officer"
+#~ msgstr "Не може да се премахне техническото лице"
+
+#~ msgid "You do not have administrator privileges"
+#~ msgstr "Вие нямате администраторски привилегии"
+
+#~ msgid "You do not have owner privileges"
+#~ msgstr "Вие нямате привилегии за собственик"
+
+#~ msgid "MAC adresses"
+#~ msgstr "MAC адреси"
+
+#~ msgid ""
+#~ "Sorry, your %s minutes grace period to retrieve your email and validate "
+#~ "your account has now expired. You will have to connect to the internet "
+#~ "and validate your account from another location or create a new account. "
+#~ "For help, please %s click here %s."
+#~ msgstr ""
+#~ "Съжаляваме, вашите %s гратисни минути в които да извлечете вашия имейл и "
+#~ "валидира вашия акаунт току-що изтекоха. Вие ще трябва да се свържете с "
+#~ "интернет и валидирате вашия акаунт от друго място или да създадете нов "
+#~ "акаунт. За помощ, моля %s кликнете %s."
+
+#~ msgid "Username: "
+#~ msgstr "Потребителско име:"
+
+#~ msgid "Real name"
+#~ msgstr "Истинско име"
+
+#~ msgid "Website URL"
+#~ msgstr "Интернет адрес на страницата URL"
+
+#~ msgid ""
+#~ "Unable to retrieve schema version. The database schema is too old to be "
+#~ "updated."
+#~ msgstr ""
+#~ "Не е възможно извличането на схематична версия. Схемата с база данни е "
+#~ "твърде стара, за да се актуализира."
+
+#~ msgid "I already have an account:"
+#~ msgstr "Аз вече си имам акаунт:"
+
+#~ msgid "Frequently asked questions"
+#~ msgstr "Често задавани въпроси"
+
+#~ msgid "Expand portal"
+#~ msgstr "Разширяване на портала"
+
+#~ msgid "Collapse portal"
+#~ msgstr "Свиване на портала"
+
+#~ msgid ""
+#~ "An email with confirmation instructions was sent to your email address.  "
+#~ "Your account has been granted 15 minutes of access to retrieve your email "
+#~ "and validate your account."
+#~ msgstr ""
+#~ "Електронно писмо с инструкции за потвърждение бе изпратено на вашия "
+#~ "електронен адрес. На вашият акаунт бяха дадени 15 минути за достъп в "
+#~ "което време да се извлече вашия електронен адрес и се потвърди вашя "
+#~ "акаунт."
+
+#~ msgid "My content"
+#~ msgstr "Моето съдържание"
+
+#~ msgid ""
+#~ "For some reason, we were unable to determine the web site you initially "
+#~ "wanted to see.  You should now enter a web address in your URL bar."
+#~ msgstr ""
+#~ "Поради неизвестна причина, ние не успяхме да уточним интернет страницата, "
+#~ "която първоначално искахте да видите. Вие сега трябва да въведете уеб "
+#~ "адрес в полето за интернет адреси."
+
+#~ msgid "Content group elements:"
+#~ msgstr "Елементи на груповото съдържание:"
+
+#~ msgid "Add a new content OR select previously created content"
+#~ msgstr "Прибавяне на ново съдържание ИЛИ избиране на вече готово съдържание"
+
+#~ msgid ""
+#~ "Sorry, no elements available at this hotspot or all elements of the "
+#~ "content group have already been shown"
+#~ msgstr ""
+#~ "Съжаляваме, няма налични елементи на този хотспот или всички елементи от "
+#~ "съдържателната група вече са показани"
+
+#~ msgid "Tags"
+#~ msgstr "Тагове"
+
+#~ msgid ""
+#~ "Will be replaced by the urlencoded node_id of the node\n"
+#~ "\t  where the content is displayed, or an empty string if there is no\n"
+#~ "\t  current node</td></tr>"
+#~ msgstr ""
+#~ "Ще се замени от кодиран адрес на хотспота\n"
+#~ "\t където съдържанието е показано, или празна връзка ако няма\n"
+#~ "\t  актуален хотспот</td></tr>"
+
+#~ msgid "Picture preview"
+#~ msgstr "Картинен предварителен преглед"
+
+#~ msgid ""
+#~ "How much bonus feeds that do not publish as often get over feed that "
+#~ "publish more often.\n"
+#~ "\t\t\t\t\t  \tThe default is 0.75, with a typical range between 0 and "
+#~ "1.  \n"
+#~ "\t\t\t\t\t \tAt 0, you have a classic RSS aggregator, meaning the n most "
+#~ "recent entries picked from all feeds\n"
+#~ "\t\t\t\t\t \twill be displayed. 1 is usually as high as you'll want to "
+#~ "go:  Assuming that all \n"
+#~ "\t\t\t\t\t \tan homogenous internal distribution (ex:  one feed publishes "
+#~ "exactly one entry a day, the \n"
+#~ "\t\t\t\t\t \tsecond once every two days, and the third once every three "
+#~ "days), and you ask for 15 entries,\n"
+#~ "\t\t\t\t\t \tthere will be 5 of each.  While that may not sound usefull, "
+#~ "it still is, as the feed's distribution is \n"
+#~ "\t\t\t\t\t \tusually not homogenous."
+#~ msgstr ""
+#~ "Колко бонус форми, които не се публикуват толкова често, надвишават тези "
+#~ "форми които се публикуват по-често.\n"
+#~ "Стойността по подразбиране е 0.75, с обичаен диапазон между 0 и 1.\n"
+#~ "При 0, имаме класически RSS агрегатор, което значи, че n-те най-скорошни "
+#~ "влизания избрани от всички форми\n"
+#~ "ще се видят. 1 обикновено е най-високата стойност: Имайки предвид, чеl\n"
+#~ "едно хомогенно вътрешно разпределение (напр: една форма публикува точно "
+#~ "едно записване на ден, \n"
+#~ "второто ще е веднъж на всеки два дни, а третото ще е веднъж на всеки три "
+#~ "дни) като в същото време искате 15 записвания,\n"
+#~ "резултата ще е по 5 за всяко. Това може да не ви звучи като полезна идея, "
+#~ "но то все още е, както при формата на дистрибуция, обикновено не "
+#~ "хомогенен резултат."
+
+#~ msgid ""
+#~ "Set the oldest entries (in seconds) you are willing to see.  Any entries "
+#~ "older than this will not\n"
+#~ "\t\t\t\t\t \tbe considered at all for display, even if it means that the "
+#~ "configured number of items to be displayed isn't reached.\n"
+#~ "\t\t\t\t\t\tIt's only usefull if\n"
+#~ "\t\t\t\t\t \tall your feed publish very rarely, and you don't want very "
+#~ "old entries to show up."
+#~ msgstr ""
+#~ "Нагласете най-старите записвания (в секунди), които искате да видите. "
+#~ "Всички записвания по-стари от тези няма\n"
+#~ "\t да бъдат счетени за показване дори, ако не се достигне указания брой "
+#~ "влизания.\n"
+#~ "\t Това е полезно само когато формата се пубикува много рядко, и не "
+#~ "искате да се показват много стари влизания."
+
+#~ msgid ""
+#~ "WARNING:  This feed does not include the publication dates. \n"
+#~ "\t\t\tThe system needs to be able to compute approximate publication date "
+#~ "for each entry, so the entry can be weighted against the others. In order "
+#~ "for the aggregator to do a good job, you need to estimate fublication "
+#~ "frequency of the items, in days.\n"
+#~ "\t\t\t  If unset, defaults to one day. \n"
+#~ "\t\t\t\t\t"
+#~ msgstr ""
+#~ "ВНИМАНИЕ: Тази форма не включва дати на публикация. \n"
+#~ "\t Системата трябва да изчисли приблизителната дата на публикация за "
+#~ "всяко записване, така че записването да може да се сравни с другите. За "
+#~ "да може агрегатора да свърши добра работа, трябва да настроите честотата "
+#~ "на публикация на обектите, в дни. \n"
+#~ "\t  Ако не се настрои, по подразбиране се приема за един ден. \n"
+#~ "\t"
+
+#~ msgid ""
+#~ "The bias to be given to the source by the selection algorithm.\n"
+#~ "\t\t\t\t\t    Bias must be > 0 , typical values would be between 0.75 and "
+#~ "1.5 and default is 1 (no bias).  A bias of 2 will cause the items to "
+#~ "\"look\" twice as recent to the algorithm.\n"
+#~ "\t\t\t\t\t    A bias of 0.5 to look twice as old.  Be carefull, a bias of "
+#~ "2 will statistically cause the \n"
+#~ "\t\t\t\t\t  feed to have MORE than twice as many items displayed. "
+#~ msgstr ""
+#~ "Отклонението трябва да се даде чрез селектирането на алгоритъм.\n"
+#~ "\t Основата трябва да е > 0 , обичайни стойности биха били между 0.75 and "
+#~ "1.5, а по подразбиране е 1 (няма отклонение).  Едно отклонение от 2 ще "
+#~ "накара обектите да \"изглеждат\" два пъти по-актуални към алгоритъма.\n"
+#~ "\t  Едно отклонение от 0.5 да изглежда два пъти по-старо. Внимавайте, "
+#~ "едно отклонение от 2 статистически ще\n"
+#~ "\t накара формата да извлече ПОВЕЧЕ от два пъти броя на показаните обекти."
+
+#~ msgid "(again)"
+#~ msgstr "(отново)"
+
+#~ msgid ""
+#~ "Please enter your current username, your current password, and your new "
+#~ "password (with confirmation)"
+#~ msgstr ""
+#~ "Моля въведете вашето настоящо потребителско име, настояща парола и вашата "
+#~ "нова парола (с потвърждение)"
+
+#~ msgid "Frequently Asked Questions"
+#~ msgstr "Често задавани въпроси"
+
+#~ msgid "Do I have to pay to get access to the Internet"
+#~ msgstr "TТрябва ли да платя, за да имам достъп до интернет"
+
+#~ msgid ""
+#~ "No, Internet access is provided for free by the venue you are actually at"
+#~ msgstr ""
+#~ "Не, достъпа до интернет се предоставя безплатно според мястото където се "
+#~ "намирате"
+
+#~ msgid "I have failed to validate my account in x minutes"
+#~ msgstr "Не успях да потвърдя моя акаунт след х минути"
+
+#~ msgid ""
+#~ "You have been given an amount of minutes of Internet access in order to "
+#~ "retrieve the email we sent to you and validate your free account. What "
+#~ "you can do now is either <a href='signup.php'>create a new account</a> "
+#~ "and then validate it properly, or get on the Internet from somewhere else "
+#~ "(home, free Internet cafe, etc.) and validate the account you just "
+#~ "created. If you need us to resend you the validation email, please <a "
+#~ "href='resend_validation.php'>click here</a>"
+#~ msgstr ""
+#~ "Дадени ви са определен брой минути интернет достъп за да може да "
+#~ "извлечете имейла, който ви изпратихме и валидирате вашия безплатен "
+#~ "акаунт. Това, което може да направите сега е или да <a ref='signup."
+#~ "php'>създадете нов акаунт</a> след което да го валидирате както трябва, "
+#~ "или да се свържете с интернет от друго място (у дома, безплатно интернет "
+#~ "кафе и т.н.) и валидирате акаунта, който току-що създадохте. Ако искате "
+#~ "повторно да ви изпратим имейла за валидация, моля <a "
+#~ "ref='resend_validation.php'>кликнете тук</a>"
+
+#~ msgid ""
+#~ "What steps are required in order to create and validate a new account?"
+#~ msgstr ""
+#~ "Какви стъпки трябва да предприема, за да създам и потвърдя един нов "
+#~ "акаунт?"
+
+#~ msgid "Here is an overview of the steps"
+#~ msgstr "Ето един общ поглед на необходимите стъпки"
+
+#~ msgid ""
+#~ "Pick a username, enter your email address, and enter the password you "
+#~ "would like. An email will be sent to you with a link you can click to "
+#~ "validate your account"
+#~ msgstr ""
+#~ "Изберете потребителско име, въведете вашия имейл адрес, и въведете "
+#~ "паролата, която си изберете. Ще ви бъде изпратен имейл с линк, който да "
+#~ "кликнете, за да валидирате вашия акаунт."
+
+#~ msgid ""
+#~ "Once the account is created, you need Internet access in order to check "
+#~ "your email and click the validation link. In order to get temporary "
+#~ "access to the Internet during your validation period, visit any URL (for "
+#~ "example www.google.com) to get the login page again"
+#~ msgstr ""
+#~ "След като акаунта ви бъде създаден, ще ви трябва интернет достъп, за да "
+#~ "си проверите вашия имейл и да кликнете на линка за валидация. За да "
+#~ "получите временен достъп до интернет по време на вашето време за "
+#~ "валидация, посетете който и да е адрес (например, www.google.com), за да "
+#~ "се изпише страницата за логване отново"
+
+#~ msgid ""
+#~ "Enter your login information. You will be given 15 minutes of Internet "
+#~ "access, plenty of time to check your email and click on the link"
+#~ msgstr ""
+#~ "Въведете вашата информация за логване (login). Ще ви се даде 15 минути "
+#~ "интернет достъп, предостатъчно време да си проверите вашата поща и да "
+#~ "кликнете на линка"
+
+#~ msgid "Once that last step is done, you will have full free Internet access"
+#~ msgstr ""
+#~ "След като приключите с последната стъпка, вие ще имате пълен безплатен "
+#~ "интернет достъп"
+
+#~ msgid "The network currently has"
+#~ msgstr "Мрежата в момента има"
+
+#~ msgid "valid users"
+#~ msgstr "валидни потребители"
+
+#~ msgid "user(s) are currently online"
+#~ msgstr "потребителят(ите) в момента са онлайн"
+
+#~ msgid ""
+#~ "You have now been granted 15 minutes of Internet access without being "
+#~ "validated to go and activate your account."
+#~ msgstr ""
+#~ "Сега вече ви е даден 15 минутен интернет достъп без да сте валидиран, в "
+#~ "което време трябва да идете и активирате вашия акаунт."
+
+#~ msgid ""
+#~ "If you fail to validate your account in 15 minutes, you will have to "
+#~ "validate it from somewhere else."
+#~ msgstr ""
+#~ "Ако не успеете да валидирате вашия акаунт до 15 минути, вие ще трябва да "
+#~ "го валидирате от друго място."
+
+#~ msgid "You have failed to validate your account in 15 minutes."
+#~ msgstr "Вие не успяхте да валидирате вашия акаунт за 15 минути."
+
+#~ msgid "is unknown to this authentication server."
+#~ msgstr "не е познато на сървъра за автентикация."
+
+#~ msgid "Id"
+#~ msgstr "Идентификационен номер"
+
+#~ msgid ""
+#~ "Your email address must be valid in order for your account to be activated"
+#~ msgstr ""
+#~ "Вашият имейл адрес трябва да е валиден, за да може да се активира вашия "
+#~ "акаунт"
+
+#~ msgid "Find more Hotspots"
+#~ msgstr "Откриване на още хотспотове"
+
+#~ msgid "List of all Hotspots"
+#~ msgstr "Списък с всички хотспотове"
+
+#~ msgid "User management"
+#~ msgstr "Управление на потребителя"
+
+#~ msgid "Create new account"
+#~ msgstr "Създаване на нов акаунт"
+
+#~ msgid "Accounts on"
+#~ msgstr "Акаунтите са включени"
+
+#~ msgid ""
+#~ "are and will remain <emp>totally free</emp>, use the left menu to create "
+#~ "a new one or recover a lost username or password"
+#~ msgstr ""
+#~ "са и ще останат <emp>напълно безплатни</emp>, използвайте лявото меню, за "
+#~ "да създадете нов или да възстановите загубено потребителско име или парола"
+
+#~ msgid "Please report any problem or interruption in our service to"
+#~ msgstr "Моля съобщете за проблем или прекъсване на нашата услуга на"
+
+#~ msgid "Welcome! Hotspot:"
+#~ msgstr "Добре дошли! Хотспот:"
+
+#~ msgid "Online at this hotspot"
+#~ msgstr "Онлайн при този хотспот"
+
+#~ msgid "Go to the site I originally requested"
+#~ msgstr "Преминаване към сайта, който първоначално заявих"
+
+#~ msgid "Configurations of all nodes of the"
+#~ msgstr "Конфигурации на всички хотспотове на"
+
+#~ msgid "Action"
+#~ msgstr "Действие"
+
+#~ msgid "Owner"
+#~ msgstr "Собственик"
+
+#~ msgid "RSS URL"
+#~ msgstr "RSS адрес"
+
+#~ msgid "Street address"
+#~ msgstr "Уличен адрес"
+
+#~ msgid "Add new node"
+#~ msgstr "Прибавяне на нов хотспот"
+
+#~ msgid "Update node"
+#~ msgstr "Актуализиране на хотспота"
+
+#~ msgid "Administrators"
+#~ msgstr "Администратори"
+
+#~ msgid "Give a user rights to administer this node"
+#~ msgstr ""
+#~ "Даване на определен потребител права за администриране на този хотспот"
+
+#~ msgid "User ID"
+#~ msgstr "Идентификационен номер на потребителя"
+
+#~ msgid ": Newest HotSpots"
+#~ msgstr ": Най-нови хотспотове"
+
+#~ msgid "WiFiDog list of the most recent HotSpots opened by the network: "
+#~ msgstr "Списък на WiFiDog с най-новите активни хотспотове от мрежата:"
+
+#~ msgid "Status of the"
+#~ msgstr "Статус на"
+
+#~ msgid "open"
+#~ msgstr "активен"
+
+#~ msgid "Hotspots (Get this list as a <a href='?format=RSS'>RSS feed</a>)"
+#~ msgstr ""
+#~ "Хотспотове (Извличане на този списък като <a href='?format=RSS'>RSS-Feed</"
+#~ "a>)"
+
+#~ msgid "h"
+#~ msgstr "час"
+
+#~ msgid "min"
+#~ msgstr "мин"
+
+#~ msgid "Find more HotSpots"
+#~ msgstr " Намери още хотспотове"
+
+#~ msgid "List of all HotSpots"
+#~ msgstr "Списък с всички хотспотове"
+
+#~ msgid "Q:"
+#~ msgstr "Въпрос:"
+
+#~ msgid "A:"
+#~ msgstr "Отговор:"
+
+#~ msgid ""
+#~ "Note:  This is actually a list of how many new user's first connection "
+#~ "occured at each hotspot, taking report restrictions into account."
+#~ msgstr ""
+#~ "Бележка: Това всъщност е списък на това колко първи свързвания са се "
+#~ "осъществили от нови потребители на всеки хотспот, като се имат предвид "
+#~ "ограниченията при доклада."
+
+#~ msgid "Real Name"
+#~ msgstr "Истинско име"
+
+#~ msgid "Website"
+#~ msgstr "Интернет страница"
+
+#~ msgid "Language:"
+#~ msgstr "Език:"
+
+#~ msgid "addSourceFeed(): url is empty!"
+#~ msgstr "addSourceFeed(): URL е празно!"
+
+#~ msgid "computePublicationInterval(): Missing feed!"
+#~ msgstr "computePublicationInterval(): липсваща форма!"
+
+#~ msgid "computePublicationInterval(): uasort() failed"
+#~ msgstr "computePublicationInterval(): uasort() не се получи"
+
+#~ msgid "get_rss_info(): Feed missing"
+#~ msgstr "get_rss_info(): липсваща форма"
+
+#~ msgid "get_rss_info(): uasort() failed!"
+#~ msgstr "get_rss_info(): uasort() не стана!"
+
+#~ msgid "Source: "
+#~ msgstr "Източник: "
+
+#~ msgid "Today"
+#~ msgstr "Днес"
+
+#~ msgid "owner"
+#~ msgstr "Собственик"
+
+#~ msgid "technical officer"
+#~ msgstr "Техническо лице"
+
+#~ msgid "Select existing content"
+#~ msgstr "Избиране на съществуващо съдържание"
+
+#~ msgid "Please inform us of any problem or service interruption at: %s"
+#~ msgstr ""
+#~ "Моля информирайте ни за евентуален проблем или прекъсване на услугата на: "
+#~ "%s"
+
+#~ msgid "Node content (login)"
+#~ msgstr "Съдържание на хотспота (логване)"
+
+#~ msgid "Node content (portal)"
+#~ msgstr "Съдържание на хотспота (портал)"
+
+#~ msgid ""
+#~ "Server::getDefaultServer: Fatal error: Unable to find the default server!"
+#~ msgstr ""
+#~ "Сървър::getDefaultServer: Фатална грешкаr: Не може да се открие съръра по "
+#~ "подрабиране!"
+
+#~ msgid ""
+#~ "Server::getCurrentServer: Fatal error: Unable to find current server in "
+#~ "the database!"
+#~ msgstr ""
+#~ "Сървър::getCurrentServer:Фатална грешкаr: Не може да се открие текущия "
+#~ "сървър в базата данни!"
+
+#~ msgid "Server:"
+#~ msgstr "Сървър:"
+
+#~ msgid "Server::getSelectServerUI: Fatal error: No servers in the database!"
+#~ msgstr "Сървър::getAllServers: Фатална грешка: Няма сървъри в базата данни!"
+
+#~ msgid "Add a new server with ID"
+#~ msgstr "Прибавяне на нов сървър с ИН"
+
+#~ msgid "Server ID"
+#~ msgstr "Идентификационен номер на сървъра"
+
+#~ msgid "Server name"
+#~ msgstr "Име на сървъра"
+
+#~ msgid "Is this server the default server?"
+#~ msgstr "Този сървър сървъра по подразбиране ли е?"
+
+#~ msgid ""
+#~ "Cannot delete default server, create another one and select it before "
+#~ "removing this one."
+#~ msgstr ""
+#~ "Не може да се премахне сървъра по подразбиране, създайте нов и го "
+#~ "селектирайте преди да премахнете този."
+
+#~ msgid "Could not update real name."
+#~ msgstr "Не е възможно да се актуализира вашето истинско потребителско име."
+
+#~ msgid "Could not update website URL."
+#~ msgstr "Не е възможно да се актуализира вашия електронен URL адрес."
+
+#~ msgid "Could not update username visibility flag."
+#~ msgstr ""
+#~ "Не е възможно да се актуализира видимостта на вашето потребителско име."
+
+#~ msgid "Nodes"
+#~ msgstr "Хотспотове"
+
+#~ msgid "Add new Node"
+#~ msgstr "Добавяне на нов хотспот"
+
+#~ msgid "Networks"
+#~ msgstr "Мрежи"
+
+#~ msgid "Servers"
+#~ msgstr "Сървъри"
+
+#~ msgid "Get this list as a RSS feed"
+#~ msgstr "Извличане на този списък като RSS форма"
+
+#~ msgid "Telefon"
+#~ msgstr "Телефон"
+
+#~ msgid "Welcome at"
+#~ msgstr "Добре дошли при"
+
+#~ msgid "The"
+#~ msgstr "Определителен член"
+
+#~ msgid "network currently has"
+#~ msgstr "мрежата в момента има"
+
+#~ msgid "valid"
+#~ msgstr "валиден "
+
+#~ msgid "user,"
+#~ msgstr "потребител,"
+
+#~ msgid "users,"
+#~ msgstr "потребители,"
+
+#~ msgid "user is"
+#~ msgstr "потребителя е"
+
+#~ msgid "users are"
+#~ msgstr "потребителите са"
+
+#~ msgid "currently online"
+#~ msgstr "в момента онлайн"
+
+#~ msgid "It currently has"
+#~ msgstr "В момента има"
+
+#~ msgid "deployed"
+#~ msgstr "проявени "
+
+#~ msgid "hotspot,"
+#~ msgstr "хотспот,"
+
+#~ msgid "hotspots,"
+#~ msgstr "хотспотове,"
+
+#~ msgid "hotspot is"
+#~ msgstr "хотспот е"
+
+#~ msgid "hotspots are"
+#~ msgstr "хотспотове"
+
+#~ msgid "currently operational"
+#~ msgstr "в момента активен"
+
+#~ msgid "I already have an account"
+#~ msgstr "Аз вече имам акаунт"
+
+#~ msgid "Continue to your requested homepage"
+#~ msgstr "Продължавам към желаната интернет страница"
+
+#~ msgid "Your account has been granted"
+#~ msgstr "Вашият акаунт има"
+
+#~ msgid "minutes of access to retrieve your email and validate your account."
+#~ msgstr ""
+#~ "броени минути достъп за извличането на вашия имейл и за валидиране на "
+#~ "вашия акаунт."
+
+#~ msgid "The node %s could not be found in the database!"
+#~ msgstr "Хотспота %s не може да бъде намерен в базата данни!"
+
+#~ msgid "Add new content"
+#~ msgstr "Добавяне на ново съдържание"
+
+#~ msgid "Is persistent (reusable and read-only)?"
+#~ msgstr ""
+#~ "е непроменлив (който може да се използва повторно и не може да се правят "
+#~ "промени)?"
+
+#~ msgid "Startpage"
+#~ msgstr "Стартова страница"
+
+#~ msgid "Deployed Hotspots status"
+#~ msgstr "Статус на разгърнатите хотспотове"
+
+#~ msgid "FAQ"
+#~ msgstr "Често задавани въпроси"
+
+#~ msgid "Support"
+#~ msgstr "Поддръжка"
+
+#~ msgid "For Hotspot owners"
+#~ msgstr "За притежатели на хотспотове"
+
+#~ msgid "Impress"
+#~ msgstr "Впечатлявам"
+
+#~ msgid "Deployed HotSpots status with coordinates"
+#~ msgstr "Статус на действуващите хотспотове с координати"
+
+#~ msgid "Search the web"
+#~ msgstr "Търсене в мрежата"
+
+#~ msgid "Error while obtaingin your LDAP information."
+#~ msgstr "Грешка при извличането на вашата LDAP информация."
+
+#~ msgid ""
+#~ "Unable to retrieve the selected network, the %s REQUEST parameter does "
+#~ "not exist"
+#~ msgstr ""
+#~ "Не може да се извлече избраната мрежа, параметъра %s REQUEST не съществува"
+
+#~ msgid "Get this list as a PDF file"
+#~ msgstr "Извличане на този списък като PDF файл"
+
+#~ msgid "Get this list for Google Earth"
+#~ msgstr "Извличане на този списък за импорт в Google Earth"
+
+#~ msgid ""
+#~ "How much bonus feeds that do not publish as often get over feed that "
+#~ "publish more often.\n"
+#~ "                    The default is 0.75, with a typical range between 0 "
+#~ "and 1.\n"
+#~ "                    At 0, you have a classic RSS aggregator, meaning the "
+#~ "n most recent entries picked from all feeds\n"
+#~ "                    will be displayed. 1 is usually as high as you'll "
+#~ "want to go:  Assuming that all\n"
+#~ "                    an homogenous internal distribution (ex:  one feed "
+#~ "publishes exactly one entry a day, the\n"
+#~ "                    second once every two days, and the third once every "
+#~ "three days), and you ask for 15 entries,\n"
+#~ "                    there will be 5 of each.  While that may not sound "
+#~ "usefull, it still is, as the feed's distribution is\n"
+#~ "                    usually not homogenous."
+#~ msgstr ""
+#~ "Колко бонус форми, които не се публикуват толкова често, надвишават тези "
+#~ "форми които се публикуват по-често.\n"
+#~ "Стойността по подразбиране е 0.75, с обичаен диапазон между 0 и 1.\n"
+#~ "При 0, имаме класически RSS агрегатор, което значи, че n-те най-скорошни "
+#~ "влизания избрани от всички форми\n"
+#~ "ще се видят. 1 обикновено е най-високата стойност: Имайки предвид, чеl\n"
+#~ "едно хомогенно вътрешно разпределение (напр: една форма публикува точно "
+#~ "едно записване на ден, \n"
+#~ "второто ще е веднъж на всеки два дни, а третото ще е веднъж на всеки три "
+#~ "дни) като в същото време искате 15 записвания,\n"
+#~ "резултата ще е по 5 за всяко. Това може да не ви звучи като полезна идея, "
+#~ "но то все още е, както при формата на дистрибуция, обикновено не "
+#~ "хомогенен резултат."
+
+#~ msgid ""
+#~ "Set the oldest entries (in seconds) you are willing to see.  Any entries "
+#~ "older than this will not\n"
+#~ "                    be considered at all for display, even if it means "
+#~ "that the configured number of items to be displayed isn't reached.\n"
+#~ "                    It's only usefull if all your feed publish very "
+#~ "rarely, and you don't want very old entries to show up."
+#~ msgstr ""
+#~ "Нагласете най-старите записвания (в секунди), които искате да видите. "
+#~ "Всички влизания по-стари от тези няма\n"
+#~ "да се виждат въобще дори, ако това означава, че определения брой обекти, "
+#~ "които трбява да се покажат не е достигнат.\n"
+#~ "Това ще е полезно ако всички ваши форми публикуват доста рядко, и не "
+#~ "искате много стари записвания да се покажат."
+
+#~ msgid ""
+#~ "WARNING:  This feed does not include the publication dates.\n"
+#~ "                                                                                     The "
+#~ "system needs to be able to compute approximate publication\n"
+#~ "                                                                                     date "
+#~ "for each entry, so the entry can be weighted against the\n"
+#~ "                                                                                     others. "
+#~ "In order for the aggregator to do a good job, you need\n"
+#~ "                                                                                     to "
+#~ "estimate fublication frequency of the items, in days.\n"
+#~ "                                                                                     If "
+#~ "unset, defaults to one day."
+#~ msgstr ""
+#~ "ВНИМАНИЕ: Тази форма не включва датите на публикация.\n"
+#~ "Системата трябва да може да изчисли приблизителна дата на публикация\n"
+#~ "за всяко записване, за да може записването да се съпостави спрямо\n"
+#~ "останалите. За да може агрегатора да свърши добра работа, вие трбява \n"
+#~ "да установите честотата на публикация на обектите, в дни.\n"
+#~ "Ако не се укаже, стойността по подразбиране е 1 ден."
+
+#~ msgid ""
+#~ "The bias to be given to the source by the selection algorithm.\n"
+#~ "                                                        Bias must be > "
+#~ "0 , typical values would be between 0.75 and 1.5\n"
+#~ "                                                        and default is 1 "
+#~ "(no bias).  A bias of 2 will cause the items\n"
+#~ "                                                        to \"look\" twice "
+#~ "as recent to the algorithm. A bias of 0.5 to\n"
+#~ "                                                        look twice as "
+#~ "old. Be carefull, a bias of 2 will statistically\n"
+#~ "                                                        because the feed "
+#~ "to have MORE than twice as many items displayed."
+#~ msgstr ""
+#~ "Отклонението трябва да се даде чрез селектирането на алгоритъм.\n"
+#~ "Основата трябва да е > 0 , обичайни стойности биха били между 0.75 and "
+#~ "1.5\n"
+#~ "а по подразбиране е 1 (няма отклонение).  Едно отклонение от 2 ще накара "
+#~ "обектите\n"
+#~ "да изглеждат два пъти по-актуални към алгоритъма. Едно отклонение от 0.5 "
+#~ "да\n"
+#~ "изглежда два пъти по-старо. Внимавайте, едно отклонение от 2 "
+#~ "статистически ще\n"
+#~ "накара формата да извлече ПОВЕЧЕ от два пъти броя на показаните обекти."
+
+#~ msgid "Content from"
+#~ msgstr "Съдържание от"
+
+#~ msgid "You must login before you can change your password."
+#~ msgstr "Вие трбява да влезете преди да промените паролата си."
+
+#~ msgid "Sorry, user %s does not exist !"
+#~ msgstr "Съжаляваме, потребител %s не съществува!"
+
+#~ msgid "The password for %s has been successfully changed."
+#~ msgstr "Паролата за %s бе променена."
+
+#~ msgid "Sorry, invalid change password request !"
+#~ msgstr "Съжаляваме, невалидно искане за промяна на паролата!"
+
+#~ msgid "%s %d display order and location"
+#~ msgstr "Ред на дисплей и локация %s %d"
+
+#~ msgid "Last update date"
+#~ msgstr "Последна дата на актуализация"
+
+#~ msgid ""
+#~ "How much bonus feeds that do not publish as often get over feed that "
+#~ "publish more often.\n"
+#~ "                            The default is 0.75, with a typical range "
+#~ "between 0 and 1.\n"
+#~ "                            At 0, you have a classic RSS aggregator, "
+#~ "meaning the n most recent entries picked from all feeds\n"
+#~ "                            will be displayed. 1 is usually as high as "
+#~ "you'll want to go:  Assuming that all\n"
+#~ "                            an homogenous internal distribution (ex:  one "
+#~ "feed publishes exactly one entry a day, the\n"
+#~ "                            second once every two days, and the third "
+#~ "once every three days), and you ask for 15 entries,\n"
+#~ "                            there will be 5 of each.  While that may not "
+#~ "sound usefull, it still is, as the feed's distribution is\n"
+#~ "                            usually not homogenous."
+#~ msgstr ""
+#~ "Колко бонус форми, които не се публикуват толкова често, надвишават тези "
+#~ "форми които се публикуват по-често.\n"
+#~ "Стойността по подразбиране е 0.75, с обичаен диапазон между 0 и 1.\n"
+#~ "При 0, имаме класически RSS агрегатор, което значи, че n-те най-скорошни "
+#~ "влизания избрани от всички форми\n"
+#~ "ще се видят. 1 обикновено е най-високата стойност: Имайки предвид, чеl\n"
+#~ "едно хомогенно вътрешно разпределение (напр: една форма публикува точно "
+#~ "едно записване на ден, \n"
+#~ "второто ще е веднъж на всеки два дни, а третото ще е веднъж на всеки три "
+#~ "дни) като в същото време искате 15 записвания,\n"
+#~ "резултата ще е по 5 за всяко. Това може да не ви звучи като полезна идея, "
+#~ "но то все още е, както при формата на дистрибуция, обикновено не "
+#~ "хомогенен резултат."
+
+#~ msgid ""
+#~ "Set the oldest entries (in seconds) you are willing to see.  Any entries "
+#~ "older than this will not\n"
+#~ "                            be considered at all for display, even if it "
+#~ "means that the configured number of items to be displayed isn't reached.\n"
+#~ "                            It's only usefull if all your feed publish "
+#~ "very rarely, and you don't want very old entries to show up."
+#~ msgstr ""
+#~ "Нагласете най-старите записвания (в секунди), които искате да видите. "
+#~ "Всички записвания по-стари от тези няма\n"
+#~ "да бъдат счетени за показване дори, ако не се достигне указания брой "
+#~ "влизания.\n"
+#~ "Това е полезно само когато формата се пубикува много рядко, и не искате "
+#~ "да се показват много стари влизания."
+
+#~ msgid ""
+#~ "WARNING:  This feed does not include the publication dates.\n"
+#~ "                                                                                                 The "
+#~ "system needs to be able to compute approximate publication\n"
+#~ "                                                                                                 date "
+#~ "for each entry, so the entry can be weighted against the\n"
+#~ "                                                                                                 others. "
+#~ "In order for the aggregator to do a good job, you need\n"
+#~ "                                                                                                 to "
+#~ "estimate fublication frequency of the items, in days.\n"
+#~ "                                                                                                 If "
+#~ "unset, defaults to one day."
+#~ msgstr ""
+#~ "ВНИМАНИЕ: Тази форма не включва датите на публикация.\n"
+#~ "                                                                                                                             Системата "
+#~ "трябва да може да изчисли приблизителна дата на\n"
+#~ "                                                                                                                             публикация "
+#~ "на всяко влизане така, че влизанието да може да \n"
+#~ "                                                                                                                             се "
+#~ "съпостави с другите. За да може агрегатора да свърши добра работа, вие "
+#~ "трябва да\n"
+#~ "                                                                                                                             направите "
+#~ "приблизителна оценка на честотата на публикуване на обектите, в дни.\n"
+#~ "                                                                                                                             Ако "
+#~ "не е указано, по подразбиране е взета стойността 1 ден."
+
+#~ msgid ""
+#~ "The bias to be given to the source by the selection algorithm.\n"
+#~ "                                                                Bias must "
+#~ "be > 0 , typical values would be between 0.75 and 1.5\n"
+#~ "                                                                and "
+#~ "default is 1 (no bias).  A bias of 2 will cause the items\n"
+#~ "                                                                to \"look"
+#~ "\" twice as recent to the algorithm. A bias of 0.5 to\n"
+#~ "                                                                look "
+#~ "twice as old. Be carefull, a bias of 2 will statistically\n"
+#~ "                                                                cause the "
+#~ "feed to have MORE than twice as many items displayed."
+#~ msgstr ""
+#~ "Отклонението трябва да се даде чрез селектирането на алгоритъм.\n"
+#~ "Основата трябва да е > 0 , обичайни стойности биха били между 0.75 and "
+#~ "1.5\n"
+#~ "а по подразбиране е 1 (няма отклонение).  Едно отклонение от 2 ще накара "
+#~ "обектите\n"
+#~ "да изглеждат два пъти по-актуални към алгоритъма. Едно отклонение от 0.5 "
+#~ "да\n"
+#~ "изглежда два пъти по-старо. Внимавайте, едно отклонение от 2 "
+#~ "статистически ще\n"
+#~ "накара формата да извлече ПОВЕЧЕ от два пъти броя на показаните обекти."
+
+#~ msgid "Add existing content"
+#~ msgstr "Прибавяне на съществуващо съдържание"
+
+#~ msgid "sponsor"
+#~ msgstr "спонсор"
+
+#~ msgid "One hotspot is currently operationnal."
+#~ msgstr "В момента един хотспот е активен."
+
+#~ msgid "%d hotspots are currently operationnal."
+#~ msgstr "%d хотспота са активни в момента."
+
+#~ msgid ""
+#~ "Sorry, your %.0f minutes grace period to retrieve your email and validate "
+#~ "your account has now expired. You will have to connect to the internet "
+#~ "and validate your account from another location. For more help, please %s "
+#~ "click here %s."
+#~ msgstr ""
+#~ "Съжаляваме, вашите %.0f минути гратисен период за извличане на вашия и-"
+#~ "мейл и валидация на вашия акаунт ви изтече сега. Ще трябва да се свържете "
+#~ "към интернет пак и потвърдите вашя акаунт от друго местоположение. За още "
+#~ "помощ, моля %s кликнете тук %s."
+
+#~ msgid ""
+#~ "Server::getCurrentServer: Fatal error: Unable to find a server matching "
+#~ "hostname %s in the database!"
+#~ msgstr ""
+#~ "Сървър::Сегашен сървър: Фатална грешка: Не е възможно намирането на "
+#~ "сървър, съответсващ на компютъра, който управлява терминали %s в базата "
+#~ "данни!"
+
+#~ msgid ""
+#~ "Because of one hotspot not being monitored we don't know if it is "
+#~ "currently operationnal."
+#~ msgstr ""
+#~ "Поради това, че един хотспот не се следи, ние не знаем дали в момента "
+#~ "функционират правилно."
+
+#~ msgid ""
+#~ "Because of %d hotspots not being monitored we don't know if they are "
+#~ "currently operationnal."
+#~ msgstr ""
+#~ "Поради това, че %d хотспотове не се следят, ние не знаем дали в момента "
+#~ "функционират правилно."
Index: /branches/newtoken/wifidog/locale/de/LC_MESSAGES/messages.po
===================================================================
--- /branches/newtoken/wifidog/locale/de/LC_MESSAGES/messages.po	(revision 1397)
+++ /branches/newtoken/wifidog/locale/de/LC_MESSAGES/messages.po	(revision 1397)
@@ -0,0 +1,5599 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-06-26 11:47-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../node_list.php:131 ../classes/Node.php:323 ../classes/Node.php:685
+msgid "Deployed"
+msgstr ""
+
+#: ../node_list.php:132 ../classes/Node.php:324 ../classes/Node.php:686
+msgid "In planning"
+msgstr ""
+
+#: ../node_list.php:132 ../classes/Node.php:325 ../classes/Node.php:687
+msgid "In testing"
+msgstr ""
+
+#: ../node_list.php:132 ../classes/Node.php:326 ../classes/Node.php:688
+msgid "Non-Wifidog node"
+msgstr ""
+
+#: ../node_list.php:132 ../classes/Node.php:327 ../classes/Node.php:689
+msgid "Permanently closed"
+msgstr ""
+
+#: ../node_list.php:132 ../classes/Node.php:328 ../classes/Node.php:690
+msgid "Temporarily closed"
+msgstr ""
+
+#: ../node_list.php:173 ../classes/NodeLists/NodeListHTML.php:173
+msgid "All"
+msgstr ""
+
+#: ../node_list.php:173 ../hotspots_map.php:114
+#: ../classes/NodeLists/NodeListHTML.php:175
+msgid "Change network"
+msgstr "Netzwerk wechseln"
+
+#: ../node_list.php:177 ../classes/NodeLists/NodeListHTML.php:176
+#: ../classes/NodeLists/NodeListHTML.php:221
+#, fuzzy
+msgid "All networks"
+msgstr "Netzwerks"
+
+#: ../validate.php:58
+msgid "No token specified!"
+msgstr "Der Aktivierungsschlüssel wurde nicht angegeben!"
+
+#: ../validate.php:61
+msgid "No user ID specified!"
+msgstr "Die Benutzer-Kennung wurde nicht angegeben!"
+
+#: ../validate.php:66
+msgid "The validation token does not match the one in the database."
+msgstr "Das Aktivierungsschlüssel ist ungültig."
+
+#: ../validate.php:69
+msgid "Your account has already been activated."
+msgstr "Ihr Zugang wurde aktiviert."
+
+#: ../validate.php:77
+msgid ""
+"Your account has been succesfully activated!\n"
+"\n"
+"You may now browse to a remote Internet address and take advantage of the "
+"free Internet access!\n"
+"\n"
+"If you get prompted for a login, enter the username and password you have "
+"just created."
+msgstr ""
+"Ihr Zugang wurde erfolgreich aktiviert! Sie können den kostenlosen "
+"Internetzugang nun voll in Anspruch nehmen! Falls Sie nach Ihren "
+"Zugangsdaten gefragt werden, nutzen Sie die des soeben erstellten Zugangs."
+
+#: ../lost_password.php:103 ../resend_validation.php:100 ../signup.php:197
+#: ../lost_username.php:101
+msgid "Sorry, this network does not exist !"
+msgstr "Dieses Netzwerk existiert nicht!"
+
+#: ../lost_password.php:107
+msgid "Please specify a username or email address"
+msgstr "Geben Sie bitte Ihren Benutzernamen oder Ihre E-Mail-Adresse an"
+
+#: ../lost_password.php:117
+#, fuzzy
+msgid "Please specify EITHER your username or your email, not both"
+msgstr "Geben Sie bitte Ihren Benutzernamen oder Ihre E-Mail-Adresse an"
+
+#: ../lost_password.php:126
+#, fuzzy
+msgid "You need to specify your username or your email"
+msgstr "Sie müssen ihren Benutzernamen und ihr Passwort angeben"
+
+#: ../lost_password.php:136
+msgid "This username or email could not be found in our database"
+msgstr ""
+"Der Benutzername oder die E-Mail-Adresse wurde in unserer Datenbank nicht "
+"gefunden"
+
+#: ../lost_password.php:139
+msgid "A new password has been emailed to you."
+msgstr "Wir haben Ihnen ein neues Passwort per E-Mail geschickt."
+
+#: ../hotspots_map.php:97
+msgid ""
+"Unable to get the google API key, because I couldn't find a vhost matching "
+"the current hostname"
+msgstr ""
+
+#: ../hotspots_map.php:145
+msgid "Sorry, your browser does not support Google Maps."
+msgstr "Ihr Browser unterstützt Google Maps leider nicht."
+
+#: ../hotspots_map.php:145 ../classes/StatisticReport/NodeStatus.php:190
+#: ../classes/StatisticReport/NetworkStatus.php:109
+msgid "Homepage"
+msgstr "Homepage"
+
+#: ../hotspots_map.php:145
+msgid "Show me on the map"
+msgstr "Auf der Karte zeigen"
+
+#: ../hotspots_map.php:145 smarty.txt:41
+msgid "Loading, please wait..."
+msgstr "Die Karte wird geladen ..."
+
+#: ../hotspots_map.php:159
+msgid "Hotspots status map"
+msgstr "Hotspot-Status-Karte"
+
+#: ../resend_validation.php:104
+msgid "Please specify a username"
+msgstr "Geben Sie bitte Ihren Benutzernamen an"
+
+#: ../resend_validation.php:111
+msgid "This username could not be found in our database"
+msgstr "Der Benutzername wurde in unserer Datenbank nicht gefunden"
+
+#: ../resend_validation.php:116 ../signup.php:228
+msgid "An email with confirmation instructions was sent to your email address."
+msgstr ""
+"Wir haben Ihnen eine E-Mail mit der Anleitung zur Bestätigung ihres Zugangs "
+"geschickt."
+
+#: ../signup.php:81
+msgid "Username is required."
+msgstr "Der Benutzername wird benötigt."
+
+#: ../signup.php:85
+msgid "Username contains invalid characters."
+msgstr "Der Benutzername enthält ungültige Zeichen."
+
+#: ../signup.php:103
+msgid "A valid email address is required."
+msgstr "Es wird eine gültige E-Mail-Adresse benötigt."
+
+#: ../signup.php:107
+msgid ""
+"The email address must be valid (i.e. user@domain.com). Please understand "
+"that we also black-listed various temporary-email-address providers."
+msgstr ""
+"Die E-Mail-Adresse muss gültig sein (z.B. benutzer@domain.de). Bitte "
+"beachten Sie, dass wir keine E-Mail-Adressen von sogenannten Wegwerf-E-Mail-"
+"Adressen-Providern zulassen."
+
+#: ../signup.php:126
+msgid "A password of at least 6 characters is required."
+msgstr "Das Passwort muss mindestens 6 Zeichen lang sein."
+
+#: ../signup.php:130
+#, fuzzy
+msgid ""
+"Password contains invalid characters.  Allowed characters are 0-9, a-z and A-"
+"Z"
+msgstr "Das Passwort enthält ungültige Zeichen."
+
+#: ../signup.php:134
+msgid "You must type your password twice."
+msgstr "Sie müssen Ihr Passwort zweimal eingeben."
+
+#: ../signup.php:138 ../classes/User.php:947
+msgid "Passwords do not match."
+msgstr "Die Passwörter stimmen nicht überein."
+
+#: ../signup.php:142
+msgid "Password is too short, it must be 6 characters minimum."
+msgstr "Das Passwort ist zu kurz, es muss aus mindestens 6 Zeichen bestehen."
+
+#: ../signup.php:201
+msgid "Sorry, this network does not accept new user registration !"
+msgstr "Dieses Netzwerk akzeptiert keine neuen Benutzeranmeldungen!"
+
+#: ../signup.php:211
+msgid ""
+"Sorry, a user account is already associated to this username. Pick another "
+"one."
+msgstr "Der Benutzername ist bereits vergeben, bitte wählen Sie einen anderen."
+
+#: ../signup.php:215
+msgid "Sorry, a user account is already associated to this email address."
+msgstr ""
+"Unter dieser E-Mail-Adresse wurde bereits ein anderer Zugang registriert."
+
+#: ../signup.php:229 ../portal/index.php:163
+#, php-format
+msgid ""
+"Your account has been granted %s minutes of access to retrieve your email "
+"and validate your account."
+msgstr ""
+"Ihr Zugang wurde für %s freigeschaltet. Holen Sie in dieser Zeit bitte Ihre "
+"E-Mails ab und bestätigen Sie Ihre E-Mail-Adresse."
+
+#: ../signup.php:230
+msgid ""
+"You may now open a browser window or start your email client and go to any "
+"remote Internet address to obtain the validation email."
+msgstr ""
+"Sie können dazu eine beliebige Website aufrufen oder die E-Mail über ein Ihr "
+"E-Mail-Programm abrufen."
+
+#: ../lost_username.php:105
+msgid "Please specify an email address"
+msgstr "Geben Sie bitte Ihre E-Mail-Adresse an"
+
+#: ../lost_username.php:112
+msgid "This email could not be found in our database"
+msgstr "Die E-Mail-Adresse wurde in unserer Datenbank nicht gefunden"
+
+#: ../lost_username.php:117
+msgid "Your username has been emailed to you."
+msgstr "Wir haben Ihnen ihren Benutzernamen per E-Mail geschickt."
+
+#: ../gw_message.php:61
+#, php-format
+msgid "You have failed to validate your account in %d minutes."
+msgstr "Sie haben Ihren Zugang innerhalb der %d Minuten nicht validiert."
+
+#: ../gw_message.php:62
+msgid "Please validate your account from somewhere else or create a new one."
+msgstr ""
+"Verifizieren Sie ihren Zugang bitte von einem anderen Ort aus oder "
+"registrieren Sie einen neuen."
+
+#: ../gw_message.php:67
+#: ../classes/Content/FlickrPhotostream/FlickrPhotostream.php:895
+#: ../classes/Statistics.php:376 ../classes/Statistics.php:379
+#: ../classes/Content.php:901 ../classes/Node.php:231 ../classes/Role.php:501
+msgid "Access denied!"
+msgstr "Zugriff verweigert!"
+
+#: ../gw_message.php:73
+#, php-format
+msgid ""
+"You have now been granted %d minutes of Internet access without being "
+"validated to go and activate your account."
+msgstr ""
+"Ihr Zugang wurde für %d Minuten aktiviert. Bitte überprüfen Sie in dieser "
+"Zeit Ihre E-Mails und klicken Sie auf den zugesendeten Aktivierungslink, "
+"damit der Zugang komplett freigeschaltet wird."
+
+#: ../gw_message.php:74
+#, fuzzy, php-format
+msgid ""
+"If you fail to validate your account in %d minutes, you will have to "
+"validate it from somewhere else."
+msgstr ""
+"Sollten Sie ihre E-Mail-Adresse innerhalb dieser Zeit nicht bestätigen, "
+"werden Sie den Zugang von einem anderen Ort aus verifizieren müssen."
+
+#: ../gw_message.php:75
+msgid ""
+"If you do not receive an email from our validation server in the next "
+"minute, perhaps you have made a typo in your email address, you might have "
+"to create another account."
+msgstr ""
+"Sollten Sie von uns innerhalb der nächsten Minute keine Bestätigungs-E-Mail "
+"erhalten, prüfen Sie bitte, ob Sie sich bei der Angabe ihrer E-Mail-Adresse "
+"u.U. verschrieben haben. Dann müssten Sie einen neuen Zugang registrieren."
+
+#: ../gw_message.php:80
+#, fuzzy
+msgid "Unknown message specified! (this is probably an error)"
+msgstr ""
+"Es wurde keine Nachricht festgelegt (dies ist warscheinlich ein Fehler)"
+
+#: ../gw_message.php:85
+msgid "No message has been specified! (this is probably an error)"
+msgstr ""
+"Es wurde keine Nachricht festgelegt (dies ist warscheinlich ein Fehler)"
+
+#: ../config_available_locales.php:58
+msgid "French"
+msgstr "Französisch"
+
+#: ../config_available_locales.php:59
+msgid "English"
+msgstr "Englisch"
+
+#: ../config_available_locales.php:60
+msgid "German"
+msgstr "Deutsch"
+
+#: ../config_available_locales.php:61
+msgid "Spanish"
+msgstr ""
+
+#: ../config_available_locales.php:62
+#, fuzzy
+msgid "Brazilian Portuguese"
+msgstr "Portugiesisch"
+
+#: ../config_available_locales.php:63
+msgid "Portuguese"
+msgstr "Portugiesisch"
+
+#: ../config_available_locales.php:64
+msgid "Japanese"
+msgstr ""
+
+#: ../config_available_locales.php:65
+msgid "Greek"
+msgstr ""
+
+#: ../config_available_locales.php:66
+msgid "Bulgarian"
+msgstr ""
+
+#: ../config_available_locales.php:67
+msgid "Swedish"
+msgstr ""
+
+#: ../config_available_locales.php:68
+msgid "Italian"
+msgstr ""
+
+#: ../config_available_locales.php:69
+msgid "Catalan"
+msgstr ""
+
+#: ../admin/generic_object_admin.php:80
+msgid "Sorry, the 'object_class' parameter must be specified"
+msgstr "Der Parameter 'object_class' muss angegeben werden"
+
+#: ../admin/generic_object_admin.php:93
+#, php-format
+msgid "Create %s"
+msgstr "%s erstellen"
+
+#: ../admin/generic_object_admin.php:94
+#, php-format
+msgid "Add %s"
+msgstr "%s hinzufügen"
+
+#: ../admin/generic_object_admin.php:95
+#, php-format
+msgid "Create a new %s"
+msgstr "Neuen %s erstellen"
+
+#: ../admin/generic_object_admin.php:96
+#, php-format
+msgid "Add a new %s"
+msgstr "Neuen %s hinzufügen"
+
+#: ../admin/generic_object_admin.php:97
+#, php-format
+msgid "Show all %s"
+msgstr "Zeige alle %s"
+
+#: ../admin/generic_object_admin.php:98
+#, php-format
+msgid "Show only persistant %s"
+msgstr "Zeige lediglich wieder verwendbare %s"
+
+#: ../admin/generic_object_admin.php:99 ../classes/Network.php:2140
+#: ../classes/Node.php:1767
+#, php-format
+msgid "Edit %s"
+msgstr "%s bearbeiten"
+
+#: ../admin/generic_object_admin.php:149
+msgid ""
+"Sorry, the object couldn't be created.  You probably didn't fill the form "
+"properly"
+msgstr ""
+"Das Objekt konnte nicht erstellt werden. Warscheinlich haben Sie die Seite "
+"nicht korrekt ausgefüllt."
+
+#: ../admin/generic_object_admin.php:187
+msgid "Showing preview as it would appear at "
+msgstr "Vorschau des Inhalts vom Hotspot "
+
+#: ../admin/generic_object_admin.php:202
+#: ../classes/StatisticReport/UserReport.php:182
+#: ../classes/StatisticReport/RegistrationLog.php:120
+#: ../classes/StatisticReport/MostPopularNodes.php:109
+#: ../classes/StatisticReport/UserRegistrationReport.php:131 smarty.txt:133
+msgid "Node"
+msgstr "Hotspot"
+
+#: ../admin/generic_object_admin.php:211 ../admin/generic_object_admin.php:414
+#: ../classes/Content/Picture/Picture.php:294
+msgid "Preview"
+msgstr "Vorschau"
+
+#: ../admin/generic_object_admin.php:217 ../classes/Content.php:736
+#: ../classes/ProfileTemplate.php:393
+msgid "Edit"
+msgstr "Bearbeiten"
+
+#: ../admin/generic_object_admin.php:224 ../admin/generic_object_admin.php:246
+msgid "Object successfully deleted"
+msgstr "Objekt erfolgreich gelöscht"
+
+#: ../admin/generic_object_admin.php:226 ../admin/generic_object_admin.php:249
+msgid "Deletion failed, error was: "
+msgstr "Das Löschen ist fehlgeschlagen, der Fehler war: "
+
+#: ../admin/generic_object_admin.php:383
+msgid "Sorry, the 'object_id' parameter must be specified"
+msgstr "Der Parameter 'object_id' muss angeben werden"
+
+#: ../admin/generic_object_admin.php:399
+msgid "Save"
+msgstr "Sichern"
+
+#: ../admin/generic_object_admin.php:404 ../admin/generic_object_admin.php:424
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:204
+#: ../classes/Content/EmbeddedContent/EmbeddedContent.php:228
+#: ../classes/Content/RssAggregator/RssAggregator.php:620
+#: ../classes/Content.php:955
+msgid "Delete"
+msgstr "Löschen"
+
+#: ../admin/generic_object_admin.php:449
+msgid "Generic object editor"
+msgstr "Allgemeiner Objekteditor"
+
+#: ../admin/import_user_database.php:66
+msgid "NoCat user database import"
+msgstr "NoCat-Benutzerdatenbank importieren"
+
+#: ../admin/import_user_database.php:72
+msgid "Please select the NoCat passwd file you want to import."
+msgstr ""
+"Wählen Sie bitte die NoCat passwd Datei aus, die Sie importieren möchten."
+
+#: ../admin/import_user_database.php:76
+msgid ""
+"Accept users with no email addresses (Normally, NoCat usernames are expected "
+"to be the user's email address, and the username is generated from the "
+"prefix."
+msgstr ""
+
+#: ../admin/import_user_database.php:78
+msgid "Upload file"
+msgstr "Datei hochladen"
+
+#: ../admin/import_user_database.php:81
+msgid ""
+"I am sure I want to import (Otherwise, the import will only be simulated)."
+msgstr "Datei importieren (ansonsten wird der Import nur simuliert)."
+
+#: ../admin/import_user_database.php:175
+msgid "Sorry, a user account is already associated to the email address: "
+msgstr "Ein Benutzername ist bereits unter folgender E-Mail-Adresse vergeben: "
+
+#: ../admin/import_user_database.php:181
+msgid "Sorry, the user must have a email address."
+msgstr ""
+
+#: ../admin/import_user_database.php:190
+msgid "Sorry, a user account already exists with the username: "
+msgstr "Ein Benutzer ist bereits unter folgendem Benutzernamen registriert: "
+
+#: ../admin/import_user_database.php:211
+msgid "SQL error on: "
+msgstr "Datenbankfehler: "
+
+#: ../admin/import_user_database.php:217
+msgid "Report"
+msgstr "Report"
+
+#: ../admin/stats.php:66
+msgid "Connections at"
+msgstr "Verbindungen bei"
+
+#: ../admin/stats.php:72
+msgid "User information for"
+msgstr "Benutzerinformationen für"
+
+#: ../admin/stats.php:77
+msgid "Connections from MAC"
+msgstr "Verbindungen von der MAC-Adresse"
+
+#: ../admin/stats.php:83
+msgid "Network information for"
+msgstr "Netzwerkinformationen für"
+
+#: ../admin/stats.php:97
+msgid "Generate statistics"
+msgstr "Statistik erzeugen"
+
+#: ../admin/user_log.php:113
+msgid "Internal error."
+msgstr "Interner Fehler."
+
+#: ../admin/user_log.php:121
+msgid "Find a user ID : "
+msgstr "Benutzer-Kennung suchen: "
+
+#: ../admin/hotspot_location_map.php:59
+msgid "Hotspot location map"
+msgstr "Hotspot-Karte"
+
+#: ../admin/hotspot_location_map.php:70
+msgid ""
+"Click anywhere on the map to extract the GIS location, then click on the "
+"button to save the data."
+msgstr ""
+"Klicken Sie einen beliebigen Punkt auf der Karte an, um die GPS Position zu "
+"erfahren. Klicken Sie danach auf die Schaltfläche <em>Koordinaten "
+"übernehmen</em>, um die Daten zu sichern."
+
+#: ../admin/hotspot_location_map.php:72
+msgid "Use these coordinates"
+msgstr "Koordinaten übernehmen"
+
+#: ../admin/hotspot_location_map.php:80
+msgid ""
+"Error:  You need to set the GIS coordinates of the center of your network"
+msgstr ""
+
+#: ../admin/hotspot_location_map.php:124
+msgid "You need to set a node ID."
+msgstr "Sie müssen eine Hotspot-Kennung festlegen"
+
+#: ../cron/page.php:79
+msgid "Monitoring system"
+msgstr "Überwachungssystem"
+
+#: ../cron/page.php:82
+msgid "node"
+msgstr "Hotspot"
+
+#: ../cron/page.php:84
+#, php-format
+msgid "Node %s (%s) has been down for %d minutes (since %s)"
+msgstr "Der Hotspot %s (%s) ist seit %d Minuten inaktiv (seit %s)"
+
+#: ../cron/page.php:86
+msgid "Success"
+msgstr ""
+
+#: ../cron/page.php:86
+msgid "Failed sending mail"
+msgstr ""
+
+#: ../cron/page.php:102
+msgid "No deployed nodes could not be found in the database"
+msgstr ""
+
+#: ../include/schema_validate.php:72
+msgid ""
+"I am unable to retrieve the schema version. Either the wifidog database "
+"hasn't been created yet, the postgresql server is down, or pg_hba.conf does "
+"not allow your web server to connect to the wifidog database."
+msgstr ""
+
+#: ../include/schema_validate.php:74
+msgid "Try running the"
+msgstr ""
+
+#: ../include/schema_validate.php:74
+msgid "installation script"
+msgstr ""
+
+#: ../include/schema_validate.php:106
+msgid ""
+"No user matches the default network, a new user admin/admin will be created. "
+"Change the password as soon as possible !"
+msgstr ""
+"Im standardmäßigen Netzwerk gibt es keinen Benutzer. Der Benutzer admin mit "
+"dem Passwort admin wird erstellt. Ändern Sie das Passwort so schnell wie "
+"möglich!"
+
+#: ../include/schema_validate.php:118
+msgid "Could not get a default network!"
+msgstr "Das standardmäßige Netzwerk konnte nicht ermittelt werden!"
+
+#: ../include/schema_validate.php:150
+msgid "Trying to update the database schema."
+msgstr "Versuche das Datenbank-Schema zu aktualisieren."
+
+#: ../include/schema_validate.php:155
+msgid ""
+"Unable to retrieve schema version.  The database schema is too old to be "
+"updated."
+msgstr ""
+"Das Datenbank-Schema konnte nicht ermittelt werden. Es ist zu alt, um "
+"aktualisiert zu werden."
+
+#: ../include/common.php:142
+msgid "Unused"
+msgstr "Ungenutzt"
+
+#: ../include/common.php:143
+msgid "In use"
+msgstr "in Nutzung"
+
+#: ../include/common.php:144
+msgid "Used"
+msgstr "Genutzt"
+
+#: ../login/index.php:211
+#, php-format
+msgid "Unable to generate token for user %s"
+msgstr ""
+
+#: ../login/index.php:261
+msgid "I'm having difficulties:"
+msgstr ""
+
+#: ../login/index.php:263 smarty.txt:47 smarty.txt:64 smarty.txt:75
+#: smarty.txt:99 smarty.txt:107
+msgid "I Forgot my username"
+msgstr "Ich habe meinen Benutzernamen vergessen"
+
+#: ../login/index.php:264 smarty.txt:48 smarty.txt:65 smarty.txt:76
+#: smarty.txt:100 smarty.txt:108
+msgid "I Forgot my password"
+msgstr "Ich habe mein Passwort vergessen"
+
+#: ../login/index.php:265 smarty.txt:49 smarty.txt:77 smarty.txt:101
+#: smarty.txt:109
+msgid "Re-send the validation email"
+msgstr "Bestätigungs-E-Mail nochmals senden"
+
+#: ../login/index.php:271
+#, php-format
+msgid "%s login page for %s"
+msgstr "%s Anmeldeseite für %s"
+
+#: ../login/index.php:273
+msgid "Offsite login page"
+msgstr "Anmeldeseite"
+
+#: ../login/index.php:282 ../portal/index.php:157
+msgid "Welcome to"
+msgstr "Willkommen bei"
+
+#: ../portal/index.php:97
+msgid "No Hotspot specified!"
+msgstr "Es wurde kein Hotspot angegeben!"
+
+#: ../portal/index.php:152
+#, php-format
+msgid "%s portal for %s"
+msgstr "%s Portal für %s"
+
+#: ../portal/index.php:162
+msgid ""
+"You NEED to confirm your account.  An email with confirmation instructions "
+"was sent to your email address.  If you don't see it in your inbox, make "
+"sure to look in your spam folder."
+msgstr ""
+
+#: ../portal/index.php:224
+msgid "Show all available contents for this hotspot"
+msgstr "Zeige sämtliche Inhalte dieses Hotspots"
+
+#: ../classes/StatisticGraph/RegistrationsPerMonth.php:62
+msgid "Number of validated user registration for the selected network(s)"
+msgstr "Anzahl verifizierter Benutzer des/der ausgewählten Netzwerke(s)"
+
+#: ../classes/StatisticGraph/RegistrationsCumulative.php:62
+msgid "Cumulative number of validated users for the selected network(s)"
+msgstr "Anzahl verifizierter Benutzer des/der ausgewählten Netzwerke(s)"
+
+#: ../classes/StatisticGraph/VisitsPerMonth.php:62
+msgid "Number of individual user visits per month"
+msgstr "Anzahl individueller Besuche pro Monat"
+
+#: ../classes/StatisticGraph/VisitsPerMonth.php:82
+#: ../classes/StatisticGraph/VisitsPerWeekday.php:82
+#: ../classes/StatisticReport/MostPopularNodes.php:135
+msgid ""
+"Note:  A visit is like counting connections, but only counting one "
+"connection per day for each user at a single node"
+msgstr ""
+"Hinweis: Ein Besuch zählt wie eine Verbindung. Es wird allerdings nur eine "
+"Verbindung pro Tag für jeden Besucher pro Hotspot gezählt"
+
+#: ../classes/StatisticGraph/VisitsPerWeekday.php:62
+msgid "Number of individual user visits per weekday"
+msgstr "Anzahl individueller Besuche pro Wochentag"
+
+#: ../classes/StatisticGraph/ConnectionsPerHour.php:62
+msgid "Number of new connections opening per hour of the day"
+msgstr "Anzahl neuer Verbindungen pro Stunde"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:117
+#, fuzzy, php-format
+msgid "Fatal error:  Username cannot be empty"
+msgstr "Die Adresse darf nicht leer sein!"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:132
+#: ../classes/Authenticators/AuthenticatorLDAP.php:257
+#: ../classes/Authenticators/AuthenticatorLDAP.php:267
+#: ../classes/Authenticators/AuthenticatorRadius.php:263
+#: ../classes/Authenticators/AuthenticatorRadius.php:283
+msgid "Login successfull"
+msgstr "Erfolgreiche Anmeldung"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:146
+msgid "Unknown username or email"
+msgstr "Unbekannter Benutzername oder E-Mail-Adresse"
+
+#: ../classes/Authenticators/AuthenticatorLocalUser.php:148
+msgid "Incorrect password (Maybe you have CAPS LOCK on?)"
+msgstr "Ungültiges Passwort (wurde u.U. die Feststelltaste aktiviert?)"
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:167
+#: ../classes/Authenticators/AuthenticatorLDAP.php:172
+msgid "Error while connecting to the LDAP server."
+msgstr "Fehler beim Verbindungsaufbau zum LDAP-Server."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:179
+msgid "Error while obtaining your LDAP information."
+msgstr "Ihre LDAP-Informationen konnten nicht abgerufen werden."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:185
+#: ../classes/Authenticators/AuthenticatorLDAP.php:191
+#: ../classes/Authenticators/AuthenticatorLDAP.php:197
+msgid "Error while obtaining your username or password from the LDAP server."
+msgstr "Fehler bei der Anmeldung am LDAP-Server."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:204
+msgid "Error in username or password."
+msgstr "Benutzername oder Passwort ist falsch."
+
+#: ../classes/Authenticators/AuthenticatorLDAP.php:211
+msgid "Error connecting to the LDAP Server."
+msgstr "Fehler beim Verbindungsaufbau zum LDAP-Server."
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:202
+msgid "Invalid RADIUS encryption method."
+msgstr "Ungültige RADIUS-Verschlüsselungs-Methode."
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:239
+msgid "Could not initiate PEAR RADIUS Auth class : "
+msgstr "PEAR-RADIUS-Klasse konnte nicht initialisiert werden: "
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:247
+msgid "Failed to send authentication request to the RADIUS server. : "
+msgstr ""
+"Das Senden der Authentifizierung an den RADIUS Server ist fehlgeschlagen:"
+
+#: ../classes/Authenticators/AuthenticatorRadius.php:288
+msgid "The RADIUS server rejected this username/password combination."
+msgstr ""
+"Der RADIUS Server hat die Benutzernamen/Passwort-Kombination abgelehnt."
+
+#: ../classes/StatisticReport/MostMobileUsers.php:65
+#, php-format
+msgid "%d most mobile users"
+msgstr "Die %d mobilsten Benutzer"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:97
+#: ../classes/StatisticReport/MostFrequentUsers.php:98
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:98
+msgid "User (username)"
+msgstr "Benutzer (Benutzername)"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:99
+#: ../classes/StatisticReport/MostFrequentUsers.php:100
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:100
+msgid "User (MAC address)"
+msgstr "Benutzer (MAC-Adresse)"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:101
+msgid "Nodes visited"
+msgstr "Anzahl der besuchten Hotspots"
+
+#: ../classes/StatisticReport/MostMobileUsers.php:133
+#: ../classes/StatisticReport/UserReport.php:174
+#: ../classes/StatisticReport/MostFrequentUsers.php:133
+#: ../classes/StatisticReport/MostPopularNodes.php:142
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:136
+#: ../classes/StatisticReport/UserRegistrationReport.php:164
+msgid "No information found matching the report configuration"
+msgstr "Die Reportabfrage lieferte kein Ergebnis"
+
+#: ../classes/StatisticReport/NodeStatus.php:64
+msgid "Node status information"
+msgstr "Statusinformationen des Hotspots"
+
+#: ../classes/StatisticReport/NodeStatus.php:87
+msgid "Sorry, this report requires you to select individual nodes"
+msgstr ""
+"Um diesen Report zu erzeugen, müssen Sie einen bestimmten Hotspot auswählen"
+
+#: ../classes/StatisticReport/NodeStatus.php:99
+#: ../classes/DependenciesList.php:137 smarty.txt:5
+msgid "Status"
+msgstr "Status"
+
+#: ../classes/StatisticReport/NodeStatus.php:105
+msgid "WifiDog status"
+msgstr "WiFiDog-Status"
+
+#: ../classes/StatisticReport/NodeStatus.php:110
+msgid "Last heartbeat"
+msgstr "Letzte Rückmeldung"
+
+#: ../classes/StatisticReport/NodeStatus.php:111
+#, php-format
+msgid "%s ago"
+msgstr "vor %s"
+
+#: ../classes/StatisticReport/NodeStatus.php:115
+msgid "WifiDog version"
+msgstr "WiFiDog-Version"
+
+#: ../classes/StatisticReport/NodeStatus.php:119
+#, fuzzy
+msgid "WifiDog uptime"
+msgstr "WiFiDog-Status"
+
+#: ../classes/StatisticReport/NodeStatus.php:123
+msgid "System uptime"
+msgstr ""
+
+#: ../classes/StatisticReport/NodeStatus.php:127
+msgid "System load"
+msgstr ""
+
+#: ../classes/StatisticReport/NodeStatus.php:131
+msgid "System free memory"
+msgstr ""
+
+#: ../classes/StatisticReport/NodeStatus.php:135
+msgid "IP Address"
+msgstr "IP-Adresse"
+
+#: ../classes/StatisticReport/NodeStatus.php:139
+msgid "Number of users online"
+msgstr "Anzahl aktuell angemeldeter Benutzer"
+
+#: ../classes/StatisticReport/NodeStatus.php:148
+#: ../classes/StatisticReport/UserReport.php:117 ../classes/Profile.php:357
+msgid "Profile"
+msgstr "Profil"
+
+#: ../classes/StatisticReport/NodeStatus.php:152
+#: ../classes/StatisticReport/NetworkStatus.php:99 ../classes/Node.php:1199
+#: ../classes/Node.php:1204 smarty.txt:8
+msgid "Name"
+msgstr "Name"
+
+#: ../classes/StatisticReport/NodeStatus.php:156
+msgid "Node ID"
+msgstr "Hotspot-Kennung"
+
+#: ../classes/StatisticReport/NodeStatus.php:160 ../classes/Node.php:380
+msgid "Deployment Status"
+msgstr "Auslieferungsstatus"
+
+#: ../classes/StatisticReport/NodeStatus.php:164
+msgid "Deployment date"
+msgstr "Zeitpunkt der Auslieferung"
+
+#: ../classes/StatisticReport/NodeStatus.php:168 ../classes/Content.php:925
+#: ../classes/Node.php:1223 ../classes/DependenciesList.php:175 smarty.txt:68
+msgid "Description"
+msgstr "Beschreibung"
+
+#: ../classes/StatisticReport/NodeStatus.php:172
+#: ../classes/StatisticReport/UserReport.php:132 smarty.txt:129
+msgid "Network"
+msgstr "Netzwerk"
+
+#: ../classes/StatisticReport/NodeStatus.php:176
+msgid "GIS Location"
+msgstr "GPS-Position"
+
+#: ../classes/StatisticReport/NodeStatus.php:181 ../classes/Network.php:1041
+#: smarty.txt:73
+msgid "Map"
+msgstr "Karte"
+
+#: ../classes/StatisticReport/NodeStatus.php:185
+msgid "NOT SET"
+msgstr "NICHT EINGESTELLT"
+
+#: ../classes/StatisticReport/NodeStatus.php:194
+#: ../classes/NodeLists/NodeListRSS.php:324
+#: ../classes/NodeLists/NodeListPDF.php:1083
+#: ../classes/NodeLists/NodeListKML.php:238
+msgid "Address"
+msgstr "Adresse"
+
+#: ../classes/StatisticReport/NodeStatus.php:202
+#: ../classes/NodeLists/NodeListPDF.php:1083
+msgid "Telephone"
+msgstr "Öffentliche Telefonnummer"
+
+#: ../classes/StatisticReport/NodeStatus.php:206
+#: ../classes/StatisticReport/UserReport.php:127
+#: ../classes/NodeLists/NodeListPDF.php:1083
+#: ../classes/NodeLists/NodeListKML.php:241
+msgid "Email"
+msgstr "Öffentliche E-Mail-Adresse"
+
+#: ../classes/StatisticReport/NodeStatus.php:210
+msgid "Transit Info"
+msgstr "Informationen zum öffentlichen Nahverkehr"
+
+#: ../classes/StatisticReport/NodeStatus.php:220 ../classes/User.php:1058
+#: ../classes/Node.php:1164 smarty.txt:16
+msgid "Statistics"
+msgstr "Statistiken"
+
+#: ../classes/StatisticReport/NodeStatus.php:225
+msgid "Average visits per day"
+msgstr "Durchschnittliche Anzahl der Besuche pro Tag"
+
+#: ../classes/StatisticReport/NodeStatus.php:226
+#: ../classes/StatisticReport/NodeStatus.php:237
+msgid "(for the selected period)"
+msgstr "(im eingestellten Zeitraum)"
+
+#: ../classes/StatisticReport/NodeStatus.php:231
+msgid "Traffic"
+msgstr "Transfervolumen"
+
+#: ../classes/StatisticReport/NodeStatus.php:233
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:102
+msgid "Incoming"
+msgstr "Download"
+
+#: ../classes/StatisticReport/NodeStatus.php:235
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:103
+msgid "Outgoing"
+msgstr "Upload"
+
+#: ../classes/StatisticReport/UserReport.php:64
+msgid "Individual user report"
+msgstr "Individueller Benutzerreport"
+
+#: ../classes/StatisticReport/UserReport.php:111 ../classes/User.php:259
+#, php-format
+msgid "User id: %s could not be found in the database"
+msgstr "Die Benutzer-Kennung %S wurde nicht in der Datenbank gefunden"
+
+#: ../classes/StatisticReport/UserReport.php:122
+#: ../classes/StatisticReport/UserReport.php:284
+#: ../classes/StatisticReport/RegistrationLog.php:123
+#: ../classes/StatisticReport/ConnectionLog.php:115
+#: ../classes/StatisticReport/ConnectionLog.php:164 ../classes/User.php:810
+#: ../classes/User.php:815 ../classes/User.php:864 smarty.txt:128
+#: smarty.txt:134
+msgid "Username"
+msgstr "Benutzername"
+
+#: ../classes/StatisticReport/UserReport.php:137
+msgid "Unique ID"
+msgstr "Benutzer-Kennung"
+
+#: ../classes/StatisticReport/UserReport.php:142
+msgid "Member since"
+msgstr "Mitglied seit"
+
+#: ../classes/StatisticReport/UserReport.php:147 ../classes/User.php:852
+#: smarty.txt:131
+msgid "Account Status"
+msgstr "Status des Zugangs"
+
+#: ../classes/StatisticReport/UserReport.php:152
+msgid "Prefered Locale"
+msgstr "Bevorzugte Sprache"
+
+#: ../classes/StatisticReport/UserReport.php:165
+#, php-format
+msgid "%d Connections"
+msgstr "%d Verbindungen"
+
+#: ../classes/StatisticReport/UserReport.php:179
+msgid "Logged in"
+msgstr "Angemeldet"
+
+#: ../classes/StatisticReport/UserReport.php:180
+#: ../classes/StatisticReport/ConnectionLog.php:167
+msgid "Time spent"
+msgstr "Verbrachte Zeit"
+
+#: ../classes/StatisticReport/UserReport.php:181
+msgid "Token status"
+msgstr "Status des Kürzels"
+
+#: ../classes/StatisticReport/UserReport.php:183
+msgid "IP"
+msgstr "IP-Adresse"
+
+#: ../classes/StatisticReport/UserReport.php:184
+msgid "D"
+msgstr "D"
+
+#: ../classes/StatisticReport/UserReport.php:185
+msgid "U"
+msgstr "U"
+
+#: ../classes/StatisticReport/UserReport.php:212
+msgid "N/A"
+msgstr "---"
+
+#: ../classes/StatisticReport/UserReport.php:223
+#: ../classes/StatisticReport/RegistrationLog.php:162
+#: ../classes/StatisticReport/MostPopularNodes.php:131
+#: ../classes/StatisticReport/HighestBandwidthUsers.php:104
+#: ../classes/StatisticReport/UserRegistrationReport.php:153
+msgid "Total"
+msgstr "Insgesamt"
+
+#: ../classes/StatisticReport/UserReport.php:244
+#, php-format
+msgid "%d MAC addresses"
+msgstr "%d MAC-Adressen"
+
+#: ../classes/StatisticReport/UserReport.php:248
+#: ../classes/StatisticReport/ConnectionLog.php:165
+msgid "MAC"
+msgstr "MAC-Adresse"
+
+#: ../classes/StatisticReport/UserReport.php:249
+#: ../classes/StatisticReport/UserReport.php:285
+#: ../classes/StatisticReport/ContentReport.php:115
+msgid "Count"
+msgstr "Anzahl"
+
+#: ../classes/StatisticReport/UserReport.php:280
+#, php-format
+msgid "%d users"
+msgstr "%d Benutzer"
+
+#: ../classes/StatisticReport/MostFrequentUsers.php:66
+#, php-format
+msgid "%d most frequent users"
+msgstr "Die %d am häufigsten angemeldeten Ben