From 749dec2fcae7b8cdd86ecc923b1af3abfadbcde2 Mon Sep 17 00:00:00 2001
From: xue <>
Date: Wed, 16 Nov 2005 13:33:17 +0000
Subject:
---
demos/personal/protected/application.cache | Bin 0 -> 3881 bytes
demos/personal/protected/application.xml | 30 +++++++
demos/personal/protected/data/DataModule.php | 120 +++++++++++++++++++++++++++
demos/personal/protected/data/site.db | Bin 0 -> 3072 bytes
demos/personal/protected/pages/HomePage.php | 21 +++++
demos/personal/protected/pages/HomePage.tpl | 3 +
demos/personal/protected/pages/Layout.php | 7 ++
demos/personal/protected/pages/Layout.tpl | 27 ++++++
demos/personal/protected/pages/LoginPage.php | 15 ++++
demos/personal/protected/pages/LoginPage.tpl | 7 ++
demos/personal/protected/pages/config.xml | 8 ++
11 files changed, 238 insertions(+)
create mode 100644 demos/personal/protected/application.cache
create mode 100644 demos/personal/protected/application.xml
create mode 100644 demos/personal/protected/data/DataModule.php
create mode 100644 demos/personal/protected/data/site.db
create mode 100644 demos/personal/protected/pages/HomePage.php
create mode 100644 demos/personal/protected/pages/HomePage.tpl
create mode 100644 demos/personal/protected/pages/Layout.php
create mode 100644 demos/personal/protected/pages/Layout.tpl
create mode 100644 demos/personal/protected/pages/LoginPage.php
create mode 100644 demos/personal/protected/pages/LoginPage.tpl
create mode 100644 demos/personal/protected/pages/config.xml
(limited to 'demos/personal/protected')
diff --git a/demos/personal/protected/application.cache b/demos/personal/protected/application.cache
new file mode 100644
index 00000000..34dbc18b
Binary files /dev/null and b/demos/personal/protected/application.cache differ
diff --git a/demos/personal/protected/application.xml b/demos/personal/protected/application.xml
new file mode 100644
index 00000000..260f26c7
--- /dev/null
+++ b/demos/personal/protected/application.xml
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/demos/personal/protected/data/DataModule.php b/demos/personal/protected/data/DataModule.php
new file mode 100644
index 00000000..03ee3496
--- /dev/null
+++ b/demos/personal/protected/data/DataModule.php
@@ -0,0 +1,120 @@
+_db=null;
+ parent::__destruct();
+ }
+
+ /**
+ * Initializes this module.
+ * This method is required by the IModule interface. It checks if the DbFile
+ * property is set, and creates a SQLiteDatabase instance for it.
+ * If the database or the tables do not exist, they will be created.
+ * @param IApplication Prado application, can be null
+ * @param TXmlElement configuration for this module, can be null
+ * @throws TConfigurationException DbFile is set invalid
+ */
+ public function init($application,$config)
+ {
+ if(!function_exists('sqlite_open'))
+ throw new TConfigurationException('SQLite extension required.');
+ if($this->_file===null)
+ throw new TConfigurationException('SQLite db file required.');
+ if(($fname=Prado::getPathOfNamespace($this->_file,self::DB_FILE_EXT))===null)
+ throw new TConfigurationException('SQLite db file invalid: '.$this->_file);
+ $error='';
+ if(($this->_db=new SQLiteDatabase($fname,0666,$error))===false)
+ throw new TConfigurationException('SQLite db connection failed: ',$error);
+ $res=$this->_db->query('SELECT * FROM sqlite_master WHERE tbl_name=\'tblBlogs\' AND type=\'table\'');
+ if($res===false || $res->numRows()===0 && $this->_db->query(self::DB_SCHEMA)===false)
+ throw new TConfigurationException('SQLite db table creation failed: '.sqlite_error_string(sqlite_last_error()));
+ $this->_initialized=true;
+ }
+
+ /**
+ * @return string id of this module
+ */
+ public function getID()
+ {
+ return $this->_id;
+ }
+
+ /**
+ * @param string id of this module
+ */
+ public function setID($value)
+ {
+ $this->_id=$value;
+ }
+
+ /**
+ * @return string database file path (in namespace form)
+ */
+ public function getDbFile()
+ {
+ return $this->_file;
+ }
+
+ /**
+ * @param string database file path (in namespace form)
+ * @throws TInvalidOperationException if the module is already initialized
+ */
+ public function setDbFile($value)
+ {
+ if($this->_initialized)
+ throw new TInvalidOperationException('DbFile cannot be modified after the module is initialized.');
+ else
+ $this->_file=$value;
+ }
+
+ public function getBlogsByTime($time)
+ {
+ }
+}
+
+class Blog
+{
+ public $id;
+ public $title;
+ public $author;
+ public $content;
+ public $lastupdate;
+ public $comments;
+}
+
+class Comment
+{
+ public $id;
+ public $bid;
+ public $author;
+ public $content;
+ public $lastupdate;
+}
+
+?>
\ No newline at end of file
diff --git a/demos/personal/protected/data/site.db b/demos/personal/protected/data/site.db
new file mode 100644
index 00000000..896c452d
Binary files /dev/null and b/demos/personal/protected/data/site.db differ
diff --git a/demos/personal/protected/pages/HomePage.php b/demos/personal/protected/pages/HomePage.php
new file mode 100644
index 00000000..6c69e44b
--- /dev/null
+++ b/demos/personal/protected/pages/HomePage.php
@@ -0,0 +1,21 @@
+getUser()->getIsGuest())
+ $this->setTheme('');
+ }
+
+ public function testClick($sender,$param)
+ {
+ if($sender->BackColor==='')
+ $sender->BackColor='blue';
+ else
+ $sender->BackColor='';
+ }
+}
+
+?>
\ No newline at end of file
diff --git a/demos/personal/protected/pages/HomePage.tpl b/demos/personal/protected/pages/HomePage.tpl
new file mode 100644
index 00000000..9471a9b9
--- /dev/null
+++ b/demos/personal/protected/pages/HomePage.tpl
@@ -0,0 +1,3 @@
+
+main content
+
\ No newline at end of file
diff --git a/demos/personal/protected/pages/Layout.php b/demos/personal/protected/pages/Layout.php
new file mode 100644
index 00000000..ba96038b
--- /dev/null
+++ b/demos/personal/protected/pages/Layout.php
@@ -0,0 +1,7 @@
+
\ No newline at end of file
diff --git a/demos/personal/protected/pages/Layout.tpl b/demos/personal/protected/pages/Layout.tpl
new file mode 100644
index 00000000..500abf3b
--- /dev/null
+++ b/demos/personal/protected/pages/Layout.tpl
@@ -0,0 +1,27 @@
+
+
+
+
+My Personal Website
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/demos/personal/protected/pages/LoginPage.php b/demos/personal/protected/pages/LoginPage.php
new file mode 100644
index 00000000..3a3b8432
--- /dev/null
+++ b/demos/personal/protected/pages/LoginPage.php
@@ -0,0 +1,15 @@
+Application->AuthManager;
+ if($manager->login($this->username->Text,$this->password->Text))
+ $this->Application->Response->redirect($this->Application->Request->Items['ReturnUrl']);
+ else
+ $this->error->Text='login failed';
+ }
+}
+
+?>
\ No newline at end of file
diff --git a/demos/personal/protected/pages/LoginPage.tpl b/demos/personal/protected/pages/LoginPage.tpl
new file mode 100644
index 00000000..588b8f6a
--- /dev/null
+++ b/demos/personal/protected/pages/LoginPage.tpl
@@ -0,0 +1,7 @@
+
+Username:
+Password:
+
+
+
+
diff --git a/demos/personal/protected/pages/config.xml b/demos/personal/protected/pages/config.xml
new file mode 100644
index 00000000..b3d6b036
--- /dev/null
+++ b/demos/personal/protected/pages/config.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
--
cgit v1.2.3