From e88f3d0e3f34b3cd396ad8fa11c6717addf04e63 Mon Sep 17 00:00:00 2001 From: Kelly Rauchenberger Date: Sun, 7 Sep 2008 15:56:25 +0000 Subject: Series: Added Add Subscription form Refs #53 --- series/core/trunk/admin/addsub.php | 129 +++++++++++++++++++++++++++++++ series/core/trunk/includes/instadisc.php | 6 ++ series/core/trunk/theme/addedsub.tpl | 13 ++++ series/core/trunk/theme/addsub.tpl | 104 +++++++++++++++++++++++++ 4 files changed, 252 insertions(+) create mode 100644 series/core/trunk/admin/addsub.php create mode 100644 series/core/trunk/theme/addedsub.tpl create mode 100644 series/core/trunk/theme/addsub.tpl diff --git a/series/core/trunk/admin/addsub.php b/series/core/trunk/admin/addsub.php new file mode 100644 index 0000000..26a8109 --- /dev/null +++ b/series/core/trunk/admin/addsub.php @@ -0,0 +1,129 @@ + 0) + { + showForm($_POST['id'], $_POST['title'], $_POST['url'], $_POST['category'], $_POST['password'], $errors); + } else { + instaDisc_addSubscription($_POST['id'], $_POST['title'], $_POST['url'], $_POST['category'], $_POST['password']); + + $template = new FITemplate('addedsub'); + $template->add('SITENAME', instaDisc_getConfig('siteName')); + $template->display(); + } +} + +function showForm($id, $title, $url, $category, $password, $errors) +{ + $template = new FITemplate('addsub'); + $template->add('SITENAME', instaDisc_getConfig('siteName')); + + if (isset($errors[1])) + { + $template->adds_block('ERROR', array('ex'=>'1')); + + foreach ($errors as $name => $value) + { + $template->adds_block('ERRORS', array( 'NAME' => $name, + 'MSG' => $value['msg'])); + } + } + + $template->add('ID_ERR', ifErrors($errors, 'id')); + $template->add('TITLE_ERR', ifErrors($errors, 'title')); + $template->add('URL_ERR', ifErrors($errors, 'url')); + $template->add('CATEGORY_ERR', ifErrors($category, 'url')); + $template->add('PASSWORD_ERR', ifErrors($password, 'url')); + + doErrors($template, $errors, 'id'); + doErrors($template, $errors, 'title'); + doErrors($template, $errors, 'url'); + doErrors($template, $errors, 'category'); + doErrors($template, $errors, 'password'); + + $template->add('ID', $id); + $template->add('TITLE', $title); + $template->add('URL', $url); + $template->add('CATEGORY', $category); + $template->add('PASSWORD', $password); + + $template->display(); +} + +function ifErrors($errors, $id) +{ + foreach ($errors as $name => $value) + { + if ($value['field'] == $id) + { + return ' error'; + } + } + + return ''; +} + +function doErrors($template, $errors, $id) +{ + foreach ($errors as $name => $value) + { + if ($value['field'] == $id) + { + $template->adds_block(strtoupper($id) . '_ERRS', array( 'NAME' => $name, + 'VALUE' => $value['msg'])); + } + } +} + +function addError(&$numOfErrors, &$errors, $field, $msg) +{ + $numOfErrors++; + $errors[$numOfErrors] = array('field' => $field, 'msg' => $msg); +} + +?> diff --git a/series/core/trunk/includes/instadisc.php b/series/core/trunk/includes/instadisc.php index be6fcee..6cf4657 100644 --- a/series/core/trunk/includes/instadisc.php +++ b/series/core/trunk/includes/instadisc.php @@ -63,4 +63,10 @@ function instaDisc_changePassword($password) $setconfig3 = mysql_fetch_array($setconfig2); } +function instaDisc_addSubscription($id, $title, $url, $category, $password = '') +{ + $inssub = "INSERT INTO subscriptions (identity, title, url, category, password) VALUES (\"" . mysql_real_escape_string($id) . "\",\"" . mysql_real_escape_string($title) . "\",\"" . mysql_real_escape_string($url) . "\",\"" . mysql_real_escape_string($category) . "\",\"" . mysql_real_escape_string(($password == '' ? '' : md5($password))) . "\")"; + $inssub2 = mysql_query($inssub); +} + ?> diff --git a/series/core/trunk/theme/addedsub.tpl b/series/core/trunk/theme/addedsub.tpl new file mode 100644 index 0000000..5bf2faa --- /dev/null +++ b/series/core/trunk/theme/addedsub.tpl @@ -0,0 +1,13 @@ + + + <!--SITENAME--> InstaDisc Series Control + + + +
+

InstaDisc Add Subscription

+ +

You've successfully added a subscription! Back to the ACP +

+ + diff --git a/series/core/trunk/theme/addsub.tpl b/series/core/trunk/theme/addsub.tpl new file mode 100644 index 0000000..f16cee1 --- /dev/null +++ b/series/core/trunk/theme/addsub.tpl @@ -0,0 +1,104 @@ + + + <!--SITENAME--> InstaDisc Series Control + + + + +
+

InstaDisc Add Subscription

+ +

If you would like to add a new subscription to Series Control, please fill out the form below. +

+ +
+ + +
Uh oh! Validation errors!

+

    + + + +
  1. + + + +
+
+ + +
+ Series Control Info + +
+ +

* + +

+ + + + + +

This is a short, unique string used to identify this subscription in Series Control.

+
+
+ +
+ Subscription Info + +
+ +

* + +

+ + + + +
+ +
+ +

* + +

+ + + + + +

This is a unique URL used to identify this subscription on the Client.

+
+ +
+ +

* + +

+ + + + +
+ +
+ +

* + +

+ + + + + +

If this subscription is encrypted, enter it's password here. Otherwise, leave it blank.

+
+
+ +
+ +
+
+ + -- cgit 1.4.1