Index: releases/5.0.2-B1/in-bulletin/constants.php =================================================================== --- releases/5.0.2-B1/in-bulletin/constants.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/constants.php (revision 12766) @@ -0,0 +1,23 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + // Private Message Statuses: 0 - Unread, 1 - Viewed', 2 - Read, 3 - Replyed, 4 - Sent + define('PM_STATUS_UNREAD', 0); + define('PM_STATUS_READ', 2); + + // Private Message Folders + define('PM_FOLDER_INBOX', 0); + define('PM_FOLDER_SENT', -1); + + define('SMILEYS_PATH', IMAGES_PATH.'emoticons/'); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/constants.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/emoticons/emoticon_eh.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/emoticons/emoticon_eh.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/emoticons/emoticon_eh.php (revision 12766) @@ -0,0 +1,37 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class EmoticonEventHandler extends kDBEventHandler { + + + /** + * Deletes image file + * + * @param kEvent $event + */ + function OnAfterItemDelete(&$event) + { + parent::OnAfterItemDelete($event); + + $object =& $event->getObject(); + + $emoticon_file = $object->GetField('EmotionImage', 'full_path'); + if ($emoticon_file) { + @unlink($emoticon_file); + } + } + + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/emoticons/emoticon_eh.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/emoticons/emoticons_config.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/emoticons/emoticons_config.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/emoticons/emoticons_config.php (revision 12766) @@ -0,0 +1,102 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + $config = Array ( + 'Prefix' => 'emoticon', + 'ItemClass' => Array ('class' => 'kDBItem', 'file' => '', 'build_event' => 'OnItemBuild'), + 'ListClass' => Array ('class' => 'kDBList', 'file' => '', 'build_event' => 'OnListBuild'), + 'EventHandlerClass' => Array ('class' => 'EmoticonEventHandler', 'file' => 'emoticon_eh.php', 'build_event' => 'OnBuild'), + 'TagProcessorClass' => Array ('class' => 'kDBTagProcessor', 'file' => '', 'build_event' => 'OnBuild'), + + 'AutoLoad' => true, + + 'QueryString' => Array ( + 1 => 'id', + 2 => 'Page', + 3 => 'event', + 4 => 'mode', + ), + + 'IDField' => 'EmoticonId', + + 'TableName' => TABLE_PREFIX.'Emoticon', + + 'TitleField' => 'Name', + + 'TitlePresets' => Array ( + 'default' => Array ( + 'new_status_labels' => Array ('emoticon' => '!la_title_AddingSmiley!'), + 'edit_status_labels' => Array ('emoticon' => '!la_title_EditingSmiley!'), + ), + + 'emoticon_list' => Array ('prefixes' => Array ('emoticon_List'), 'format' => "!la_tab_ConfigSmileys!"), + 'emoticon_edit' => Array ('prefixes' => Array ('emoticon'), 'format' => "#emoticon_status# '#emoticon_titlefield#'"), + ), + + 'PermSection' => Array('main' => 'in-bulletin:configuration_emoticon'), + + 'Sections' => Array ( + 'in-bulletin:configuration_emoticon' => Array ( + 'parent' => 'in-bulletin:setting_folder', + 'icon' => 'conf_smileys', + 'label' => 'la_tab_ConfigSmileys', + 'url' => Array('t' => 'in-bulletin/emoticons/emoticon_list', 'pass' => 'm'), + 'permissions' => Array('view', 'add', 'edit'), + 'priority' => 2, + 'type' => stTREE, + ), + ), + + 'ListSQLs' => Array ( + '' => ' SELECT %1$s.* %2$s FROM %1$s', + ), + + 'ListSortings' => Array ( + '' => Array ( + 'Sorting' => Array ('Name' => 'desc'), + ) + ), + + 'Fields' => Array ( + 'EmoticonId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'Name' => Array ('type' => 'string', 'max_len' => 20, 'not_null' => 1, 'required' => 1, 'default' => ''), + 'KeyStroke' => Array ('type' => 'string', 'max_len' => 20, 'not_null' => 1, 'required' => 1, 'default' => ''), + 'Enabled' => Array ('type' => 'int', 'not_null' => 1, 'default' => 1), + 'EmotionImage' => Array ( + 'type' => 'string', 'max_len' => 255, + 'formatter' => 'kUploadFormatter', 'allowed_types' => Array ('image/jpeg', 'image/jpg', 'image/gif', 'image/png', 'image/pjpeg'), + 'upload_dir' => SMILEYS_PATH, + 'not_null' => 1, 'required' => 1, 'default' => '', + ), + ), + + 'Grids' => Array ( + 'Default' => Array ( + 'Icons' => Array ( + 'default' => 'icon16_item.png', + 0 => 'icon16_disabled.png', + 1 => 'icon16_item.png', + 'module' => 'core', + ), + 'Fields' => Array ( + 'EmoticonId' => Array ('title' => 'la_col_Id', 'data_block' => 'grid_checkbox_td', 'filter_block' => 'grid_range_filter', 'width' => 50, ), + 'Name' => Array ('title' => 'la_col_Name', 'filter_block' => 'grid_like_filter', 'width' => 150, ), + 'KeyStroke' => Array ('title' => 'la_col_KeyStroke', 'filter_block' => 'grid_like_filter', 'width' => 100, ), + 'EmotionImage' => Array ('title' => 'la_col_Image', 'filter_block' => 'grid_like_filter', 'width' => 150, ), + ), + ), + ), + ); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/emoticons/emoticons_config.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.7 \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/private_messages/private_message_eh.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/private_messages/private_message_eh.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/private_messages/private_message_eh.php (revision 12766) @@ -0,0 +1,251 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class PrivateMessageEventHandler extends kDBEventHandler { + + function mapPermissions() + { + parent::mapPermissions(); + $permissions = Array( + 'OnItemBuild' => Array('self' => true), + 'OnCreate' => Array('self' => true), + 'OnDelete' => Array('self' => true), + ); + + $this->permMapping = array_merge($this->permMapping, $permissions); + } + + /** + * Applies folder & message owner filter to message list + * + * @param kEvent $event + */ + function SetCustomQuery(&$event) + { + $folder_id = $this->Application->GetVar('folder_id'); + if ($folder_id === false) { + $folder_id = PM_FOLDER_INBOX; + $this->Application->SetVar('folder_id', $folder_id); + } + + $object =& $event->getObject(); + /* @var $object kDBList */ + + $user_id = $this->Application->RecallVar('user_id'); + if ($folder_id == PM_FOLDER_INBOX) { + $object->addFilter('owner_filter', '%1$s.ToId = '.$user_id); + } + else { + $object->addFilter('owner_filter', '%1$s.FromId = '.$user_id); + } + $object->addFilter('folder_filter', '%1$s.FolderId = '.$folder_id); + } + + /** + * Puts message to Sent folder + * + * @param kEvent $event + */ + function OnBeforeItemCreate(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + if ($object->GetDBField('FolderId') != PM_FOLDER_SENT) { + // when creating "Inbox" message (from "Sent" message) don't reset folder & status + return ; + } + + $user_id = $this->Application->RecallVar('user_id'); + $object->SetDBField('FromId', $user_id); + $object->SetDBField('FolderId', PM_FOLDER_SENT); + $object->SetDBField('Status', PM_STATUS_READ); + } + + /** + * Creates 1st post when topic is created + * + * @param kEvent $event + */ + function OnAfterItemCreate(&$event) + { + parent::OnAfterItemCreate($event); + + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $this->Application->EmailEventUser('PM.ADD', $object->GetDBField('ToId')); + + if ($object->GetDBField('FolderId') != PM_FOLDER_SENT) { + // 1. create message in sender's "Sent" folder (this method only for this step) + // 2. create message body (shared) + // 3. create message copy in recipient's "Inbox" folder + return ; + } + + $message_body =& $this->Application->recallObject($event->Prefix.'-body', null, Array ('skip_autoload' => true)); + /* @var $message_body kDBItem */ + + // 1. create message body (for sender & recipient) + $copy_fields = Array ('Subject', 'Body', 'ShowSignatures', 'DisableSmileys', 'DisableBBCodes'); + $message_body->SetDBFieldsFromHash($object->GetFieldValues(), $copy_fields); + + $body_created = $message_body->Create(); + if ($body_created) { + // 2. link body with message + $object->SetDBField('PMBodyId', $message_body->GetID()); + $object->Update(); + + // 3. create message in recipient's Inbox folder + $object->SetDBField('FolderId', PM_FOLDER_INBOX); + $object->SetDBField('Status', PM_STATUS_UNREAD); + $object->Create(); + } + } + + /** + * Sets post options to virtual fields + * + * @param kEvent $event + */ + function OnAfterItemLoad(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + $options_map = $post_helper->getOptionsMap(); + $post_options = $object->GetDBField('Options'); + foreach ($options_map as $option_name => $field_name) { + $option_value = $post_helper->GetPostOption($option_name, $post_options); + $object->SetDBField($field_name, (int)$option_value); + } + } + + /** + * Goes to next_template after post creation + * + * @param kEvent $event + */ + function OnCreate(&$event) + { + parent::OnCreate($event); + + if ($event->status == erSUCCESS && !$this->Application->isAdmin) { + $event->SetRedirectParam('opener', 's'); + $event->redirect = $this->Application->GetVar('next_template'); + } + } + + /** + * Prevents user from deleting other user private messages + * + * @param kEvent $event + */ + function OnBeforeItemDelete(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $user_id = $this->Application->RecallVar('user_id'); + $owner_field = ($object->GetDBField('FolderId') == PM_FOLDER_INBOX) ? 'ToId' : 'FromId'; + if ($object->GetDBField($owner_field) != $user_id) { + $event->status = erFAIL; + } + } + + /** + * Updates reference counter in message body record + * + * @param kEvent $event + */ + function OnAfterItemDelete(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $body_idfield = $this->Application->getUnitOption($event->Prefix.'-body', 'IDField'); + $body_table = $this->Application->getUnitOption($event->Prefix.'-body', 'TableName'); + $sql = 'UPDATE '.$body_table.' + SET ReferenceCount = ReferenceCount - 1 + WHERE '.$body_idfield.' = '.$object->GetDBField('PMBodyId'); + $this->Conn->Query($sql); + } + + /** + * Sets default values to posting options based on persistent session + * + * @param kEvent $event + */ + function OnAfterConfigRead(&$event) + { + $virtual_fields = $this->Application->getUnitOption($event->Prefix, 'VirtualFields'); + $virtual_fields['DisableBBCodes']['default'] = (int)!$this->Application->RecallPersistentVar('bbcode'); + $virtual_fields['DisableSmileys']['default'] = (int)!$this->Application->RecallPersistentVar('smileys'); + $virtual_fields['ShowSignatures']['default'] = (int)$this->Application->RecallPersistentVar('show_sig'); + $this->Application->setUnitOption($event->Prefix, 'VirtualFields', $virtual_fields); + } + + /** + * Checks, that current user is recipient or sender of viewed message + * + * @param kEvent $event + * @return bool + */ + function checkItemStatus(&$event) + { + $object =& $event->getObject(); + if (!$object->isLoaded()) { + return true; + } + + $user_id = $this->Application->RecallVar('user_id'); + return ($object->GetDBField('FromId') == $user_id) || ($object->GetDBField('ToId') == $user_id); + } + + /** + * Prepares new reply & new message form + * + * @param kEvent $event + */ + function OnNew(&$event) + { + parent::OnNew($event); + + $reply_to = $this->Application->GetVar('reply_to'); + $user_id = $this->Application->GetVar('user_id'); + + $object =& $event->getObject(); + /* @var $object kDBItem */ + + if ($reply_to > 0) { + // reply to message + $source_msg =& $this->Application->recallObject($event->Prefix.'.-item', null, Array ('skip_autoload' => true)); + /* @var $source_msg kDBItem */ + + $source_msg->Load($reply_to); + + $object->SetDBField('ToId', $source_msg->GetDBField('FromId')); + $object->SetDBField('Subject', 'Re: '.$source_msg->GetDBField('Subject')); + } + elseif ($user_id > 0) { + // send message to any user by id + $object->SetDBField('ToId', $user_id); + } + } + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/private_messages/private_message_eh.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.2.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/private_messages/private_message_tp.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/private_messages/private_message_tp.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/private_messages/private_message_tp.php (revision 12766) @@ -0,0 +1,164 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class PrivateMessageTagProcessor extends kDBTagProcessor { + + /** + * Checks if private message is unread + * + * @param Array $params + * @return bool + */ + function IsNew($params) + { + $object =& $this->getObject(); + /* @var $object kDBItem */ + + return $object->GetDBField('Status') < PM_STATUS_READ; + } + + /** + * Allows to check what folder is currently active + * + * @param Array $params + * @return bool + */ + function FolderSelected($params) + { + $folder_mapping = Array ('inbox' => PM_FOLDER_INBOX, 'sent' => PM_FOLDER_SENT); + + return (int)$this->Application->GetVar('folder_id') == $folder_mapping[ strtolower($params['folder']) ]; + } + + /** + * Creates link to specific private message folder + * + * @param Array $params + * @return string + */ + function FolderLink($params) + { + $folder_mapping = Array ('inbox' => PM_FOLDER_INBOX, 'sent' => PM_FOLDER_SENT); + $params['folder_id'] = $folder_mapping[ strtolower($params['folder']) ]; + unset($params['folder']); + + return $this->Application->ProcessParsedTag('m', 'Link', $params); + } + + function MessageSubject($params) + { + $object =& $this->getObject(); + /* @var $object kDBItem */ + + $params['field'] = 'Subject'; + $value = $this->Field($params); + + if (!$value && isset($params['empty_title'])) { + return '['.$this->Application->Phrase($params['empty_title']).']'; + } + + return $value; + } + + function MessageBody($params) + { + $object =& $this->getObject($params); + + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + // 2. parse post body + $sub_blocks = Array ( + 'smileys' => $params['smiley_render_as'], + 'bbcode' => $params['bbcode_render_as'], + ); + + return $post_helper->parsePostBody($object->GetDBField('Body'), $object->GetDBField('Options'), $sub_blocks); + } + + function DeleteLink($params) + { + $params['pass'] = 'm,'.$this->getPrefixSpecial(); + $params[$this->getPrefixSpecial().'_event'] = 'OnDelete'; + return $this->Application->ProcessParsedTag('m', 'Link', $params); + } + + function ReplyLink($params) + { + $params['reply_to'] = $this->Application->GetVar($this->getPrefixSpecial().'_id'); + return $this->Application->ProcessParsedTag('m', 'Link', $params); + } + + /** + * User can reply message only in case, when it is not it's own message + * + * @param Array $params + * @return bool + */ + function CanReplyMessage($params) + { + $object =& $this->getObject(); + /* @var $object kDBItem */ + + return $object->GetDBField('FromId') != $this->Application->RecallVar('user_id'); + } + + /** + * Marks private message as read + * + * @param Array $params + */ + function MarkAsRead($params) + { + $object =& $this->getObject(); + /* @var $object kDBItem */ + + if ($object->GetDBField('Status') < PM_STATUS_READ) { + $object->SetDBField('Status', PM_STATUS_READ); + $object->Update(); + } + } + + /** + * Returns link to private message sender/recipient public profile + * + * @param Array $params + * @return string + */ + function ProfileLink($params) + { + $user_field = strtolower($params['type']) == 'from' ? 'FromId' : 'ToId'; + unset($params['type']); + + $object =& $this->getObject($params); + $params['user_id'] = $object->GetDBField($user_field); + + return $this->Application->ProcessParsedTag('m', 'Link', $params); + } + + /** + * Returns link for sending private message from user's public profile page + * + * @param Array $params + * @return string + */ + function SendMessageLink($params) + { + $params['user_id'] = $this->Application->GetVar('user_id'); + return $this->Application->ProcessParsedTag('m', 'Link', $params); + } + + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/private_messages/private_message_tp.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.2.2.4 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/private_messages/private_messages_config.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/private_messages/private_messages_config.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/private_messages/private_messages_config.php (revision 12766) @@ -0,0 +1,109 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + $config = Array ( + 'Prefix' => 'private-message', + 'ItemClass' => Array('class' => 'kDBItem', 'file' => '', 'build_event' => 'OnItemBuild'), + 'ListClass' => Array('class' => 'kDBList', 'file' => '', 'build_event' => 'OnListBuild'), + 'EventHandlerClass' => Array('class' => 'PrivateMessageEventHandler', 'file' => 'private_message_eh.php', 'build_event' => 'OnBuild'), + 'TagProcessorClass' => Array('class' => 'PrivateMessageTagProcessor', 'file' => 'private_message_tp.php', 'build_event' => 'OnBuild'), + + 'AutoLoad' => true, + + 'QueryString' => Array ( + 1 => 'id', + 2 => 'Page', + 3 => 'event', + 4 => 'mode', + ), + + 'IDField' => 'PmId', + 'StatusField' => Array ('Status'), + 'TitleField' => 'Subject', + + 'PermSection' => Array('main' => 'in-bulletin:private_messages',), + + 'TableName' => TABLE_PREFIX.'PrivateMessages', + + 'CalculatedFields' => Array ( + '' => Array ( + 'Subject' => 'pmb.Subject', + 'Body' => 'pmb.Body', + ), + ), + + 'ListSQLs' => Array ( + '' => ' SELECT %1$s.* %2$s + FROM %1$s + LEFT JOIN '.TABLE_PREFIX.'%3$sPrivateMessageBody pmb ON pmb.PMBodyId = %1$s.PMBodyId + LEFT JOIN '.TABLE_PREFIX.'PortalUser from_user ON from_user.PortalUserId = %1$s.FromId + LEFT JOIN '.TABLE_PREFIX.'PortalUser to_user ON to_user.PortalUserId = %1$s.ToId', + ), + + 'ListSortings' => Array ( + '' => Array( + 'ForcedSorting' => Array('CreatedOn' => 'desc'), + ), + ), + + 'ItemSQLs' => Array ( + '' => ' SELECT %1$s.* %2$s + FROM %1$s + LEFT JOIN '.TABLE_PREFIX.'%3$sPrivateMessageBody pmb ON pmb.PMBodyId = %1$s.PMBodyId + LEFT JOIN '.TABLE_PREFIX.'PortalUser from_user ON from_user.PortalUserId = %1$s.FromId + LEFT JOIN '.TABLE_PREFIX.'PortalUser to_user ON to_user.PortalUserId = %1$s.ToId', + ), + + 'SubItems' => Array('private-message-body'), + + 'CalculatedFields' => Array ( + '' => Array ( + 'Subject' => 'pmb.Subject', + 'Body' => 'pmb.Body', + 'Options' => 'pmb.Options', + + 'FromName' => 'IF (ISNULL(from_user.Login), IF (%1$s.FromId = -1, "root", IF (%1$s.FromId = -2, "Guest", "n/a")), from_user.Login)', + 'ToName' => 'IF (ISNULL(to_user.Login), IF (%1$s.ToId = -1, "root", IF (%1$s.ToId = -2, "Guest", "n/a")), to_user.Login)', + + 'FromFullName' => 'TRIM(CONCAT(from_user.FirstName, " ", from_user.LastName))', + 'ToFullName' => 'TRIM(CONCAT(to_user.FirstName, " ", to_user.LastName))', + ), + ), + + 'Fields' => Array ( + 'PmId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'FromId' => Array('type' => 'int', 'formatter' => 'kLEFTFormatter', 'error_msgs' => Array ('invalid_option' => '!lu_error_UserNotFound!'), 'left_sql' => 'SELECT %s FROM '.TABLE_PREFIX.'PortalUser WHERE `%s` = \'%s\'', 'left_key_field' => 'PortalUserId', 'left_title_field' => 'Login', 'required' => 1, 'default' => null), + 'ToId' => Array('type' => 'int', 'formatter' => 'kLEFTFormatter', 'error_msgs' => Array ('invalid_option' => '!lu_error_UserNotFound!'), 'left_sql' => 'SELECT %s FROM '.TABLE_PREFIX.'PortalUser WHERE `%s` = \'%s\'', 'left_key_field' => 'PortalUserId', 'left_title_field' => 'Login', 'required' => 1, 'default' => null), + 'FolderId' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (0 => 'lu_Inbox', 1 => 'lu_Sent'), 'use_phrases' => 1, 'not_null' => 1, 'default' => PM_FOLDER_SENT), + 'Status' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (0 => 'lu_opt_MessageUnread', 1 => 'lu_opt_MessageViewed', 2 => 'lu_opt_MessageRead', 3 => 'lu_opt_MessageReplied', 4 => 'lu_opt_MessageSent'), 'use_phrases' => 1, 'not_null' => 1, 'default' => 0), + 'PMBodyId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'CreatedOn' => Array ('type' => 'int', 'formatter' => 'kDateFormatter', 'default' => '#NOW#'), + ), + + 'VirtualFields' => Array ( + 'FromName' => Array ('type' => 'string', 'default' => ''), + 'ToName' => Array ('type' => 'string', 'default' => ''), + 'Subject' => Array ('type' => 'string', 'default' => ''), + 'Body' => Array ('type' => 'string', 'required' => 1, 'default' => ''), + 'Options' => Array ('type' => 'string', 'default' => 0), + + 'DisableBBCodes' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'default' => 0), + 'DisableSmileys' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'default' => 0), + 'ShowSignatures' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (0 => 'la_No', 1 => 'la_Yes'), 'use_phrases' => 1, 'default' => 1), + ), + + + ); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/private_messages/private_messages_config.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.3 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/topics/topics_tag_processor.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/topics/topics_tag_processor.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/topics/topics_tag_processor.php (revision 12766) @@ -0,0 +1,79 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class TopicsTagProcessor extends kCatDBTagProcessor { + + function TopicLink($params) + { + return $this->ItemLink($params, 'topic'); + } + + function ListTopics($params) + { + return $this->PrintList2($params); + } + + function PostingLink($params) + { + $item_id = getArrayValue($params, 'posting_id'); + if (!$item_id) { + $item_id = $this->Application->GetVar($this->Prefix.'_post_id'); + } + $params[$this->Prefix.'_post_id'] = $item_id; + return $this->TopicLink($params); + } + + function PostingDeleteLink($params) + { + $params['Action'] = 'bb_post_delete'; + return $this->PostingLink($params); + } + + /** + * Returns topic replies count + * + * @param Array $params + * @return int + */ + function TopicReplies($params) + { + $object =& $this->getObject($params); + + // -1 - don't count post created together with topic + return $object->GetDBField('Posts') ? $object->GetDBField('Posts') - 1 : 0; + } + + /** + * Returns topic lock statis + * + * @param Array $params + * @return bool + */ + function IsLocked($params) + { + $object =& $this->getObject($params); + + return $object->GetDBField('TopicType') == 0; + } + + function LockToggleLink($params) + { + $params[$this->Prefix.'_event'] = 'OnTopicLockToggle'; + $params['pass'] = 'm,'.$this->Prefix; + + return $this->Application->ProcessParsedTag('m', 'Link', $params); + } + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/topics/topics_tag_processor.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.5.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/topics/topics_event_handler.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/topics/topics_event_handler.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/topics/topics_event_handler.php (revision 12766) @@ -0,0 +1,210 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class TopicsEventHandler extends kCatDBEventHandler { + + + /** + * Checks topic lock permission + * + * @param kEvent $event + */ + function CheckPermission(&$event) + { + if ($event->Name == 'OnTopicLockToggle') { + $object =& $event->getObject(); + /* @var $object kCatDBItem */ + + if (!$object->isLoaded()) { + $event->status = erPERM_FAIL; + return false; + } + + $category_id = $object->GetDBField('CategoryId'); + $perm_status = $this->Application->CheckPermission('TOPIC.LOCK', 0, $category_id); + + if (!$perm_status) { + $event->status = erPERM_FAIL; + } + + return $perm_status; + } + + return parent::CheckPermission($event); + } + + /** + * Lock or unlock topic + * + * @param kEvent $event + */ + function OnToggleLock(&$event) + { + $object =& $event->getObject(); + + $new_type = $object->GetDBField('TopicType') ? 0 : 1; + $object->SetDBField('TopicType', $new_type); + $object->Update(); + } + + /** + * Cache topic owner + * + * @param kEvent $event + */ + function OnBeforeItemUpdate(&$event) + { + parent::OnBeforeItemUpdate($event); + + $this->cacheItemOwner($event, 'OwnerId', 'PostedBy'); + } + + /** + * Cache topic owner + * + * @param kEvent $event + */ + function OnBeforeItemCreate(&$event) + { + parent::OnBeforeItemCreate($event); + + $this->cacheItemOwner($event, 'OwnerId', 'PostedBy'); + + $object =& $event->getObject(); + /* @var $object kCatDBItem */ + + if (!$object->GetDBField('TodayDate')) { + $object->SetDBField('TodayDate', adodb_date('Y-m-d')); + } + + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + $object->SetDBField('TopicText', $post_helper->CensorText( $object->GetDBField('TopicText') )); + } + + /** + * Creates 1st post when topic is created + * + * @param kEvent $event + */ + function OnAfterItemCreate(&$event) + { + parent::OnAfterItemCreate($event); + + if ($event->Special == '-item') { + // don't create first post when cloning + return ; + } + + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $post =& $this->Application->recallObject($event->Prefix.'-post', null, Array ('skip_autoload' => true)); + /* @var $post kDBItem */ + + $post->SetDBField('Pending', $object->GetDBField('Status') == STATUS_ACTIVE ? 0 : 1); + $post->SetDBField('Subject', ''); + $post->SetDBField('PostingText', $object->GetDBField('PostingText')); + + $post->SetDBField('ShowSignatures', $object->GetDBField('ShowSignatures')); + $post->SetDBField('DisableSmileys', $object->GetDBField('DisableSmileys')); + $post->SetDBField('DisableBBCodes', $object->GetDBField('DisableBBCodes')); + + $post->Create(); + + // need to update category topic count here + } + + /** + * Approves 1st post when topic got approved + * + * @param kEvent $event + */ + function OnAfterItemUpdate(&$event) + { + if (!$this->Application->isAdminUser) { + return ; + } + + $object =& $event->getObject(); + /* @var $object kCatDBItem */ + + if ($object->GetDBField('Posts') == 1) { + $post =& $this->Application->recallObject($event->Prefix.'-post', null, Array('skip_autoload' => true)); + /* @var $post kDBItem */ + + $main_status = $object->GetDBField('Status'); + $post->Load($object->GetDBField('LastPostId')); + if ($post->isLoaded()) { + $post->SetDBField('Pending', $main_status == STATUS_ACTIVE ? 0 : 1); + $post->Update(); + } + } + } + + /** + * Makes first post body field non-requered when topic has posts already + * + * @param kEvent $event + */ + function OnAfterItemLoad(&$event) + { + parent::OnAfterItemLoad($event); + + $object =& $event->getObject(); + /* @var $object kCatDBItem */ + + if ($object->GetDBField('Posts') > 0 || !$this->Application->isAdminUser) { + $object->setRequired('PostingText', false); + } + } + + /** + * Locks or unlocks topic + * + * @param kEvent $event + */ + function OnTopicLockToggle(&$event) + { + $object =& $event->getObject(); + /* @var $object kCatDBItem */ + + $topic_type = $object->GetDBField('TopicType'); + $object->SetDBField('TopicType', $topic_type == 1 ? 0 : 1); + $object->Update(); + } + + /** + * Sets default values to posting options based on persistent session + * + * @param kEvent $event + */ + function OnAfterConfigRead(&$event) + { + parent::OnAfterConfigRead($event); + + $fields = $this->Application->getUnitOption($event->Prefix, 'Fields'); + $fields['NotifyOwnerOnChanges']['default'] = (int)$this->Application->RecallPersistentVar('owner_notify'); + $this->Application->setUnitOption($event->Prefix, 'Fields', $fields); + + $virtual_fields = $this->Application->getUnitOption($event->Prefix, 'VirtualFields'); + $virtual_fields['DisableBBCodes']['default'] = (int)!$this->Application->RecallPersistentVar('bbcode'); + $virtual_fields['DisableSmileys']['default'] = (int)!$this->Application->RecallPersistentVar('smileys'); + $virtual_fields['ShowSignatures']['default'] = (int)$this->Application->RecallPersistentVar('show_sig'); + $this->Application->setUnitOption($event->Prefix, 'VirtualFields', $virtual_fields); + } + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/topics/topics_event_handler.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.15.2.6 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/topics/topics_config.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/topics/topics_config.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/topics/topics_config.php (revision 12766) @@ -0,0 +1,407 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + $config = Array( + 'Prefix' => 'bb', + 'ItemClass' => Array('class' => 'kCatDBItem', 'file' => '', 'build_event' => 'OnItemBuild'), + 'ListClass' => Array('class' => 'kCatDBList', 'file' => '', 'build_event' => 'OnListBuild'), + 'EventHandlerClass' => Array('class' => 'TopicsEventHandler', 'file' => 'topics_event_handler.php', 'require_classes' => Array('kCatDBEventHandler'), 'build_event' => 'OnBuild'), + 'TagProcessorClass' => Array('class' => 'TopicsTagProcessor', 'file' => 'topics_tag_processor.php', 'require_classes' => Array('kCatDBTagProcessor'), 'build_event' => 'OnBuild'), + 'AutoLoad' => true, + 'QueryString' => Array( + 1 => 'id', + 2 => 'Page', + 3 => 'event', + 4 => 'mode', + ), + + 'ConfigPriority' => 0, + + 'RewritePriority' => 103, + 'RewriteListener' => 'ModRewriteHelper:CategoryItemRewriteListener', + + 'Hooks' => Array ( + Array ( + 'Mode' => hBEFORE, + 'Conditional' => false, + 'HookToPrefix' => '', + 'HookToSpecial' => '*', + 'HookToEvent' => Array('OnAfterConfigRead'), + 'DoPrefix' => 'cdata', + 'DoSpecial' => '*', + 'DoEvent' => 'OnDefineCustomFields', + ), + ), + + 'CatalogItem' => true, + 'AdminTemplatePath' => 'topics', + 'AdminTemplatePrefix' => 'topics_', + 'SearchConfigPostfix' => 'topics', + + 'IDField' => 'TopicId', + 'StatusField' => Array('Status'), // field, that is affected by Approve/Decline events + + 'TitleField' => 'TopicText', // field, used in bluebar when editing existing item + 'TitlePhrase' => 'la_Text_Topic', // phrase used to specify item type in relationship list + 'OwnerField' => 'OwnerId', // usually it is CreatedById + + 'TitlePresets' => Array( + 'default' => Array( 'new_status_labels' => Array('bb' => '!la_title_AddingTopic!'), + 'edit_status_labels' => Array('bb' => '!la_title_EditingTopic!'), + 'new_titlefield' => Array('bb' => '!la_title_NewTopic!'), + ), + + 'topics_edit' => Array('prefixes' => Array('bb'), 'format' => "#bb_status# '#bb_titlefield#' - !la_title_General!"), + 'topics_categories' => Array('prefixes' => Array('bb','bb-ci_List'), 'format' => "#bb_status# '#bb_titlefield#' - !la_title_Categories!"), + 'topics_relations' => Array('prefixes' => Array('bb'), 'format' => "#bb_status# '#bb_titlefield#' - !la_title_Relations!"), + 'topics_images' => Array('prefixes' => Array('bb'), 'format' => "#bb_status# '#bb_titlefield#' - !la_title_Images!"), + 'topics_reviews' => Array('prefixes' => Array('bb'), 'format' => "#bb_status# '#bb_titlefield#' - !la_title_Reviews!"), + 'topics_custom' => Array('prefixes' => Array('bb'), 'format' => "#bb_status# '#bb_titlefield#' - !la_title_Custom!"), + + 'images_edit' => Array( 'prefixes' => Array('bb', 'bb-img'), + 'new_status_labels' => Array('bb-img'=>'!la_title_Adding_Image!'), + 'edit_status_labels' => Array('bb-img'=>'!la_title_Editing_Image!'), + 'new_titlefield' => Array('bb-img'=>'!la_title_New_Image!'), + 'format' => "#bb_status# '#bb_titlefield#' - #bb-img_status# '#bb-img_titlefield#'", + ), + + 'reviews_edit' => Array( 'prefixes' => Array('bb', 'bb-rev'), + 'new_status_labels' => Array('bb-rev'=>"!la_title_Adding_Review! '!la_title_New_Review!'"), + 'edit_status_labels' => Array('bb-rev'=>'!la_title_Editing_Review!'), + 'format' => "#bb_status# '#bb_titlefield#' - #bb-rev_status#", + ), + + 'relations_edit' => Array( 'prefixes' => Array('bb', 'bb-rel'), + 'new_status_labels' => Array('bb-rel'=>"!la_title_Adding_Relationship! '!la_title_New_Relationship!'"), + 'edit_status_labels' => Array('bb-rel'=>'!la_title_Editing_Relationship!'), + 'format' => "#bb_status# '#bb_titlefield#' - #bb-rel_status#", + ), + + 'tree_in-bulletin' => Array('format' => '!la_Text_Version! '.$this->Application->findModule('Name', 'In-Bulletin', 'Version')), + ), + + 'EditTabPresets' => Array ( + 'Default' => Array ( + 'general' => Array ('title' => 'la_tab_General', 't' => 'in-bulletin/topics/topics_edit', 'priority' => 1), + 'categories' => Array ('title' => 'la_tab_Categories', 't' => 'in-bulletin/topics/topics_categories', 'priority' => 2), + 'relations' => Array ('title' => 'la_tab_Relations', 't' => 'in-bulletin/topics/topics_relations', 'priority' => 3), + 'images' => Array ('title' => 'la_tab_Images', 't' => 'in-bulletin/topics/topics_images', 'priority' => 4), + 'reviews' => Array ('title' => 'la_tab_Reviews', 't' => 'in-bulletin/topics/topics_reviews', 'priority' => 5), + 'custom' => Array ('title' => 'la_tab_Custom', 't' => 'in-bulletin/topics/topics_custom', 'priority' => 6), + ), + ), + + 'PermItemPrefix' => 'TOPIC', + + 'PermTabText' => 'In-Bulletin', + 'PermSection' => Array('main' => 'CATEGORY:in-bulletin:topics_list', 'search' => 'in-bulletin:configuration_search', 'email' => 'in-bulletin:configuration_email', 'custom' => 'in-bulletin:configuration_custom'), + + 'Sections' => Array( + /*'in-bulletin' => Array( + 'parent' => 'in-portal:root', + 'icon' => 'settings_in-bulletin', + 'label' => 'la_title_In-Bulletin', + 'url' => Array('t' => 'index', 'pass_section' => true, 'pass' => 'm'), + 'permissions' => Array('view'), + 'priority' => 3.3, + 'container' => true, + 'type' => stTREE, + ),*/ + + 'in-bulletin:topics' => Array( + 'parent' => 'in-portal:site', + 'icon' => 'topics', + 'label' => 'la_tab_Topics', + 'url' => Array('t' => 'catalog/advanced_view', 'anchor' => 'tab-bb.showall', 'pass' => 'm'), + 'onclick' => 'setCatalogTab(\'bb.showall\')', + 'permissions' => Array('view'), + 'priority' => 3.4, + 'type' => stTREE, + ), + + // topic settings + 'in-bulletin:setting_folder' => Array ( + 'parent' => 'in-portal:system', + 'icon' => 'conf_topics', + 'label' => 'la_title_In-Bulletin', + 'url' => Array ('t' => 'index', 'pass_section' => true, 'pass' => 'm'), + 'permissions' => Array ('view'), + 'priority' => 3.5, + 'container' => true, + 'type' => stTREE, + ), + + /*'in-bulletin:inbulletin_general' => Array( + 'parent' => 'in-bulletin:setting_folder', + 'icon' => 'core:settings_general', + 'label' => 'la_tab_GeneralSettings', + 'url' => Array('t' => 'config/config_general', 'pass_section' => true, 'pass' => 'm'), + 'permissions' => Array('view', 'edit'), + 'priority' => 2.9, + 'type' => stTREE, + ),*/ + + 'in-bulletin:configuration_output' => Array( + 'parent' => 'in-bulletin:setting_folder', + 'icon' => 'core:conf_output', + 'label' => 'la_tab_ConfigOutput', + 'url' => Array('t' => 'config/config_general', 'pass_section' => true, 'pass' => 'm'), + 'permissions' => Array('view', 'edit'), + 'priority' => 3, + 'type' => stTREE, + ), + + 'in-bulletin:configuration_search' => Array( + 'parent' => 'in-bulletin:setting_folder', + 'icon' => 'core:conf_search', + 'label' => 'la_tab_ConfigSearch', + 'url' => Array('t' => 'config/config_search', 'module_key' => 'topics', 'pass_section' => true, 'pass' => 'm'), + 'permissions' => Array('view', 'edit'), + 'priority' => 4, + 'type' => stTREE, + ), + + + 'in-bulletin:configuration_email' => Array( + 'parent' => 'in-bulletin:setting_folder', + 'icon' => 'core:conf_email', + 'label' => 'la_tab_ConfigE-mail', + 'url' => Array('t' => 'config/config_email', 'pass_section' => true, 'pass' => 'm'), + 'permissions' => Array('view', 'edit'), + 'priority' => 5, + 'type' => stTREE, + ), + + 'in-bulletin:configuration_custom' => Array( + 'parent' => 'in-bulletin:setting_folder', + 'icon' => 'core:conf_customfields', + 'label' => 'la_tab_ConfigCustom', + 'url' => Array('t' => 'custom_fields/custom_fields_list', 'cf_type' => 3, 'pass_section' => true, 'pass' => 'm,cf'), + 'permissions' => Array('view', 'add', 'edit', 'delete'), + 'priority' => 6, + 'type' => stTREE, + ), + ), + + 'FilterMenu' => Array( + 'Groups' => Array( + Array('mode' => 'AND', 'filters' => Array('show_active','show_pending','show_disabled'), 'type' => WHERE_FILTER), + Array('mode' => 'AND', 'filters' => Array('show_new'), 'type' => HAVING_FILTER), + Array('mode' => 'AND', 'filters' => Array('show_hot'), 'type' => HAVING_FILTER), + Array('mode' => 'AND', 'filters' => Array('show_pop'), 'type' => HAVING_FILTER), + Array('mode' => 'AND', 'filters' => Array('show_pick'), 'type' => WHERE_FILTER), + ), + 'Filters' => Array( + 'show_active' => Array('label' =>'la_Active', 'on_sql' => '', 'off_sql' => '%1$s.Status != 1' ), + 'show_pending' => Array('label' => 'la_Pending', 'on_sql' => '', 'off_sql' => '%1$s.Status != 2' ), + 'show_disabled' => Array('label' => 'la_Disabled', 'on_sql' => '', 'off_sql' => '%1$s.Status != 0' ), + 's1' => Array(), + 'show_new' => Array('label' => 'la_Text_New', 'on_sql' => '', 'off_sql' => '`IsNew` != 1' ), + 'show_hot' => Array('label' => 'la_Text_Hot', 'on_sql' => '', 'off_sql' => '`IsHot` != 1' ), + 'show_pop' => Array('label' => 'la_Text_Pop', 'on_sql' => '', 'off_sql' => '`IsPop` != 1' ), + 'show_pick' => Array('label' => 'la_prompt_EditorsPick', 'on_sql' => '', 'off_sql' => '%1$s.`EditorsPick` != 1' ), + ) + ), + + 'CatalogSelectorName' => 'topiclist', + + 'ItemPropertyMappings' => Array( + 'NewDays' => 'Topic_NewDays', // number of days item to be NEW + 'MinPopVotes' => 'Topic_MinPopVotes', // minimum number of votes for an item to be POP + 'MinPopRating' => 'Topic_MinPopRating', // minimum rating for an item to be POP + 'MaxHotNumber' => 'Topic_MaxHotNumber', // maximum number of HOT items + + 'HotLimit' => 'Topic_HotLimit', // variable name in inp_Cache table + 'ClickField' => 'Views', // item click count is stored here (in item table) + ), + + 'ItemType' => 3, // this is used when relation to product is added from in-portal and via-versa + + 'ViewMenuPhrase' => 'la_title_Topics', + 'CatalogTabIcon' => 'in-bulletin:icon16_topics.png', + 'UsePendingEditing' => true, // item editing is controlled by TOPIC.ADD/EDIT, TOPIC.ADD/EDIT.PENDING permissions + + 'StatisticsInfo' => Array( + 'pending' => Array( + 'icon' => 'icon16_topic_pending.gif', + 'label' => 'la_Text_Topics', + 'js_url' => '#url#', + 'url' => Array('t' => 'catalog/advanced_view', 'SetTab' => 'bb', 'pass' => 'm,bb.showall', 'bb.showall_event' => 'OnSetFilterPattern', 'bb.showall_filters' => 'show_active=0,show_pending=1,show_disabled=0,show_new=1,show_hot=1,show_pop=1,show_pick=1'), + 'status' => STATUS_PENDING, + ), + ), + + 'TableName' => TABLE_PREFIX.'Topic', + + 'CalculatedFields' => Array ( + '' => Array ( + 'UserName' => 'IF (ISNULL(u.Login), IF (%1$s.OwnerId = -1, "root", IF (%1$s.OwnerId = -2, "Guest", "n/a")), u.Login)', + 'CategoryId' => TABLE_PREFIX.'%3$sCategoryItems.CategoryId', + 'Filename' => TABLE_PREFIX.'%3$sCategoryItems.Filename', + 'PrimaryCat' => TABLE_PREFIX.'%3$sCategoryItems.PrimaryCat', + 'ParentPath' => TABLE_PREFIX.'Category.ParentPath', + + 'SameImages' => 'img.SameImages', + 'LocalThumb' => 'img.LocalThumb', + 'ThumbPath' => 'img.ThumbPath', + 'ThumbUrl' => 'img.ThumbUrl', + 'LocalImage' => 'img.LocalImage', + 'LocalPath' => 'img.LocalPath', + 'FullUrl' => 'img.Url', + + 'LastPoster' => 'IF (ISNULL(last_post.PosterAlias), "Guest", last_post.PosterAlias)', + 'LastPosterId' => 'last_post.CreatedById', + ), + ), + + 'ListSQLs' => Array( ''=>' SELECT %1$s.* %2$s + FROM %1$s + LEFT JOIN '.TABLE_PREFIX.'%3$sCategoryItems ON '.TABLE_PREFIX.'%3$sCategoryItems.ItemResourceId = %1$s.ResourceId + LEFT JOIN '.TABLE_PREFIX.'Category ON '.TABLE_PREFIX.'Category.CategoryId = '.TABLE_PREFIX.'%3$sCategoryItems.CategoryId + LEFT JOIN '.TABLE_PREFIX.'Images img ON img.ResourceId = %1$s.ResourceId AND img.DefaultImg = 1 + LEFT JOIN '.TABLE_PREFIX.'PermCache perm ON perm.CategoryId = '.TABLE_PREFIX.'%3$sCategoryItems.CategoryId + LEFT JOIN '.TABLE_PREFIX.'PortalUser u ON %1$s.OwnerId = u.PortalUserId + LEFT JOIN '.TABLE_PREFIX.'Posting last_post ON last_post.PostingId = %1$s.LastPostId + LEFT JOIN '.TABLE_PREFIX.'%3$sTopicCustomData cust ON %1$s.ResourceId = cust.ResourceId', + ), // key - special, value - list select sql + + 'ListSortings' => Array( + '' => Array( + 'ForcedSorting' => Array('Priority' => 'desc'), + 'Sorting' => Array('TopicText' => 'asc'), + ) + ), + 'ItemSQLs' => Array( ''=>' SELECT %1$s.* %2$s + FROM %1$s + LEFT JOIN '.TABLE_PREFIX.'%3$sCategoryItems ON '.TABLE_PREFIX.'%3$sCategoryItems.ItemResourceId = %1$s.ResourceId + LEFT JOIN '.TABLE_PREFIX.'Category ON '.TABLE_PREFIX.'Category.CategoryId = '.TABLE_PREFIX.'%3$sCategoryItems.CategoryId + LEFT JOIN '.TABLE_PREFIX.'Images img ON img.ResourceId = %1$s.ResourceId AND img.DefaultImg = 1 + LEFT JOIN '.TABLE_PREFIX.'PortalUser u ON %1$s.OwnerId = u.PortalUserId + LEFT JOIN '.TABLE_PREFIX.'Posting last_post ON last_post.PostingId = %1$s.LastPostId + LEFT JOIN '.TABLE_PREFIX.'%3$sTopicCustomData cust ON %1$s.ResourceId = cust.ResourceId'), + + 'SubItems' => Array('bb-rev', 'bb-ci', 'bb-rel', 'bb-img', 'bb-cdata', 'bb-fav', 'bb-post'), + + 'Fields' => Array ( + 'TopicId' => Array('type' => 'int', 'not_null' => 1, 'default' => 0,), + 'NotifyOwnerOnChanges' => Array('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (0 => 'lu_No', 1 => 'lu_Yes'), 'use_phrases' => 1, 'not_null' => 1, 'default' => 0), + 'Modified' => Array('type' => 'int', 'formatter' => 'kDateFormatter', 'required' => 1, 'default' => '#NOW#'), + 'TopicText' => Array('type' => 'string', 'not_null' => 1, 'required' => 1, 'default' => ''), + 'AutomaticFilename' => Array('type' => 'int', 'not_null' => 1, 'default' => 1), + 'Posts' => Array('type' => 'int', 'not_null' => 1, 'default' => 0), + 'Views' => Array('type' => 'double', 'formatter' => 'kFormatter', 'format' => '%d', 'not_null' => 1, 'default' => 0), + 'EditorsPick' => Array('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array(1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'not_null' => 1, 'default' => 0), + 'Status' => Array('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Active', 2 => 'la_Pending', 0 => 'la_Disabled'), 'use_phrases' => 1, 'not_null' => 1, 'default' => 2), + 'Priority' => Array('type' => 'int', 'not_null' => 1, 'default' => 0), + 'OwnerId' => Array('type' => 'int', 'formatter' => 'kLEFTFormatter', 'error_msgs' => Array ('invalid_option' => '!la_error_UserNotFound!'), 'options' => Array(-1 => 'root', -2 => 'Guest'),'left_sql'=>'SELECT %s FROM '.TABLE_PREFIX.'PortalUser WHERE `%s` = \'%s\'', 'left_key_field' => 'PortalUserId', 'left_title_field' => 'Login', 'not_null' => 1, 'required' => 1, 'default' => -1), + 'ModifiedById' => Array('type' => 'int', 'formatter' => 'kLEFTFormatter', 'error_msgs' => Array ('invalid_option' => '!la_error_UserNotFound!'), 'options' => Array(-1 => 'root', -2 => 'Guest'),'left_sql'=>'SELECT %s FROM '.TABLE_PREFIX.'PortalUser WHERE `%s` = \'%s\'', 'left_key_field' => 'PortalUserId', 'left_title_field' => 'Login', 'not_null' => 1, 'default' => 0), + 'ResourceId' => Array('type' => 'int', 'default' => null), + 'TopicType' => Array('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array(0 => 'la_Yes', 1 => 'la_No'), 'use_phrases' => 1, 'not_null' => 1, 'default' => 1), + 'CreatedOn' => Array('type' => 'double', 'formatter' => 'kDateFormatter', 'required' => 1, 'default' => '#NOW#'), + 'CachedReviewsQty' => Array('type' => 'int' ,'not_null' => 1, 'default' => 0), + 'CachedRating' => Array('type' => 'string', 'not_null' => 1, 'default' => 0), + 'CachedVotesQty' => Array('type' => 'int', 'not_null' => 1, 'default' => 0), + 'NewItem' => Array('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (2 => 'la_Auto', 1 => 'la_Always', 0 => 'la_Never'), 'use_phrases' => 1, 'not_null' => 1,'default' => 2), + 'PopItem' => Array('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (2 => 'la_Auto', 1 => 'la_Always', 0 => 'la_Never'), 'use_phrases' => 1, 'not_null' => 1,'default' => 2), + 'HotItem' => Array('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (2 => 'la_Auto', 1 => 'la_Always', 0 => 'la_Never'), 'use_phrases' => 1, 'not_null' => 1,'default' => 2), + 'PostedBy' => Array('type' => 'string', 'not_null' => 1, 'default' => ''), + 'OrgId' => Array('type' => 'int', 'default' => null), + 'LastPostId' => Array('type' => 'int', 'not_null' => 1, 'default' => 0), + 'LastPostDate' => Array('type' => 'int', 'formatter' => 'kDateFormatter', 'default' => null), + 'TodayDate' => Array('type' => 'string', 'default' => null), + 'TodayPosts' => Array('type' => 'int', 'not_null' => 1, 'default' => 0), + 'MetaKeywords' => Array('type' => 'string', 'default' => null), + 'MetaDescription' => Array('type' => 'string', 'formatter' => 'kFormatter', 'using_fck' => 1, 'default' => null), + ), + + 'VirtualFields' => Array ( + 'UserName' => Array ('type'=>'string', 'default' => ''), + 'CategoryId' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (), 'default' => 0), + 'Filename' => Array ('type' => 'string', 'not_null' => 1, 'default' => ''), + 'CachedNavbar' => Array ('type' => 'string', 'default' => ''), + + 'LastPoster' => Array ('type' => 'string', 'default' => ''), + 'LastPosterId' => Array ('type' => 'int', 'default' => -2), + 'PostingText' => Array ('type' => 'string', 'formatter' => 'kFormatter', 'required' => 1, 'using_fck' => 1, 'allow_html' => 1, 'default' => ''), + 'DisableBBCodes' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'default' => 0), + 'DisableSmileys' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'default' => 0), + 'ShowSignatures' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (0 => 'la_No', 1 => 'la_Yes'), 'use_phrases' => 1, 'default' => 1), + + // for primary image + 'SameImages' => Array('type' => 'string', 'default' => ''), + 'LocalThumb' => Array('type' => 'string', 'default' => ''), + 'ThumbPath' => Array('type' => 'string', 'default' => ''), + 'ThumbUrl' => Array('type' => 'string', 'default' => ''), + 'LocalImage' => Array('type' => 'string', 'default' => ''), + 'LocalPath' => Array('type' => 'string', 'default' => ''), + 'FullUrl' => Array('type' => 'string', 'default' => ''), + ), + + 'Grids' => Array( + 'Default' => Array( + 'Icons' => Array( + 'default' => 'icon16_topic.png', + 0 => 'icon16_topic_disabled.png', + 1 => 'icon16_topic.png', + 2 => 'icon16_topic_pending.png', + 'NEW' => 'icon16_topic_new.png', + ), + 'Fields' => Array( + 'TopicId' => Array('title' => 'la_col_Id', 'data_block' => 'grid_checkbox_td', 'filter_block' => 'grid_range_filter', 'width' => 60, ), + 'TopicText' => Array('title' => 'la_col_TopicText', 'data_block' => 'grid_catitem_td', 'filter_block' => 'grid_like_filter', 'width' => 300, 'first_chars' => 290, ), + 'UserName' => Array('title' => 'la_col_PostedBy', 'filter_block' => 'grid_like_filter', 'width' => 150, ), + 'CreatedOn' => Array('title' => 'la_col_CreatedOn', 'filter_block' => 'grid_date_range_filter', 'width' => 145, ), + 'Status' => Array('title' => 'la_col_Status', 'filter_block' => 'grid_options_filter', 'width' => 70, ), + 'LastPostDate' => Array('title' => 'la_col_LastPostOn', 'filter_block' => 'grid_date_range_filter', 'width' => 145, ), + 'Posts' => Array('title' => 'la_col_Posts', 'filter_block' => 'grid_range_filter', 'width' => 70, ), + 'Views' => Array('title' => 'la_col_Views', 'filter_block' => 'grid_range_filter', 'width' => 70, ), + ), + ), + + 'Radio' => Array( + 'Icons' => Array( + 'default' => 'icon16_topic.png', + 0 => 'icon16_topic_disabled.png', + 1 => 'icon16_topic.png', + 2 => 'icon16_topic_pending.png', + 'NEW' => 'icon16_topic_new.png', ), + 'Selector' => 'radio', + 'Fields' => Array( + 'TopicId' => Array('title' => 'la_col_Id', 'data_block' => 'grid_checkbox_td', 'filter_block' => 'grid_range_filter', 'width' => 60, ), + 'TopicText' => Array('title' => 'la_col_TopicText', 'data_block' => 'grid_catitem_td', 'filter_block' => 'grid_like_filter', 'width' => 300, 'first_chars' => 290, ), + 'UserName' => Array('title' => 'la_col_PostedBy', 'filter_block' => 'grid_like_filter', 'width' => 150, ), + 'CreatedOn' => Array('title' => 'la_col_CreatedOn', 'filter_block' => 'grid_date_range_filter', 'width' => 145, ), + 'Status' => Array('title' => 'la_col_Status', 'filter_block' => 'grid_options_filter', 'width' => 70, ), + 'LastPostDate' => Array('title' => 'la_col_LastPostOn', 'filter_block' => 'grid_date_range_filter', 'width' => 145, ), + 'Posts' => Array('title' => 'la_col_Posts', 'filter_block' => 'grid_range_filter', 'width' => 70, ), + 'Views' => Array('title' => 'la_col_Views', 'filter_block' => 'grid_range_filter', 'width' => 70, ), + ), + ), + ), + + 'ConfigMapping' => Array( + 'PerPage' => 'Perpage_Topics', + 'ShortListPerPage' => 'Perpage_Topics_Short', + 'ForceEditorPick' => 'Topic_EditorPicksAbove', + 'DefaultSorting1Field' => 'Topic_SortField', + 'DefaultSorting2Field' => 'Topic_SortField2', + 'DefaultSorting1Dir' => 'Topic_SortOrder', + 'DefaultSorting2Dir' => 'Topic_SortOrder2', + + 'RatingDelayValue' => 'topic_RatingDelay_Value', + 'RatingDelayInterval' => 'topic_RatingDelay_Interval', + ), + ); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/topics/topics_config.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.46.2.14 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/helpers/post_helper.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/helpers/post_helper.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/helpers/post_helper.php (revision 12766) @@ -0,0 +1,418 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class PostHelper extends kHelper { + + var $postOptionBits = Array ( + 'show_sig' => 128, + 'disable_bbcode' => 64, + 'disable_smileys' => 32, + ); + + /** + * Checks if specific option is set for post + * + * @param string $option_name + * @param Array $options + * @return bool + */ + function GetPostOption($option_name, $options) + { + if (!isset($this->postOptionBits[$option_name])) { + return false; + } + + $option_bit = $this->postOptionBits[$option_name]; + return ($options & $option_bit) == $option_bit; + } + + /** + * Sets given option bit (by name) to post options + * + * @param string $option_name + * @param int $option_value + * @param Array $options + * @return bool + */ + function SetPostOption($option_name, $option_value, &$options) + { + if (!isset($this->postOptionBits[$option_name])) { + return false; + } + + $option_bit = $this->postOptionBits[$option_name]; + if ($option_value) { + $options |= $option_bit; + } + else { + $options = $options &~ $option_bit; + } + + return true; + } + + /** + * Returns post options map to virtual field names + * + * @return Array + */ + function getOptionsMap() + { + $options_map = Array ( + 'show_sig' => 'ShowSignatures', + 'disable_smileys' => 'DisableSmileys', + 'disable_bbcode' => 'DisableBBCodes', + ); + + return $options_map; + } + + /** + * @return void + * @param int $date + * @desc Set any field to category & all it's parent categories + */ + function PropagateCategoryField($category_id, $field_name, $field_value) + { + $id_field = $this->Application->getUnitOption('c', 'IDField'); + $table_name = $this->Application->getUnitOption('c', 'TableName'); + + $sql = 'SELECT ParentPath + FROM '.$table_name.' + WHERE '.$id_field.' = '.$category_id; + $parent_path = $this->Conn->GetOne($sql); + + $parent_categories = explode('|', substr($parent_path, 1, -1)); + if (!$parent_categories) { + return false; + } + + $fields_hash = Array ( + $field_name => $field_value, + ); + + $this->Conn->doUpdate($fields_hash, $table_name, $id_field.' IN ('.implode(',', $parent_categories).')'); + } + + /** + * Sets today posts count & today date for topic + * + * @param kCatDBItem $object + * @param int $increment_by + */ + function updateTodayPostsCount(&$object, $post_date, $increment_by = 1) + { + $date_now = adodb_date('Y-m-d'); + + if (adodb_date('Y-m-d', $post_date) != $date_now) { + return ; + } + + // last post update date was today or not + $today_posts = ($date_now == $object->GetDBField('TodayDate')) ? $object->GetDBField('TodayPosts') : 0; + + $object->SetDBField('TodayDate', $date_now); + $object->SetDBField('TodayPosts', $today_posts + $increment_by); + + return $object->Update(); + } + + function updatePostCount($topic_id, $increment = 1) + { + $id_field = $this->Application->getUnitOption('bb', 'IDField'); + $table_name = $this->Application->getUnitOption('bb', 'TableName'); + + // helps in case, when 2 (or more) users tries to post in same topic at same time + $sql = 'UPDATE '.$table_name.' + SET Posts = Posts '.($increment > 0 ? '+' : '-').' '.abs($increment).' + WHERE '.$id_field.' = '.$topic_id; + $this->Conn->Query($sql); + + // returns new value + $sql = 'SELECT Posts + FROM '.$table_name.' + WHERE '.$id_field.' = '.$topic_id; + return $this->Conn->GetOne($sql); + } + /** + * Replaces all special formatting in post before displaing it to user + * + * @param string $post_body + * @param int $post_options bit array of post options + * @param Array $sub_blocks block names for rendering smileys & bbcodes + * @return string + */ + function parsePostBody($post_body, $post_options, $sub_blocks) + { + // 1. escape all html sequences + $post_body = htmlspecialchars($post_body, ENT_NOQUOTES); // don't touch quotes in bbcode attribute values + + // 2. replace censored words + $post_body = $this->CensorText($post_body); + + // 3. replace bb codes + if (!$this->GetPostOption('disable_bbcode', $post_options)) { + $post_body = $this->replaceBBCodes($post_body, $sub_blocks['bbcode']); + } + + // 4. replace smileys + if (!$this->GetPostOption('disable_smileys', $post_options)) { + $post_body = $this->replaceSmileys($post_body, $sub_blocks['smileys']); + } + + // 5. add enters (because we don't use HTML in post body) + $post_body = nl2br($post_body); + + // 6. replace quoted text + return $this->replacePostQuote($post_body, $sub_blocks['quote']); + } + + function replacePostQuote($text, $render_as) + { + if (preg_match('/\[quote id=([\d]+)\](.*)\[\/quote\]/s', $text, $regs)) { + $post =& $this->Application->recallObject('bb-post.-item', null, Array ('skip_autoload' => true)); + /* @var $post kDBItem */ + + $post->Load($regs[1]); + + $block_params = Array ('name' => $render_as, 'PrefixSpecial' => 'bb-post.-item', 'Prefix' => 'bb-post', 'Special' => '-item', 'strip_nl' => 2); + $parsed_quote = $this->Application->ParseBlock($block_params); + return str_replace($regs[0], $parsed_quote, $text); + } + + return $text; + } + + /** + * Replaces bad words with good words (censorship process) + * + * @param string $text + * @return string + */ + function CensorText($text) + { + static $censor_words = null; + + if (!isset($censor_words)) { + $sql = 'SELECT Replacement, BadWord + FROM '.TABLE_PREFIX.'Censorship'; + $censor_words = $this->Conn->GetCol($sql, 'BadWord'); + } + + foreach ($censor_words as $replace_from => $replace_to) { + $text = str_replace($replace_from, $replace_to, $text); + } + + return $text; + } + + function replaceSmileys($text, $smiley_element) + { + static $smileys = null; + + if (!isset($smileys)) { + $sql = 'SELECT em.EmotionImage, em.KeyStroke + FROM '.TABLE_PREFIX.'Emoticon em + WHERE em.Enabled = 1 + ORDER BY CHAR_LENGTH(em.KeyStroke) DESC'; + $smileys = $this->Conn->GetCol($sql, 'KeyStroke'); + } + + $block_params = Array ('name' => $smiley_element, 'smiley_url' => '#SMILEY_URL#'); + $smiley_mask = trim($this->Application->ParseBlock($block_params)); + + $base_url = rtrim($this->Application->BaseURL(),'/'); + foreach ($smileys as $key_stoke => $image_url) { + if (strpos($text, $key_stoke) === false) { + continue; + } + + $smiley_html = str_replace('#SMILEY_URL#', $base_url.SMILEYS_PATH.$image_url, $smiley_mask); + $text = str_replace($key_stoke, $smiley_html, $text); + } + + return $text; + } + + /** + * Sort params by name and then by length + * + * @param string $a + * @param string $b + * @return int + * @access private + */ + function CmpParams($a, $b) + { + list ($a, ) = explode(':', $a); + list ($b, ) = explode(':', $b); + + $a_len = strlen($a); + $b_len = strlen($b); + if ($a_len == $b_len) return 0; + return $a_len > $b_len ? -1 : 1; + } + + function replaceBBCodes($text, $bbcode_element) + { + // convert phpbb bbcodes to in-bulletin bbcodes + $text = $this->preformatBBCodes($text); + + $tags_defs = explode(';', $this->Application->ConfigValue('BBTags')); // 'b:;i:;u:;ul:type|align;font:color|face|size;url:href;img:src|border'; + + usort($tags_defs, Array (&$this, 'CmpParams')); + + foreach($tags_defs as $tag) { + list ($tag_name, $tag_params) = explode(':', $tag); + $tag_params = $tag_params ? array_flip(explode('|', $tag_params)) : 0; + + $text = preg_replace('/\['.$tag_name.'(.*)\](.*)\[\/'.$tag_name.' *\]/Uise','$this->checkBBCodeAttribs("'.$tag_name.'",\'$1\',\'$2\',$tag_params);', $text); + } + + // additional processing for [url], [*], [img] bbcode + $text = preg_replace('/<url>(.*)<\/url>/Usi','<url href="$1">$1</url>',$text); + $text = preg_replace('/<font>(.*)<\/font>/Usi','$1',$text); // skip empty fonts + $text = str_replace( Array('<url','</url>','[*]'), + Array('<a target="_blank"','</a>','<li>'), + $text); + + // bbcode [code]xxx[/code] processing + $text = preg_replace('/\[code\](.*)\[\/code\]/Uise', "\$this->replaceCodeBBCode('$1', '".$bbcode_element."')", $text); + return $text; + } + + /** + * Convert phpbb url bbcode to valid in-bulletin's format + * + * @param string $text + * @return string + */ + function preformatBBCodes($text) + { + // 1. urls + $text = preg_replace('/\[url=(.*)\](.*)\[\/url\]/Ui','[url href="$1"]$2[/url]',$text); + $text = preg_replace('/\[url\](.*)\[\/url\]/Ui','[url href="$1"]$1[/url]',$text); + + // 2. images + $text = preg_replace('/\[img\](.*)\[\/img\]/Ui','[img src="$1" border="0"][/img]',$text); + + // 3. color + $text = preg_replace('/\[color=(.*)\](.*)\[\/color\]/Ui','[font color="$1"]$2[/font]',$text); + + // 4. size + $text = preg_replace('/\[size=(.*)\](.*)\[\/size\]/Ui','[font size="$1"]$2[/font]',$text); + + // 5. lists + $text = preg_replace('/\[list(.*)\](.*)\[\/list\]/Uis','[ul]$2[/ul]',$text); + + // 6. email to link + $text = preg_replace('/\[email\](.*)\[\/email\]/Ui','[url href="mailto:$1"]$1[/url]',$text); + + //7. b tag + $text = preg_replace('/\[(b|i|u):(.*)\](.*)\[\/(b|i|u):(.*)\]/Ui','[$1]$3[/$4]',$text); + + //8. code tag + $text = preg_replace('/\[code:(.*)\](.*)\[\/code:(.*)\]/Uis','[code]$2[/code]',$text); + + return $text; + } + + /** + * Removes not allowed params from tag and returns result + * + * @param string $BBCode bbcode to check + * @param string $TagParams params string entered by user + * @param string $TextInside text between opening and closing bbcode tag + * @param string $ParamsAllowed list of allowed parameter names ("|" separated) + * @return string + */ + function checkBBCodeAttribs($BBCode, $TagParams, $TextInside, $ParamsAllowed) + { + // unescape escaped quotes in tag + $TagParams = str_replace('\"', '"', $TagParams); + $TextInside = str_replace('\"', '"', $TextInside); + + $params_extracted = preg_match_all('/ +([^=]*)=["\']?([^ "\']*)["\']?/is', $TagParams, $extracted_params, PREG_SET_ORDER); + + if ($ParamsAllowed && $params_extracted) { + $ret = Array(); + foreach ($extracted_params as $param) { + $param_name = strtolower(trim( $param[1] )); + $param_value = trim($param[2]); + + // 1. prevent hacking + if ($BBCode == 'url' && $param_name == 'href') { + if (strpos(strtolower($param_value), 'script:') !== false) { + // script tag found in "href" parameter of "url" bbcode (equals to hacking) -> remove bbcode + return $TextInside; + } + } + + // 2. leave only allowed params & remove all not allowed + if (isset($ParamsAllowed[$param_name])) { + $ret[] = $param_name.'="'.$param_value.'"'; + } + } + + $ret = count($ret) ? ' '.implode(' ', $ret) : ''; + return '<'.$BBCode.$ret.'>'.$TextInside.'</'.$BBCode.'>'; + } + + return '<'.$BBCode.'>'.$TextInside.'</'.$BBCode.'>'; + } + + function highlightCode($code, $strip_tabs = 0) + { + if ($strip_tabs) { + $code = preg_replace('/(\t){'.$strip_tabs.'}(.*)/', '\\2', $code); + } + + $code = str_replace( Array('\\', '/') , Array('_no_match_string_', '_n_m_s_'), $code); + $code = highlight_string('<?php'.$code.'?>', true); + $code = str_replace( Array('_no_match_string_', '_n_m_s_'), Array('\\', '/'), $code); + $code = preg_replace('/<\?(.*)php(.*)\?>/Us', '\\2', $code); + + $code = preg_replace('/<code><font color="(.*)">([\r\n]+)/si', '<code><font color="\\1">', $code); + $code = preg_replace('/([\r\n]+)<\/font>([\r\n]+)<\/code>/si', '</font></code>', $code); + + return $code; + } + + /** + * Replaces [code]php code[/code] bbcode in post + * + * @param string $input_string code line to highlight + * @param string $bbcode_element block name used for bbcode descoration + * @return string + */ + function replaceCodeBBCode($input_string, $bbcode_element) + { + static $bbcode_mask = null; + + if (!isset($bbcode_mask)) { + $block_params = Array ('name' => $bbcode_element, 'bb_code' => '#BB_CODE#'); + $bbcode_mask = trim($this->Application->ParseBlock($block_params)); + } + + $input_string = trim( str_replace('\"','"', unhtmlentities($input_string)) ); + $input_string = $this->highlightCode($input_string); + $input_string = preg_replace("/\r<br \/>/s", "\r", $input_string); // undo nl2br added in highlighting + $input_string = str_replace('#BB_CODE#', $input_string, $bbcode_mask); + + return $input_string; + } + + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/helpers/post_helper.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.3.2.6 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/helpers/helpers_config.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/helpers/helpers_config.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/helpers/helpers_config.php (revision 12766) @@ -0,0 +1,24 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + $config = Array ( + 'Prefix' => 'in-bulletin-helpers', + 'EventHandlerClass' => Array('class' => 'kEventHandler', 'file' => '', 'build_event' => 'OnBuild'), + + 'RegisterClasses' => Array ( + Array('pseudo' => 'PostHelper', 'class' => 'PostHelper','file' => 'post_helper.php', 'build_event' => '', 'require_classes' => Array('kHelper')), + ), + ); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/helpers/helpers_config.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.4.1 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/poll_answers/poll_answers_config.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/poll_answers/poll_answers_config.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/poll_answers/poll_answers_config.php (revision 12766) @@ -0,0 +1,85 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + $config = Array ( 'Prefix' => 'poll-answer', + + 'ItemClass' => Array ('class' => 'kDBItem', 'file' => '', 'build_event' => 'OnItemBuild'), + 'ListClass' => Array ('class' => 'kDBList', 'file' => '', 'build_event' => 'OnListBuild'), + 'EventHandlerClass' => Array ('class' => 'kDBEventHandler', 'file' => '', 'build_event' => 'OnBuild'), + 'TagProcessorClass' => Array ('class' => 'kDBTagProcessor', 'file' => '', 'build_event' => 'OnBuild'), + 'AutoLoad' => true, + + 'QueryString' => Array ( + 1 => 'id', + 2 => 'Page', + 3 => 'event' + ), + 'IDField' => 'AnswerId', + 'TableName' => TABLE_PREFIX . 'PollsAnswers', + + 'ParentPrefix' => 'poll', + 'ForeignKey' => 'PollId', + 'ParentTableKey' => 'PollId', + 'AutoDelete' => true, + 'AutoClone' => true, + + 'StatusField' => Array('Status'), + + // key - special, value - list select sql + 'ListSQLs' => Array ( + '' => ' SELECT %1$s.* %2$s + FROM %1$s + ', + ), + + 'ItemSQLs' => Array ('' => 'SELECT * FROM %s'), + + 'ListSortings' => Array ( + '' => Array( + 'ForcedSorting' => Array('Priority' => 'desc'), + 'Sorting' => Array('Answer' => 'ASC'), + ) + ), + + 'Fields' => Array ( + 'AnswerId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'PollId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'Answer' => Array('type' => 'string', 'formatter' => 'kMultiLanguage', 'not_null' => 1, 'using_fck' => 1, 'default' => '', 'required' => 1), + 'VotesQty' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'Priority' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'Status' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_opt_Active', 0 => 'la_opt_Disabled'), 'use_phrases' => 1, 'required' => 1, 'not_null' => 1, 'default' => 1), + ), + + 'Grids' => Array ( + 'Default' => Array ( + 'Icons' => Array ( + 'default' => 'icon16_item.png', + 0 => 'icon16_disabled.png', + 1 => 'icon16_item.png', + 2 => 'icon16_pending.png', + 'module' => 'core', + ), + 'Fields' => Array ( + 'AnswerId' => Array ('title' => 'la_col_Id', 'data_block' => 'grid_checkbox_td', 'filter_block' => 'grid_range_filter', 'width' => 60, ), + 'Answer' => Array ('title' => 'la_col_Name', 'data_block' => 'grid_priority_td', 'filter_block' => 'grid_like_filter', 'width' => 300, ), + 'Status' => Array ('title' => 'la_col_Status', 'filter_block' => 'grid_options_filter', 'width' => 100, ), + 'VotesQty' => Array ('title' => 'la_col_VoteCount', 'filter_block' => 'grid_like_filter', 'width' => 100, ), + + ), + ), + ), + + ); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/poll_answers/poll_answers_config.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/posts/posts_config.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/posts/posts_config.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/posts/posts_config.php (revision 12766) @@ -0,0 +1,110 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + $config = Array ( + 'Prefix' => 'bb-post', + 'ItemClass' => Array('class' => 'kDBItem', 'file' => '', 'build_event' => 'OnItemBuild'), + 'ListClass' => Array('class' => 'kDBList', 'file' => '', 'build_event' => 'OnListBuild'), + 'EventHandlerClass' => Array('class' => 'PostEventHandler', 'file' => 'post_eh.php', 'build_event' => 'OnBuild'), + 'TagProcessorClass' => Array('class' => 'PostTagProcessor', 'file' => 'post_tp.php', 'build_event' => 'OnBuild'), + 'AutoLoad' => true, + + 'QueryString' => Array ( + 1 => 'id', + 2 => 'Page', + 3 => 'event', + ), + + 'IDField' => 'PostingId', + 'StatusField' => Array('Pending'), + + 'TitleField' => 'Subject', + + 'TableName' => TABLE_PREFIX.'Posting', + + 'ForeignKey' => 'TopicId', + 'ParentTableKey' => 'TopicId', + 'ParentPrefix' => 'bb', + 'AutoDelete' => true, + 'AutoClone' => true, + + 'ListSQLs' => Array ( + '' => ' SELECT %1$s.* %2$s + FROM %1$s + LEFT JOIN '.TABLE_PREFIX.'PortalUser u ON %1$s.CreatedById = u.PortalUserId + LEFT JOIN '.TABLE_PREFIX.'Images img ON (img.ResourceId = u.ResourceId) AND (img.DefaultImg = 1 OR img.Name = "avatar")', + ), + + 'ItemSQLs' => Array ( + '' => ' SELECT %1$s.* %2$s + FROM %1$s + LEFT JOIN '.TABLE_PREFIX.'PortalUser u ON %1$s.CreatedById = u.PortalUserId + LEFT JOIN '.TABLE_PREFIX.'Images img ON (img.ResourceId = u.ResourceId) AND (img.DefaultImg = 1 OR img.Name = "avatar")', + ), + + 'ListSortings' => Array ( + '' => Array ( + 'ForcedSorting' => Array ('CreatedOn' => 'asc',), + ), + ), + + 'CalculatedFields' => Array ( + '' => Array ( + 'UserName' => 'IF (ISNULL(u.Login), IF (%1$s.CreatedById = -1, "root", IF (%1$s.CreatedById = -2, "Guest", "n/a")), u.Login)', + + 'SameImages' => 'img.SameImages', + 'LocalThumb' => 'img.LocalThumb', + 'ThumbPath' => 'img.ThumbPath', + 'ThumbUrl' => 'img.ThumbUrl', + 'LocalImage' => 'img.LocalImage', + 'LocalPath' => 'img.LocalPath', + 'FullUrl' => 'img.Url', + ), + ), + + 'Fields' => Array ( + 'PostingId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'IPAddress' => Array ('type' => 'string', 'max_len' => 255, 'not_null' => 1, 'default' => ''), + 'PosterAlias' => Array ('type' => 'string', 'max_len' => 255, 'not_null' => 1, 'default' => ''), + 'Pending' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'Subject' => Array ('type' => 'string', 'max_len' => 255, 'default' => NULL), + 'PostingText' => Array ('type' => 'string', 'allow_html' => 1, 'default' => NULL), + 'GraphicsUrl' => Array ('type' => 'string', 'max_len' => 255, 'default' => NULL), + 'CreatedOn' => Array ('type' => 'int', 'formatter' => 'kDateFormatter', 'default' => '#NOW#'), + 'Modified' => Array ('type' => 'int', 'formatter' => 'kDateFormatter', 'default' => NULL), + 'ModifiedById' => Array ('type' => 'int', 'formatter' => 'kLEFTFormatter', 'error_msgs' => Array ('invalid_option' => '!la_error_UserNotFound!'), 'options' => Array(-1 => 'root', -2 => 'Guest'), 'left_sql' => 'SELECT %s FROM '.TABLE_PREFIX.'PortalUser WHERE `%s` = \'%s\'', 'left_key_field' => 'PortalUserId', 'left_title_field' => 'Login', 'default' => NULL), + 'CreatedById' => Array ('type' => 'int', 'formatter' => 'kLEFTFormatter', 'error_msgs' => Array ('invalid_option' => '!la_error_UserNotFound!'), 'options' => Array(-1 => 'root', -2 => 'Guest'), 'left_sql' => 'SELECT %s FROM '.TABLE_PREFIX.'PortalUser WHERE `%s` = \'%s\'', 'left_key_field' => 'PortalUserId', 'left_title_field' => 'Login', 'default' => NULL), + 'TopicId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'ResourceId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'ReplyTo' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'Options' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + ), + + 'VirtualFields' => Array ( + 'DisableBBCodes' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'default' => 0), + 'DisableSmileys' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'default' => 0), + 'ShowSignatures' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (0 => 'la_No', 1 => 'la_Yes'), 'use_phrases' => 1, 'default' => 1), + + // for avatar image + 'SameImages' => Array('type' => 'string', 'default' => ''), + 'LocalThumb' => Array('type' => 'string', 'default' => ''), + 'ThumbPath' => Array('type' => 'string', 'default' => ''), + 'ThumbUrl' => Array('type' => 'string', 'default' => ''), + 'LocalImage' => Array('type' => 'string', 'default' => ''), + 'LocalPath' => Array('type' => 'string', 'default' => ''), + 'FullUrl' => Array('type' => 'string', 'default' => ''), + ), + ); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/posts/posts_config.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.6.2.3 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/posts/post_eh.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/posts/post_eh.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/posts/post_eh.php (revision 12766) @@ -0,0 +1,400 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class PostEventHandler extends kDBEventHandler { + + /** + * Checks topic-post modify and delete permissions + * + * @param kEvent $event + */ + function CheckPermission(&$event) + { + $events = Array('OnUpdate', 'OnDelete'); + if (in_array($event->Name, $events)) { + return true; + } + + return parent::CheckPermission($event); + } + + /** + * Sets default values + * + * @param kEvent $event + */ + function OnBeforeItemCreate(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $user_id = $this->Application->RecallVar('user_id'); + + $now = adodb_mktime(); + + $object->SetDBField('CreatedById', $user_id); + $object->SetDBField('CreatedOn_date', $now); + $object->SetDBField('CreatedOn_time', $now); + + $object->SetDBField('ModifiedById', $user_id); + $object->SetDBField('Modified_date', $now); + $object->SetDBField('Modified_time', $now); + + $object->SetDBField('IPAddress', $_SERVER['REMOTE_ADDR']); + + $sql = 'SELECT Login + FROM '.TABLE_PREFIX.'PortalUser + WHERE PortalUserId = '.$user_id; + $object->SetDBField('PosterAlias', $this->Conn->GetOne($sql)); + + // set post options + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + $options_map = $post_helper->getOptionsMap(); + $post_options = $object->GetDBField('Options'); + foreach ($options_map as $option_name => $field_name) { + $option_value = $object->GetDBField($field_name); + $post_helper->SetPostOption($option_name, $option_value, $post_options); + } + $object->SetDBField('Options', $post_options); + + $table_info = $object->getLinkedInfo($event->Special, true); + $object->SetDBField($table_info['ForeignKey'], $table_info['ParentId']); + } + + /** + * Checks if user has permission on post + * + * @param kEvent $event + * @param string $permissions + */ + function checkPostPermission(&$event, $permissions) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $sql = 'SELECT ci.CategoryId, p.CreatedById + FROM '.$object->TableName.' p + LEFT JOIN '.TABLE_PREFIX.'Topic t ON t.TopicId = p.TopicId + LEFT JOIN '.TABLE_PREFIX.'CategoryItems ci ON ci.ItemResourceId = t.ResourceId AND ci.PrimaryCat = 1 + WHERE p.'.$object->IDField.' = '.$object->GetID(); + $post_info = $this->Conn->GetRow($sql); + + $perm_helper =& $this->Application->recallObject('PermissionsHelper'); + /* @var $perm_helper kPermissionsHelper */ + + $is_owner = $post_info['CreatedById'] == $this->Application->RecallVar('user_id'); + $params['permissions'] = 'TOPIC.REPLY.MODIFY|TOPIC.REPLY.OWNER.MODIFY'; + $params['cat_id'] = $post_info['CategoryId']; + return $perm_helper->TagPermissionCheck($params, $is_owner); + } + + /** + * Sets post options before post update + * Ensures, that only user with permission will update topic + * + * @param kEvent $event + */ + function OnBeforeItemUpdate(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $perm_status = $this->checkPostPermission($event, 'TOPIC.REPLY.MODIFY|TOPIC.REPLY.OWNER.MODIFY'); + if (!$perm_status) { + $event->status = erFAIL; + return ; + } + + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + $options_map = $post_helper->getOptionsMap(); + $post_options = $object->GetDBField('Options'); + foreach ($options_map as $option_name => $field_name) { + $option_value = $object->GetDBField($field_name); + $post_helper->SetPostOption($option_name, $option_value, $post_options); + } + $object->SetDBField('Options', $post_options); + } + + /** + * Notifies admin about post change + * + * @param kEvent $event + */ + function OnAfterItemUpdate(&$event) + { + parent::OnAfterItemUpdate($event); + + $this->Application->EmailEventAdmin('POST.MODIFY'); + } + + /** + * Checks, that user can delete post + * + * @param kEvent $event + */ + function OnBeforeItemDelete(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $perm_status = $this->checkPostPermission($event, 'TOPIC.REPLY.OWNER.DELETE|TOPIC.REPLY.DELETE'); + if (!$perm_status) { + $event->status = erFAIL; + } + } + + /** + * Sets post options to virtual fields + * + * @param kEvent $event + */ + function OnAfterItemLoad(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + $options_map = $post_helper->getOptionsMap(); + $post_options = $object->GetDBField('Options'); + foreach ($options_map as $option_name => $field_name) { + $option_value = $post_helper->GetPostOption($option_name, $post_options); + $object->SetDBField($field_name, (int)$option_value); + } + } + + /** + * Updates cached post counter in topic + * + * @param kEvent $event + */ + function OnAfterItemCreate(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $parent_prefix = $this->Application->getUnitOption($event->Prefix, 'ParentPrefix'); + + $main_object =& $this->Application->recallObject($parent_prefix); + /* @var $main_object kCatDBItem */ + + // update user posts counter + $user_posts = $this->Application->RecallPersistentVar('bb_posts'); + $this->Application->StorePersistentVar('bb_posts', $user_posts + 1); + + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + $category_id = $this->Application->GetVar('m_cat_id'); + $post_helper->PropagateCategoryField($category_id, 'Modified', $object->GetDBField('CreatedOn')); + + if (!$this->Application->isAdmin && $main_object->GetDBField('Posts')) { + // don't send any email events when in admin OR new topic just added (0 posts) + + $user_notified = false; // don't send POST.ADD event twice to same user (in case if owner adds new post) + if ($main_object->GetDBField('NotifyOwnerOnChanges')) { + $user_notified = $main_object->GetDBField('OwnerId'); + $this->Application->EmailEventUser('POST.ADD', $user_notified); + } + + $post_owner_id = $object->GetDBField('CreatedById'); + if (($post_owner_id > 0) && ($user_notified != $post_owner_id)) { + $this->Application->EmailEventUser('POST.ADD', $post_owner_id); + } + + $this->Application->EmailEventAdmin('POST.ADD'); + } + + $post_helper->updateTodayPostsCount($main_object, $object->GetDBField('CreatedOn'), +1); + $this->updateTopicInfo($event, $main_object); + + $topic_id = $object->GetDBField('TopicId'); + $posts_count = $post_helper->updatePostCount($topic_id, +1); + $main_object->SetDBField('Posts', $posts_count); + + // autolock topic after N number of posts (if option enabled) + $auto_lock = $this->Application->ConfigValue('AutoTopicLockPosts'); + if ((int)$auto_lock > 0) { + if ($posts_count >= $auto_lock) { + // user has unlocked topic after $auto_lock and posts again -> ensure that topic will be locked again + $this->Application->HandleEvent($parent_prefix.':OnTopicLockToggle'); + } + } + } + + /** + * Update last post info in topic + * + * @param kEvent $event + * @param kCatDBItem $main_object + */ + function updateTopicInfo(&$event, &$main_object) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $main_object->SetDBField('Modified_date', $object->GetDBField('Modified')); + $main_object->SetDBField('Modified_time', $object->GetDBField('Modified')); + + $main_object->SetDBField('LastPostId', $object->GetID()); + + $main_object->SetDBField('LastPostDate_date', $object->GetDBField('CreatedOn')); + $main_object->SetDBField('LastPostDate_time', $object->GetDBField('CreatedOn')); + + $main_object->Update(); + } + + /** + * Goes to next_template after post creation + * + * @param kEvent $event + */ + function OnCreate(&$event) + { + parent::OnCreate($event); + + if ($event->status == erSUCCESS && !$this->Application->isAdmin) { + $event->SetRedirectParam('opener', 's'); + $event->redirect = $this->Application->GetVar('next_template'); + } + } + + /** + * Goes to next_template after post editing + * + * @param kEvent $event + */ + function OnUpdate(&$event) + { + parent::OnUpdate($event); + + if ($event->status == erSUCCESS && !$this->Application->isAdmin) { + $event->SetRedirectParam('opener', 's'); + $event->redirect = $this->Application->GetVar('next_template'); + $event->SetRedirectParam('pass', 'm,bb'); + } + } + + /** + * Moves reference to last post in topic, when it is deleted + * + * @param kEvent $event + */ + function OnAfterItemDelete(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $topic_id = $object->GetDBField('TopicId'); + if (!$topic_id) { + // deleting non-existing post + return ; + } + + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + // update posts count in topic + $post_helper->updatePostCount($topic_id, -1); + + // update post owner posts counter + $sql = 'UPDATE '.TABLE_PREFIX.'PersistantSessionData + SET VariableValue = IF (VariableValue > 0, VariableValue - 1, 0) + WHERE (PortalUserId = '.$object->GetDBField('CreatedById').') AND (VariableName = "bb_posts")'; + $this->Conn->Query($sql); + + + $main_object =& $this->Application->recallObject('bb.-item', null, Array('skip_autoload' => true)); + /* @var $main_object kCatDBItem */ + + $main_object->Load($topic_id); + + $post_helper->updateTodayPostsCount($main_object, $object->GetDBField('CreatedOn'), -1); + + if ($main_object->GetDBField('LastPostId') == $object->GetID()) { + $sql = 'SELECT PostingId, CreatedOn + FROM '.$object->TableName.' + WHERE TopicId = '.$topic_id.' + ORDER BY PostingId DESC'; + $last_post = $this->Conn->GetRow($sql); + + $fields_hash = Array ( + 'LastPostId' => $last_post['PostingId'], + 'LastPostDate' => $last_post['CreatedOn'], + ); + $this->Conn->doUpdate($fields_hash, $main_object->TableName, $main_object->IDField.' = '.$topic_id); + } + } + + /** + * Sets default values to posting options based on persistent session + * + * @param kEvent $event + */ + function OnAfterConfigRead(&$event) + { + $virtual_fields = $this->Application->getUnitOption($event->Prefix, 'VirtualFields'); + $virtual_fields['DisableBBCodes']['default'] = (int)!$this->Application->RecallPersistentVar('bbcode'); + $virtual_fields['DisableSmileys']['default'] = (int)!$this->Application->RecallPersistentVar('smileys'); + $virtual_fields['ShowSignatures']['default'] = (int)$this->Application->RecallPersistentVar('show_sig'); + $this->Application->setUnitOption($event->Prefix, 'VirtualFields', $virtual_fields); + } + + /** + * Deletes items & preserves clean env + * + * @param kEvent $event + */ + function OnDelete(&$event) + { + parent::OnDelete($event); + + if ($event->status == erSUCCESS && !$this->Application->isAdmin) { + $parent_prefix = $this->Application->getUnitOption($event->Prefix, 'ParentPrefix'); + $event->SetRedirectParam('pass', 'm,'.$parent_prefix); + } + } + + /** + * Prepares new reply form + * + * @param kEvent $event + */ + function OnNew(&$event) + { + parent::OnNew($event); + + $reply_to = $this->Application->GetVar('reply_to'); + + if ($reply_to > 0) { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $source_post =& $this->Application->recallObject($event->Prefix.'.-item', null, Array ('skip_autoload' => true)); + /* @var $source_post kDBItem */ + + $source_post->Load($reply_to); + + $object->SetDBField('Subject', 'Re: '.$source_post->GetDBField('Subject')); + $object->SetDBField('PostingText', '[quote id='.$reply_to.']'.$source_post->GetDBField('PostingText').'[/quote]'); + } + } + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/posts/post_eh.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.5.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/posts/post_tp.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/posts/post_tp.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/posts/post_tp.php (revision 12766) @@ -0,0 +1,315 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class PostTagProcessor extends kDBTagProcessor { + + function ListPosts($params) + { + $parent_prefix = $this->Application->getUnitOption($this->Prefix, 'ParentPrefix'); + $main_object =& $this->Application->recallObject($parent_prefix); + /* @var $main_object kCatDBItem */ + + if ($main_object->isLoaded()) { + $main_object->RegisterHit(); + } + + return $this->PrintList2($params); + } + + /** + * Returns link to post author public profile + * + * @param Array $params + * @return string + */ + function ProfileLink($params) + { + $object =& $this->getObject($params); + $params['user_id'] = $object->GetDBField('CreatedById'); + + return $this->Application->ProcessParsedTag('m', 'Link', $params); + } + + function PosterField($params) + { + static $posters = null; + + $object =& $this->getObject($params); + + if (!isset($posters)) { + $poster_ids = array_unique($object->GetCol('CreatedById')); + + $user_idfield = $this->Application->getUnitOption('u', 'IDField'); + $user_table = $this->Application->getUnitOption('u', 'TableName'); + + $sql = 'SELECT u.*, g.Name AS PrimaryGroup + FROM '.$user_table.' u + LEFT JOIN '.TABLE_PREFIX.'UserGroup ug ON ug.PortalUserId = u.PortalUserId AND ug.PrimaryGroup = 1 + LEFT JOIN '.TABLE_PREFIX.'PortalGroup g ON g.GroupId = ug.GroupId + WHERE u.'.$user_idfield.' IN ('.implode(',', $poster_ids).')'; + $posters = $this->Conn->Query($sql, $user_idfield); + } + + $poster =& $this->Application->recallObject('u.poster', null, Array('skip_autoload' => true)); + /* @var $poster UsersItem */ + + $poster_id = $object->GetDBField('CreatedById'); + if ($poster_id > 0) { + // not Guest & root + if ($poster->GetID() != $poster_id) { + // previous poster differs from requested + $poster->SetDBFieldsFromHash($posters[$poster_id]); + $poster->setID($poster_id); + } + return $this->Application->ProcessParsedTag('u.poster', 'Field', $params); + } + + return ''; + } + + /** + * Checks if post is made by real user (not Guest or root) + * + * @param Array $params + * @return bool + */ + function PosterFound($params) + { + $object =& $this->getObject($params); + + return $object->GetDBField('CreatedById') > 0; + } + + /** + * Posts count created by current poster + * + * @param Array $params + * @return int + */ + function PosterPostsCount($params) + { + static $posts_count = null; + + $object =& $this->getObject($params); + + if (!isset($posts_count)) { + $poster_ids = array_unique($object->GetCol('CreatedById')); + + $sql = 'SELECT VariableValue, PortalUserId + FROM '.TABLE_PREFIX.'PersistantSessionData + WHERE PortalUserId IN ('.implode(',', $poster_ids).') AND VariableName = "bb_posts"'; + $posts_count = $this->Conn->GetCol($sql, 'PortalUserId'); + } + + return $posts_count[$object->GetDBField('CreatedById')]; + } + + function PostSubject($params) + { + $object =& $this->getObject($params); + + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + return $post_helper->CensorText( $object->GetDBField('Subject') ); + } + + function PostBody($params) + { + $object =& $this->getObject($params); + + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + $body = $object->GetDBField('PostingText'); + + // 2. parse post body + $sub_blocks = Array ( + 'smileys' => $params['smiley_render_as'], + 'bbcode' => $params['bbcode_render_as'], + 'quote' => $params['quote_render_as'], + ); + $body = $post_helper->parsePostBody($body, $object->GetDBField('Options'), $sub_blocks); + + return $body; + } + + /** + * Checks if poster signature needs to be shown together with post + * + * @param Array $params + * @return bool + */ + function ShowPostSignature($params) + { + $object =& $this->getObject($params); + $post_options = $object->GetDBField('Options'); + + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + // show poster signature in this post + if ($post_helper->GetPostOption('show_sig', $post_options)) { + // logged-in user wishes to view signatures in posts + $show_other_signatures = $this->Application->RecallPersistentVar('bb_signatures'); + if ($show_other_signatures) { + // don't show signature when it is empty + $signature = $this->getUserSignature($object->GetDBField('CreatedById')); + return strlen(trim($signature)) ? true : false; + } + } + + return false; + } + + /** + * Returns parsed poster (from current post) signature + * + * @param Array $params + * @return string + */ + function PostSignature($params) + { + $object =& $this->getObject($params); + + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + $sub_blocks = Array ( + 'smileys' => $params['smiley_render_as'], + 'bbcode' => $params['bbcode_render_as'], + ); + + $signature = $this->getUserSignature($object->GetDBField('CreatedById')); + return $post_helper->parsePostBody($signature, $object->GetDBField('Options'), $sub_blocks); + } + + /** + * Returns user signature (cached for all viewed posts on page) + * + * @param int $user_id + * @return string + */ + function getUserSignature($user_id) + { + static $user_signatures = null; + + $object =& $this->getObject(); + + if (!isset($user_signatures)) { + $poster_ids = array_unique($object->GetCol('CreatedById')); + + $sql = 'SELECT VariableValue, PortalUserId + FROM '.TABLE_PREFIX.'PersistantSessionData + WHERE PortalUserId IN ('.implode(',', $poster_ids).') AND VariableName = "my_signature"'; + $user_signatures = $this->Conn->GetCol($sql, 'PortalUserId'); + } + + $poster_id = $object->GetDBField('CreatedById'); + return isset($user_signatures[$poster_id]) ? $user_signatures[$poster_id] : ''; + } + + /** + * Creates link to individual post in topic + * + * @param Array $params + * @return string + */ + function PostLink($params) + { + $params['pass'] = 'm,bb,bb-post'; + + return $this->Application->ProcessParsedTag('m', 'Link', $params); + } + + function ReplyQuotedLink($params) + { + $object =& $this->getObject($params); + + $params['pass'] = 'm,bb'; + $params['reply_to'] = $object->GetID(); + + return $this->Application->ProcessParsedTag('m', 'Link', $params); + } + + /** + * Checks if user have one of required permissions + * + * @param Array $params + * @return bool + */ + function HasPermission($params) + { + static $category_path = null; + + if (!isset($category_path)) { + // get topic category + $parent_prefix = $this->Application->getUnitOption($this->Prefix, 'ParentPrefix'); + $parent_item =& $this->Application->recallObject($parent_prefix, null, Array ('raise_warnings' => 0)); + $category_path = $parent_item->isLoaded() ? $parent_item->GetDBField('ParentPath') : $this->Application->GetVar('m_cat_id'); + } + + $perm_helper =& $this->Application->recallObject('PermissionsHelper'); + /* @var $perm_helper kPermissionsHelper */ + + $params['raise_warnings'] = 0; + $object =& $this->getObject($params); + /* @var $object kDBItem */ + + // 1. category restriction + $params['cat_id'] = $category_path; + + // 2. owner restriction + $is_owner = $object->GetDBField('CreatedById') == $this->Application->RecallVar('user_id'); + + return $perm_helper->TagPermissionCheck($params, $is_owner); + } + + function CategoryItemCount($params) + { + $count_helper =& $this->Application->recallObject('CountHelper'); + /* @var $count_helper kCountHelper */ + + return $count_helper->CategoryItemCount('bb', $params, 'SUM(Posts)'); // - COUNT(TopicId) + } + + function ItemCount($params) + { + $count_helper =& $this->Application->recallObject('CountHelper'); + /* @var $count_helper kCountHelper */ + + $today_only = isset($params['today']) && $params['today']; + return $count_helper->ItemCount('bb', $today_only, 'SUM(Posts)'); // - COUNT(TopicId) + } + + /** + * Preserve main item id in subitem pagination url + * + * @param Array $params + * @return string + */ + function PageLink($params) + { + $object =& $this->getObject($params); + /* @var kDBList */ + + $parent_info = $object->getLinkedInfo(); + if ($parent_info['ParentId'] > 0) { + $params['pass'] = 'm,'.$this->getPrefixSpecial().','.$parent_info['ParentPrefix']; + } + return parent::PageLink($params); + } + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/posts/post_tp.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.4.2.7 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/polls/poll_tp.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/polls/poll_tp.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/polls/poll_tp.php (revision 12766) @@ -0,0 +1,118 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class PollTagProcessor extends kDBTagProcessor { + + /** + * Allows to tell if user from current ip has voted already for current poll + * + * @param Array $params + * @return bool + */ + function HasVoted($params) + { + $object =& $this->getObject($params); + /* @var $object kDBItem */ + + if (!$object->GetDBField('AllowMultipleVotings')) { + $sql = 'SELECT StatisticsId + FROM '.TABLE_PREFIX.'PollsStatistics + WHERE PollId = '.$object->GetID().' AND CreatedById = '.$this->Application->RecallVar('user_id').' AND UserIP = '.$this->Conn->qstr(getenv('REMOTE_ADDR')); + return $this->Conn->GetOne($sql) > 0; + } + + return false; + } + + /** + * Allows to tell if user from current ip has voted already for current poll + * + * @param Array $params + * @return bool + */ + function HasCommented($params) + { + $object =& $this->getObject($params); + /* @var $object kDBItem */ + + $spam_helper =& $this->Application->recallObject('SpamHelper'); + /* @var $spam_helper SpamHelper */ + + $spam_helper->InitHelper($object->GetID(), 'PollComment', 0); // PollId used for SpamControl only + return $spam_helper->InSpamControl(); + } + + /** + * Prints out only filled in answers of current poll + * + * @param Array $params + * @return string + */ + function PrintPoll($params) + { + $object =& $this->getObject($params); + + $sql = 'SELECT COUNT(AnswerNum), AnswerNum + FROM '.TABLE_PREFIX.'PollsStatistics + WHERE PollId = '.$object->GetID().' + GROUP BY AnswerNum'; + $statistics = $this->Conn->GetCol($sql, 'AnswerNum'); + + $total_votes = array_sum($statistics); + + $block_params = $this->prepareTagParams($params); + $block_params['name'] = $params['render_as']; + + $i = 1; + $ret = ''; + while ($i < 8) { + $answer = $object->GetDBField('Answer'.$i); + if ($answer) { + $answer_votes = isset($statistics[$i]) ? $statistics[$i] : 0; + if ($total_votes > 0) { + $block_params['percent'] = round((100 * $answer_votes) / $total_votes, 0); + } + else { + $block_params['percent'] = 0; + } + + $block_params['answer'] = $answer; + $block_params['answer_num'] = $i; + + $ret .= $this->Application->ParseBlock($block_params); + } + $i++; + } + + return $ret; + } + + /** + * Prints link to comments of of current poll + * + * @param Array $params + * @return string + */ + function CommentsLink($params) + { + $object =& $this->getObject($params); + + $params['pass'] = 'm,poll'; + $params['poll_id'] = $object->GetID(); + + return $this->Application->ProcessParsedTag('m', 'Link', $params); + } + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/polls/poll_tp.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/polls/polls_config.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/polls/polls_config.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/polls/polls_config.php (revision 12766) @@ -0,0 +1,167 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + $config = Array( + 'Prefix' => 'poll', + 'ItemClass' => Array('class' => 'kDBItem', 'file' => '', 'build_event' => 'OnItemBuild'), + 'ListClass' => Array('class' => 'kDBList', 'file' => '', 'build_event' => 'OnListBuild'), + 'EventHandlerClass' => Array('class' => 'PollEventHandler', 'file' => 'poll_eh.php', 'build_event' => 'OnBuild'), + 'TagProcessorClass' => Array('class' => 'PollTagProcessor', 'file' => 'poll_tp.php', 'build_event' => 'OnBuild'), + 'AutoLoad' => true, + + 'QueryString' => Array( + 1 => 'id', + 2 => 'page', + 3 => 'event', + 4 => 'mode', + ), + + 'IDField' => 'PollId', + + 'TitleField' => 'Name', + 'StatusField' => Array('Status'), + + + 'TitlePresets' => Array( + 'default' => Array( + 'new_status_labels' => Array('poll' => '!la_title_Adding_Poll!'), + 'edit_status_labels' => Array('poll' => '!la_title_Editing_Poll!'), + 'new_titlefield' => Array('poll' => '!la_title_NewPoll!'), + ), + + 'poll_list' => Array('prefixes' => Array('poll_List'), 'format' => "!la_title_Polls!", ), + 'poll_edit' => Array('prefixes' => Array('poll'), 'format' => "#poll_status# '#poll_titlefield#' - !la_title_General!", ), + 'poll_edit_answers' => Array ('prefixes' => Array ('poll', 'poll-answer_List'), 'format' => "#poll_status# '#poll_titlefield#' - !la_title_PollAnswers!"), + + 'poll_edit_comments' => Array ('prefixes' => Array ('poll', 'poll-comment_List'), 'format' => "#poll_status# '#poll_titlefield#' - !la_title_PollComments!"), + + + 'answer_edit' => Array ( + 'prefixes' => Array ('poll', 'poll-answer'), + 'new_status_labels' => Array ('poll-answer' => '!la_title_Adding_Answer!'), + 'edit_status_labels' => Array ('poll-answer' => '!la_title_Editing_Answer!'), + 'new_titlefield' => Array ('poll-answer' => '!la_title_New_Answer!'), + 'format' => "#poll_status# '#poll_titlefield#' - #poll-answer_status# '#poll-answer_titlefield#'" + ), + + 'comment_edit' => Array ( + 'prefixes' => Array ('poll', 'poll-comment'), + 'new_status_labels' => Array ('poll-comment' => '!la_title_Adding_Comment!'), + 'edit_status_labels' => Array ('poll-comment' => '!la_title_Editing_Comment!'), + 'new_titlefield' => Array ('poll-comment' => '!la_title_NewComment!'), + 'format' => "#poll_status# '#poll_titlefield#' - #poll-comment_status#", + ), + + ), + + 'PermSection' => Array('main' => 'in-bulletin:polls'), + + 'Sections' => Array ( + 'in-bulletin:polls' => Array ( + 'parent' => 'in-portal:site', + 'icon' => 'polls', + 'label' => 'la_title_Polls', + 'url' => Array('t' => 'in-bulletin/polls/poll_list', 'pass' => 'm'), + 'permissions' => Array('view', 'add', 'edit', 'delete'), + 'priority' => 3.6, + 'type' => stTREE, + ), + ), + + 'TableName' => TABLE_PREFIX.'Polls', + + 'ListSQLs' => Array('' => 'SELECT %1$s.* %2$s + FROM %1$s', + + ), + + 'ItemSQLs' => Array('' => 'SELECT %1$s.* %2$s + FROM %1$s', + + ), + + 'ListSortings' => Array( + '' => Array ( + 'Sorting' => Array('PollId' => 'asc'), + ) + ), + + 'Fields' => Array ( + 'PollId' => Array('type' => 'int', 'not_null' => 1, 'default' => 0,), + 'Name' => Array('type' => 'string', 'not_null' => '1','default' => '', 'required'=> 1, 'max_len' => 255), + 'Question' => Array('type' => 'string', 'formatter' => 'kMultiLanguage', 'using_fck' => 1, 'default' => null, 'required' => 1), + 'CreatedOn' => Array ('type' => 'int', 'formatter' => 'kDateFormatter', 'required' => 1, 'default' => '#NOW#'), + 'StartDate' => Array('type' => 'int', 'formatter' => 'kDateFormatter', 'required' => 1, 'default' => '#NOW#'), + 'EndDate' => Array('type' => 'int', 'formatter' => 'kDateFormatter', 'default' => null), + 'Image' => Array ( + 'type' => 'string', + 'formatter' => 'kPictureFormatter', + 'max_size' => MAX_UPLOAD_SIZE, 'upload_dir' => IMAGES_PATH . 'polls/', + 'file_types' => '*.jpg;*.gif;*.png', 'files_description' => '!la_hint_ImageFiles!', + 'multiple' => false, + 'max_len' => 255, 'not_null' => 1, 'default' => '' + ), + 'Priority' => Array('type' => 'int', 'not_null' => 1, 'default' => 0), + 'RequireLogin' => Array('type' => 'int', 'not_null' => 1, 'default' => 0,), + 'AllowComments' => Array('type' => 'int', 'not_null' => 1, 'default' => 1,), + 'AllowMultipleVotings' => Array('type' => 'int', 'not_null' => 1, 'default' => 1,), + 'CachedVotesQty'=> Array('type' => 'int', 'not_null' => 1, 'default' => 0), + 'Status' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_opt_Active', 0 => 'la_opt_Disabled'), 'use_phrases' => 1, 'required' => 1, 'not_null' => 1, 'default' => 1), + + ), + + 'SubItems' => Array ('poll-answer', 'poll-comment'), + + 'VirtualFields' => Array ( +// 'PollId' => Array('type' => 'int', 'not_null' => 1, 'default' => 0,), + ), + + 'CalculatedFields' => Array ( + '' => Array ( +// 'DaysLeft' => 'IF( ISNULL(%1$s.EndDate), IF (%1$s.CreatedById = -1, \'root\', IF (%1$s.CreatedById = -2, %1$s.PosterAlias, \'n/a\')), \'Never\' )', + ), + ), + + 'EditTabPresets' => Array ( + 'Default' => Array ( + Array ('title' => 'la_tab_General', 't' => 'in-bulletin/polls/poll_edit', 'priority' => 1), + Array ('title' => 'la_tab_PollAnswers', 't' => 'in-bulletin/polls/poll_edit_answers', 'priority' => 2), + Array ('title' => 'la_tab_PollUserComments', 't' => 'in-bulletin/polls/poll_edit_comments', 'priority' => 3), + ), + ), + + 'Grids' => Array ( + 'Default' => Array ( + 'Icons' => Array ( + 'default' => 'icon16_item.png', + 0 => 'icon16_disabled.png', + 1 => 'icon16_item.png', + 2 => 'icon16_pending.png', + 'module' => 'core', + ), + 'Fields' => Array ( + 'PollId' => Array ('title' => 'la_col_Id', 'data_block' => 'grid_checkbox_td', 'filter_block' => 'grid_range_filter', 'width' => 60, ), + 'Name' => Array ('title' => 'la_col_Name', 'data_block' => 'grid_priority_td', 'filter_block' => 'grid_like_filter', 'width' => 200, ), + 'StartDate' => Array ('title' => 'la_col_StartDate', 'filter_block' => 'grid_date_range_filter', 'width' => 145, ), + 'EndDate' => Array ('title' => 'la_col_EndDate', 'data_block' => 'poll_expire_td', 'filter_block' => 'grid_date_range_filter', 'width' => 145, ), + 'CachedVotesQty' => Array ('title' => 'la_col_VoteCount', 'filter_block' => 'grid_like_filter', 'width' => 100, ), + 'Status' => Array ('title' => 'la_col_Status', 'filter_block' => 'grid_options_filter', 'width' => 100, ), +// 'DaysActive' => Array ('title' => 'la_col_NumberOfDaysActive', 'filter_block' => 'grid_range_filter',), + ), + ), + ), + + ); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/polls/polls_config.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.7 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/polls/poll_eh.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/polls/poll_eh.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/polls/poll_eh.php (revision 12766) @@ -0,0 +1,154 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class PollEventHandler extends kDBEventHandler { + + /** + * Allows to override standart permission mapping + * + */ + function mapPermissions() + { + parent::mapPermissions(); + $permissions = Array( + 'OnResetVotes' => Array('self' => 'edit'), + 'OnMakeVote' => Array('self' => true), + 'OnItemBuild' => Array('self' => true), + ); + $this->permMapping = array_merge($this->permMapping, $permissions); + } + + /** + * Applies special filter, that allows to select all poll from given date range + * + * @param kEvent $event + */ + function SetCustomQuery(&$event) + { + if ($this->Application->isAdminUser) { + return ; + } + + $object =& $event->getObject(); + /* @var $object kDBList */ + + $object->addFilter('poll_range_filter', '(%1$s.StartDate <= ' .adodb_mktime(). ') AND (%1$s.EndDate >= ' .adodb_mktime(). ' OR EndDate IS NULL)'); + $object->addFilter('poll_status', '(%1$s.Status = ' .STATUS_ACTIVE. ')'); + } + + /** + * Reset votes statistics for current poll + * + * @param kEvent $event + */ + function OnResetVotes(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $sql = 'DELETE FROM '.TABLE_PREFIX.'PollsStatistics + WHERE '.$object->IDField.' = '.$object->GetID(); + $this->Conn->Query($sql); + + + $poll_answers_table = $this->Application->getUnitOption('poll-answer', 'TableName'); + $poll_answers_table = $this->Application->GetTempName($poll_answers_table); + + $sql = 'UPDATE '.$poll_answers_table.' SET VotesQty = 0 + WHERE '.$object->IDField.' = '.$object->GetID(); + $this->Conn->Query($sql); + } + + /** + * Reset votes statistics for current poll + * + * @param kEvent $event + */ + function OnBeforeItemCreate(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $object->SetDBField('ResourceId', $this->Application->NextResourceId()); + } + + /** + * Make vote to current poll + * + * @param kEvent $event + */ + function OnMakeVote(&$event) + { + $object =& $event->getObject($this->Application->GetVar('poll_id')); + /* @var $object kDBItem */ + + $poll_answer_id = $this->Application->GetVar('option_id'); + + if (!$poll_answer_id) { + $event->redirect = false; + return ; + } + + $ip_address = $_SERVER['REMOTE_ADDR']; + + if (!$object->GetDBField('AllowMultipleVotings')) { + $sql = 'SELECT StatisticsId + FROM '.TABLE_PREFIX.'PollsStatistics + WHERE PollId = '.$object->GetID().' AND UserIP = '.$this->Conn->qstr($ip_address); + $voted = $this->Conn->GetOne($sql) > 0; + } + + if (!$voted) { + $user_id = $this->Application->LoggedIn()? $this->Application->RecallVar('user_id') : '-2'; + $fields_hash = Array ( + 'PollId' => $object->GetID(), + 'AnswerId' => $poll_answer_id, + 'UserIP' => $ip_address, + 'CreatedById' => $user_id, + 'AnswerDate' => adodb_mktime(), + ); + + $this->Conn->doInsert($fields_hash, TABLE_PREFIX.'PollsStatistics'); + + $poll_table = $this->Application->getUnitOption('poll', 'TableName'); + $this->Conn->Query('UPDATE '.$poll_table.' SET CachedVotesQty = CachedVotesQty + 1 + WHERE PollId = '.$object->GetID()); + + // update table with answers + $poll_answers_table = $this->Application->getUnitOption('poll-answer', 'TableName'); + $this->Conn->Query('UPDATE '.$poll_answers_table.' SET VotesQty = VotesQty + 1 + WHERE PollId = '.$object->GetID().' AND AnswerId = '.$poll_answer_id); + } + $event->setEventParam('PollId', $this->Application->GetVar('poll_id')); + $event->redirect = false; + } + + + /** + * Cleanup by removing items from PollStatistics before Poll is deleted + * + * @param kEvent $event + */ + function OnAfterItemDelete(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + $sql = 'DELETE FROM '.TABLE_PREFIX.'PollsStatistics + WHERE PollId = '.$object->GetID(); + $this->Conn->Query($sql); + } + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/polls/poll_eh.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/poll_comments/poll_comments_config.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/poll_comments/poll_comments_config.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/poll_comments/poll_comments_config.php (revision 12766) @@ -0,0 +1,114 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + $config = Array ( 'Prefix' => 'poll-comment', + + 'ItemClass' => Array ('class' => 'kDBItem', 'file' => '', 'build_event' => 'OnItemBuild'), + 'ListClass' => Array ('class' => 'kDBList', 'file' => '', 'build_event' => 'OnListBuild'), + 'EventHandlerClass' => Array ('class' => 'PollCommentEventHandler', 'file' => 'poll_comment_eh.php', 'build_event' => 'OnBuild'), + 'TagProcessorClass' => Array ('class' => 'kDBTagProcessor', 'file' => '', 'build_event' => 'OnBuild'), + 'AutoLoad' => true, + + 'QueryString' => Array ( + 1 => 'id', + 2 => 'Page', + 3 => 'event' + ), + 'IDField' => 'CommentId', + 'TableName' => TABLE_PREFIX . 'PollsComments', + + 'ParentPrefix' => 'poll', + 'ForeignKey' => 'PollId', + 'ParentTableKey' => 'PollId', + 'AutoDelete' => true, + 'AutoClone' => true, + + 'StatusField' => Array('Status'), + + // key - special, value - list select sql + 'ListSQLs' => Array ( + '' => ' SELECT %1$s.* %2$s + FROM %1$s + LEFT JOIN '.TABLE_PREFIX.'PortalUser pu ON pu.PortalUserId = %1$s.CreatedById', + ), + + 'ItemSQLs' => Array ('' => 'SELECT * FROM %s'), + + 'ListSortings' => Array ( + '' => Array( + 'ForcedSorting' => Array('Priority' => 'desc'), + 'Sorting' => Array('CreatedOn' => 'desc'), + ) + ), + + 'Fields' => Array ( + 'CommentId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'PollId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'AnswerId' => Array ('type' => 'int', 'default' => NULL), + 'CreatedById' => Array ('type' => 'int', 'formatter'=>'kLEFTFormatter', + 'error_msgs' => Array ('invalid_option' => '!la_error_UserNotFound!'), + 'options' => Array(-1 => 'root', -2 => 'Guest'), + 'left_sql' => 'SELECT %s FROM '.TABLE_PREFIX.'PortalUser WHERE `%s` = \'%s\'', + 'left_key_field' => 'PortalUserId', 'left_title_field' => 'Login', + 'required' => 1, 'not_null' => 1, 'default' => -2), + 'GuestName' => Array ('type' => 'string', 'max_len' => 255, 'not_null' => 1, 'default' => ''), + 'GuestEmail' => Array('type' => 'string', 'max_len' => 255, 'formatter'=>'kFormatter', 'regexp'=>'/^(' . REGEX_EMAIL_USER . '@' . REGEX_EMAIL_DOMAIN . ')$/i', 'sample_value' => 'email@domain.com', 'not_null' => '1', 'default' => '', 'error_msgs' => Array('invalid_format'=>'!la_invalid_email!', 'unique'=>'!lu_email_already_exist!'),'required' => 0 ), + 'CommentBody' => Array ('type' => 'string', 'formatter' => 'kFormatter', 'using_fck' => 1, 'default' => NULL, 'required' => 1), + 'CreatedOn' => Array ('type' => 'int', 'formatter' => 'kDateFormatter', 'required' => 1, 'default' => '#NOW#'), + 'UserIP' => Array ('type' => 'string', 'max_len' => 255, 'not_null' => 1, 'default' => ''), + 'Priority' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'Status' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_opt_Active', 0 => 'la_opt_Disabled', 2 => 'la_opt_Pending'), 'use_phrases' => 1, 'required' => 1, 'not_null' => 1, 'default' => 1), + ), + + 'VirtualFields' => Array ( + 'CommentedByUser' => Array('type' => 'string', 'default' => ''), + 'CommentedByEmail' => Array ('type' => 'string', 'default' => ''), + ), + + 'CalculatedFields' => Array ( + '' => Array ( + 'CommentedByUser' => 'IF( ISNULL(pu.Login), IF (%1$s.CreatedById = -1, \'root\', IF (%1$s.CreatedById = -2, \'Guest\', \'n/a\')), pu.Login )', + ), + ), + + 'ConfigMapping' => Array ( + 'PerPage' => 'poll_Perpage_Comments', + 'CommentDelayInterval' => 'poll_CommentDelay_Value', + 'CommentDelayValue' => 'poll_CommentDelay_Interval', + ), + + 'Grids' => Array ( + 'Default' => Array ( + 'Icons' => Array ( + 'default' => 'icon16_item.png', + 0 => 'icon16_disabled.png', + 1 => 'icon16_item.png', + 2 => 'icon16_pending.png', + 'module' => 'core', + ), + 'Fields' => Array ( + 'CommentId' => Array ('title' => 'la_col_Id', 'data_block' => 'grid_checkbox_td', 'filter_block' => 'grid_range_filter', 'width' => 60, ), + 'CommentBody' => Array ('title' => 'la_col_PollComment', 'data_block' => 'grid_priority_td', 'filter_block' => 'grid_like_filter', 'width' => 250, ), + + 'CommentedByUser' => Array( 'title'=>'la_col_CommentedByUser', 'filter_block' => 'grid_like_filter', 'width' => 150, ), + + 'CreatedOn' => Array ('title' => 'la_col_CreatedOn', 'filter_block' => 'grid_date_range_filter', 'width' => 145, ), + 'Status' => Array ('title' => 'la_col_Status', 'filter_block' => 'grid_options_filter', 'width' => 100, ), + ), + ), + ), + + ); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/poll_comments/poll_comments_config.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.4 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/poll_comments/poll_comment_eh.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/poll_comments/poll_comment_eh.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/poll_comments/poll_comment_eh.php (revision 12766) @@ -0,0 +1,149 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class PollCommentEventHandler extends kDBEventHandler { + + /** + * Allows to override standart permission mapping + * + */ + function mapPermissions() + { + parent::mapPermissions(); + $permissions = Array( + 'OnCreate' => Array('self' => true, 'subitem' => true,), + 'OnItemBuild' => Array('self' => true, 'subitem' => true,), + ); + $this->permMapping = array_merge($this->permMapping, $permissions); + } + + function OnAfterConfigRead(&$event) + { + if ($this->Application->RecallVar('user_id') == '-2') { // Guest + // make Guest Name and Email required for guests + $fields = $this->Application->getUnitOption($event->Prefix, 'Fields'); + $fields['GuestName']['required'] = 1; + $fields['GuestEmail']['required'] = 1; + $this->Application->setUnitOption($event->Prefix, 'Fields', $fields); + } + } + + /** + * Applies special filter, that allows to select all commented from current poll + * + * @param kEvent $event + */ + function SetCustomQuery(&$event) + { + if ($this->Application->isAdminUser) { + return ; + } + + $object =& $event->getObject(); + /* @var $object kDBList */ + + $object->addFilter('comment_status', '(%1$s.Status = ' .STATUS_ACTIVE. ')'); + } + + /** + * Before New PollComment created + * + * @param kEvent $event + */ + function OnBeforeItemCreate(&$event) + { + if ($this->Application->isAdminUser) { + return ; + } + + $object =& $event->getObject(); + /* @var $object kDBItem */ + + // get Poll info + $parent_prefix = $this->Application->getUnitOption($this->Prefix, 'ParentPrefix'); + if($parent_prefix) { + $main_object =& $this->Application->recallObject($parent_prefix.'.'.$special, null,Array('raise_warnings' => 0)); + /* @var $main_object kDBItem */ + + if (!$main_object->isLoaded()) { + $main_object =& $this->Application->recallObject($parent_prefix); + } + + $poll_id = $main_object->GetDBField($this->Application->getUnitOption($event->Prefix, 'ForeignKey')); + } + + if ($poll_id) { + $spam_helper =& $this->Application->recallObject('SpamHelper'); + /* @var $spam_helper SpamHelper */ + + $spam_helper->InitHelper($poll_id, 'PollComment', 0); // ResourceId used for SpamControl only + + if ($spam_helper->InSpamControl()) { + $event->status = erFAIL; + $object->SetError('CommentText', 'too_frequent', 'lu_error_AlreadyCommented'); + return ; + } + } + + $object->SetDBField('CreatedById', $this->Application->RecallVar('user_id')); + $object->SetDBField('UserIP', $_SERVER['REMOTE_ADDR']); + $object->SetDBField('PollId', $poll_id); // PollId + $object->SetDBField('Status', STATUS_ACTIVE); + + parent::OnBeforeItemCreate($event); + } + + /** + * Updates item review counter + * + * @param kEvent $event + */ + function OnCreate(&$event) + { + parent::OnCreate($event); + + if ($this->Application->isAdminUser) { + return; + } + + if ($event->status == erSUCCESS) { + $event->setRedirectParam('opener', 's'); + $event->setRedirectParam('pass', 'm,poll'); + $event->redirect = $this->Application->GetVar('success_template'); + } + } + + /** + * Updates item review counter + * + * @param kEvent $event + */ + function OnAfterItemCreate(&$event) + { + if (!$this->Application->isAdminUser) { + $spam_helper =& $this->Application->recallObject('SpamHelper'); + /* @var $spam_helper SpamHelper */ + + $object =& $event->getObject(); + + $config_mapping = $this->Application->getUnitOption($event->Prefix, 'ConfigMapping'); + $comment_settings = $config_mapping['CommentDelayValue'].':'.$config_mapping['CommentDelayInterval']; + $spam_helper->InitHelper($object->GetDBField('PollId'), 'PollComment', $comment_settings); + $spam_helper->AddToSpamControl(); + } + } + + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/poll_comments/poll_comment_eh.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/private_message_body/private_message_body_config.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/private_message_body/private_message_body_config.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/private_message_body/private_message_body_config.php (revision 12766) @@ -0,0 +1,59 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + $config = Array ( + 'Prefix' => 'private-message-body', + 'ItemClass' => Array('class' => 'kDBItem', 'file' => '', 'build_event' => 'OnItemBuild'), + 'ListClass' => Array('class' => 'kDBList', 'file' => '', 'build_event' => 'OnListBuild'), + 'EventHandlerClass' => Array('class' => 'PrivateMessageBodyEventHandler', 'file' => 'private_message_body_eh.php', 'build_event' => 'OnBuild'), + 'TagProcessorClass' => Array('class' => 'kDBTagProcessor', 'file' => '', 'build_event' => 'OnBuild'), + 'AutoLoad' => true, + + 'QueryString' => Array ( + 1 => 'id', + 2 => 'Page', + 3 => 'event', + ), + + 'IDField' => 'PMBodyId', + + 'TitleField' => 'Subject', + + 'TableName' => TABLE_PREFIX.'PrivateMessageBody', + + 'ForeignKey' => 'PMBodyId', + 'ParentTableKey' => 'PMBodyId', + 'ParentPrefix' => 'private-message', + 'AutoDelete' => true, + 'AutoClone' => true, + + 'ListSQLs' => Array ('' => ' SELECT %1$s.* %2$s FROM %1$s',), + 'ItemSQLs' => Array ('' => ' SELECT %1$s.* %2$s FROM %1$s',), + + 'Fields' => Array ( + 'PMBodyId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'Subject' => Array ('type' => 'string', 'max_len' => 255, 'not_null' => 1, 'default' => ''), + 'Body' => Array ('type' => 'string', 'default' => NULL), + 'Options' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'ReferenceCount' => Array ('type' => 'int', 'not_null' => 1, 'default' => 2), + ), + + 'VirtualFields' => Array ( + 'DisableBBCodes' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'default' => 0), + 'DisableSmileys' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'default' => 0), + 'ShowSignatures' => Array ('type' => 'int', 'formatter' => 'kOptionsFormatter', 'options' => Array (0 => 'la_No', 1 => 'la_Yes'), 'use_phrases' => 1, 'default' => 1), + ), + ); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/private_message_body/private_message_body_config.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/private_message_body/private_message_body_eh.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/private_message_body/private_message_body_eh.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/private_message_body/private_message_body_eh.php (revision 12766) @@ -0,0 +1,56 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + class PrivateMessageBodyEventHandler extends kDBEventHandler { + + /** + * Sets default values + * + * @param kEvent $event + */ + function OnBeforeItemCreate(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + // set post options + $post_helper =& $this->Application->recallObject('PostHelper'); + /* @var $post_helper PostHelper */ + + $options_map = $post_helper->getOptionsMap(); + $post_options = $object->GetDBField('Options'); + foreach ($options_map as $option_name => $field_name) { + $option_value = $object->GetDBField($field_name); + $post_helper->SetPostOption($option_name, $option_value, $post_options); + } + $object->SetDBField('Options', $post_options); + } + + /** + * Deletes message body only when no message is using it + * + * @param kEvent $event + */ + function OnBeforeItemDelete(&$event) + { + $object =& $event->getObject(); + /* @var $object kDBItem */ + + if ($object->GetDBField('ReferenceCount') > 0) { + $event->status = erFAIL; + } + } + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/private_message_body/private_message_body_eh.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/censorship/censorship_config.php =================================================================== --- releases/5.0.2-B1/in-bulletin/units/censorship/censorship_config.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/censorship/censorship_config.php (revision 12766) @@ -0,0 +1,95 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + + defined('FULL_PATH') or die('restricted access!'); + + $config = Array ( + 'Prefix' => 'censorship', + 'ItemClass' => Array ('class' => 'kDBItem', 'file' => '', 'build_event' => 'OnItemBuild'), + 'ListClass' => Array ('class' => 'kDBList', 'file' => '', 'build_event' => 'OnListBuild'), + 'EventHandlerClass' => Array ('class' => 'kDBEventHandler', 'file' => '', 'build_event' => 'OnBuild'), + 'TagProcessorClass' => Array ('class' => 'kDBTagProcessor', 'file' => '', 'build_event' => 'OnBuild'), + + 'AutoLoad' => true, + + 'QueryString' => Array ( + 1 => 'id', + 2 => 'Page', + 3 => 'event', + 4 => 'mode', + ), + + 'IDField' => 'CensorshipId', + + 'TableName' => TABLE_PREFIX.'Censorship', + + 'TitleField' => 'BadWord', + + 'TitlePresets' => Array ( + 'default' => Array ( + 'new_status_labels' => Array ('censorship' => '!la_title_AddingCensorship!'), + 'edit_status_labels' => Array ('censorship' => '!la_title_EditingCensorship!'), + ), + + 'censorship_list' => Array ('prefixes' => Array ('censorship_List'), 'format' => "!la_tab_ConfigCensorship!"), + 'censorship_edit' => Array ('prefixes' => Array ('censorship'), 'format' => "#censorship_status# '#censorship_titlefield#'"), + ), + + 'PermSection' => Array('main' => 'in-bulletin:configuration_censorship'), + + 'Sections' => Array ( + 'in-bulletin:configuration_censorship' => Array ( + 'parent' => 'in-bulletin:setting_folder', + 'icon' => 'conf_censorship', + 'label' => 'la_tab_ConfigCensorship', + 'url' => Array('t' => 'in-bulletin/censorship/censorship_list', 'pass' => 'm'), + 'permissions' => Array('view', 'add', 'edit', 'delete'), + 'priority' => 1, + 'type' => stTREE, + ), + ), + + + 'ListSQLs' => Array ( + '' => ' SELECT %1$s.* %2$s FROM %1$s', + ), + + 'ListSortings' => Array ( + '' => Array ( + 'Sorting' => Array ('BadWord' => 'asc'), + ) + ), + + 'Fields' => Array ( + 'CensorshipId' => Array ('type' => 'int', 'not_null' => 1, 'default' => 0), + 'BadWord' => Array ('type' => 'string', 'max_len' => 255, 'not_null' => 1, 'required' => 1, 'default' => ''), + 'Replacement' => Array ('type' => 'string', 'max_len' => 255, 'not_null' => 1, 'required' => 1, 'default' => ''), + ), + + 'Grids' => Array ( + 'Default' => Array ( + 'Icons' => Array ( + 'default' => 'icon16_item.png', + 0 => 'icon16_disabled.png', + 1 => 'icon16_item.png', + 'module' => 'core', + ), + 'Fields' => Array ( + 'CensorshipId' => Array ('title' => 'la_col_Id', 'data_block' => 'grid_checkbox_td', 'filter_block' => 'grid_range_filter', 'width' => 50), + 'BadWord' => Array ('title' => 'la_col_BadWord', 'filter_block' => 'grid_like_filter', 'width' => 250), + 'Replacement' => Array ('title' => 'la_col_Replacement', 'filter_block' => 'grid_like_filter', 'width' => 250), + ), + ), + ), + ); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/censorship/censorship_config.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.3 \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/units/.htaccess =================================================================== --- releases/5.0.2-B1/in-bulletin/units/.htaccess (nonexistent) +++ releases/5.0.2-B1/in-bulletin/units/.htaccess (revision 12766) @@ -0,0 +1 @@ +deny from all \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/units/.htaccess ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install/upgrades.php =================================================================== --- releases/5.0.2-B1/in-bulletin/install/upgrades.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install/upgrades.php (revision 12766) @@ -0,0 +1,96 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + defined('FULL_PATH') or die('restricted access!'); + + $upgrade_class = 'InBulletinUpgrades'; + + /** + * Class, that holds all upgrade scripts for "Core" module + * + */ + class InBulletinUpgrades extends kHelper { + + /** + * Install toolkit instance + * + * @var kInstallToolkit + */ + var $_toolkit = null; + + /** + * Sets common instance of installator toolkit + * + * @param kInstallToolkit $instance + */ + function setToolkit(&$instance) + { + $this->_toolkit =& $instance; + } + + /** + * Changes table structure, where multilingual fields of TEXT type are present + * + * @param string $mode when called mode {before, after) + */ + function Upgrade_5_0_0($mode) + { + if ($mode == 'after') { + $root_category = $this->Application->findModule('Name', 'In-Bulletin', 'RootCat'); + + $sql = 'UPDATE ' . $this->Application->getUnitOption('c', 'TableName') . ' + SET UseMenuIconUrl = 1, MenuIconUrl = "in-bulletin/img/menu_topics.gif" + WHERE ' . $this->Application->getUnitOption('c', 'IDField') . ' = ' . $root_category; + $this->Conn->Query($sql); + + $this->_updateDetailTemplate('bb', 'inbulletin/post_list', 'in-bulletin/designs/detail'); + } + } + + /** + * Replaces deprecated detail template design with new one + * + * @param string $prefix + * @param string $from_template + * @param string $to_template + */ + function _updateDetailTemplate($prefix, $from_template, $to_template) + { + $sql = 'SELECT CustomFieldId + FROM ' . TABLE_PREFIX . 'CustomField + WHERE FieldName = "' . $prefix . '_ItemTemplate"'; + $custom_field_id = $this->Conn->GetOne($sql); + + $ml_formatter =& $this->Application->recallObject('kMultiLanguage'); + /* @var $ml_formatter kMultiLanguage */ + + $field = $ml_formatter->LangFieldName('cust_' . $custom_field_id, true); + + $sql = 'UPDATE ' . TABLE_PREFIX . 'CategoryCustomData + SET ' . $field . ' = "' . $to_template . '" + WHERE ' . $field . ' = "' . $from_template . '"'; + $this->Conn->Query($sql); + } + + /** + * Update to 5.0.1, update details template + * + * @param string $mode when called mode {before, after) + */ + function Upgrade_5_0_1($mode) + { + if ($mode == 'after') { + $this->_updateDetailTemplate('bb', 'in-bulletin/designs/detail', 'in-bulletin/topics/topic_detail'); + } + } + } \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/install/upgrades.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.3 \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install/prerequisites.php =================================================================== --- releases/5.0.2-B1/in-bulletin/install/prerequisites.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install/prerequisites.php (revision 12766) @@ -0,0 +1,80 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + defined('FULL_PATH') or die('restricted access!'); + + $prerequisite_class = 'InBulletinPrerequisites'; + + /** + * Class, that holds all prerequisite scripts for "In-Bulletin" module + * + */ + class InBulletinPrerequisites extends kHelper { + + /** + * Install toolkit instance + * + * @var kInstallToolkit + */ + var $_toolkit = null; + + /** + * Sets common instance of installator toolkit + * + * @param kInstallToolkit $instance + */ + function setToolkit(&$instance) + { + $this->_toolkit =& $instance; + } + + /** + * Checks minimal version, that could be upgradeable + * + * @param string $mode when called mode {install, standalone, upgrade) + */ + function CheckPrerequisites($versions, $mode) + { + $errors = Array (); + + if ($mode == 'standalone') { + if (!$this->Application->isModuleEnabled('In-Portal')) { + $errors[] = 'Please install or enable "In-Portal" module first'; + } + } + + if ($mode == 'upgrade') { + $sql = 'SELECT Version + FROM ' . TABLE_PREFIX . 'Modules + WHERE Name = "In-Portal"'; + $inportal_version = $this->Conn->GetOne($sql); + + if ($inportal_version === false) { + // only, when In-Portal was installed + return $errors; + } + + $min_version = '4.3.1'; + + $current_version = $this->_toolkit->ConvertModuleVersion($inportal_version); + $needed_version = $this->_toolkit->ConvertModuleVersion($min_version); + if ($current_version < $needed_version) { + $errors[] = 'Please upgrade "In-Portal" to version ' . $min_version; + } + } + + return $errors; + } + } + +?> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/install/prerequisites.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.3 \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install/upgrades.sql =================================================================== --- releases/5.0.2-B1/in-bulletin/install/upgrades.sql (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install/upgrades.sql (revision 12766) @@ -0,0 +1,164 @@ +# ===== v 4.3.9 ===== +ALTER TABLE Emoticon + ADD EmotionImage VARCHAR(255) NOT NULL, + ADD INDEX (EmotionImage), + DROP ImageId; + +UPDATE Emoticon SET EmotionImage = CONCAT('0_',EmoticonId,'.gif') WHERE EmoticonId < 21; + +# ===== v 5.0.0 ===== +CREATE TABLE Polls ( + PollId int(11) NOT NULL auto_increment, + `Name` varchar(255) NOT NULL default '', + l1_Question text, + l2_Question text, + l3_Question text, + l4_Question text, + l5_Question text, + Image varchar(255) NOT NULL default '', + CreatedOn int(11) unsigned NOT NULL, + StartDate int(11) unsigned NOT NULL, + EndDate int(11) unsigned default NULL, + Priority tinyint(4) NOT NULL default '0', + RequireLogin tinyint(4) NOT NULL default '0', + AllowMultipleVotings tinyint(4) NOT NULL default '1', + AllowComments tinyint(4) NOT NULL default '1', + `Status` tinyint(4) NOT NULL default '1', + CachedVotesQty int(11) NOT NULL, + PRIMARY KEY (PollId), + KEY `Status` (`Status`), + KEY Priority (Priority), + KEY StartDate (StartDate), + KEY EndDate (EndDate) +); + +CREATE TABLE PollsAnswers ( + AnswerId int(11) NOT NULL auto_increment, + PollId int(11) NOT NULL, + l1_Answer text, + l2_Answer text, + l3_Answer text, + l4_Answer text, + l5_Answer text, + VotesQty int(11) NOT NULL, + Priority int(11) NOT NULL default '0', + Status tinyint(4) NOT NULL default '1', + PRIMARY KEY (AnswerId), + KEY Status (Status), + KEY Priority (Priority), + KEY VoteCount (VotesQty), + KEY PollId (PollId) +); + +CREATE TABLE PollsComments ( + CommentId int(11) NOT NULL auto_increment, + PollId int(11) NOT NULL, + AnswerId int(11) default NULL, + CreatedById int(11) NOT NULL default '-2', + GuestName varchar(255) NOT NULL, + GuestEmail varchar(255) NOT NULL, + CommentBody text, + CreatedOn int(11) NOT NULL, + UserIP varchar(255) NOT NULL, + Priority int(11) NOT NULL, + `Status` tinyint(4) NOT NULL default '1', + PRIMARY KEY (CommentId), + KEY `Status` (`Status`), + KEY Priority (Priority), + KEY CreatedOn (CreatedOn), + KEY AnswerId (AnswerId), + KEY PollId (PollId), + KEY CreatedById (CreatedById) +); + +CREATE TABLE PollsStatistics ( + StatisticsId int(11) NOT NULL auto_increment, + PollId int(11) NOT NULL default '0', + AnswerId int(11) NOT NULL default '0', + CreatedById int(11) NOT NULL default '-2', + UserIP varchar(255) NOT NULL, + AnswerDate int(10) unsigned default NULL, + PRIMARY KEY (StatisticsId), + KEY AnswerId (AnswerId,PollId), + KEY CreatedById (CreatedById), + KEY UserIP (UserIP) +); + +INSERT INTO ConfigurationAdmin VALUES ('poll_CommentDelay_Value', 'la_Text_Polls', 'la_prompt_DupPollComments', 'text', '', '', 60.1, 1, 1); +INSERT INTO ConfigurationAdmin VALUES ('poll_CommentDelay_Interval', 'la_Text_Polls', 'la_prompt_DupPollComments', 'select', '', '1=la_Text_Second,60=la_Text_Minute,3600=la_Text_Hour,86400=la_Text_Day,604800=la_Text_Week,2419200=la_Text_Month,29030400=la_text_Year', 60.2, 2, 1); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'poll_CommentDelay_Interval', '60', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'poll_CommentDelay_Value', '10', 'In-Bulletin', 'in-bulletin:configuration_output'); + +UPDATE Category SET Template = '/in-bulletin/designs/section' WHERE Template = 'inbulletin/index'; +UPDATE Category SET CachedTemplate = '/in-bulletin/designs/section' WHERE CachedTemplate = 'inbulletin/index'; + +UPDATE ConfigurationValues SET VariableValue = '/in-bulletin/designs/section' WHERE VariableName = 'bb_CategoryTemplate'; +UPDATE ConfigurationValues SET VariableValue = 'in-bulletin/designs/detail' WHERE VariableName = 'bb_ItemTemplate'; + +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:topics.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:setting_folder.view', 11, 1, 1, 0); +DELETE FROM Permissions WHERE Permission LIKE 'in-bulletin:inbulletin_general.%'; + +UPDATE Phrase SET Module = 'In-Bulletin' WHERE ((Phrase LIKE '%Topic%' OR Phrase LIKE '%Post%' OR Phrase LIKE '%Forum%' OR Phrase LIKE '%Censor%' OR Phrase LIKE '%Smiley%' OR Phrase = 'la_title_In-Bulletin') AND (Module = 'Core')); + +# ===== v 5.0.1 ===== +UPDATE ConfigurationValues SET VariableValue = 'in-bulletin/topics/topic_detail' WHERE VariableName = 'bb_ItemTemplate'; + +UPDATE ConfigurationAdmin +SET ValueList = 'TopicText=la_opt_TopicText,Posts=la_opt_NumberOfPosts,CreatedOn=la_opt_CreatedOn,LastPostDate=la_opt_LastUpdated,Views=la_opt_TopicViews,CachedRating=la_opt_Rating,LastPoser=la_opt_LastPoster,<SQL>SELECT Prompt AS OptionName, CONCAT("cust_", FieldName) AS OptionValue FROM <PREFIX>CustomField WHERE (Type = 3) AND (IsSystem = 0)</SQL>' +WHERE VariableName IN ('Topic_SortField', 'Topic_SortField2'); + +UPDATE ConfigurationAdmin +SET ValueList = 'ASC=la_common_Ascending,DESC=la_common_Descending' +WHERE VariableName IN ('Topic_SortOrder', 'Topic_SortOrder2'); + +UPDATE ConfigurationAdmin SET ValueList = '1=la_opt_Sec,60=la_opt_Min,3600=la_opt_Hour,86400=la_opt_Day,604800=la_opt_Week,2419200=la_opt_Month,29030400=la_opt_Year' WHERE VariableName = 'topic_ReviewDelay_Interval'; +UPDATE ConfigurationAdmin SET ValueList = '1=la_opt_Sec,60=la_opt_Min,3600=la_opt_Hour,86400=la_opt_Day,604800=la_opt_Week,2419200=la_opt_Month,29030400=la_opt_Year' WHERE VariableName = 'topic_RatingDelay_Interval'; +UPDATE ConfigurationAdmin SET ValueList = '1=la_opt_Sec,60=la_opt_Min,3600=la_opt_Hour,86400=la_opt_Day,604800=la_opt_Week,2419200=la_opt_Month,29030400=la_opt_Year' WHERE VariableName = 'poll_CommentDelay_Interval'; + +UPDATE CustomField SET FieldLabel = 'la_fld_cust_bb_ItemTemplate', Prompt = 'la_fld_cust_bb_ItemTemplate' WHERE FieldName = 'bb_ItemTemplate'; + +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.ADD', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.add', 0); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.ADD.PENDING', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.add.pending', 1); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.ADD.PENDING', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.add.pending', 0); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.MODIFY', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.modify', 1); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.MODIFY', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.modify', 0); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.MODIFY.PENDING', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.modify.pending', 1); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.MODIFY.PENDING', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.modify.pending', 0); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.APPROVE', NULL, 1, 0, NULL, 'In-Bulletin', 'la_event_topic.approve', 0); + +UPDATE ConfigurationAdmin SET ValueList = 'style="width: 50px;"' WHERE VariableName IN ('topic_ReviewDelay_Value', 'topic_RatingDelay_Value', 'poll_CommentDelay_Value'); + +# ===== v 5.0.2-B1 ===== +ALTER TABLE PrivateMessageBody CHANGE Body Body text NULL; + +ALTER TABLE Emoticon CHANGE EmotionImage EmotionImage VARCHAR(255) NOT NULL DEFAULT ''; + +ALTER TABLE Polls + CHANGE CreatedOn CreatedOn INT(11) UNSIGNED NULL DEFAULT NULL , + CHANGE StartDate StartDate INT(11) UNSIGNED NULL DEFAULT NULL , + CHANGE CachedVotesQty CachedVotesQty INT(11) NOT NULL DEFAULT '0'; + +ALTER TABLE PollsAnswers + CHANGE PollId PollId INT(11) NOT NULL DEFAULT '0', + CHANGE VotesQty VotesQty INT(11) NOT NULL DEFAULT '0'; + +ALTER TABLE PollsComments + CHANGE PollId PollId INT(11) NOT NULL DEFAULT '0', + CHANGE GuestName GuestName VARCHAR(255) NOT NULL DEFAULT '', + CHANGE GuestEmail GuestEmail VARCHAR(255) NOT NULL DEFAULT '', + CHANGE CreatedOn CreatedOn INT(11) NULL DEFAULT NULL , + CHANGE UserIP UserIP VARCHAR(255) NOT NULL DEFAULT '', + CHANGE Priority Priority INT(11) NOT NULL DEFAULT '0'; + +ALTER TABLE PollsStatistics CHANGE UserIP UserIP VARCHAR(255) NOT NULL DEFAULT ''; + +ALTER TABLE Posting + CHANGE CreatedOn CreatedOn INT(11) NULL DEFAULT NULL, + CHANGE Modified Modified INT(11) NULL DEFAULT NULL; + +ALTER TABLE PrivateMessages CHANGE CreatedOn CreatedOn INT(11) UNSIGNED NULL DEFAULT NULL; + +ALTER TABLE Topic + CHANGE Modified Modified INT(11) NULL DEFAULT NULL, + CHANGE CreatedOn CreatedOn INT(11) NULL DEFAULT NULL; \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/install/upgrades.sql ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.12 \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install/install_schema.sql =================================================================== --- releases/5.0.2-B1/in-bulletin/install/install_schema.sql (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install/install_schema.sql (revision 12766) @@ -0,0 +1,198 @@ +CREATE TABLE Posting ( + PostingId int(11) NOT NULL AUTO_INCREMENT, + IPAddress varchar(255) NOT NULL DEFAULT '', + PosterAlias varchar(255) NOT NULL DEFAULT '', + Pending tinyint(4) NOT NULL DEFAULT '0', + `Subject` varchar(255) DEFAULT NULL, + PostingText text, + GraphicsUrl varchar(255) DEFAULT NULL, + CreatedOn int(11) DEFAULT NULL, + Modified int(11) DEFAULT NULL, + ModifiedById int(11) DEFAULT NULL, + CreatedById int(11) DEFAULT NULL, + TopicId int(11) NOT NULL DEFAULT '0', + ResourceId int(11) NOT NULL DEFAULT '0', + ReplyTo int(11) NOT NULL DEFAULT '0', + `Options` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (PostingId), + KEY TopicId (TopicId), + KEY Pending (Pending), + KEY CreatedById (CreatedById), + KEY CreatedOn (CreatedOn), + KEY ModifiedOn (Modified), + KEY ModifiedById (ModifiedById) +); + +CREATE TABLE Topic ( + TopicId int(11) NOT NULL AUTO_INCREMENT, + NotifyOwnerOnChanges tinyint(4) NOT NULL DEFAULT '0', + Modified int(11) DEFAULT NULL, + TopicText varchar(255) NOT NULL DEFAULT '', + AutomaticFilename tinyint(3) unsigned NOT NULL DEFAULT '1', + Posts int(11) NOT NULL DEFAULT '0', + Views double(20,6) NOT NULL DEFAULT '0.000000', + EditorsPick tinyint(4) NOT NULL DEFAULT '0', + `Status` tinyint(4) unsigned NOT NULL DEFAULT '2', + Priority int(11) NOT NULL DEFAULT '0', + OwnerId int(11) NOT NULL DEFAULT '-1', + ModifiedById int(11) NOT NULL DEFAULT '0', + ResourceId int(11) DEFAULT NULL, + TopicType int(11) NOT NULL DEFAULT '1', + CreatedOn int(11) DEFAULT NULL, + CachedReviewsQty int(11) NOT NULL DEFAULT '0', + CachedRating varchar(10) NOT NULL DEFAULT '0', + CachedVotesQty int(11) NOT NULL DEFAULT '0', + NewItem tinyint(4) NOT NULL DEFAULT '2', + PopItem tinyint(4) NOT NULL DEFAULT '2', + HotItem tinyint(4) NOT NULL DEFAULT '2', + PostedBy varchar(255) NOT NULL DEFAULT '', + OrgId int(11) DEFAULT NULL, + LastPostId int(11) NOT NULL DEFAULT '0', + LastPostDate int(11) DEFAULT NULL, + TodayDate date DEFAULT NULL, + TodayPosts int(11) NOT NULL DEFAULT '0', + MetaKeywords varchar(255) DEFAULT NULL, + MetaDescription text, + PRIMARY KEY (TopicId), + UNIQUE KEY ResourceId (ResourceId), + KEY OwnerId (OwnerId), + KEY ModifiedById (ModifiedById), + KEY Posts (Posts), + KEY Modified (Modified), + KEY Views (Views), + KEY EditorsPick (EditorsPick), + KEY `Status` (`Status`), + KEY Priority (Priority), + KEY CreatedOn (CreatedOn), + KEY NewItem (NewItem), + KEY PopItem (PopItem), + KEY HotItem (HotItem), + KEY LastPostId (LastPostId) +); + +CREATE TABLE Censorship ( + CensorshipId int(11) NOT NULL auto_increment, + BadWord varchar(80) NOT NULL default '', + Replacement varchar(80) NOT NULL default '', + PRIMARY KEY (CensorshipId) +); + +CREATE TABLE Emoticon ( + EmoticonId int(11) NOT NULL AUTO_INCREMENT, + `Name` varchar(20) NOT NULL DEFAULT '', + KeyStroke varchar(20) NOT NULL DEFAULT '', + Enabled int(11) NOT NULL DEFAULT '1', + EmotionImage varchar(255) NOT NULL DEFAULT '', + PRIMARY KEY (EmoticonId), + KEY Enabled (Enabled), + KEY EmotionImage (EmotionImage) +); + +CREATE TABLE PrivateMessageBody ( + PMBodyId int(11) unsigned NOT NULL AUTO_INCREMENT, + `Subject` varchar(255) NOT NULL DEFAULT '', + Body text, + `Options` tinyint(3) unsigned NOT NULL DEFAULT '0', + ReferenceCount smallint(5) unsigned NOT NULL DEFAULT '2', + PRIMARY KEY (PMBodyId), + KEY ReferenceCount (ReferenceCount) +); + +CREATE TABLE PrivateMessages ( + PmId int(11) unsigned NOT NULL AUTO_INCREMENT, + FromId int(11) unsigned DEFAULT NULL, + ToId int(11) unsigned DEFAULT NULL, + FolderId tinyint(3) NOT NULL DEFAULT '-1', + `Status` tinyint(1) unsigned NOT NULL DEFAULT '0', + PMBodyId int(11) unsigned NOT NULL DEFAULT '0', + CreatedOn int(11) unsigned DEFAULT NULL, + PRIMARY KEY (PmId), + KEY FromId (FromId), + KEY CreatedOn (CreatedOn), + KEY ToId (ToId), + KEY FolderId (FolderId) +); + +CREATE TABLE TopicCustomData ( + CustomDataId int(11) NOT NULL auto_increment, + ResourceId int(10) unsigned NOT NULL default '0', + KEY ResourceId (ResourceId), + PRIMARY KEY (CustomDataId) +); + +CREATE TABLE Polls ( + PollId int(11) NOT NULL AUTO_INCREMENT, + `Name` varchar(255) NOT NULL DEFAULT '', + l1_Question text, + l2_Question text, + l3_Question text, + l4_Question text, + l5_Question text, + Image varchar(255) NOT NULL DEFAULT '', + CreatedOn int(11) unsigned DEFAULT NULL, + StartDate int(11) unsigned DEFAULT NULL, + EndDate int(11) unsigned DEFAULT NULL, + Priority tinyint(4) NOT NULL DEFAULT '0', + RequireLogin tinyint(4) NOT NULL DEFAULT '0', + AllowMultipleVotings tinyint(4) NOT NULL DEFAULT '1', + AllowComments tinyint(4) NOT NULL DEFAULT '1', + `Status` tinyint(4) NOT NULL DEFAULT '1', + CachedVotesQty int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (PollId), + KEY `Status` (`Status`), + KEY Priority (Priority), + KEY StartDate (StartDate), + KEY EndDate (EndDate) +); + +CREATE TABLE PollsAnswers ( + AnswerId int(11) NOT NULL AUTO_INCREMENT, + PollId int(11) NOT NULL DEFAULT '0', + l1_Answer text, + l2_Answer text, + l3_Answer text, + l4_Answer text, + l5_Answer text, + VotesQty int(11) NOT NULL DEFAULT '0', + Priority int(11) NOT NULL DEFAULT '0', + `Status` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (AnswerId), + KEY `Status` (`Status`), + KEY Priority (Priority), + KEY VoteCount (VotesQty), + KEY PollId (PollId) +); + +CREATE TABLE PollsComments ( + CommentId int(11) NOT NULL AUTO_INCREMENT, + PollId int(11) NOT NULL DEFAULT '0', + AnswerId int(11) DEFAULT NULL, + CreatedById int(11) NOT NULL DEFAULT '-2', + GuestName varchar(255) NOT NULL DEFAULT '', + GuestEmail varchar(255) NOT NULL DEFAULT '', + CommentBody text, + CreatedOn int(11) DEFAULT NULL, + UserIP varchar(255) NOT NULL DEFAULT '', + Priority int(11) NOT NULL DEFAULT '0', + `Status` tinyint(4) NOT NULL DEFAULT '1', + PRIMARY KEY (CommentId), + KEY `Status` (`Status`), + KEY Priority (Priority), + KEY CreatedOn (CreatedOn), + KEY AnswerId (AnswerId), + KEY PollId (PollId), + KEY CreatedById (CreatedById) +); + +CREATE TABLE PollsStatistics ( + StatisticsId int(11) NOT NULL AUTO_INCREMENT, + PollId int(11) NOT NULL DEFAULT '0', + AnswerId int(11) NOT NULL DEFAULT '0', + CreatedById int(11) NOT NULL DEFAULT '-2', + UserIP varchar(255) NOT NULL DEFAULT '', + AnswerDate int(10) unsigned DEFAULT NULL, + PRIMARY KEY (StatisticsId), + KEY AnswerId (AnswerId,PollId), + KEY CreatedById (CreatedById), + KEY UserIP (UserIP) +); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/install/install_schema.sql ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.6 \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install/install_data.sql =================================================================== --- releases/5.0.2-B1/in-bulletin/install/install_data.sql (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install/install_data.sql (revision 12766) @@ -0,0 +1,285 @@ +INSERT INTO ConfigurationAdmin VALUES ('Topic_SortOrder', 'la_Text_Topics', 'la_topic_sortfield_prompt', 'select', '', 'asc=la_common_Ascending,desc=la_common_Descending', 10.01, 2, 1); +INSERT INTO ConfigurationAdmin VALUES ('Topic_SortField', 'la_Text_Topics', 'la_topic_sortfield_prompt', 'select', '', 'TopicText=la_opt_TopicText,Posts=la_opt_NumberOfPosts,CreatedOn=la_opt_CreatedOn,LastPostDate=la_opt_LastUpdated,Views=la_opt_TopicViews,CachedRating=la_opt_Rating,LastPoser=la_opt_LastPoster,<SQL>SELECT Prompt AS OptionName, CONCAT("cust_", FieldName) AS OptionValue FROM <PREFIX>CustomField WHERE (Type = 3) AND (IsSystem = 0)</SQL>', 10.01, 1, 1); +INSERT INTO ConfigurationAdmin VALUES ('Topic_SortField2', 'la_Text_Topics', 'la_topic_sortfield2_prompt', 'select', '', 'TopicText=la_opt_TopicText,Posts=la_opt_NumberOfPosts,CreatedOn=la_opt_CreatedOn,LastPostDate=la_opt_LastUpdated,Views=la_opt_TopicViews,CachedRating=la_opt_Rating,LastPoser=la_opt_LastPoster,<SQL>SELECT Prompt AS OptionName, CONCAT("cust_", FieldName) AS OptionValue FROM <PREFIX>CustomField WHERE (Type = 3) AND (IsSystem = 0)</SQL>', 10.02, 1, 1); +INSERT INTO ConfigurationAdmin VALUES ('Topic_NewDays', 'la_Text_Topics', 'la_topic_newdays_prompt', 'text', '', '', 10.05, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('Topic_SortOrder2', 'la_Text_Topics', 'la_topic_sortfield2_prompt', 'select', '', 'asc=la_common_Ascending,desc=la_common_Descending', 10.02, 2, 1); +INSERT INTO ConfigurationAdmin VALUES ('Perpage_Topics', 'la_Text_Topics', 'la_topic_perpage_prompt', 'text', '', '', 10.03, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('Topic_MinPopRating', 'la_Text_Topics', 'la_fld_Topic_MinPopRating', 'text', '', '', 10.06, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('Topic_MaxHotNumber', 'la_Text_Topics', 'la_fld_Topic_MaxHotNumber', 'text', '', '', 10.08, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('Topic_EditorPicksAbove', 'la_Text_Topics', 'la_topic_editorpicksabove_prompt', 'checkbox', '', '', 10.09, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('Perpage_Postings', 'la_posts_subheading', 'la_posts_perpage_prompt', 'text', '', '', 20.01, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('Posts_NewDays', 'la_posts_subheading', 'la_posts_newdays_prompt', 'text', '', '', 20.02, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('Topic_MinPopVotes', 'la_Text_Topics', 'la_fld_Topic_MinPopVotes', 'text', '', '', 10.07, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('Perpage_Topics_Short', 'la_Text_Topics', 'la_topic_perpage_short_prompt', 'text', '', '', 10.04, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('topic_ReviewDelay_Value', 'la_Text_Topics', 'la_prompt_DupReviews', 'text', '', 'style="width: 50px;"', 10.1, 1, 1); +INSERT INTO ConfigurationAdmin VALUES ('topic_ReviewDelay_Interval', 'la_Text_Topics', 'la_prompt_DupReviews', 'select', '', '1=la_opt_Sec,60=la_opt_Min,3600=la_opt_Hour,86400=la_opt_Day,604800=la_opt_Week,2419200=la_opt_Month,29030400=la_opt_Year', 10.1, 2, 1); +INSERT INTO ConfigurationAdmin VALUES ('topic_RatingDelay_Value', 'la_Text_Topics', 'la_prompt_DupRating', 'text', '', 'style="width: 50px;"', 10.11, 1, 1); +INSERT INTO ConfigurationAdmin VALUES ('topic_RatingDelay_Interval', 'la_Text_Topics', 'la_prompt_DupRating', 'select', '', '1=la_opt_Sec,60=la_opt_Min,3600=la_opt_Hour,86400=la_opt_Day,604800=la_opt_Week,2419200=la_opt_Month,29030400=la_opt_Year', 10.11, 2, 1); +INSERT INTO ConfigurationAdmin VALUES ('AutoTopicLockPosts', 'la_Text_Topics', 'la_prompt_PostsToLock', 'text', NULL, NULL, 10.12, 0, 0); +INSERT INTO ConfigurationAdmin VALUES ('Perpage_TopicReviews', 'la_Text_Reviews', 'la_review_perpage_prompt', 'text', NULL, NULL, 30.01, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('bb_CategoryTemplate', 'la_section_Templates', 'la_fld_CategoryTemplate', 'text', '', '', 40.01, 0, 0); +INSERT INTO ConfigurationAdmin VALUES ('bb_ItemTemplate', 'la_section_Templates', 'la_fld_ItemTemplate', 'text', '', '', 40.02, 0, 0); +INSERT INTO ConfigurationAdmin VALUES ('bb_MaxImageCount', 'la_section_ImageSettings', 'la_config_MaxImageCount', 'text', '', '', 50.01, 0, 0); +INSERT INTO ConfigurationAdmin VALUES ('bb_ThumbnailImageWidth', 'la_section_ImageSettings', 'la_config_ThumbnailImageWidth', 'text', '', '', 50.02, 0, 0); +INSERT INTO ConfigurationAdmin VALUES ('bb_ThumbnailImageHeight', 'la_section_ImageSettings', 'la_config_ThumbnailImageHeight', 'text', '', '', 50.03, 0, 0); +INSERT INTO ConfigurationAdmin VALUES ('bb_FullImageWidth', 'la_section_ImageSettings', 'la_config_FullImageWidth', 'text', '', '', 50.04, 0, 0); +INSERT INTO ConfigurationAdmin VALUES ('bb_FullImageHeight', 'la_section_ImageSettings', 'la_config_FullImageHeight', 'text', '', '', 50.05, 0, 0); + +INSERT INTO ConfigurationAdmin VALUES ('SearchRel_Keyword_topics', 'la_config_SearchRel_DefaultKeyword', 'la_text_keyword', 'text', NULL, NULL, 0, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('SearchRel_Pop_topics', 'la_config_DefaultPop', 'la_text_popularity', 'text', NULL, NULL, 0, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('SearchRel_Rating_topics', 'la_config_DefaultRating', 'la_prompt_Rating', 'text', NULL, NULL, 0, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('SearchRel_Increase_topics', 'la_config_DefaultIncreaseImportance', 'la_text_increase_importance', 'text', NULL, NULL, 0, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('Search_ShowMultiple_topics', 'la_config_ShowMultiple', 'la_Text_MultipleShow', 'text', NULL, NULL, 0, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('Perpage_PrivateMessages', 'la_text_PrivateMessages', 'la_text_PrivateMessages_PerPage', 'text', NULL, NULL, 0, 0, 1); +INSERT INTO ConfigurationAdmin VALUES ('poll_CommentDelay_Value', 'la_Text_Polls', 'la_prompt_DupPollComments', 'text', '', 'style="width: 50px;"', 60.1, 1, 1); +INSERT INTO ConfigurationAdmin VALUES ('poll_CommentDelay_Interval', 'la_Text_Polls', 'la_prompt_DupPollComments', 'select', '', '1=la_opt_Sec,60=la_opt_Min,3600=la_opt_Hour,86400=la_opt_Day,604800=la_opt_Week,2419200=la_opt_Month,29030400=la_opt_Year', 60.2, 2, 1); + +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Perpage_Postings', '25', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Perpage_Topics', '5', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Posting_SortOrder', 'CreatedOn asc, PostingText', 'inportal', ''); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Posts_NewDays', '5', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Bulletin_TopCount', '2', 'inportal', ''); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Bulletin_CatNewDays', '10', 'inportal', ''); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Bulletin_Pick_First', '1', 'inportal', ''); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_SortOrder', 'desc', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_SortField', 'LastPostDate', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_SortOrder2', 'desc', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_SortField2', 'Posts', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_NewDays', '6', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_MinPopRating', '3', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_MaxHotNumber', '3', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_EditorPicksAbove', '1', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_MinPopVotes', '8', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_Root', '{TopicCatId}', 'In-Portal', ''); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Post_Sortfield', DEFAULT, 'In-Bulletin', ''); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Post_SortOrder', DEFAULT, 'In-Bulletin', ''); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'BBTags', 'b:;i:;u:;ul:type|align;font:color|face|size;url:href;img:src|border', 'In-Portal', ''); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Post_Background1', '#cccccc', 'In-Portal', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Post_Background2', '#bbbbbb', 'In-Portal', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_Background1', '#FAEBD7', 'In-Portal', ''); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_Background2', '#F5F5DC', 'In-Portal', ''); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'AutoTopicLockPosts', '0', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'bb_CategoryTemplate', '/in-bulletin/designs/section', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'bb_ItemTemplate', 'in-bulletin/designs/detail', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_Highlight_OpenTag', '<span class="match">', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Topic_Highlight_CloseTag', '</span>', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Perpage_Topics_Short', '3', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'topic_RatingDelay_Interval', '3600', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'topic_RatingDelay_Value', '1', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'topic_ReviewDelay_Interval', '60', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'topic_ReviewDelay_Value', '10', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'SearchRel_Increase_topics', '30', 'In-Bulletin', 'in-bulletin:configuration_search'); + +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'bb_MaxImageCount', 5, 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'bb_ThumbnailImageWidth', 120, 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'bb_ThumbnailImageHeight', 120, 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'bb_FullImageWidth', 450, 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'bb_FullImageHeight', 450, 'In-Bulletin', 'in-bulletin:configuration_output'); + +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'SearchRel_Keyword_topics', '90', 'In-Bulletin', 'in-bulletin:configuration_search'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'SearchRel_Pop_topics', '5', 'In-Bulletin', 'in-bulletin:configuration_search'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'SearchRel_Rating_topics', '5', 'In-Bulletin', 'in-bulletin:configuration_search'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'SearchRel_Increase_posts', '30', 'In-Bulletin', 'in-bulletin:configuration_search'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'SearchRel_Keyword_posts', '90', 'In-Bulletin', 'in-bulletin:configuration_search'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'SearchRel_Pop_posts', '5', 'In-Bulletin', 'in-bulletin:configuration_search'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'SearchRel_Rating_posts', '5', 'In-Bulletin', 'in-bulletin:configuration_search'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Search_ShowMultiple_topics', '0', 'In-Bulletin', 'in-bulletin:configuration_search'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Perpage_PrivateMessages', '20', 'In-Bulletin', ''); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'Perpage_TopicReviews', '10', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'poll_CommentDelay_Interval', '60', 'In-Bulletin', 'in-bulletin:configuration_output'); +INSERT INTO ConfigurationValues VALUES (DEFAULT, 'poll_CommentDelay_Value', '10', 'In-Bulletin', 'in-bulletin:configuration_output'); + +INSERT INTO Emoticon VALUES (1, 'Happy Smile', ':)', 1, ''); +INSERT INTO Emoticon VALUES (2, 'Big Grin', ':grin:', 1, ''); +INSERT INTO Emoticon VALUES (3, 'Wink', ';)', 1, ''); +INSERT INTO Emoticon VALUES (4, 'Scared', ':scared:', 1, ''); +INSERT INTO Emoticon VALUES (5, 'Teasing', ':eek:', 1, ''); +INSERT INTO Emoticon VALUES (6, 'Cool', ':cool:', 1, ''); +INSERT INTO Emoticon VALUES (7, 'Angry', ':@', 1, ''); +INSERT INTO Emoticon VALUES (8, 'Squint', ':squint:', 1, ''); +INSERT INTO Emoticon VALUES (9, 'Oops', ':o', 1, ''); +INSERT INTO Emoticon VALUES (10, 'Sad', ':(', 1, ''); +INSERT INTO Emoticon VALUES (11, 'Cry', ':cry:', 1, ''); +INSERT INTO Emoticon VALUES (12, 'Smirk', ';]', 1, ''); +INSERT INTO Emoticon VALUES (13, 'Happy sleep', ':sleep:', 1, ''); +INSERT INTO Emoticon VALUES (14, 'Very angry', ':x', 1, ''); +INSERT INTO Emoticon VALUES (15, 'Geek', ':geek:', 1, ''); +INSERT INTO Emoticon VALUES (16, 'Upset', ';(', 1, ''); +INSERT INTO Emoticon VALUES (17, 'LOL', ':lol:', 1, ''); +INSERT INTO Emoticon VALUES (18, 'Yawn', ':O', 1, ''); +INSERT INTO Emoticon VALUES (19, 'Thinking', ':hm:', 1, ''); +INSERT INTO Emoticon VALUES (20, 'Secret', ':|', 1, ''); + +UPDATE Emoticon SET EmotionImage = CONCAT('0_',EmoticonId,'.gif'); + +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.ADD', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.add', 1); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.ADD', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.add', 0); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.ADD.PENDING', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.add.pending', 1); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.ADD.PENDING', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.add.pending', 0); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.MODIFY', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.modify', 1); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.MODIFY', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.modify', 0); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.MODIFY.PENDING', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.modify.pending', 1); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.MODIFY.PENDING', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_topic.modify.pending', 0); +INSERT INTO Events VALUES(DEFAULT, 'TOPIC.APPROVE', NULL, 1, 0, NULL, 'In-Bulletin', 'la_event_topic.approve', 0); +INSERT INTO Events VALUES(DEFAULT, 'POST.ADD', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_post.add', 1); +INSERT INTO Events VALUES(DEFAULT, 'POST.MODIFY', NULL, 1, 1, NULL, 'In-Bulletin', 'la_event_post.modify', 1); +INSERT INTO Events VALUES(DEFAULT, 'POST.ADD', NULL, 1, 0, NULL, 'In-Bulletin', 'la_event_post.add', 0); +INSERT INTO Events VALUES(DEFAULT, 'PM.ADD', NULL, 1, 0, NULL, 'In-Bulletin', 'la_event_pm.add', 0); + +INSERT INTO ItemTypes VALUES (3, 'In-Bulletin', 'bb', 'Topic', 'TopicText', 'OwnerId', 'Views', 'CachedRating', 'la_ItemTab_Topics', 1, '', 'clsTopic', 'Topic'); +INSERT INTO ItemTypes VALUES (30, 'In-Bulletin', 'posting', 'Posting', 'Subject', 'CreatedById', NULL, NULL, 'la_ItemTab_Posts', 0, '', '', 'Post'); + +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.VIEW', 'lu_PermName_Topic.View_desc', 'lu_PermName_Topic.View_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.ADD', 'lu_PermName_Topic.Add_desc', 'lu_PermName_Topic.Add_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.ADD.PENDING', 'lu_PermName_Topic.Add.Pending_desc', 'lu_PermName_Topic.Add.Pending_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.DELETE', 'lu_PermName_Topic.Delete_desc', 'lu_PermName_Topic.Delete_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.MODIFY', 'lu_PermName_Topic.Modify_desc', 'lu_PermName_Topic.Modify_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.REPLY.DELETE', 'lu_PermName_Topic.Reply.Delete_desc', 'lu_PermName_Topic.Reply.Delete_desc', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.REPLY.VIEW', 'lu_PermName_Topic.Reply.View_desc', 'lu_PermName_Topic.Reply.View_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.REPLY.ADD', 'lu_PermName_Topic.Reply.Add_desc', 'lu_PermName_Topic.Reply.Add_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.REPLY.MODIFY', 'lu_PermName_Topic.Reply.Modify_desc', 'lu_PermName_Topic.Reply.Modify_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.RATE', 'lu_PermName_Topic.Rate_desc', 'lu_PermName_Topic.Rate_desc', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.REVIEW', 'lu_PermName_Topic.Review_desc', 'lu_PermName_Topic.Review_desc', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.REPLY.OWNER.MODIFY', 'lu_PermName_Topic.Reply.Owner.Modify_desc', 'lu_PermName_Topic.Reply.Owner.Modify_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.REPLY.OWNER.DELETE', 'lu_PermName_Topic.Reply.Owner.Delete_desc', 'lu_PermName_Topic.Reply.Owner.Delete_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.OWNER.DELETE', 'lu_PermName_Topic.Owner.Delete_desc', 'lu_PermName_Topic.Owner.Delete_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.MODIFY.PENDING', 'lu_PermName_Topic.Modify.Pending_desc', 'lu_PermName_Topic.Modify.Pending_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.OWNER.MODIFY.PENDING', 'lu_PermName_Topic.Owner.Modify.Pending_desc', 'lu_PermName_Topic.Owner.Modify.Pending_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.OWNER.MODIFY', 'lu_PermName_Topic.Owner.Modify_desc', 'lu_PermName_Topic.Owner.Modify_error', 'In-Bulletin'); +INSERT INTO PermissionConfig VALUES (DEFAULT, 'TOPIC.LOCK', 'lu_PermName_Topic.Lock_desc', 'lu_PermName_Topic.Lock_error', 'In-Bulletin'); + +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT count(*) FROM <%prefix%>Topic WHERE Status=1', NULL, 'la_prompt_ActiveTopics', 0, 1); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT COUNT(*) AS TotalTopics FROM <%prefix%>Topic', NULL, 'la_prompt_TopicsTotal', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT COUNT(*) AS ActiveTopics FROM <%prefix%>Topic WHERE Status = 1', NULL, 'la_prompt_TopicsActive', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT COUNT(*) AS PendingTopics FROM <%prefix%>Topic WHERE Status = 2', NULL, 'la_prompt_TopicsPending', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT COUNT(*) AS DisabledTopics FROM <%prefix%>Topic WHERE Status = 0', NULL, 'la_prompt_TopicsDisabled', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT COUNT(*) AS NewTopics FROM <%prefix%>Topic WHERE (NewItem = 1) OR ( (UNIX_TIMESTAMP() - CreatedOn) <= <%m:config name="Topic_NewDays"%>*86400 AND (NewItem = 2) )', NULL, 'la_prompt_NewTopics', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT COUNT(*) FROM <%prefix%>Topic WHERE EditorsPick = 1', NULL, 'la_prompt_EditorsPickTopics', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT COUNT(*) AS HotTopics FROM <%prefix%>Topic WHERE (HotItem = 1) OR (Posts >= <%m:config name="Topic_MaxHotNumber"%> AND (HotItem = 2) )', NULL, 'la_prompt_HotTopics', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT COUNT(*) AS PopularTopics FROM <%prefix%>Topic WHERE (PopItem = 1) OR ( (CachedRating >= <%topic:hit_count type="top"%>) AND <%topic:hit_count type="top"%> AND (PopItem = 2) )', NULL, 'la_prompt_PopularTopics', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT <%m:post_format field="AVG(CachedRating)" type="currency" precision="2"%> FROM <%prefix%>Topic WHERE CachedRating > 0', NULL, 'la_prompt_TopicAverageRating', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT MAX(Views) AS MaxTopicHits FROM <%prefix%>Topic', NULL, 'la_prompt_MaxTopicHits', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT MAX(CachedVotesQty) AS MaxTopicVotes FROM <%prefix%>Topic', NULL, 'la_prompt_MaxTopicVotes', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT <%m:post_format field="MAX(CreatedOn)" type="date"%> FROM <%prefix%>Topic', NULL, 'la_prompt_NewestTopicDate', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT <%m:post_format field="MAX(CreatedOn)" type="time"%> FROM <%prefix%>Topic', NULL, 'la_prompt_NewestTopicTime', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT <%m:post_format field="MAX(Modified)" type="date"%> FROM <%prefix%>Topic', NULL, 'la_prompt_LastUpdatedTopicDate', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT <%m:post_format field="MAX(Modified)" type="time"%> FROM <%prefix%>Topic', NULL, 'la_prompt_LastUpdatedTopicTime', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT COUNT(*) FROM <%prefix%>ItemReview WHERE Module = \'<%modules:get_current%>\'', NULL, 'la_prompt_TopicReviews', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT COUNT(*) AS TotalPosts FROM <%prefix%>Posting', NULL, 'la_prompt_PostsTotal', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT <%m:post_format field="MAX(CreatedOn)" type="date"%> FROM <%prefix%>Posting', NULL, 'la_prompt_NewestPostDate', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT <%m:post_format field="MAX(CreatedOn)" type="time"%> FROM <%prefix%>Posting', NULL, 'la_prompt_NewestPostTime', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT <%m:post_format field="MAX(Modified)" type="date"%> FROM <%prefix%>Posting', NULL, 'la_prompt_LastUpdatedPostDate', 0, 2); +INSERT INTO StatItem VALUES (DEFAULT, 'In-Bulletin', 'SELECT <%m:post_format field="MAX(Modified)" type="time"%> FROM <%prefix%>Posting', NULL, 'la_prompt_LastUpdatedPostTime', 0, 2); + +INSERT INTO SearchConfig VALUES ('Topic', 'NotifyOwnerOnChanges', 0, 1, 'lu_fielddesc_topic_notifyowneronchanges', 'lu_field_notifyowneronchanges', 'In-Bulletin', 'la_text_topic', 1, DEFAULT, 0, 'boolean', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'TopicId', 0, 1, 'lu_fielddesc_topic_topicid', 'lu_field_topicid', 'In-Bulletin', 'la_text_topic', 0, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'Priority', 0, 1, 'lu_fielddesc_topic_priority', 'lu_field_priority', 'In-Bulletin', 'la_text_topic', 8, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'OwnerId', 0, 1, 'lu_fielddesc_topic_ownerid', 'lu_field_ownerid', 'In-Bulletin', 'la_text_topic', 9, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'Modified', 0, 1, 'lu_fielddesc_topic_modified', 'lu_field_modified', 'In-Bulletin', 'la_text_topic', 2, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'TopicText', 1, 1, 'lu_fielddesc_topic_topictext', 'lu_field_topictext', 'In-Bulletin', 'la_text_topic', 3, DEFAULT, 1, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'Posts', 0, 1, 'lu_fielddesc_topic_posts', 'lu_field_posts', 'In-Bulletin', 'la_text_topic', 4, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'Views', 0, 1, 'lu_fielddesc_topic_views', 'lu_field_views', 'In-Bulletin', 'la_text_topic', 5, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'EditorsPick', 0, 1, 'lu_fielddesc_topic_editorspick', 'lu_field_editorspick', 'In-Bulletin', 'la_text_topic', 6, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'Status', 0, 1, 'lu_fielddesc_topic_status', 'lu_field_status', 'In-Bulletin', 'la_text_topic', 7, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'ModifiedById', 0, 1, 'lu_fielddesc_topic_modifiedbyid', 'lu_field_modifiedbyid', 'In-Bulletin', 'la_text_topic', 10, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'ResourceId', 0, 1, 'lu_fielddesc_topic_resourceid', 'lu_field_resourceid', 'In-Bulletin', 'la_text_topic', 11, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'TopicType', 0, 1, 'lu_fielddesc_topic_topictype', 'lu_field_topictype', 'In-Bulletin', 'la_text_topic', 12, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'CreatedOn', 0, 1, 'lu_fielddesc_topic_createdon', 'lu_field_createdon', 'In-Bulletin', 'la_text_topic', 13, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'CachedReviewsQty', 0, 1, 'lu_fielddesc_topic_cachedreviewsqty', 'lu_field_cachedreviewsqty', 'In-Bulletin', 'la_text_topic', 14, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'CachedRating', 0, 1, 'lu_fielddesc_topic_cachedrating', 'lu_field_cachedrating', 'In-Bulletin', 'la_text_topic', 15, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'CachedVotesQty', 0, 1, 'lu_fielddesc_topic_cachedvotesqty', 'lu_field_cachedvotesqty', 'In-Bulletin', 'la_text_topic', 16, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'NewItem', 0, 1, 'lu_fielddesc_topic_newitem', 'lu_field_newitem', 'In-Bulletin', 'la_text_topic', 17, DEFAULT, 0, 'boolean', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'PopItem', 0, 1, 'lu_fielddesc_topic_popitem', 'lu_field_popitem', 'In-Bulletin', 'la_text_topic', 18, DEFAULT, 0, 'boolean', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'HotItem', 0, 1, 'lu_fielddesc_topic_hotitem', 'lu_field_hotitem', 'In-Bulletin', 'la_text_topic', 19, DEFAULT, 0, 'boolean', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'PostedBy', 0, 1, 'lu_fielddesc_topic_postedby', 'lu_field_postedby', 'In-Bulletin', 'la_text_topic', 20, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'OrgId', 0, 1, 'lu_fielddesc_topic_orgid', 'lu_field_orgid', 'In-Bulletin', 'la_text_topic', 21, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO SearchConfig VALUES ('Topic', 'LastPostId', 0, 1, 'lu_fielddesc_topic_lastpostid', 'lu_field_lastpostid', 'In-Bulletin', 'la_text_topic', 22, DEFAULT, 0, 'text', NULL, NULL, NULL, NULL, NULL, NULL, NULL); + +INSERT INTO Permissions VALUES (DEFAULT, 'CATEGORY.VIEW', 14, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.VIEW', 14, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.VIEW', 14, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'CATEGORY.VIEW', 12, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'FAVORITES', 12, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.VIEW', 12, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.VIEW', 12, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.ADD', 12, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.OWNER.MODIFY', 12, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.OWNER.DELETE', 12, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.OWNER.DELETE', 12, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.OWNER.MODIFY.PENDING', 12, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.OWNER.MODIFY', 12, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'CATEGORY.VIEW', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'CATEGORY.ADD.PENDING', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'FAVORITES', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.VIEW', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.ADD', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.VIEW', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.ADD', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.RATE', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REVIEW', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.OWNER.MODIFY', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.OWNER.DELETE', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.OWNER.MODIFY', 13, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'CATEGORY.VIEW', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'CATEGORY.ADD', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'CATEGORY.DELETE', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'CATEGORY.MODIFY', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'FAVORITES', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.VIEW', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.ADD', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.DELETE', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.MODIFY', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.DELETE', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.VIEW', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.ADD', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.MODIFY', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.RATE', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REVIEW', 11, 1, 0, {TopicCatId}); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.VIEW', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.ADD', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.ADD.PENDING', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.DELETE', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.MODIFY', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.DELETE', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.VIEW', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.ADD', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.MODIFY', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.RATE', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REVIEW', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.OWNER.MODIFY', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.REPLY.OWNER.DELETE', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.OWNER.DELETE', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.MODIFY.PENDING', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.OWNER.MODIFY.PENDING', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.OWNER.MODIFY', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'TOPIC.LOCK', 15, 0, 0, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:topics.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:setting_folder.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_output.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_output.edit', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_search.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_search.edit', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_censorship.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_censorship.add', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_censorship.edit', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_censorship.delete', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_emoticon.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_emoticon.add', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_emoticon.edit', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_email.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_email.edit', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_custom.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_custom.add', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_custom.edit', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:configuration_custom.delete', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:polls.view', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:polls.add', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:polls.edit', 11, 1, 1, 0); +INSERT INTO Permissions VALUES (DEFAULT, 'in-bulletin:polls.delete', 11, 1, 1, 0); + +#INSERT INTO ImportScripts VALUES (DEFAULT, 'In-Bulletin', 'phpbb', 'phpbb_import', 'phpBB 2.x', 'phpBB', 'user_regular,init_cat', 1, 'db'); + +INSERT INTO CustomField VALUES (DEFAULT, 1, 'bb_ItemTemplate', 'la_fld_cust_bb_ItemTemplate', 0, 'la_title_SystemCF', 'la_fld_cust_bb_ItemTemplate', 'text', NULL, '', 0, 0, 1, 0); + +INSERT INTO Modules VALUES ('In-Bulletin', 'in-bulletin/', 'bb', DEFAULT, 1, 3, 'in-bulletin/', {TopicCatId}, NULL); Property changes on: releases/5.0.2-B1/in-bulletin/install/install_data.sql ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.10 \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install/english.lang =================================================================== --- releases/5.0.2-B1/in-bulletin/install/english.lang (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install/english.lang (revision 12766) @@ -0,0 +1,255 @@ +<LANGUAGES> + <LANGUAGE PackName="English" Encoding="base64"><DATEFORMAT>m/d/Y</DATEFORMAT><TIMEFORMAT>g:i A</TIMEFORMAT><INPUTDATEFORMAT>m/d/Y</INPUTDATEFORMAT><INPUTTIMEFORMAT>g:i:s A</INPUTTIMEFORMAT><DECIMAL>.</DECIMAL><THOUSANDS>,</THOUSANDS><CHARSET>utf-8</CHARSET><DOCS_URL>http://docs.in-portal.org/eng/index.php</DOCS_URL><UNITSYSTEM>2</UNITSYSTEM> + <PHRASES> + <PHRASE Label="la_col_BadWord" Module="In-Bulletin" Type="1">Q2Vuc29yZWQgV29yZA==</PHRASE> + <PHRASE Label="la_col_CommentedByUser" Module="In-Bulletin" Type="1">VXNlcg==</PHRASE> + <PHRASE Label="la_col_KeyStroke" Module="In-Bulletin" Type="1">S2V5IFN0cm9rZQ==</PHRASE> + <PHRASE Label="la_col_LastPostOn" Module="In-Bulletin" Type="1">TGFzdCBQb3N0IE9u</PHRASE> + <PHRASE Label="la_col_ModifiedDate" Module="In-Bulletin" Type="1">RGF0ZS9UaW1l</PHRASE> + <PHRASE Label="la_col_NumberOfDaysActive" Module="In-Bulletin" Type="1">RGF5cyBBY3RpdmU=</PHRASE> + <PHRASE Label="la_col_PollComment" Module="In-Bulletin" Type="1">Q29tbWVudA==</PHRASE> + <PHRASE Label="la_col_PostedBy" Module="In-Bulletin" Type="1">UG9zdGVy</PHRASE> + <PHRASE Label="la_col_Posts" Module="In-Bulletin" Type="1">UmVwbGllcw==</PHRASE> + <PHRASE Label="la_col_Replacement" Module="In-Bulletin" Type="1">UmVwbGFjZW1lbnQ=</PHRASE> + <PHRASE Label="la_col_TopicText" Module="In-Bulletin" Type="1">VG9waWM=</PHRASE> + <PHRASE Label="la_col_Views" Module="In-Bulletin" Type="1">Vmlld3M=</PHRASE> + <PHRASE Label="la_col_VoteCount" Module="In-Bulletin" Type="1">Vm90ZXM=</PHRASE> + <PHRASE Label="la_event_post.add" Module="In-Bulletin" Type="1">UG9zdCBBZGRlZA==</PHRASE> + <PHRASE Label="la_event_post.modify" Module="In-Bulletin" Type="1">UG9zdCBNb2RpZmllZA==</PHRASE> + <PHRASE Label="la_event_topic.add" Module="In-Bulletin" Type="1">VG9waWMgQWRkZWQ=</PHRASE> + <PHRASE Label="la_event_topic.add.pending" Module="In-Bulletin" Type="1">QWRkIFBlbmRpbmcgVG9waWM=</PHRASE> + <PHRASE Label="la_event_topic.approve" Module="In-Bulletin" Type="1">QXBwcm92ZSBUb3BpYw==</PHRASE> + <PHRASE Label="la_event_topic.modify" Module="In-Bulletin" Type="1">TW9kaWZ5IFRvcGlj</PHRASE> + <PHRASE Label="la_event_topic.modify.pending" Module="In-Bulletin" Type="1">VG9waWMgTW9kaWZpY2F0aW9ucyBQZW5kaW5n</PHRASE> + <PHRASE Label="la_fld_AllowComments" Module="In-Bulletin" Type="1">QWxsb3cgQ29tbWVudHM=</PHRASE> + <PHRASE Label="la_fld_AllowMultipleVotings" Module="In-Bulletin" Type="1">QWxsb3cgTXVsdGlwbGUgVm90aW5ncw==</PHRASE> + <PHRASE Label="la_fld_BadWord" Module="In-Bulletin" Type="1">Q2Vuc29yZWQgV29yZA==</PHRASE> + <PHRASE Label="la_fld_cust_bb_ItemTemplate" Module="In-Bulletin" Type="1">VG9waWNzIEl0ZW0gVGVtcGxhdGU=</PHRASE> + <PHRASE Label="la_fld_EndDate" Module="In-Bulletin" Type="1">RW5kIERhdGU=</PHRASE> + <PHRASE Label="la_fld_Image" Module="In-Bulletin" Type="1">SW1hZ2U=</PHRASE> + <PHRASE Label="la_fld_KeyStroke" Module="In-Bulletin" Type="1">S2V5IFN0cm9rZQ==</PHRASE> + <PHRASE Label="la_fld_PollAnswer" Module="In-Bulletin" Type="1">QW5zd2Vy</PHRASE> + <PHRASE Label="la_fld_PollComment" Module="In-Bulletin" Type="1">Q29tbWVudA==</PHRASE> + <PHRASE Label="la_fld_PollGuestEmail" Module="In-Bulletin" Type="1">R3Vlc3QgRW1haWw=</PHRASE> + <PHRASE Label="la_fld_PollGuestName" Module="In-Bulletin" Type="1">R3Vlc3QgTmFtZQ==</PHRASE> + <PHRASE Label="la_fld_PostedBy" Module="In-Bulletin" Type="1">UG9zdGVkIEJ5</PHRASE> + <PHRASE Label="la_fld_Question" Module="In-Bulletin" Type="1">UXVlc3Rpb24=</PHRASE> + <PHRASE Label="la_fld_Replacement" Module="In-Bulletin" Type="1">UmVwbGFjZW1lbnQ=</PHRASE> + <PHRASE Label="la_fld_RequireLogin" Module="In-Bulletin" Type="1">UmVxdWlyZSBMb2dpbg==</PHRASE> + <PHRASE Label="la_fld_TopicType" Module="In-Bulletin" Type="1">VG9waWMgTG9ja2Vk</PHRASE> + <PHRASE Label="la_fld_Topic_MaxHotNumber" Module="In-Bulletin" Type="1">TWF4aW11bSBudW1iZXIgb2YgSE9UIHRvcGljcw==</PHRASE> + <PHRASE Label="la_fld_Topic_MinPopRating" Module="In-Bulletin" Type="1">TWluaW11bSByYXRpbmcgdG8gY29uc2lkZXIgdG9waWMgUE9Q</PHRASE> + <PHRASE Label="la_fld_Topic_MinPopVotes" Module="In-Bulletin" Type="1">TWluaW11bSBudW1iZXIgb2YgcG9zdHMgdG8gY29uc2lkZXIgdG9waWMgUE9Q</PHRASE> + <PHRASE Label="la_fld_Views" Module="In-Bulletin" Type="1">Vmlld3M=</PHRASE> + <PHRASE Label="la_In-bulletin" Module="In-Bulletin" Type="1">SW4tQnVsbGV0aW4=</PHRASE> + <PHRASE Label="la_ItemTab_Topics" Module="In-Bulletin" Type="1">VG9waWNz</PHRASE> + <PHRASE Label="la_opt_LastPoster" Module="In-Bulletin" Type="1">TGFzdCBQb3N0ZXI=</PHRASE> + <PHRASE Label="la_opt_LastUpdated" Module="In-Bulletin" Type="1">TGFzdCBVcGRhdGVk</PHRASE> + <PHRASE Label="la_opt_NumberOfPosts" Module="In-Bulletin" Type="1">TnVtYmVyIG9mIFBvc3Rz</PHRASE> + <PHRASE Label="la_opt_TopicText" Module="In-Bulletin" Type="1">VG9waWMgVGV4dA==</PHRASE> + <PHRASE Label="la_opt_TopicViews" Module="In-Bulletin" Type="1">VG9waWMgVmlld3M=</PHRASE> + <PHRASE Label="la_posts_newdays_prompt" Module="In-Bulletin" Type="1">TmV3IHBvc3RzIChkYXlzKQ==</PHRASE> + <PHRASE Label="la_posts_perpage_prompt" Module="In-Bulletin" Type="1">TnVtYmVyIG9mIHBvc3RzIHBlciBwYWdl</PHRASE> + <PHRASE Label="la_posts_subheading" Module="In-Bulletin" Type="1">UG9zdHM=</PHRASE> + <PHRASE Label="la_prompt_ActiveTopics" Module="In-Bulletin" Type="1">QWN0aXZlIFRvcGljcw==</PHRASE> + <PHRASE Label="la_prompt_DupPollComments" Module="In-Bulletin" Type="1">QWxsb3cgRHVwbGljYXRlIENvbW1lbnRz</PHRASE> + <PHRASE Label="la_prompt_EditorsPickTopics" Module="In-Bulletin" Type="1">RWRpdG9yIFBpY2sgVG9waWNz</PHRASE> + <PHRASE Label="la_prompt_HotTopics" Module="In-Bulletin" Type="1">SG90IFRvcGljcw==</PHRASE> + <PHRASE Label="la_prompt_LastUpdatedPostDate" Module="In-Bulletin" Type="1">TGFzdCBVcGRhdGVkIFBvc3QgRGF0ZQ==</PHRASE> + <PHRASE Label="la_prompt_LastUpdatedPostTime" Module="In-Bulletin" Type="1">TGFzdCBVcGRhdGVkIFBvc3QgVGltZQ==</PHRASE> + <PHRASE Label="la_prompt_LastUpdatedTopicDate" Module="In-Bulletin" Type="1">TGFzdCBVcGRhdGVkIFRvcGljIERhdGU=</PHRASE> + <PHRASE Label="la_prompt_LastUpdatedTopicTime" Module="In-Bulletin" Type="1">TGFzdCBVcGRhdGVkIFRvcGljIFRpbWU=</PHRASE> + <PHRASE Label="la_prompt_MaxTopicHits" Module="In-Bulletin" Type="1">VG9waWMgTWF4aW11bSBIaXRz</PHRASE> + <PHRASE Label="la_prompt_MaxTopicVotes" Module="In-Bulletin" Type="1">VG9waWMgTWF4aW11bSBWb3Rlcw==</PHRASE> + <PHRASE Label="la_prompt_NewestPostDate" Module="In-Bulletin" Type="1">TmV3ZXN0IFBvc3QgRGF0ZQ==</PHRASE> + <PHRASE Label="la_prompt_NewestPostTime" Module="In-Bulletin" Type="1">TmV3ZXN0IFBvc3QgVGltZQ==</PHRASE> + <PHRASE Label="la_prompt_NewestTopicDate" Module="In-Bulletin" Type="1">TmV3ZXN0IFRvcGljIERhdGU=</PHRASE> + <PHRASE Label="la_prompt_NewestTopicTime" Module="In-Bulletin" Type="1">TmV3ZXN0IFRvcGljIFRpbWU=</PHRASE> + <PHRASE Label="la_prompt_NewTopics" Module="In-Bulletin" Type="1">TmV3IFRvcGljcw==</PHRASE> + <PHRASE Label="la_prompt_PopularTopics" Module="In-Bulletin" Type="1">UG9wdWxhciBUb3BpY3M=</PHRASE> + <PHRASE Label="la_prompt_PostsToLock" Module="In-Bulletin" Type="1">UG9zdHMgdG8gbG9jaw==</PHRASE> + <PHRASE Label="la_prompt_PostsTotal" Module="In-Bulletin" Type="1">VG90YWwgUG9zdHM=</PHRASE> + <PHRASE Label="la_prompt_TopicAverageRating" Module="In-Bulletin" Type="1">VG9waWNzIEF2ZXJhZ2UgUmF0aW5n</PHRASE> + <PHRASE Label="la_prompt_TopicReviews" Module="In-Bulletin" Type="1">VG90YWwgVG9waWMgQ29tbWVudHM=</PHRASE> + <PHRASE Label="la_prompt_TopicsActive" Module="In-Bulletin" Type="1">QWN0aXZlIFRvcGljcw==</PHRASE> + <PHRASE Label="la_prompt_TopicsDisabled" Module="In-Bulletin" Type="1">RGlzYWJsZWQgVG9waWNz</PHRASE> + <PHRASE Label="la_prompt_TopicsPending" Module="In-Bulletin" Type="1">UGVuZGluZyBUb3BpY3M=</PHRASE> + <PHRASE Label="la_prompt_TopicsTotal" Module="In-Bulletin" Type="1">VG90YWwgVG9waWNz</PHRASE> + <PHRASE Label="la_prompt_TopicsUsers" Module="In-Bulletin" Type="1">VG90YWwgVXNlcnMgd2l0aCBUb3BpY3M=</PHRASE> + <PHRASE Label="la_section_Topic" Module="In-Bulletin" Type="1">VG9waWM=</PHRASE> + <PHRASE Label="la_tab_ConfigCensorship" Module="In-Bulletin" Type="1">Q2Vuc29yc2hpcA==</PHRASE> + <PHRASE Label="la_tab_ConfigSmileys" Module="In-Bulletin" Type="1">U21pbGV5cw==</PHRASE> + <PHRASE Label="la_tab_PollAnswers" Module="In-Bulletin" Type="1">QW5zd2Vycw==</PHRASE> + <PHRASE Label="la_tab_PollUserComments" Module="In-Bulletin" Type="1">VXNlciBDb21tZW50cw==</PHRASE> + <PHRASE Label="la_tab_Topics" Module="In-Bulletin" Type="1">VG9waWNz</PHRASE> + <PHRASE Label="la_Text_Polls" Module="In-Bulletin" Type="1">UG9sbCBTZXR0aW5ncw==</PHRASE> + <PHRASE Label="la_Text_Topic" Module="In-Bulletin" Type="1">VG9waWM=</PHRASE> + <PHRASE Label="la_Text_Topics" Module="In-Bulletin" Type="1">VG9waWNz</PHRASE> + <PHRASE Label="la_title_AddingCensorship" Module="In-Bulletin" Type="1">QWRkaW5nIENlbnNvcnNoaXA=</PHRASE> + <PHRASE Label="la_title_AddingSmiley" Module="In-Bulletin" Type="1">QWRkaW5nIFNtaWxleQ==</PHRASE> + <PHRASE Label="la_title_AddingTopic" Module="In-Bulletin" Type="1">QWRkaW5nIFRvcGlj</PHRASE> + <PHRASE Label="la_title_Adding_Answer" Module="In-Bulletin" Type="1">QWRkaW5nIEFuc3dlcg==</PHRASE> + <PHRASE Label="la_title_Adding_Comment" Module="In-Bulletin" Type="1">QWRkaW5nIENvbW1lbnQ=</PHRASE> + <PHRASE Label="la_title_Adding_Poll" Module="In-Bulletin" Type="1">QWRkaW5nIFBvbGw=</PHRASE> + <PHRASE Label="la_title_EditingCensorship" Module="In-Bulletin" Type="1">RWRpdGluZyBDZW5zb3JzaGlw</PHRASE> + <PHRASE Label="la_title_EditingSmiley" Module="In-Bulletin" Type="1">RWRpdGluZyBTbWlsZXk=</PHRASE> + <PHRASE Label="la_title_EditingTopic" Module="In-Bulletin" Type="1">RWRpdGluZyBUb3BpYw==</PHRASE> + <PHRASE Label="la_title_Editing_Answer" Module="In-Bulletin" Type="1">RWRpdGluZyBBbnN3ZXI=</PHRASE> + <PHRASE Label="la_title_Editing_Comment" Module="In-Bulletin" Type="1">RWRpdGluZyBDb21tZW50</PHRASE> + <PHRASE Label="la_title_Editing_Poll" Module="In-Bulletin" Type="1">RWRpdGluZyBQb2xs</PHRASE> + <PHRASE Label="la_title_In-Bulletin" Module="In-Bulletin" Type="1">VG9waWNz</PHRASE> + <PHRASE Label="la_title_NewPoll" Module="In-Bulletin" Type="1">TmV3IFBvbGw=</PHRASE> + <PHRASE Label="la_title_NewTopic" Module="In-Bulletin" Type="1">TmV3IFRvcGlj</PHRASE> + <PHRASE Label="la_title_PollAnswers" Module="In-Bulletin" Type="1">UG9sbCBBbnN3ZXJz</PHRASE> + <PHRASE Label="la_title_PollComments" Module="In-Bulletin" Type="1">VXNlciBDb21tZW50cw==</PHRASE> + <PHRASE Label="la_title_Polls" Module="In-Bulletin" Type="1">UG9sbHM=</PHRASE> + <PHRASE Label="la_title_Topics" Module="In-Bulletin" Type="1">VG9waWNz</PHRASE> + <PHRASE Label="la_ToolTip_NewPoll" Module="In-Bulletin" Type="1">TmV3IFBvbGw=</PHRASE> + <PHRASE Label="la_ToolTip_NewTopic" Module="In-Bulletin" Type="1">TmV3IFRvcGlj</PHRASE> + <PHRASE Label="la_ToolTip_New_Answer" Module="In-Bulletin" Type="1">TmV3IEFuc3dlcg==</PHRASE> + <PHRASE Label="la_ToolTip_New_Comment" Module="In-Bulletin" Type="1">TmV3IENvbW1lbnQ=</PHRASE> + <PHRASE Label="la_ToolTip_ResetVotes" Module="In-Bulletin" Type="1">UmVzZXQgVm90ZXM=</PHRASE> + <PHRASE Label="la_topic_editorpicksabove_prompt" Module="In-Bulletin" Type="1">RGlzcGxheSBlZGl0b3IgcGlja3MgYWJvdmUgcmVndWxhciB0b3BpY3M=</PHRASE> + <PHRASE Label="la_topic_newdays_prompt" Module="In-Bulletin" Type="1">TmV3IFRvcGljcyAoRGF5cyk=</PHRASE> + <PHRASE Label="la_topic_perpage_prompt" Module="In-Bulletin" Type="1">TnVtYmVyIG9mIHRvcGljcyBwZXIgcGFnZQ==</PHRASE> + <PHRASE Label="la_topic_perpage_short_prompt" Module="In-Bulletin" Type="1">VG9waWNzIFBlciBQYWdlIChTaG9ydGxpc3Qp</PHRASE> + <PHRASE Label="la_topic_sortfield2_prompt" Module="In-Bulletin" Type="1">QW5kIHRoZW4gYnk=</PHRASE> + <PHRASE Label="la_topic_sortfield_prompt" Module="In-Bulletin" Type="1">U29ydCB0b3BpY3MgYnk=</PHRASE> + <PHRASE Label="lu_btn_DeletePost" Module="In-Bulletin" Type="0">RGVsZXRlIFBvc3Q=</PHRASE> + <PHRASE Label="lu_btn_LockTopic" Module="In-Bulletin" Type="0">TG9jayBUb3BpYw==</PHRASE> + <PHRASE Label="lu_btn_ModifyPost" Module="In-Bulletin" Type="0">TW9kaWZ5IFBvc3Q=</PHRASE> + <PHRASE Label="lu_btn_NewPrivateMessage" Module="In-Bulletin" Type="0">TmV3IFByaXZhdGUgTWVzc2FnZQ==</PHRASE> + <PHRASE Label="lu_btn_newtopic" Module="In-Bulletin" Type="0">TmV3IHRvcGlj</PHRASE> + <PHRASE Label="lu_btn_RateThisTopic" Module="In-Bulletin" Type="0">UmF0ZSBUb3BpYw==</PHRASE> + <PHRASE Label="lu_btn_Reply" Module="In-Bulletin" Type="0">UmVwbHk=</PHRASE> + <PHRASE Label="lu_btn_ReplyQuoted" Module="In-Bulletin" Type="0">UmVwbHkgUXVvdGVk</PHRASE> + <PHRASE Label="lu_btn_SendMessage" Module="In-Bulletin" Type="0">U2VuZCBQcml2YXRlIE1lc3NhZ2U=</PHRASE> + <PHRASE Label="lu_btn_UnlockTopic" Module="In-Bulletin" Type="0">VW5sb2NrIFRvcGlj</PHRASE> + <PHRASE Label="lu_btn_Vote" Module="In-Bulletin" Type="0">Vm90ZQ==</PHRASE> + <PHRASE Label="lu_col_Author" Module="In-Bulletin" Type="0">QXV0aG9y</PHRASE> + <PHRASE Label="lu_col_Created" Module="In-Bulletin" Type="0">RGF0ZQ==</PHRASE> + <PHRASE Label="lu_col_Forums" Module="In-Bulletin" Type="0">Rm9ydW1z</PHRASE> + <PHRASE Label="lu_col_FromName" Module="In-Bulletin" Type="0">RnJvbQ==</PHRASE> + <PHRASE Label="lu_col_LastPost" Module="In-Bulletin" Type="0">TGFzdCBQb3N0</PHRASE> + <PHRASE Label="lu_col_Poster" Module="In-Bulletin" Type="0">UG9zdGVy</PHRASE> + <PHRASE Label="lu_col_Posts" Module="In-Bulletin" Type="0">UG9zdHM=</PHRASE> + <PHRASE Label="lu_col_Replies" Module="In-Bulletin" Type="0">UmVwbGllcw==</PHRASE> + <PHRASE Label="lu_col_Subject" Module="In-Bulletin" Type="0">U3ViamVjdA==</PHRASE> + <PHRASE Label="lu_col_ToName" Module="In-Bulletin" Type="0">VG8=</PHRASE> + <PHRASE Label="lu_col_Topics" Module="In-Bulletin" Type="0">VG9waWNz</PHRASE> + <PHRASE Label="lu_DeletePostConfirm" Module="In-Bulletin" Type="0">QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgcG9zdD8NClRoaXMgYWN0aW9uIGNhbm5vdCBiZSB1bmRvbmUu</PHRASE> + <PHRASE Label="lu_DeletePrivateMessageConfirm" Module="In-Bulletin" Type="0">QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgcHJpdmF0ZSBtZXNzYWdlPyBUaGlzIGFjdGlvbiBjYW5ub3QgYmUgdW5kb25lLg==</PHRASE> + <PHRASE Label="lu_DeleteTopicConfirm" Module="In-Bulletin" Type="0">QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgdG9waWM/IFRoaXMgYWN0aW9uIGNhbm5vdCBiZSB1bmRvbmUu</PHRASE> + <PHRASE Label="lu_description_MyTopics" Module="In-Bulletin" Type="0">TWFuYWdlIHlvdXIgVG9waWNzIGhlcmU=</PHRASE> + <PHRASE Label="lu_field_lastpostid" Module="In-Bulletin" Type="2">TGFzdCBQb3N0IElE</PHRASE> + <PHRASE Label="lu_field_postedby" Module="In-Bulletin" Type="2">UG9zdGVkIEJ5</PHRASE> + <PHRASE Label="lu_field_posts" Module="In-Bulletin" Type="0">VG9waWMgUG9zdHM=</PHRASE> + <PHRASE Label="lu_field_topicid" Module="In-Bulletin" Type="2">VG9waWMgSUQ=</PHRASE> + <PHRASE Label="lu_field_topictext" Module="In-Bulletin" Type="2">VG9waWMgVGV4dA==</PHRASE> + <PHRASE Label="lu_field_topictype" Module="In-Bulletin" Type="0">VG9waWMgVHlwZQ==</PHRASE> + <PHRASE Label="lu_fld_Author" Module="In-Bulletin" Type="0">QXV0aG9y</PHRASE> + <PHRASE Label="lu_fld_DisableBBCodes" Module="In-Bulletin" Type="0">RElzYWJsZSBCQiBjb2Rlcw==</PHRASE> + <PHRASE Label="lu_fld_DisableSmileys" Module="In-Bulletin" Type="0">RGlzYWJsZSBzbWlsZXlz</PHRASE> + <PHRASE Label="lu_fld_EnableBBCodes" Module="In-Bulletin" Type="0">RW5hYmxlIEJCIENvZGVz</PHRASE> + <PHRASE Label="lu_fld_EnableSmileys" Module="In-Bulletin" Type="0">RW5hYmxlIFNtaWxleXM=</PHRASE> + <PHRASE Label="lu_fld_From" Module="In-Bulletin" Type="0">RnJvbQ==</PHRASE> + <PHRASE Label="lu_fld_MessageBody" Module="In-Bulletin" Type="0">TWVzc2FnZQ==</PHRASE> + <PHRASE Label="lu_fld_MySignature" Module="In-Bulletin" Type="0">U2lnbmF0dXJl</PHRASE> + <PHRASE Label="lu_fld_NotifyOnPrivateMessages" Module="In-Bulletin" Type="0">Tm90aWZ5IGFib3V0IFByaXZhdGUgTWVzc2FnZXM=</PHRASE> + <PHRASE Label="lu_fld_NotifyOwnerOnChanges" Module="In-Bulletin" Type="0">Tm90aWZ5IG1lIGFib3V0IHJlcGxpZXM=</PHRASE> + <PHRASE Label="lu_fld_PostsPerPage" Module="In-Bulletin" Type="0">UG9zdHMgcGVyIHBhZ2U=</PHRASE> + <PHRASE Label="lu_fld_ShowOtherSignatures" Module="In-Bulletin" Type="0">U2hvdyBTaWduYXR1cmVz</PHRASE> + <PHRASE Label="lu_fld_ShowSignatures" Module="In-Bulletin" Type="0">U2hvdyBzaWduYXR1cmU=</PHRASE> + <PHRASE Label="lu_fld_Subject" Module="In-Bulletin" Type="0">U3ViamVjdA==</PHRASE> + <PHRASE Label="lu_fld_To" Module="In-Bulletin" Type="0">VG8=</PHRASE> + <PHRASE Label="lu_fld_TopicsPerPage" Module="In-Bulletin" Type="0">VG9waWNzIHBlciBwYWdl</PHRASE> + <PHRASE Label="lu_folder_Sent" Module="In-Bulletin" Type="0">U2VudA==</PHRASE> + <PHRASE Label="lu_forums" Module="In-Bulletin" Type="0">Rm9ydW1z</PHRASE> + <PHRASE Label="lu_forum_locked_for_posting" Module="In-Bulletin" Type="0">Rm9ydW0gaXMgbG9ja2VkIGZvciBwb3N0aW5n</PHRASE> + <PHRASE Label="lu_LockedTopic" Module="In-Bulletin" Type="0">TG9ja2VkIFRvcGlj</PHRASE> + <PHRASE Label="lu_MessageCreated" Module="In-Bulletin" Type="0">RGF0ZQ==</PHRASE> + <PHRASE Label="lu_MyTopics" Module="In-Bulletin" Type="0">TXkgVG9waWNz</PHRASE> + <PHRASE Label="lu_NewTopic" Module="In-Bulletin" Type="0">TmV3IFRvcGlj</PHRASE> + <PHRASE Label="lu_newtopic_confirm_pending_text" Module="In-Bulletin" Type="0">VGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG11c3QgYXBwcm92ZSB5b3VyIHRvcGljIGJlZm9yZSBpdCBpcyBwdWJsaWNseSBhdmFpbGFibGUu</PHRASE> + <PHRASE Label="lu_newtopic_confirm_text" Module="In-Bulletin" Type="0">VGhlIFRvcGljIHlvdSBoYXZlIGNyZWF0ZWQgaGFzIGJlZW4gYWRkZWQgdG8gdGhlIHN5c3RlbQ==</PHRASE> + <PHRASE Label="lu_new_posts" Module="In-Bulletin" Type="0">Rm9ydW0gaGFzIG5ldyBwb3N0cw==</PHRASE> + <PHRASE Label="lu_NoPrivateMessages" Module="In-Bulletin" Type="0">Tm8gbWVzc2FnZXM=</PHRASE> + <PHRASE Label="lu_NoSubject" Module="In-Bulletin" Type="0">bm8gc3ViamVjdA==</PHRASE> + <PHRASE Label="lu_NoTopics" Module="In-Bulletin" Type="0">Tm8gVG9waWNz</PHRASE> + <PHRASE Label="lu_no_new_posts" Module="In-Bulletin" Type="0">Rm9ydW0gaGFzIG5vIG5ldyBwb3N0cw==</PHRASE> + <PHRASE Label="lu_opt_MessageRead" Module="In-Bulletin" Type="0">UmVhZA==</PHRASE> + <PHRASE Label="lu_opt_MessageReplied" Module="In-Bulletin" Type="0">UmVwbGllZA==</PHRASE> + <PHRASE Label="lu_opt_MessageSent" Module="In-Bulletin" Type="0">U2VudA==</PHRASE> + <PHRASE Label="lu_opt_MessageUnread" Module="In-Bulletin" Type="0">VW5yZWFk</PHRASE> + <PHRASE Label="lu_opt_MessageViewed" Module="In-Bulletin" Type="0">Vmlld2Vk</PHRASE> + <PHRASE Label="lu_PermName_Topic.Add.Pending_desc" Module="In-Bulletin" Type="0">QWRkIFBlbmRpbmcgVG9waWM=</PHRASE> + <PHRASE Label="lu_PermName_Topic.Add_desc" Module="In-Bulletin" Type="0">QWRkIFRvcGlj</PHRASE> + <PHRASE Label="lu_PermName_Topic.Delete_desc" Module="In-Bulletin" Type="0">RGVsZXRlIFRvcGlj</PHRASE> + <PHRASE Label="lu_PermName_Topic.Lock_desc" Module="In-Bulletin" Type="1">TG9jay9VbmxvY2sgVG9waWNz</PHRASE> + <PHRASE Label="lu_PermName_Topic.Modify.Pending_desc" Module="In-Bulletin" Type="1">TW9kaWZ5IFRvcGljIFBlbmRpbmc=</PHRASE> + <PHRASE Label="lu_PermName_Topic.Modify_desc" Module="In-Bulletin" Type="0">TW9kaWZ5IFRvcGlj</PHRASE> + <PHRASE Label="lu_PermName_Topic.Owner.Delete_desc" Module="In-Bulletin" Type="1">VG9waWMgT3duZXIgRGVsZXRl</PHRASE> + <PHRASE Label="lu_PermName_Topic.Owner.Modify.Pending_desc" Module="In-Bulletin" Type="1">T3duZXIgTW9kaWZ5IFRvcGljIFBlbmRpbmc=</PHRASE> + <PHRASE Label="lu_PermName_Topic.Owner.Modify_desc" Module="In-Bulletin" Type="1">VG9waWMgT3duZXIgTW9kaWZ5</PHRASE> + <PHRASE Label="lu_PermName_Topic.Rate_desc" Module="In-Bulletin" Type="0">UmF0ZSBUb3BpYw==</PHRASE> + <PHRASE Label="lu_PermName_Topic.Reply.Add_desc" Module="In-Bulletin" Type="0">QWRkIFRvcGljIFJlcGx5</PHRASE> + <PHRASE Label="lu_PermName_Topic.Reply.Delete_desc" Module="In-Bulletin" Type="0">RGVsZXRlIFRvcGlj</PHRASE> + <PHRASE Label="lu_PermName_Topic.Reply.Modify_desc" Module="In-Bulletin" Type="0">UmVwbHkgVG9waWMgTW9kaWZ5</PHRASE> + <PHRASE Label="lu_PermName_Topic.Reply.Owner.Delete_desc" Module="In-Bulletin" Type="1">UG9zdCBPd25lciBEZWxldGU=</PHRASE> + <PHRASE Label="lu_PermName_Topic.Reply.Owner.Modify_desc" Module="In-Bulletin" Type="1">UG9zdCBPd25lciBNb2RpZnk=</PHRASE> + <PHRASE Label="lu_PermName_Topic.Reply.View_desc" Module="In-Bulletin" Type="0">VmlldyBUb3BpYyBSZXBseQ==</PHRASE> + <PHRASE Label="lu_PermName_Topic.Review_desc" Module="In-Bulletin" Type="1">Q29tbWVudCBUb3BpYw==</PHRASE> + <PHRASE Label="lu_PermName_Topic.View_desc" Module="In-Bulletin" Type="0">VmlldyBUb3BpYw==</PHRASE> + <PHRASE Label="lu_posted" Module="In-Bulletin" Type="0">UG9zdGVk</PHRASE> + <PHRASE Label="lu_posts" Module="In-Bulletin" Type="0">cG9zdHM=</PHRASE> + <PHRASE Label="lu_PrivateMessages" Module="In-Bulletin" Type="0">UHJpdmF0ZSBNZXNzYWdlcw==</PHRASE> + <PHRASE Label="lu_tab_Forums" Module="In-Bulletin" Type="0">Rm9ydW1z</PHRASE> + <PHRASE Label="lu_text_AlreadyVoted" Module="In-Bulletin" Type="0">QWxyZWFkeSB2b3RlZCE=</PHRASE> + <PHRASE Label="lu_text_GuestsLoginToVote" Module="In-Bulletin" Type="0">UGxlYXNlIGxvZ2luIHRvIHZvdGUh</PHRASE> + <PHRASE Label="lu_text_modifytopicconfirm" Module="In-Bulletin" Type="0">VGhhbmsgeW91IGZvciB1cGRhdGluZyB5b3VyIHRvcGljLg==</PHRASE> + <PHRASE Label="lu_text_modifytopicpendingconfirm" Module="In-Bulletin" Type="0">VGhhbmsgeW91IGZvciB1cGRhdGluZyB5b3VyIHRvcGljLiBZb3VyIG1vZGlmaWNhdGlvbnMgYXJlIHBlbmRpbmcgZm9yIGFkbWluaXN0cmF0aXZlIGFwcHJvdmFsLg==</PHRASE> + <PHRASE Label="lu_text_MyTopics" Module="In-Bulletin" Type="0">TXkgVG9waWNz</PHRASE> + <PHRASE Label="lu_text_nomodifytopicpermission" Module="In-Bulletin" Type="0">Tm8gcGVybWlzc2lvbnMgdG8gbW9kaWZ5IHRoaXMgdG9waWM=</PHRASE> + <PHRASE Label="lu_text_nonewtopicpermission" Module="In-Bulletin" Type="0">Tm8gcGVybWlzc2lvbnMgdG8gc3VibWl0IGEgbmV3IHRvcGljIGludG8gdGhlIGN1cnJlbnQgY2F0ZWdvcnku</PHRASE> + <PHRASE Label="lu_text_nonewtopicreplypermission" Module="In-Bulletin" Type="0">Tm8gcGVybWlzc2lvbnMgdG8gcmVwbHkgaW4gdGhpcyB0b3BpYw==</PHRASE> + <PHRASE Label="lu_text_notopicpostmodifypermission" Module="In-Bulletin" Type="0">Tm8gcGVybWlzc2lvbnMgdG8gbW9kaWZ5IHRoaXMgcG9zdC4=</PHRASE> + <PHRASE Label="lu_text_notopicreplyviewpermission" Module="In-Bulletin" Type="0">Tm8gcGVybWlzc2lvbnMgdG8gdmlldyByZXBsaWVzIGZvciB0aGlzIHRvcGljLg==</PHRASE> + <PHRASE Label="lu_title_AddComment" Module="In-Bulletin" Type="0">QWRkaW5nIENvbW1lbnQ=</PHRASE> + <PHRASE Label="lu_title_addprivatemessageconfirm" Module="In-Bulletin" Type="0">UHJpdmF0ZSBNZXNzYWdlIFNlbnQ=</PHRASE> + <PHRASE Label="lu_title_addtopicconfirm" Module="In-Bulletin" Type="0">TmV3IFRvcGljIEFkZGVk</PHRASE> + <PHRASE Label="lu_title_addtopicpendingconfirm" Module="In-Bulletin" Type="0">TmV3IFRvcGljIFBlbmRpbmc=</PHRASE> + <PHRASE Label="lu_title_favoritetopics" Module="In-Bulletin" Type="0">RmF2b3JpdGUgVG9waWNz</PHRASE> + <PHRASE Label="lu_title_ModifyTopicConfirm" Module="In-Bulletin" Type="0">VG9waWMgTW9kaWZpY2F0aW9uIENvbmZpcm1hdGlvbg==</PHRASE> + <PHRASE Label="lu_title_ModifyTopicPendingConfirm" Module="In-Bulletin" Type="0">VG9waWMgUGVuZGluZyBNb2RpZmljYXRpb24gQ29uZmlybWF0aW9u</PHRASE> + <PHRASE Label="lu_title_NewPrivateMessage" Module="In-Bulletin" Type="0">TmV3IFByaXZhdGUgTWVzc2FnZQ==</PHRASE> + <PHRASE Label="lu_title_NewTopic" Module="In-Bulletin" Type="0">TmV3IFRvcGlj</PHRASE> + <PHRASE Label="lu_title_NewTopicReply" Module="In-Bulletin" Type="0">UG9zdCBSZXBseQ==</PHRASE> + <PHRASE Label="lu_title_Polls" Module="In-Bulletin" Type="0">UG9sbHM=</PHRASE> + <PHRASE Label="lu_title_PrivateMessageDetails" Module="In-Bulletin" Type="0">UHJpdmF0ZSBNZXNzYWdlIERldGFpbHM=</PHRASE> + <PHRASE Label="lu_title_PrivateMessages" Module="In-Bulletin" Type="0">UHJpdmF0ZSBNZXNzYWdlcw==</PHRASE> + <PHRASE Label="lu_title_TopicPostModify" Module="In-Bulletin" Type="0">TW9kaWZ5IFBvc3Q=</PHRASE> + <PHRASE Label="lu_title_TopicPosts" Module="In-Bulletin" Type="0">VG9waWMgUG9zdHM=</PHRASE> + <PHRASE Label="lu_title_Topics" Module="In-Bulletin" Type="0">VG9waWNz</PHRASE> + <PHRASE Label="lu_title_topicsearchresults" Module="In-Bulletin" Type="0">VG9waWMgU2VhcmNoIFJlc3VsdHM=</PHRASE> + <PHRASE Label="lu_title_ViewComments" Module="In-Bulletin" Type="0">VmlldyBDb21tZW50cw==</PHRASE> + <PHRASE Label="lu_topics" Module="In-Bulletin" Type="0">VG9waWNz</PHRASE> + <PHRASE Label="lu_topicsupdated" Module="In-Bulletin" Type="0">TGFzdCB1cGRhdGVk</PHRASE> + <PHRASE Label="lu_totaltopics" Module="In-Bulletin" Type="0">VG90YWwgdG9waWNz</PHRASE> + </PHRASES> + <EVENTS> + <EVENT MessageType="html" Event="PM.ADD" Type="0">U3ViamVjdDogTmV3IFByaXZhdGUgTWVzc2FnZQoKWW91IGhhdmUgYSBuZXcgcHJpdmF0ZSBtZXNzYWdlIGhhcyBhcnJpdmVkLg==</EVENT> + <EVENT MessageType="html" Event="POST.ADD" Type="0">U3ViamVjdDogTmV3IFRvcGljIFJlcGx5IGhhcyBiZWVuIGFkZGVkCgpOZXcgcmVwbHkgaGFzIGJlZW4gYWRkZWQgdG8gb25lIG9mIHlvdXIgdG9waWNzOiA8YSBocmVmPSI8aW5wMjpiYl9Ub3BpY0xpbmsgdGVtcGxhdGU9Il9fZGVmYXVsdF9fIi8+Ij48aW5wMjpiYl9GaWVsZCBuYW1lPSJUb3BpY1RleHQiLz48L2E+</EVENT> + <EVENT MessageType="html" Event="POST.ADD" Type="1">U3ViamVjdDogTmV3IFRvcGljIFJlcGx5IGhhcyBiZWVuIEFkZGVkCgpOZXcgcmVwbHkgaGFzIGJlZW4gYWRkZWQgdG8gdGhlIFRvcGljOiAgPGEgaHJlZj0iPGlucDI6YmJfVG9waWNMaW5rIHRlbXBsYXRlPSJfX2RlZmF1bHRfXyIvPiI+PGlucDI6YmJfRmllbGQgbmFtZT0iVG9waWNUZXh0Ii8+PC9hPg==</EVENT> + <EVENT MessageType="html" Event="POST.MODIFY" Type="1">U3ViamVjdDogUG9zdCBoYXMgYmVlbiBNb2RpZmllZAoKQSBwb3N0IGhhcyBiZWVuIG1vZGlmaWVkLg==</EVENT> + <EVENT MessageType="html" Event="TOPIC.ADD" Type="0">U3ViamVjdDogTmV3IFRvcGljICI8aW5wMjpiYl9GaWVsZCBuYW1lPSJUb3BpY1RleHQiLz4iIGhhcyBiZWVuIHN1Ym1pdHRlZAoKTmV3IFRvcGljIGhhcyBiZWVuIHN1Ym1pdHRlZCBvbiA8aW5wMjptX0Jhc2VVcmwvPjxicj48YnI+DQoNClRvcGljOiA8aW5wMjpiYl9GaWVsZCBuYW1lPSJUb3BpY1RleHQiLz4=</EVENT> + <EVENT MessageType="html" Event="TOPIC.ADD" Type="1">U3ViamVjdDogTmV3IFRvcGljICI8aW5wMjpiYl9GaWVsZCBuYW1lPSJUb3BpY1RleHQiLz4iIGhhcyBiZWVuIHN1Ym1pdHRlZAoKTmV3IFRvcGljIGhhcyBiZWVuIHN1Ym1pdHRlZCBvbiA8aW5wMjptX0Jhc2VVcmwvPjxicj48YnI+DQoNClRvcGljOiA8aW5wMjpiYl9GaWVsZCBuYW1lPSJUb3BpY1RleHQiLz4=</EVENT> + <EVENT MessageType="html" Event="TOPIC.ADD.PENDING" Type="0">U3ViamVjdDogTmV3IHRvcGljICI8aW5wMjpiYl9GaWVsZCBuYW1lPSJUb3BpY1RleHQiLz4iIGlzIHBlbmRpbmcKCllvdXIgdG9waWMgaXMgcmVjZWl2ZWQgYW5kIHBlbmRpbmcgZm9yIGFkbWluaXN0cmF0aXZlIGFwcHJvdmFsPGJyPjxicj4NCg0KVG9waWM6IDxpbnAyOmJiX0ZpZWxkIG5hbWU9IlRvcGljVGV4dCIvPg==</EVENT> + <EVENT MessageType="html" Event="TOPIC.ADD.PENDING" Type="1">U3ViamVjdDogTmV3IFRvcGljICI8aW5wMjpiYl9GaWVsZCBuYW1lPSJUb3BpY1RleHQiLz4iIGlzIHBlbmRpbmcKCk5ldyB0b3BpYyBoYXMgYmVlbiBzdWJtaXR0ZWQgYW5kIHBlbmRpbmcgZm9yIHlvdXIgYXBwcm92YWwuPGJyPjxicj4NCg0KVG9waWM6IDxpbnAyOmJiX0ZpZWxkIG5hbWU9IlRvcGljVGV4dCIvPg==</EVENT> + <EVENT MessageType="html" Event="TOPIC.APPROVE" Type="0">U3ViamVjdDogVG9waWMgIjxpbnAyOmJiX0ZpZWxkIG5hbWU9IlRvcGljVGV4dCIvPiIgaXMgYXBwcm92ZWQKCllvdXIgdG9waWMgaGFzIGJlZW4gYXBwcm92ZWQgb24gPGlucDI6bV9CYXNlVXJsLz48YnI+PGJyPg0KDQpUb3BpYzogPGlucDI6YmJfRmllbGQgbmFtZT0iVG9waWNUZXh0Ii8+</EVENT> + <EVENT MessageType="html" Event="TOPIC.MODIFY" Type="0">U3ViamVjdDogVG9waWMgVXBkYXRlZCAiPGlucDI6YmJfRmllbGQgbmFtZT0iVG9waWNUZXh0Ii8+IgoKWW91ciB0b3BpYyBoYXMgYmVlbiB1cGRhdGVkLjxicj48YnI+DQoNClRvcGljOiA8aW5wMjpiYl9GaWVsZCBuYW1lPSJUb3BpY1RleHQiLz4NCg0K</EVENT> + <EVENT MessageType="html" Event="TOPIC.MODIFY" Type="1">U3ViamVjdDogVG9waWMgVXBkYXRlZCBUb3BpYyAiPGlucDI6YmJfRmllbGQgbmFtZT0iVG9waWNUZXh0Ii8+IgoKVXNlciB1cGRhdGVkIHRoZSB0b3BpYy48YnI+PGJyPg0KDQpUb3BpYzogPGlucDI6YmJfRmllbGQgbmFtZT0iVG9waWNUZXh0Ii8+</EVENT> + <EVENT MessageType="html" Event="TOPIC.MODIFY.PENDING" Type="0">U3ViamVjdDogVG9waWMgTW9kaWZpY2F0aW9ucyAiPGlucDI6YmJfRmllbGQgbmFtZT0iVG9waWNUZXh0Ii8+IiBwZW5kaW5nCgpUb3BpYyBtb2RpZmljYXRpb25zIGFyZSBwZW5kaW5nIGZvciBhZG1pbmlzdHJhdGl2ZSBhcHByb3ZhbC48YnI+PGJyPg0KDQpUb3BpYzogPGlucDI6YmJfRmllbGQgbmFtZT0iVG9waWNUZXh0Ii8+</EVENT> + <EVENT MessageType="html" Event="TOPIC.MODIFY.PENDING" Type="1">U3ViamVjdDogVG9waWMgTW9kaWZpY2F0aW9ucyAiPGlucDI6YmJfRmllbGQgbmFtZT0iVG9waWNUZXh0Ii8+IiBwZW5kaW5nCgpVc2VyIHN1Ym1pdHRlZCB0byB0b3BpYyBtb2RpZmljYXRpb25zIGFuZCBwZW5kaW5nIGZvciBhcHByb3ZhbC48YnI+PGJyPg0KDQpUb3BpYzogPGlucDI6YmJfRmllbGQgbmFtZT0iVG9waWNUZXh0Ii8+</EVENT> + </EVENTS> + </LANGUAGE> +</LANGUAGES> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/install/english.lang ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.9 \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install/img/icon_discussion_forum.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/install/img/icon_discussion_forum.gif ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install/img/.htaccess =================================================================== --- releases/5.0.2-B1/in-bulletin/install/img/.htaccess (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install/img/.htaccess (revision 12766) @@ -0,0 +1 @@ +allow from all \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/install/img/.htaccess ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install/module_info.xml =================================================================== --- releases/5.0.2-B1/in-bulletin/install/module_info.xml (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install/module_info.xml (revision 12766) @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8"?> +<module_info> + <name>In-Bulletin</name> + <description>Discussion Forum</description> + <image>in-bulletin/install/img/icon_discussion_forum.gif</image> +</module_info> \ No newline at end of file Index: releases/5.0.2-B1/in-bulletin/install/.htaccess =================================================================== --- releases/5.0.2-B1/in-bulletin/install/.htaccess (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install/.htaccess (revision 12766) @@ -0,0 +1 @@ +deny from all \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/install/.htaccess ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install/remove_schema.sql =================================================================== --- releases/5.0.2-B1/in-bulletin/install/remove_schema.sql (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install/remove_schema.sql (revision 12766) @@ -0,0 +1,11 @@ +DROP TABLE Posting; +DROP TABLE Topic; +DROP TABLE Censorship; +DROP TABLE Emoticon; +DROP TABLE PrivateMessageBody; +DROP TABLE PrivateMessages; +DROP TABLE TopicCustomData; +DROP TABLE Polls; +DROP TABLE PollsAnswers; +DROP TABLE PollsComments; +DROP TABLE PollsStatistics; \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/install/remove_schema.sql ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install/install_order.txt =================================================================== --- releases/5.0.2-B1/in-bulletin/install/install_order.txt (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install/install_order.txt (revision 12766) @@ -0,0 +1 @@ +104 \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/install/install_order.txt ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/install.php =================================================================== --- releases/5.0.2-B1/in-bulletin/install.php (nonexistent) +++ releases/5.0.2-B1/in-bulletin/install.php (revision 12766) @@ -0,0 +1,53 @@ +<?php +/** +* @version $Id$ +* @package In-Bulletin +* @copyright Copyright (C) 1997 - 2009 Intechnic. All rights reserved. +* @license GNU/GPL +* In-Portal is Open Source software. +* This means that this software may have been modified pursuant +* the GNU General Public License, and as distributed it includes +* or is derivative of works licensed under the GNU General Public License +* or other free or open source software licenses. +* See http://www.in-portal.org/license for copyright notices and details. +*/ + $module_folder = 'in-bulletin'; + + if (!defined('IS_INSTALL')) { + // separate module install + define('IS_INSTALL', 1); + define('ADMIN', 1); + define('REL_PATH', $module_folder); + define('FULL_PATH', realpath(dirname(__FILE__) . '/..') ); + + include_once(FULL_PATH . '/core/kernel/startup.php'); + require_once FULL_PATH . '/core/install/install_toolkit.php'; + + $toolkit = new kInstallToolkit(); + } + else { + // install, using installation wizard + $toolkit =& $this->toolkit; + /* @var $toolkit kInstallToolkit */ + } + + $application =& kApplication::Instance(); + $application->Init(); + + if ($application->RecallVar('user_id') != -1) { + die('restricted access!'); + } + + $category =& $toolkit->createModuleCategory('Forums', 'Discussion Forums', '/in-bulletin/designs/section', 'in-bulletin/img/menu_topics.gif'); + + $toolkit->RunSQL('/' . $module_folder . '/install/install_schema.sql'); + $toolkit->RunSQL('/' . $module_folder . '/install/install_data.sql', '{TopicCatId}', $category->GetID()); + $toolkit->ImportLanguage('/' . $module_folder . '/install/english'); + + $toolkit->SetModuleRootCategory($module_folder, $category->GetID()); + +// $toolkit->linkCustomFields($module_folder, 'bb', 3); // to create Custom Fields for Topics + $toolkit->linkCustomFields('KERNEL', 'c', 1); // to create ItemTemplate custom field + $toolkit->setModuleItemTemplate($category, 'bb', 'in-bulletin/topics/topic_detail'); + + $toolkit->finalizeModuleInstall($module_folder, true); \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/install.php ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_list.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_list.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_list.tpl (revision 12766) @@ -0,0 +1,89 @@ +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" section="in-bulletin:polls" prefix="poll" title_preset="poll_list" pagination="1"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + //do not rename - this function is used in default grid for double click! + function edit() + { + std_edit_item('poll', 'in-bulletin/polls/poll_edit'); + } + + var a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('new_item', '<inp2:m_phrase label="la_ToolTip_NewPoll" escape="1"/>::<inp2:m_phrase label="la_ToolTip_Add" escape="1"/>', + function() { + std_precreate_item('poll', 'in-bulletin/polls/poll_edit'); + } ) ); + + a_toolbar.AddButton( new ToolBarButton('edit', '<inp2:m_phrase label="la_ToolTip_Edit" escape="1"/>::<inp2:m_phrase label="la_ShortToolTip_Edit" escape="1"/>', edit) ); + a_toolbar.AddButton( new ToolBarButton('delete', '<inp2:m_phrase label="la_ToolTip_Delete" escape="1"/>', + function() { + std_delete_items('poll') + } ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( + new ToolBarButton( + 'approve', + '<inp2:m_phrase label="la_ToolTip_Approve" escape="1"/>', + function() { + submit_event('poll', 'OnMassApprove'); + } + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'decline', + '<inp2:m_phrase label="la_ToolTip_Decline" escape="1"/>', + function() { + submit_event('poll', 'OnMassDecline'); + } + ) + ); + + a_toolbar.AddButton( new ToolBarSeparator('sep2') ); + + a_toolbar.AddButton( new ToolBarButton('move_up', '<inp2:m_phrase label="la_ToolTip_MoveUp" escape="1"/>', function() { + submit_event('poll','OnMassMoveUp'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('move_down', '<inp2:m_phrase label="la_ToolTip_MoveDown" escape="1"/>', function() { + submit_event('poll','OnMassMoveDown'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep3') ); + + a_toolbar.AddButton( new ToolBarButton('view', '<inp2:m_phrase label="la_ToolTip_View" escape="1"/>', function() { + show_viewmenu(a_toolbar,'view'); + } + ) ); + + a_toolbar.Render(); + </script> + </td> + <inp2:m_RenderElement name="search_main_toolbar" prefix="poll" grid="Default"/> + </tr> +</tbody> +</table> + +<inp2:m_DefineElement name="poll_expire_td" no_special=""> + <inp2:m_if check="Field" name="$field"> + <inp2:Field field="$field" grid="$grid" no_special="$no_special" format="$format"/> + <inp2:m_else/> + <inp2:m_phrase name="la_Never"/> + </inp2:m_if> +</inp2:m_DefineElement> + +<inp2:m_RenderElement name="grid" PrefixSpecial="poll" IdField="PollId" grid="Default" grid_filters="1"/> +<script type="text/javascript"> + Grids['poll'].SetDependantToolbarButtons( new Array('edit','delete', 'approve', 'decline', 'move_up', 'move_down') ); +</script> +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_list.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.6 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit_answers.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit_answers.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit_answers.tpl (revision 12766) @@ -0,0 +1,152 @@ +<inp2:adm_SetPopupSize width="900" height="680"/> + +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" section="in-bulletin:polls" prefix="poll" title_preset="poll_edit_answers" tab_preset="Default" pagination="1" pagination_prefix="poll-answer"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + var a_toolbar = new ToolBar(); + + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('poll','<inp2:poll_SaveEvent/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + cancel_edit('poll', 'OnCancelEdit','<inp2:poll_SaveEvent/>','<inp2:m_Phrase label="la_FormCancelConfirmation" escape="1"/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( + new ToolBarButton( + 'prev', + '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', + function() { + go_to_id('poll', '<inp2:poll_PrevId/>'); + } + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'next', + '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', + function() { + go_to_id('poll', '<inp2:poll_NextId/>'); + } + ) + ); + + a_toolbar.AddButton( new ToolBarSeparator('sep2') ); + + function edit() + { + std_edit_item('poll-answer', 'in-bulletin/polls/answer_edit'); + } + + + a_toolbar.AddButton( + new ToolBarButton( + 'new_item', + '<inp2:m_phrase label="la_ToolTip_New_Answer" escape="1"/>::<inp2:m_phrase label="la_ToolTip_Add" escape="1"/>', + function() { + std_new_item('poll-answer', 'in-bulletin/polls/answer_edit') + } + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'edit', + '<inp2:m_phrase label="la_ToolTip_Edit" escape="1"/>', + edit + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'delete', + '<inp2:m_phrase label="la_ToolTip_Delete" escape="1"/>', + function() { + std_delete_items('poll-answer') + } + ) + ); + + + + + a_toolbar.AddButton( + new ToolBarButton( + 'approve', + '<inp2:m_phrase label="la_ToolTip_Approve" escape="1"/>', + function() { + submit_event('poll-answer', 'OnMassApprove'); + } + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'decline', + '<inp2:m_phrase label="la_ToolTip_Decline" escape="1"/>', + function() { + submit_event('poll-answer', 'OnMassDecline'); + } + ) + ); + + a_toolbar.AddButton( new ToolBarSeparator('sep3') ); + + a_toolbar.AddButton( new ToolBarButton('move_up', '<inp2:m_phrase label="la_ToolTip_MoveUp" escape="1"/>', function() { + submit_event('poll-answer','OnMassMoveUp'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('move_down', '<inp2:m_phrase label="la_ToolTip_MoveDown" escape="1"/>', function() { + submit_event('poll-answer','OnMassMoveDown'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep4') ); + + a_toolbar.AddButton( new ToolBarButton('view', '<inp2:m_phrase label="la_ToolTip_View" escape="1"/>', function() { + show_viewmenu(a_toolbar,'view'); + } + ) ); + + a_toolbar.Render(); + + <inp2:m_if check="poll_IsSingle"> + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="poll_IsLast"> + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="poll_IsFirst"> + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + + </script> + </td> + + <inp2:m_RenderElement name="search_main_toolbar" prefix="poll-answer" grid="Default"/> + </tr> +</tbody> +</table> + +<inp2:m_RenderElement name="grid" PrefixSpecial="poll-answer" IdField="AnswerId" grid="Default" grid_filters="1"/> +<script type="text/javascript"> + Grids['poll-answer'].SetDependantToolbarButtons( new Array('edit','delete', 'approve', 'decline', 'move_up', 'move_down') ); +</script> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit_answers.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.3 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit_comments.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit_comments.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit_comments.tpl (revision 12766) @@ -0,0 +1,152 @@ +<inp2:adm_SetPopupSize width="900" height="680"/> + +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" section="in-bulletin:polls" prefix="poll" title_preset="poll_edit_comments" tab_preset="Default" pagination="1" pagination_prefix="poll-comment"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + var a_toolbar = new ToolBar(); + + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('poll','<inp2:poll_SaveEvent/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + cancel_edit('poll', 'OnCancelEdit','<inp2:poll_SaveEvent/>','<inp2:m_Phrase label="la_FormCancelConfirmation" escape="1"/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( + new ToolBarButton( + 'prev', + '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', + function() { + go_to_id('poll', '<inp2:poll_PrevId/>'); + } + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'next', + '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', + function() { + go_to_id('poll', '<inp2:poll_NextId/>'); + } + ) + ); + + a_toolbar.AddButton( new ToolBarSeparator('sep2') ); + + function edit() + { + std_edit_temp_item('poll-comment', 'in-bulletin/polls/comment_edit'); + } + + + a_toolbar.AddButton( + new ToolBarButton( + 'new_item', + '<inp2:m_phrase label="la_ToolTip_New_Comment" escape="1"/>::<inp2:m_phrase label="la_ToolTip_Add" escape="1"/>', + function() { + std_new_item('poll-comment', 'in-bulletin/polls/comment_edit') + } + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'edit', + '<inp2:m_phrase label="la_ToolTip_Edit" escape="1"/>', + edit + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'delete', + '<inp2:m_phrase label="la_ToolTip_Delete" escape="1"/>', + function() { + std_delete_items('poll-comment') + } + ) + ); + + + + + a_toolbar.AddButton( + new ToolBarButton( + 'approve', + '<inp2:m_phrase label="la_ToolTip_Approve" escape="1"/>', + function() { + submit_event('poll-comment', 'OnMassApprove'); + } + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'decline', + '<inp2:m_phrase label="la_ToolTip_Decline" escape="1"/>', + function() { + submit_event('poll-comment', 'OnMassDecline'); + } + ) + ); + + a_toolbar.AddButton( new ToolBarSeparator('sep3') ); + + a_toolbar.AddButton( new ToolBarButton('move_up', '<inp2:m_phrase label="la_ToolTip_MoveUp" escape="1"/>', function() { + submit_event('poll-comment','OnMassMoveUp'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('move_down', '<inp2:m_phrase label="la_ToolTip_MoveDown" escape="1"/>', function() { + submit_event('poll-comment','OnMassMoveDown'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep4') ); + + a_toolbar.AddButton( new ToolBarButton('view', '<inp2:m_phrase label="la_ToolTip_View" escape="1"/>', function() { + show_viewmenu(a_toolbar,'view'); + } + ) ); + + a_toolbar.Render(); + + <inp2:m_if check="poll_IsSingle"> + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="poll_IsLast"> + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="poll_IsFirst"> + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + + </script> + </td> + + <inp2:m_RenderElement name="search_main_toolbar" prefix="poll-comment" grid="Default"/> + </tr> +</tbody> +</table> + +<inp2:m_RenderElement name="grid" PrefixSpecial="poll-comment" IdField="CommentId" grid="Default" grid_filters="1"/> +<script type="text/javascript"> + Grids['poll-comment'].SetDependantToolbarButtons( new Array('edit','delete', 'approve', 'decline', 'move_up', 'move_down') ); +</script> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit_comments.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.4 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/polls/answer_edit.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/polls/answer_edit.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/polls/answer_edit.tpl (revision 12766) @@ -0,0 +1,96 @@ +<inp2:adm_SetPopupSize width="550" height="400"/> +<inp2:m_include t="incs/header"/> + +<inp2:m_RenderElement name="combined_header" section="in-bulletin:polls" prefix="poll" title_preset="answer_edit"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('poll-answer','<inp2:poll-answer_SaveEvent/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + cancel_edit('poll-answer', 'OnCancel','<inp2:poll-answer_SaveEvent/>','<inp2:m_Phrase label="la_FormCancelConfirmation" escape="1"/>'); + } + ) ); + + a_toolbar.AddButton( + new ToolBarButton( + 'reset_edit', + '<inp2:m_phrase label="la_ToolTip_Reset" escape="1"/>', + function() { + reset_form('poll-answer', 'OnReset', '<inp2:m_Phrase label="la_FormResetConfirmation" escape="1"/>'); + } + ) + ); + + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( + new ToolBarButton( + 'prev', + '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', + function() { + go_to_id('poll-answer', '<inp2:poll_PrevId/>'); + } + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'next', + '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', + function() { + go_to_id('poll-answer', '<inp2:poll_NextId/>'); + } + ) + ); + + a_toolbar.Render(); + + <inp2:m_if check="poll-answer_IsSingle"> + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="poll-answer_IsLast"> + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="poll-answer_IsFirst"> + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + + </script> + </td> + + <inp2:m_RenderElement name="ml_selector" prefix="poll-answer" /> + </tr> +</tbody> +</table> + +<inp2:poll-answer_SaveWarning name="grid_save_warning"/> +<inp2:poll-answer_ErrorWarning name="form_error_warning"/> + +<div id="scroll_container"> + <table class="edit-form"> + <inp2:m_RenderElement name="subsection" title="!la_section_General!"/> + + <inp2:m_RenderElement name="inp_edit_hidden" prefix="poll-answer" field="PollId"/> + <inp2:m_RenderElement name="inp_label" prefix="poll-answer" field="AnswerId" title="!la_fld_Id!"/> + <inp2:m_RenderElement name="inp_edit_textarea_ml" prefix="poll-answer" field="Answer" title="!la_fld_PollAnswer!" control_options="{min_height: 100}" cols="70" rows="5"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="poll-answer" field="Priority" title="!la_fld_Priority!" size="5"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="poll-answer" field="VotesQty" title="!la_fld_Votes!" size="5"/> + <inp2:m_RenderElement name="inp_edit_options" prefix="poll-answer" field="Status" title="la_fld_Status"/> + <inp2:m_RenderElement name="inp_edit_filler"/> + </table> +</div> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/polls/answer_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.5 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit.tpl (revision 12766) @@ -0,0 +1,110 @@ +<inp2:adm_SetPopupSize width="900" height="680"/> + +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" section="in-bulletin:polls" prefix="poll" title_preset="poll_edit" tab_preset="Default"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('poll','<inp2:poll_SaveEvent/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + cancel_edit('poll', 'OnCancelEdit','<inp2:poll_SaveEvent/>','<inp2:m_Phrase label="la_FormCancelConfirmation" escape="1"/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( + new ToolBarButton( + 'prev', + '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', + function() { + go_to_id('poll', '<inp2:poll_PrevId/>'); + } + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'next', + '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', + function() { + go_to_id('poll', '<inp2:poll_NextId/>'); + } + ) + ); + + a_toolbar.AddButton( new ToolBarSeparator('sep2') ); + + + a_toolbar.AddButton( new ToolBarButton('reset', '<inp2:m_phrase label="la_ToolTip_ResetVotes" escape="1"/>', function() { + submit_event('poll', 'OnResetVotes'); + } + ) ); + + a_toolbar.Render(); + + <inp2:m_if check="poll_IsSingle"> + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="poll_IsLast"> + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="poll_IsFirst"> + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + + </script> + + <script src="js/swfobject.js" type="text/javascript"></script> + <script type="text/javascript" src="js/uploader.js"></script> + </td> + + <inp2:m_RenderElement name="ml_selector" prefix="poll"/> + </tr> +</tbody> +</table> + +<inp2:poll_SaveWarning name="grid_save_warning"/> +<inp2:poll_ErrorWarning name="form_error_warning"/> + +<div id="scroll_container"> + <table class="edit-form"> + <inp2:m_RenderElement name="subsection" title="!la_section_General!"/> + + <inp2:m_RenderElement name="inp_label" prefix="poll" field="PollId" title="!la_fld_Id!"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="poll" field="Name" title="!la_fld_Name!" size="50"/> + + <inp2:m_RenderElement name="inp_edit_textarea_ml" prefix="poll" field="Question" title="!la_fld_Question!" control_options="{min_height: 100}" cols="70" rows="5"/> + + <inp2:m_RenderElement name="inp_edit_swf_upload" prefix="poll" field="Image" thumbnail="200x200" title="la_fld_Image"/> + + <inp2:m_RenderElement name="subsection" title="!la_section_Properties!"/> + + <inp2:m_RenderElement name="inp_edit_date_time" prefix="poll" field="CreatedOn" title="la_fld_CreatedOn"/> + <inp2:m_RenderElement name="inp_edit_date_time" prefix="poll" field="StartDate" title="la_fld_StartDate"/> + <inp2:m_RenderElement name="inp_edit_date_time" prefix="poll" field="EndDate" title="la_fld_EndDate"/> + + <inp2:m_RenderElement name="inp_edit_box" prefix="poll" field="Priority" title="!la_fld_Priority!" size="5"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="poll" field="RequireLogin" title="!la_fld_RequireLogin!"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="poll" field="AllowComments" title="!la_fld_AllowComments!"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="poll" field="AllowMultipleVotings" title="!la_fld_AllowMultipleVotings!"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="poll" field="CachedVotesQty" title="!la_fld_Votes!" size="5"/> + + <inp2:m_RenderElement name="inp_edit_options" prefix="poll" field="Status" title="la_fld_Status"/> + <inp2:m_RenderElement name="inp_edit_filler"/> + </table> +</div> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/polls/poll_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.5 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/polls/comment_edit.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/polls/comment_edit.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/polls/comment_edit.tpl (revision 12766) @@ -0,0 +1,96 @@ +<inp2:adm_SetPopupSize width="650" height="400"/> +<inp2:m_include t="incs/header"/> + +<inp2:m_RenderElement name="combined_header" section="in-bulletin:polls" prefix="poll" title_preset="comment_edit"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('poll-comment','<inp2:poll-comment_SaveEvent/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + cancel_edit('poll-comment', 'OnCancel','<inp2:poll-comment_SaveEvent/>','<inp2:m_Phrase label="la_FormCancelConfirmation" escape="1"/>'); + } + ) ); + + + a_toolbar.AddButton( + new ToolBarButton( + 'reset_edit', + '<inp2:m_phrase label="la_ToolTip_Reset" escape="1"/>', + function() { + reset_form('poll-comment', 'OnReset', '<inp2:m_Phrase label="la_FormResetConfirmation" escape="1"/>'); + } + ) + ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( + new ToolBarButton( + 'prev', + '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', + function() { + go_to_id('poll-comment', '<inp2:poll_PrevId/>'); + } + ) + ); + + a_toolbar.AddButton( + new ToolBarButton( + 'next', + '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', + function() { + go_to_id('poll-comment', '<inp2:poll_NextId/>'); + } + ) + ); + + a_toolbar.Render(); + + <inp2:m_if check="poll-comment_IsSingle"> + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="poll-comment_IsLast"> + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="poll-comment_IsFirst"> + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + + </script> + </td> + </tr> +</tbody> +</table> + +<inp2:poll-comment_SaveWarning name="grid_save_warning"/> +<inp2:poll-comment_ErrorWarning name="form_error_warning"/> + +<div id="scroll_container"> + <table class="edit-form"> + <inp2:m_RenderElement name="subsection" title="!la_section_General!"/> + <inp2:m_RenderElement name="inp_edit_hidden" prefix="poll-comment" field="PollId"/> + <inp2:m_RenderElement name="inp_label" prefix="poll-comment" field="CommentId" title="!la_fld_Id!"/> + <inp2:m_RenderElement name="inp_edit_user" prefix="poll-comment" field="CreatedById" title="!la_fld_CreatedById!" class="text"/> + <inp2:m_RenderElement name="inp_edit_textarea" prefix="poll-comment" field="CommentBody" title="!la_fld_PollComment!" control_options="{min_height: 100}" cols="70" rows="5"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="poll-comment" field="GuestName" title="!la_fld_PollGuestName!" size="40"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="poll-comment" field="GuestEmail" title="!la_fld_PollGuestEmail!" size="40"/> + <inp2:m_RenderElement name="inp_edit_date_time" prefix="poll-comment" field="CreatedOn" title="la_fld_CreatedOn"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="poll-comment" field="Priority" title="!la_fld_Priority!" size="5"/> + <inp2:m_RenderElement name="inp_edit_options" prefix="poll-comment" field="Status" title="la_fld_Status"/> + <inp2:m_RenderElement name="inp_edit_filler"/> + </table> +</div> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/polls/comment_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.4 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/catalog_tab.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/catalog_tab.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/catalog_tab.tpl (revision 12766) @@ -0,0 +1,56 @@ +<inp2:m_RequireLogin permissions="in-portal:browse.view" system="1"/> +<inp2:m_DefineElement name="catalog_tab"> + <inp2:m_if check="m_ParamEquals" name="tab_init" value="" inverse="inverse"> + <!--##<inp2:m_if check="m_ParamEquals" name="tab_init" value="1"> + a_toolbar.AddButton( + new ToolBarButton( + 'in-bulletin:new_topic', + '<inp2:m_phrase label="la_ToolTip_NewTopic" escape="1"/>', + add_item, + true + ) + ); + </inp2:m_if>##--> + + <inp2:m_if check="m_ParamEquals" name="tab_init" value="2"> + <div id="topics_div" prefix="<inp2:m_param name="prefix"/>" view_template="in-bulletin/catalog_tab" edit_template="in-bulletin/topics/topics_edit" category_id="-1" dep_buttons="new_topic" class="catalog-tab"><!-- IE minimal height problem fix --></div> + <script type="text/javascript">$Catalog.registerTab('topics');</script> + </inp2:m_if> + + <inp2:m_if check="m_ParamEquals" name="tab_init" value="3"> + $Catalog.setItemCount('<inp2:m_Param name="prefix"/>', '<inp2:{$prefix}_CatalogItemCount grid="$grid_name"/>'); + </inp2:m_if> + <inp2:m_else/> + <inp2:lang.current_Field name="Charset" result_to_var="charset"/> + <inp2:m_Header data="Content-type: text/plain; charset=$charset"/> + <inp2:m_include t="incs/blocks"/> + <inp2:m_include t="incs/in-portal"/> + <inp2:m_include t="categories/ci_blocks"/> + + <inp2:$prefix_InitList grid="$grid_name"/> + + $Catalog.setItemCount('<inp2:m_param name="prefix"/>', '<inp2:{$prefix}_CatalogItemCount/>'); + $Catalog.setCurrentCategory('<inp2:m_param name="prefix"/>', <inp2:m_get name="m_cat_id"/>); + $Catalog.saveSearch('<inp2:m_Param name="prefix"/>', '<inp2:$prefix_SearchKeyword js_escape="1"/>', '<inp2:m_Param name="grid_name"/>'); + + <inp2:m_RenderElement name="grid_js" PrefixSpecial="$prefix" IdField="TopicId" grid="$grid_name" menu_filters="yes"/> + <inp2:m_RenderElement name="grid_search_buttons" PrefixSpecial="$prefix" grid="$grid_name" ajax="1"/> + <inp2:m_if check="m_ParamEquals" name="tab_dependant" value="yes"> + Grids['<inp2:m_param name="prefix"/>'].AddAlternativeGrid('<inp2:m_param name="cat_prefix"/>', true); + </inp2:m_if> + Grids['<inp2:m_param name="prefix"/>'].SetDependantToolbarButtons( new Array('edit','delete','approve','decline','sep3','cut','copy','move_up','move_down','sep6')); + $Catalog.reflectPasteButton(<inp2:c_HasClipboard/>); + $Catalog.setViewMenu('<inp2:m_param name="prefix"/>'); + <inp2:m_if check="m_ParamEquals" name="tab_mode" value="single"> + Grids['<inp2:m_param name="prefix"/>'].DblClick = function() {return false}; + </inp2:m_if> + #separator# + <!-- topics tab: begin --> + <inp2:m_RenderElement name="kernel_form" form_name="topics_form"/> + <inp2:m_RenderElement name="grid" ajax="1" PrefixSpecial="$prefix" IdField="TopicId" grid="$grid_name" menu_filters="yes"/> + <inp2:m_RenderElement name="kernel_form_end"/> + <!-- topics tab: end --> + </inp2:m_if> +</inp2:m_DefineElement> + +<inp2:bb_InitCatalogTab render_as="catalog_tab" default_grid="Default" radio_grid="Radio"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/catalog_tab.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.9.2.5 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/itemicons/icon16_topic.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/itemicons/icon16_topic.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/itemicons/icon16_topic_pending.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/itemicons/icon16_topic_pending.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/itemicons/icon16_topic_disabled.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/itemicons/icon16_topic_disabled.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/itemicons/icon16_topic_new.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/itemicons/icon16_topic_new.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/itemicons/icon16_topics.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/itemicons/icon16_topics.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/icons/icon24_topics.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/icons/icon24_topics.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/icons/icon24_conf_censorship.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/icons/icon24_conf_censorship.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/icons/icon24_conf_topics.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/icons/icon24_conf_topics.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/icons/icon24_polls.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/icons/icon24_polls.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/icons/icon24_conf_smileys.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/icons/icon24_conf_smileys.png ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/toolbar/tool_new_topic_f2.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/toolbar/tool_new_topic_f2.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/toolbar/tool_new_topic_f3.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/toolbar/tool_new_topic_f3.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/toolbar/tool_new_topic.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/toolbar/tool_new_topic.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/img/logo_bg.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/img/logo_bg.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_categories.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_categories.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_categories.tpl (revision 12766) @@ -0,0 +1,84 @@ +<inp2:adm_SetPopupSize width="880" height="680"/> + +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" prefix="bb" section="in-portal:browse" title_preset="topics_categories" pagination="1" pagination_prefix="bb-ci" tab_preset="Default"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + function edit(){ } + + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('bb','<inp2:bb_SaveEvent/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + submit_event('bb','OnCancelEdit'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( new ToolBarButton('prev', '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_PrevId/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('next', '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_NextId/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep2') ); + + //Category related: + a_toolbar.AddButton( new ToolBarButton('new_item', '<inp2:m_phrase label="la_ToolTip_New_Category" escape="1"/>::<inp2:m_phrase label="la_ToolTip_Add" escape="1"/>', + function() { + openSelector('bb', '<inp2:adm_SelectorLink prefix="bb" selection_mode="multi" tab_prefixes="none"/>', 'ItemCategory'); + } ) ); + + a_toolbar.AddButton( new ToolBarButton('delete', '<inp2:m_phrase label="la_ToolTip_Delete" escape="1"/>', + function() { + std_delete_items('bb-ci') + } ) ); + + a_toolbar.AddButton( new ToolBarButton('setprimary', '<inp2:m_phrase label="la_ToolTip_SetPrimary" escape="1"/>', function() { + submit_event('bb-ci','OnSetPrimary'); + } + ) ); + + a_toolbar.Render(); + + <inp2:m_if check="bb_IsSingle" > + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="bb_IsLast" > + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="bb_IsFirst" > + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + </script> + </td> + + <inp2:m_RenderElement name="search_main_toolbar" prefix="bb-ci" grid="Default"/> + </tr> +</tbody> +</table> + +<inp2:m_DefineElement name="grid_checkbox_category_td"> + <inp2:CategoryName field="$field" primary_title="!la_PrimaryCategory!" no_special="1"/> +</inp2:m_DefineElement> + +<inp2:m_RenderElement name="grid" PrefixSpecial="bb-ci" IdField="CategoryId" grid="Default"/> +<script type="text/javascript"> + Grids['bb-ci'].SetDependantToolbarButtons( new Array('delete','setprimary') ); +</script> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_categories.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.3.2.4 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_images.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_images.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_images.tpl (revision 12766) @@ -0,0 +1,107 @@ +<inp2:adm_SetPopupSize width="880" height="680"/> + +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" prefix="bb" section="in-portal:browse" title_preset="topics_images" pagination="1" pagination_prefix="bb-img" tab_preset="Default"/> + +<inp2:m_include t="incs/image_blocks"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + + function edit() + { + std_edit_temp_item('bb-img', 'in-bulletin/topics/images_edit'); + } + + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('bb','<inp2:bb_SaveEvent/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + submit_event('bb','OnCancelEdit'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( new ToolBarButton('prev', '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_PrevId/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('next', '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_NextId/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep2') ); + + + + a_toolbar.AddButton( new ToolBarButton('new_item', '<inp2:m_phrase label="la_ToolTip_New_Images" escape="1"/>::<inp2:m_phrase label="la_ToolTip_Add" escape="1"/>', + function() { + std_new_item('bb-img', 'in-bulletin/topics/images_edit') + } ) ); + + a_toolbar.AddButton( new ToolBarButton('edit', '<inp2:m_phrase label="la_ToolTip_Edit" escape="1"/>', edit) ); + a_toolbar.AddButton( new ToolBarButton('delete', '<inp2:m_phrase label="la_ToolTip_Delete" escape="1"/>', + function() { + std_delete_items('bb-img') + } ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep3') ); + + a_toolbar.AddButton( new ToolBarButton('move_up', '<inp2:m_phrase label="la_ToolTip_MoveUp" escape="1"/>', function() { + submit_event('bb-img','OnMassMoveUp'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('move_down', '<inp2:m_phrase label="la_ToolTip_MoveDown" escape="1"/>', function() { + submit_event('bb-img','OnMassMoveDown'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('setprimary', '<inp2:m_phrase label="la_ToolTip_SetPrimary" escape="1"/>', function() { + submit_event('bb-img','OnSetPrimary'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep4') ); + + a_toolbar.AddButton( new ToolBarButton('view', '<inp2:m_phrase label="la_ToolTip_View" escape="1"/>', function() { + show_viewmenu(a_toolbar,'view'); + } + ) ); + + a_toolbar.Render(); + + <inp2:m_if check="bb_IsSingle" > + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="bb_IsLast" > + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="bb_IsFirst" > + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + </script> + </td> + + <inp2:m_RenderElement name="search_main_toolbar" prefix="bb-img" grid="Default"/> + </tr> +</tbody> +</table> + +<inp2:m_RenderElement name="grid" PrefixSpecial="bb-img" IdField="ImageId" grid="Default" menu_filters="yes"/> +<script type="text/javascript"> + Grids['bb-img'].SetDependantToolbarButtons( new Array('edit','delete','move_up','move_down','setprimary') ); +</script> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_images.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.4.2.5 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_relations.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_relations.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_relations.tpl (revision 12766) @@ -0,0 +1,105 @@ +<inp2:adm_SetPopupSize width="880" height="680"/> + +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" prefix="bb" section="in-portal:browse" title_preset="topics_relations" pagination="1" pagination_prefix="bb-rel" tab_preset="Default"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('bb','<inp2:bb_SaveEvent/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + submit_event('bb','OnCancelEdit'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( new ToolBarButton('prev', '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_PrevId/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('next', '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_NextId/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep2') ); + + //Relations related: + a_toolbar.AddButton( new ToolBarButton('new_item', '<inp2:m_phrase label="la_ToolTip_New_Relation" escape="1"/>::<inp2:m_phrase label="la_ToolTip_Add" escape="1"/>', + function() { + openSelector('bb-rel', '<inp2:adm_SelectorLink prefix="bb-rel" selection_mode="single" tab_prefixes="all"/>', 'TargetId', '950x600'); + } ) ); + + function edit() + { + std_edit_temp_item('bb-rel', 'in-bulletin/topics/relations_edit'); + } + + a_toolbar.AddButton( new ToolBarButton('edit', '<inp2:m_phrase label="la_ToolTip_Edit" escape="1"/>', edit) ); + a_toolbar.AddButton( new ToolBarButton('delete', '<inp2:m_phrase label="la_ToolTip_Delete" escape="1"/>', + function() { + std_delete_items('bb-rel') + } ) ); + + + a_toolbar.AddButton( new ToolBarSeparator('sep3') ); + + a_toolbar.AddButton( new ToolBarButton('approve', '<inp2:m_phrase label="la_ToolTip_Approve" escape="1"/>', function() { + submit_event('bb-rel','OnMassApprove'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('decline', '<inp2:m_phrase label="la_ToolTip_Decline" escape="1"/>', function() { + submit_event('bb-rel','OnMassDecline'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep4') ); + + a_toolbar.AddButton( new ToolBarButton('view', '<inp2:m_phrase label="la_ToolTip_View" escape="1"/>', function() { + show_viewmenu(a_toolbar,'view'); + } + ) ); + + a_toolbar.Render(); + + <inp2:m_if check="bb_IsSingle" > + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + //a_toolbar.HideButton('sep2'); + <inp2:m_else/> + <inp2:m_if check="bb_IsLast" > + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="bb_IsFirst" > + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + </script> + </td> + + <inp2:m_RenderElement name="search_main_toolbar" prefix="bb-rel" grid="Default"/> + </tr> +</tbody> +</table> + +<inp2:m_RenderElement name="grid" PrefixSpecial="bb-rel" IdField="RelationshipId" grid="Default" menu_filters="yes"/> +<script type="text/javascript"> + Grids['bb-rel'].SetDependantToolbarButtons( new Array('edit','delete','approve','decline') ); +</script> +<input type="hidden" name="TargetId" id="TargetId" value="<inp2:m_get name="TargetId"/>"> +<input type="hidden" name="TargetType" id="TargetType" value="<inp2:m_get name="TargetType"/>"> +<inp2:m_include t="incs/footer"/> + +<script type="text/javascript"> + var $env = document.getElementById('sid').value+'-:m<inp2:m_get name="m_cat_id"/>-1-1-1-s'; +</script> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_relations.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.3.2.3 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_reviews.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_reviews.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_reviews.tpl (revision 12766) @@ -0,0 +1,114 @@ +<inp2:adm_SetPopupSize width="880" height="680"/> + +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" prefix="bb" section="in-portal:browse" title_preset="topics_reviews" pagination="1" pagination_prefix="bb-rev" tab_preset="Default"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('bb','<inp2:bb_SaveEvent/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + submit_event('bb','OnCancelEdit'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( new ToolBarButton('prev', '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_PrevId/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('next', '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_NextId/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep2') ); + + //Pricing related: + a_toolbar.AddButton( new ToolBarButton('new_item', '<inp2:m_phrase label="la_ToolTip_NewReview" escape="1"/>::<inp2:m_phrase label="la_ToolTip_Add" escape="1"/>', + function() { + std_new_item('bb-rev', 'in-bulletin/topics/review_edit') + } ) ); + + function edit() + { + std_edit_temp_item('bb-rev', 'in-bulletin/topics/review_edit'); + } + + a_toolbar.AddButton( new ToolBarButton('edit', '<inp2:m_phrase label="la_ToolTip_Edit" escape="1"/>', edit) ); + a_toolbar.AddButton( new ToolBarButton('delete', '<inp2:m_phrase label="la_ToolTip_Delete" escape="1"/>', + function() { + std_delete_items('bb-rev') + } ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep3') ); + + a_toolbar.AddButton( new ToolBarButton('approve', '<inp2:m_phrase label="la_ToolTip_Approve" escape="1"/>', function() { + submit_event('bb-rev','OnMassApprove'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('decline', '<inp2:m_phrase label="la_ToolTip_Decline" escape="1"/>', function() { + submit_event('bb-rev','OnMassDecline'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep4') ); + + a_toolbar.AddButton( new ToolBarButton('move_up', '<inp2:m_phrase label="la_ToolTip_MoveUp" escape="1"/>', function() { + submit_event('bb-rev','OnMassMoveUp'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('move_down', '<inp2:m_phrase label="la_ToolTip_MoveDown" escape="1"/>', function() { + submit_event('bb-rev','OnMassMoveDown'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep5') ); + + a_toolbar.AddButton( new ToolBarButton('view', '<inp2:m_phrase label="la_ToolTip_View" escape="1"/>', function() { + show_viewmenu(a_toolbar,'view'); + } + ) ); + + a_toolbar.Render(); + + <inp2:m_if check="bb_IsSingle" > + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="bb_IsLast" > + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="bb_IsFirst" > + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + </script> + </td> + + <inp2:m_RenderElement name="search_main_toolbar" prefix="bb-rev" grid="Default"/> + </tr> +</tbody> +</table> + +<inp2:m_DefineElement name="reviewtext_checkbox_td"> + <inp2:Field field="$field" no_special="no_special" cut_first="100"/> +</inp2:m_DefineElement> + +<inp2:m_RenderElement name="grid" PrefixSpecial="bb-rev" IdField="ReviewId" grid="Default" menu_filters="yes"/> +<script type="text/javascript"> + Grids['bb-rev'].SetDependantToolbarButtons( new Array('edit','delete','approve','decline','move_up','move_down') ); +</script> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_reviews.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.3.2.3 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/topics/relations_edit.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/topics/relations_edit.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/topics/relations_edit.tpl (revision 12766) @@ -0,0 +1,49 @@ +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" prefix="bb" section="in-portal:browse" title_preset="relations_edit"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('bb-rel','<inp2:bb-rel_SaveEvent/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + submit_event('bb-rel','OnCancel'); + } + ) ); + + a_toolbar.Render(); + </script> + </td> + </tr> +</tbody> +</table> + +<inp2:m_include t="categories/ci_blocks"/> + +<inp2:bb-rel_SaveWarning name="grid_save_warning"/> +<inp2:bb-rel_ErrorWarning name="form_error_warning"/> + +<div id="scroll_container"> + <table class="edit-form"> + <inp2:m_RenderElement name="subsection" title="!la_section_Relation!"/> + <inp2:m_RenderElement name="inp_edit_hidden" prefix="bb-rel" field="SourceId"/> + <inp2:m_RenderElement name="inp_edit_hidden" prefix="bb-rel" field="SourceType"/> + <inp2:m_RenderElement name="inp_edit_hidden" prefix="bb-rel" field="TargetId"/> + <inp2:m_RenderElement name="inp_edit_hidden" prefix="bb-rel" field="TargetType"/> + + <inp2:m_RenderElement name="inp_id_label" prefix="bb-rel" field="RelationshipId" title="!la_fld_Id!"/> + <inp2:m_RenderElement name="inp_edit_relation" prefix="bb-rel" field="TargetId" title="!la_fld_TargetId!"/> + <inp2:m_RenderElement name="inp_edit_radio" prefix="bb-rel" field="Type" title="!la_fld_RelationshipType!"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb-rel" field="Enabled" title="!la_fld_Enabled!"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="bb-rel" field="Priority" title="!la_fld_Priority!" size="4"/> + <inp2:m_RenderElement name="inp_edit_filler"/> + </table> +</div> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/topics/relations_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.4.2.4 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/topics/review_edit.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/topics/review_edit.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/topics/review_edit.tpl (revision 12766) @@ -0,0 +1,60 @@ +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" prefix="bb" section="in-portal:browse" title_preset="reviews_edit"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('bb-rev','<inp2:bb-rev_SaveEvent/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + submit_event('bb-rev','OnCancel'); + } + ) ); + + a_toolbar.Render(); + + <inp2:m_if check="bb-rev_IsSingle" > + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="bb-rev_IsLast" > + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="bb-rev_IsFirst" > + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + </script> + </td> + </tr> +</tbody> +</table> + +<inp2:bb-rev_SaveWarning name="grid_save_warning"/> +<inp2:bb-rev_ErrorWarning name="form_error_warning"/> + +<div id="scroll_container"> + <table class="edit-form"> + <inp2:m_RenderElement name="subsection" title="!la_Text_Review!"/> + <inp2:m_RenderElement name="inp_edit_hidden" prefix="bb-rev" field="ItemId"/> + <inp2:m_RenderElement name="inp_edit_checkbox_allow_html" prefix="bb-rev" field="TextFormat"/> + <inp2:m_RenderElement name="inp_label" prefix="bb-rev" field="ReviewId" title="!la_fld_Id!"/> + <inp2:m_RenderElement name="inp_edit_user" prefix="bb-rev" field="CreatedById" title="!la_fld_CreatedById!" class="text"/> + <inp2:m_RenderElement name="inp_edit_textarea" prefix="bb-rev" field="ReviewText" title="!la_fld_ReviewText!" cols="70" rows="8"/> + + <inp2:m_RenderElement name="subsection" title="!la_Text_General!"/> + <inp2:m_RenderElement name="inp_edit_radio" prefix="bb-rev" field="Status" title="!la_fld_Status!"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="bb-rev" field="Priority" title="!la_fld_Priority!" size="3" class="text"/> + <inp2:m_RenderElement name="inp_edit_date_time" prefix="bb-rev" field="CreatedOn" title="!la_fld_CreatedOn!" size="20" class="text"/> + <inp2:m_RenderElement name="inp_edit_filler"/> + </table> +</div> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/topics/review_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.3.2.3 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/topics/images_edit.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/topics/images_edit.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/topics/images_edit.tpl (revision 12766) @@ -0,0 +1,60 @@ +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" prefix="bb" section="in-portal:browse" title_preset="images_edit"/> + +<inp2:m_include t="incs/image_blocks"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('bb-img','<inp2:bb-img_SaveEvent/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + submit_event('bb-img','OnCancel'); + } + ) ); + + a_toolbar.Render(); + </script> + </td> + </tr> +</tbody> +</table> + +<inp2:bb-img_SaveWarning name="grid_save_warning"/> +<inp2:bb-img_ErrorWarning name="form_error_warning"/> + +<div id="scroll_container"> + <table class="edit-form"> + <inp2:m_RenderElement name="subsection" title="!la_section_Image!"/> + <inp2:m_RenderElement name="inp_edit_hidden" prefix="bb-img" field="ResourceId"/> + <inp2:m_RenderElement name="inp_label" prefix="bb-img" field="ImageId" title="!la_fld_Id!"/> + + <inp2:m_RenderElement name="inp_edit_box" prefix="bb-img" field="Name" title="!la_fld_Name!" size="40"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="bb-img" field="AltName" title="!la_fld_AltValue!" size="40"/> + + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb-img" field="Enabled" title="!la_fld_Enabled!" onchange="check_primary()" /> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb-img" field="DefaultImg" title="!la_fld_Primary!" onchange="check_status()" /> + <inp2:m_RenderElement name="inp_edit_box" prefix="bb-img" field="Priority" title="!la_fld_Priority!" size="5"/> + + <inp2:m_RenderElement name="subsection" title="!la_section_ThumbnailImage!"/> + <inp2:m_RenderElement name="thumbnail_section" prefix="bb-img"/> + + <inp2:m_RenderElement name="subsection" title="!la_section_FullSizeImage!"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb-img" field="SameImages" title="!la_fld_SameAsThumb!" onchange="toggle_fullsize()"/> + <inp2:m_RenderElement name="fullsize_section" prefix="bb-img"/> + <inp2:m_RenderElement name="inp_edit_filler"/> + </table> +</div> + +<script type="text/javascript"> + <inp2:m_RenderElement name="images_edit_js" prefix="bb-img"/> + toggle_fullsize(); +</script> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/topics/images_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.4.2.4 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_edit.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_edit.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_edit.tpl (revision 12766) @@ -0,0 +1,100 @@ +<inp2:adm_SetPopupSize width="880" height="680"/> + +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" prefix="bb" section="in-portal:browse" title_preset="topics_edit" tab_preset="Default"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('bb','<inp2:bb_SaveEvent/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + submit_event('bb','OnCancelEdit'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( new ToolBarButton('prev', '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_PrevId/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('next', '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_NextId/>'); + } + ) ); + + //a_toolbar.AddButton( new ToolBarSeparator('sep2') ); + + a_toolbar.Render(); + + <inp2:m_if check="bb_IsSingle" > + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + //a_toolbar.HideButton('sep2'); + <inp2:m_else/> + <inp2:m_if check="bb_IsLast" > + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="bb_IsFirst" > + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + </script> + </td> + </tr> +</tbody> +</table> + +<inp2:bb_SaveWarning name="grid_save_warning"/> +<inp2:bb_ErrorWarning name="form_error_warning"/> + +<div id="scroll_container"> + <table class="edit-form"> + <inp2:m_RenderElement name="subsection" title="!la_section_Topic!"/> + <inp2:m_RenderElement name="inp_id_label" prefix="bb" field="TopicId" title="!la_fld_Id!"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="bb" field="TopicText" title="la_fld_Subject" size="70"/> + + <inp2:m_if check="bb_FieldEquals" name="Posts" value="0"> + <inp2:m_RenderElement name="inp_edit_textarea" prefix="bb" field="PostingText" title="la_fld_MessageBody" control_options="{min_height: 100}" cols="70" rows="8"/> + </inp2:m_if> + + <inp2:m_RenderElement name="inp_edit_user" prefix="bb" field="OwnerId" title="!la_fld_PostedBy!" size="40"/> + <inp2:m_RenderElement name="inp_edit_options" prefix="bb" field="CategoryId" title="la_fld_ParentSection" display_original="1"/> + + <inp2:m_RenderElement name="subsection" title="!la_section_Properties!"/> + <inp2:m_RenderElement name="inp_edit_radio" prefix="bb" field="TopicType" title="!la_fld_TopicType!"/> + <inp2:m_RenderElement name="inp_edit_radio" prefix="bb" field="Status" title="!la_fld_Status!"/> + <inp2:m_RenderElement name="inp_edit_radio" prefix="bb" field="NewItem" title="!la_fld_New!"/> + <inp2:m_RenderElement name="inp_edit_radio" prefix="bb" field="HotItem" title="!la_fld_Hot!"/> + <inp2:m_RenderElement name="inp_edit_radio" prefix="bb" field="PopItem" title="!la_fld_Pop!"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb" field="EditorsPick" title="!la_fld_EditorsPick!"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="bb" field="Priority" title="!la_fld_Priority!" size="4"/> + <inp2:m_RenderElement name="inp_edit_date_time" prefix="bb" field="CreatedOn" title="!la_fld_CreatedOn!"/> + <inp2:m_RenderElement name="inp_edit_date_time" prefix="bb" field="Modified" title="!la_fld_Modified!"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="bb" field="MetaKeywords" title="la_fld_MetaKeywords" size="70"/> + <inp2:m_RenderElement name="inp_edit_textarea" prefix="bb" field="MetaDescription" title="la_fld_MetaDescription" control_options="{min_height: 100}" cols="70" rows="8"/> + + <inp2:m_RenderElement name="subsection" title="!la_section_Counters!"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="bb" field="CachedRating" title="!la_fld_Rating!" hint_label="la_prompt_RatingLimits" size="4"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="bb" field="CachedVotesQty" title="!la_fld_Votes!" hint_label="la_prompt_VoteLimits" size="4"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="bb" field="Views" title="!la_fld_Views!" hint_label="la_prompt_HitLimits" size="4"/> + <input type="hidden" name="Views_original" id="Views_original" value="<inp2:bb_Field name="Views" db="db" />" /> + + <!-- custom fields: begin --> + <inp2:m_include t="incs/custom_blocks"/> + <inp2:cf.general_PrintList render_as="cv_row_block" SourcePrefix="bb" value_field="Value" per_page="-1" grid="Default" /> + <!-- custom fields: end --> + + <inp2:m_RenderElement name="inp_edit_filler"/> + </table> +</div> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.5.2.6 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_custom.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_custom.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_custom.tpl (revision 12766) @@ -0,0 +1,62 @@ +<inp2:adm_SetPopupSize width="880" height="680"/> + +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" prefix="bb" section="in-portal:browse" grid="SeparateTab" title_preset="topics_custom" tab_preset="Default"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('bb','<inp2:bb_SaveEvent/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + submit_event('bb','OnCancelEdit'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( new ToolBarButton('prev', '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_PrevId/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('next', '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', function() { + go_to_id('bb', '<inp2:bb_NextId/>'); + } + ) ); + + function edit(){ } + + a_toolbar.Render(); + + <inp2:m_if check="bb_IsSingle"> + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="bb_IsLast" > + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="bb_IsFirst" > + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + </script> + </td> + + <inp2:m_RenderElement name="search_main_toolbar" prefix="cf" grid="SeparateTab"/> + </tr> +</tbody> +</table> + +<inp2:m_include t="incs/custom_blocks"/> +<inp2:m_RenderElement name="grid" PrefixSpecial="cf" IdField="CustomFieldId" SourcePrefix="bb" value_field="Value" per_page="-1" grid="SeparateTab" header_block="grid_column_title_no_sorting" no_init="no_init"/> + +<input type="hidden" name="cf_type" value="<inp2:bb_UnitOption name='ItemType'/>"/> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/topics/topics_custom.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.4.2.5 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/user_item_tab.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/user_item_tab.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/user_item_tab.tpl (revision 12766) @@ -0,0 +1,34 @@ +<inp2:m_RequireLogin permissions="in-portal:user_list.view" system="1"/> +<inp2:m_DefineElement name="catalog_tab"> + <inp2:m_if check="m_ParamEquals" name="tab_init" value="" inverse="inverse"> + <inp2:m_if check="m_ParamEquals" name="tab_init" value="1"> + <div id="topics_div" prefix="<inp2:m_param name="prefix"/>" view_template="in-bulletin/user_item_tab" edit_template="in-bulletin/topics/topics_edit" dep_buttons="new_topic" category_id="-1" class="catalog-tab"><!-- IE minimal height problem fix --></div> + <script type="text/javascript">$Catalog.registerTab('topics');</script> + </inp2:m_if> + <inp2:m_if check="m_ParamEquals" name="tab_init" value="2"> + <inp2:adm_CatalogTab render_as="item_tab" prefix="$prefix" title_property="$title_property"/> + </inp2:m_if> + <inp2:m_else/> + <inp2:m_include t="incs/blocks"/> + <inp2:m_include t="incs/in-portal"/> + <inp2:m_include t="categories/ci_blocks"/> + <inp2:$prefix_InitList grid="$grid_name"/> + + $Catalog.setItemCount('<inp2:m_param name="prefix"/>', '<inp2:{$prefix}_CatalogItemCount/>'); + $Catalog.setCurrentCategory('<inp2:m_param name="prefix"/>', <inp2:m_get name="m_cat_id"/>); + $Catalog.saveSearch('<inp2:m_Param name="prefix"/>', '<inp2:$prefix_SearchKeyword js_escape="1"/>', '<inp2:m_Param name="grid_name"/>'); + + <inp2:m_RenderElement name="grid_js" PrefixSpecial="$prefix" IdField="TopicId" grid="$grid_name" menu_filters="yes"/> + + Grids['<inp2:m_param name="prefix"/>'].SetDependantToolbarButtons( new Array('edit','delete')); + $Catalog.setViewMenu('<inp2:m_param name="prefix"/>'); + #separator# + <!-- topics tab: begin --> + <inp2:m_RenderElement name="kernel_form" form_name="topics_form"/> + <inp2:m_RenderElement name="grid" ajax="1" PrefixSpecial="$prefix" IdField="TopicId" grid="$grid_name" menu_filters="yes"/> + <inp2:m_RenderElement name="kernel_form_end"/> + <!-- topics tab: end --> + </inp2:m_if> +</inp2:m_DefineElement> + +<inp2:bb_InitCatalogTab render_as="catalog_tab" default_grid="Default" radio_grid="Radio"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/user_item_tab.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.7 \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/emoticons/emoticon_edit.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/emoticons/emoticon_edit.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/emoticons/emoticon_edit.tpl (revision 12766) @@ -0,0 +1,74 @@ +<inp2:adm_SetPopupSize width="550" height="400"/> +<inp2:m_include t="incs/header"/> + +<inp2:m_RenderElement name="combined_header" section="in-bulletin:configuration_emoticon" prefix="emoticon" title_preset="emoticon_edit"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('emoticon', '<inp2:emoticon_SaveEvent/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + cancel_edit('emoticon', 'OnCancelEdit','<inp2:emoticon_SaveEvent/>','<inp2:m_Phrase label="la_FormCancelConfirmation" escape="1"/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('reset_edit', '<inp2:m_phrase label="la_ToolTip_Reset" escape="1"/>', function() { + reset_form('emoticon', 'OnReset', '<inp2:m_Phrase label="la_FormResetConfirmation" escape="1"/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( new ToolBarButton('prev', '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', function() { + go_to_id('emoticon', '<inp2:emoticon_PrevId/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('next', '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', function() { + go_to_id('emoticon', '<inp2:emoticon_NextId/>'); + } + ) ); + + + + a_toolbar.Render(); + + <inp2:m_if check="emoticon_IsSingle" > + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="emoticon_IsLast" > + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="emoticon_IsFirst" > + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + </script> + </td> + </tr> +</tbody> +</table> + +<inp2:emoticon_SaveWarning name="grid_save_warning"/> +<inp2:emoticon_ErrorWarning name="form_error_warning"/> + +<div id="scroll_container"> +<table class="edit-form"> + <inp2:m_RenderElement name="inp_id_label" prefix="emoticon" field="EmoticonId" title="la_fld_Id"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="emoticon" field="Name" title="la_fld_Name"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="emoticon" field="KeyStroke" title="la_fld_KeyStroke"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="emoticon" field="Enabled" title="la_fld_Enabled"/> + <inp2:m_RenderElement name="inp_edit_upload" prefix="emoticon" field="EmotionImage" title="la_fld_Image"/> + <inp2:m_RenderElement name="inp_edit_filler"/> +</table> +</div> + +<inp2:m_include t="incs/footer"/> Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/emoticons/emoticon_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.4 \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/emoticons/emoticon_list.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/emoticons/emoticon_list.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/emoticons/emoticon_list.tpl (revision 12766) @@ -0,0 +1,48 @@ +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" section="in-bulletin:configuration_emoticon" prefix="emoticon" title_preset="emoticon_list" pagination="1"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + //do not rename - this function is used in default grid for double click! + function edit() + { + std_edit_item('emoticon', 'in-bulletin/emoticons/emoticon_edit'); + } + + var a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('new_item', '<inp2:m_phrase label="la_ToolTip_Add" escape="1"/>', + function() { + std_precreate_item('emoticon', 'in-bulletin/emoticons/emoticon_edit'); + } ) ); + + a_toolbar.AddButton( new ToolBarButton('edit', '<inp2:m_phrase label="la_ToolTip_Edit" escape="1"/>::<inp2:m_phrase label="la_ShortToolTip_Edit" escape="1"/>', edit) ); + a_toolbar.AddButton( new ToolBarButton('delete', '<inp2:m_phrase label="la_ToolTip_Delete" escape="1"/>', + function() { + std_delete_items('emoticon') + } ) ); + + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( new ToolBarButton('view', '<inp2:m_phrase label="la_ToolTip_View" escape="1"/>', function() { + show_viewmenu(a_toolbar,'view'); + } + ) ); + + a_toolbar.Render(); + </script> + </td> + <inp2:m_RenderElement name="search_main_toolbar" prefix="emoticon" grid="Default"/> + </tr> +</tbody> +</table> + +<inp2:m_RenderElement name="grid" PrefixSpecial="emoticon" IdField="EmoticonId" grid="Default" grid_filters="1"/> +<script type="text/javascript"> + Grids['emoticon'].SetDependantToolbarButtons( new Array('edit','delete') ); +</script> +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/emoticons/emoticon_list.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.5 \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/censorship/censorship_edit.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/censorship/censorship_edit.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/censorship/censorship_edit.tpl (revision 12766) @@ -0,0 +1,68 @@ +<inp2:adm_SetPopupSize width="550" height="400"/> +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" section="in-bulletin:configuration_censorship" prefix="censorship" title_preset="censorship_edit"/> +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('select', '<inp2:m_phrase label="la_ToolTip_Save" escape="1"/>', function() { + submit_event('censorship', '<inp2:censorship_SaveEvent/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('cancel', '<inp2:m_phrase label="la_ToolTip_Cancel" escape="1"/>', function() { + cancel_edit('censorship', 'OnCancelEdit','<inp2:censorship_SaveEvent/>','<inp2:m_Phrase label="la_FormCancelConfirmation" escape="1"/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarButton('reset_edit', '<inp2:m_phrase label="la_ToolTip_Reset" escape="1"/>', function() { + reset_form('censorship', 'OnReset', '<inp2:m_Phrase label="la_FormResetConfirmation" escape="1"/>'); + } + ) ); + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( new ToolBarButton('prev', '<inp2:m_phrase label="la_ToolTip_Prev" escape="1"/>', function() { + go_to_id('censorship', '<inp2:censorship_PrevId/>'); + } + ) ); + a_toolbar.AddButton( new ToolBarButton('next', '<inp2:m_phrase label="la_ToolTip_Next" escape="1"/>', function() { + go_to_id('censorship', '<inp2:censorship_NextId/>'); + } + ) ); + + a_toolbar.Render(); + + <inp2:m_if check="censorship_IsSingle" > + a_toolbar.HideButton('prev'); + a_toolbar.HideButton('next'); + a_toolbar.HideButton('sep1'); + <inp2:m_else/> + <inp2:m_if check="censorship_IsLast" > + a_toolbar.DisableButton('next'); + </inp2:m_if> + <inp2:m_if check="censorship_IsFirst" > + a_toolbar.DisableButton('prev'); + </inp2:m_if> + </inp2:m_if> + </script> + </td> + </tr> +</tbody> +</table> + +<inp2:censorship_SaveWarning name="grid_save_warning"/> +<inp2:censorship_ErrorWarning name="form_error_warning"/> + +<div id="scroll_container"> + <table class="edit-form"> + <inp2:m_RenderElement name="inp_id_label" prefix="censorship" field="CensorshipId" title="la_fld_Id"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="censorship" field="BadWord" title="la_fld_BadWord"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="censorship" field="Replacement" title="la_fld_Replacement"/> + <inp2:m_RenderElement name="inp_edit_filler"/> + </table> +</div> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/censorship/censorship_edit.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.5 \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/censorship/censorship_list.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/censorship/censorship_list.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/censorship/censorship_list.tpl (revision 12766) @@ -0,0 +1,49 @@ +<inp2:m_include t="incs/header"/> +<inp2:m_RenderElement name="combined_header" prefix="censorship" section="in-bulletin:configuration_censorship" title_preset="censorship_list" pagination="1"/> + +<!-- ToolBar --> +<table class="toolbar" height="30" cellspacing="0" cellpadding="0" width="100%" border="0"> +<tbody> + <tr> + <td> + <script type="text/javascript"> + //do not rename - this function is used in default grid for double click! + function edit() + { + std_edit_item('censorship', 'in-bulletin/censorship/censorship_edit'); + } + + var a_toolbar = new ToolBar(); + a_toolbar.AddButton( new ToolBarButton('new_item', '<inp2:m_phrase label="la_ToolTip_Add" escape="1"/>', + function() { + std_precreate_item('censorship', 'in-bulletin/censorship/censorship_edit'); + } ) ); + + a_toolbar.AddButton( new ToolBarButton('edit', '<inp2:m_phrase label="la_ToolTip_Edit" escape="1"/>::<inp2:m_phrase label="la_ShortToolTip_Edit" escape="1"/>', edit) ); + a_toolbar.AddButton( new ToolBarButton('delete', '<inp2:m_phrase label="la_ToolTip_Delete" escape="1"/>', + function() { + std_delete_items('censorship') + } ) ); + + + a_toolbar.AddButton( new ToolBarSeparator('sep1') ); + + a_toolbar.AddButton( new ToolBarButton('view', '<inp2:m_phrase label="la_ToolTip_View" escape="1"/>', function() { + show_viewmenu(a_toolbar,'view'); + } + ) ); + + a_toolbar.Render(); + </script> + </td> + <inp2:m_RenderElement name="search_main_toolbar" prefix="censorship" grid="Default"/> + </tr> +</tbody> +</table> + +<inp2:m_RenderElement name="grid" PrefixSpecial="censorship" IdField="CensorshipId" grid="Default"/> +<script type="text/javascript"> + Grids['censorship'].SetDependantToolbarButtons( new Array('edit','delete') ); +</script> + +<inp2:m_include t="incs/footer"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/censorship/censorship_list.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.5 \ No newline at end of property Index: releases/5.0.2-B1/in-bulletin/admin_templates/category_properties.tpl =================================================================== --- releases/5.0.2-B1/in-bulletin/admin_templates/category_properties.tpl (nonexistent) +++ releases/5.0.2-B1/in-bulletin/admin_templates/category_properties.tpl (revision 12766) @@ -0,0 +1,2 @@ +<inp2:m_RenderElement name="subsection" title="la_In-bulletin"/> +<inp2:m_RenderElement name="inp_edit_box" prefix="c" field="cust_bb_ItemTemplate" type_field="cust_bb_ItemTemplate" title="la_fld_cust_bb_ItemTemplate" size="50"/> Property changes on: releases/5.0.2-B1/in-bulletin/admin_templates/category_properties.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.3.2.1 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/topics.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/topics.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/topics.elm.tpl (revision 12766) @@ -0,0 +1,143 @@ +<inp2:m_DefineElement name="topic_element"> + <tr> + <td colspan="5"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + + <tr> + <td class="forums-cells"> + <table> + <tr> + <td class="topics-icon-padding" valign="top"> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/topics_icon.gif" width="14" height="12" alt="" /><br /> + </td> + <td valign="top"> + <inp2:m_if check="m_Param" name="show_relevance"> + <inp2:RelevanceIndicator on_color="Red" off_color="White" relevance_normal_render_as="search_relevance_normal" relevance_full_render_as="search_relevance_full" /><br/> + </inp2:m_if> + + <a href="<inp2:TopicLink template="__default__"/>"><inp2:Field name="TopicText"/></a> + + <inp2:m_if check="Field" name="IsHot"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/icon_hot.gif" alt="<inp2:m_Phrase name="lu_Hot" no_editing="1"/>"/></inp2:m_if> + <inp2:m_if check="Field" name="IsNew"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/icon_new.gif" alt="<inp2:m_Phrase name="lu_New" no_editing="1"/>"/></inp2:m_if> + <inp2:m_if check="Field" name="IsPop"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/icon_popular.gif" alt="<inp2:m_Phrase name="lu_Pop" no_editing="1"/>"/></inp2:m_if> + <inp2:m_if check="IsEditorsPick"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/icon_pick.gif" alt="<inp2:m_Phrase name="lu_Pick" no_editing="1"/>"/></inp2:m_if> + <inp2:m_if check="IsFavorite"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/icon_favorite.gif" alt="<inp2:m_Phrase name="lu_Favorite" no_editing="1"/>"/></inp2:m_if> + <inp2:VotesIndicator render_as="rating_element"/> + </td> + </tr> + </table> + </td> + <td width="100" class="forums-cells"> + <inp2:Field name="OwnerId"/> + </td> + <td width="150" class="forums-cells"> + <inp2:Field name="LastPostDate" format="_regional_DateFormat"/> <inp2:Field name="LastPostDate" format="_regional_TimeFormat"/> + <!--<inp2:m_phrase name="lu_By"/> <inp2:Field name="LastPoster"/>--> + </td> + <td width="100" class="forums-cells"> + <inp2:TopicReplies/> + </td> + <td width="70" class="forums-cells"> + <inp2:Field name="Views"/> + </td> + </tr> +</inp2:m_DefineElement> + +<!--## RELATED TOPIC ELEMENT ##--> +<inp2:m_DefineElement name="related_topic_element"> + <tr> + <td width="25"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/topics_icon.gif" width="14" height="12" alt="" /></td> + <td><a href="<inp2:TopicLink template="__default__"/>" class="text-title"><inp2:Field name="TopicText"/></a></td> + </tr> +</inp2:m_DefineElement> +<!--## // RELATED TOPIC ELEMENT ##--> + +<inp2:m_DefineElement name="my_topic_element"> + <tr> + <td colspan="4"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + <tr class="topic-prewiew-padding-cell"> + <td> + <a href="<inp2:TopicLink template="__default__"/>"><inp2:Field name="TopicText"/></a> + + <inp2:m_if check="Field" name="IsHot"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/icon_hot.gif" alt="<inp2:m_Phrase name="lu_Hot" no_editing="1"/>"/></inp2:m_if> + <inp2:m_if check="Field" name="IsNew"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/icon_new.gif" alt="<inp2:m_Phrase name="lu_New" no_editing="1"/>"/></inp2:m_if> + <inp2:m_if check="Field" name="IsPop"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/icon_popular.gif" alt="<inp2:m_Phrase name="lu_Pop" no_editing="1"/>"/></inp2:m_if> + <inp2:m_if check="IsEditorsPick"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/icon_pick.gif" alt="<inp2:m_Phrase name="lu_Pick" no_editing="1"/>"/></inp2:m_if> + <inp2:m_if check="IsFavorite"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/icon_favorite.gif" alt="<inp2:m_Phrase name="lu_Favorite" no_editing="1"/>"/></inp2:m_if> + <inp2:VotesIndicator render_as="rating_element"/> + + <br /> + (<inp2:m_phrase name="lu_By"/>: <inp2:Field name="OwnerId"/>) + + <br /> + + <inp2:m_phrase name="lu_fld_PrimaryCategory"/>: <strong><inp2:CategoryPath separator=">" render_as="category_path_element"/></strong><br /> + + <br /> + <table> + <tr> + <td style="padding:0px;"> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/ic_details.gif" width="14" height="13" alt="" /> <a href="<inp2:TopicLink template="__default__"/>"><inp2:m_phrase name="lu_btn_Details"/></a> + </td> + + <inp2:m_if check="HasPermission" permissions="TOPIC.MODIFY|TOPIC.MODIFY.PENDING|TOPIC.OWNER.MODIFY|TOPIC.OWNER.MODIFY.PENDING"> + <td style="padding:0px;"> + | <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/ic_edit.gif" width="11" height="10" alt="" /> <a href="<inp2:TopicLink template="in-bulletin/topics/modify_topic"/>"><inp2:m_phrase name="lu_btn_Modify"/></a> + </td> + </inp2:m_if> + + <inp2:m_if check="HasPermission" permissions="TOPIC.DELETE|TOPIC.OWNER.DELETE"> + <td style="padding:0px;"> + | <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/ic_delete.gif" width="11" height="10" alt="" /> <a href="<inp2:TopicLink bb_event="OnDelete"/>" onclick="return confirm('<inp2:m_phrase name="lu_DeleteTopicConfirm" js_escape="1"/>');"><inp2:m_phrase name="lu_btn_Delete"/></a> + </td> + </inp2:m_if> + </tr> + </table> + + </td> + <td> + <inp2:TopicReplies/> + </td> + <td> + <inp2:Field name="Views"/> + </td> + <td align="center"> + <inp2:Field name="LastPostDate" format="_regional_DateFormat"/><br /> + <inp2:Field name="LastPostDate" format="_regional_TimeFormat"/><br /> + <inp2:m_phrase name="lu_By"/> <inp2:Field name="LastPoster"/> + </td> + </tr> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="big_button" title="" icon=""> + <table style="margin: 0px;"> + <tr valign="top"> + <td class="big-button-left-border"> + <img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/big_buttons/top_left_corner.gif" width="11" height="16" alt="" /><br /> + </td> + <td class="big-button-text"> + <a href="<inp2:m_Param name="content"/>"><inp2:m_phrase name="$title"/></a> + </td> + <td> + <a href="<inp2:m_Param name="content"/>"><img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/big_buttons/icons/<inp2:m_param name="icon"/>.gif" alt=""></a><br /> + </td> + </tr> + + <tr valign="top" class="big-button-bottom"> + <td> + <img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/big_buttons/bottom_left_corner.gif" width="11" height="10" alt="" /><br /> + </td> + <td> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /><br /> + </td> + <td align="right"> + <img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/big_buttons/bottom_right_corner.gif" width="11" height="10" alt="" /><br /> + </td> + </tr> + </table> +</inp2:m_DefineElement> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/topics.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/polls.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/polls.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/polls.elm.tpl (revision 12766) @@ -0,0 +1,65 @@ +<!-- POllS --> +<inp2:poll_InitList list_name="list_polls" per_page="-1"/> + +<inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_Polls"/> +</inp2:m_Capture> + +<inp2:m_DefineElement name="answer_element"> +<li style="margin-bottom:5px;"> + <input type="radio" name="poll_<inp2:Field name="PollId"/>" onclick="getElementById('selected_opt_<inp2:Field name="PollId"/>').value='<inp2:Field name="AnswerId"/>';getElementById('vote_button').disabled=false;"> <inp2:Field name="Answer"/> +</li> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="poll_element"> +<div style="margin-bottom:25px;"> + <div style="text-align:left;"> + <strong><inp2:Field name="Question"/></strong> + </div> + <inp2:m_if check="Field" name="Image"> + <br/> + <a href="<inp2:Field name="Image" format="resize:640x480"/>" class="thickbox" title="<inp2:Field field="Question"/>"> + <img src="<inp2:Field name="Image" format="resize:100x100"/>" border="0" alt="<inp2:Field field="Question"/>"></a> + </inp2:m_if> + + <div id="pollvote_<inp2:Field name="PollId"/>" style="text-align:left; margin-top:10px; margin-bottom:10px"> + <inp2:m_if check="Field" name="RequireLogin"> + <inp2:m_include t="in-bulletin/elements/side_boxes/poll_results.elm"/> + <div style="padding-top:5px; font-style: italic; font-weight: bold; text-align: center"> + <inp2:m_phrase name="lu_text_GuestsLoginToVote"/> + </div> + <inp2:m_else/> + <inp2:m_if check="HasVoted"> + <inp2:m_include t="in-bulletin/elements/side_boxes/poll_results.elm"/> + <div style="padding-top:5px; font-style: italic; font-weight: bold; text-align: center"> + <inp2:m_phrase name="lu_text_AlreadyVoted"/> + </div> + <inp2:m_else/> + <ul style="list-style-type: none; padding-left: 0px;"><inp2:Field name="PollId" result_to_var="poll_id"/> + <inp2:poll-answer_PrintList list_name="list_answers" render_as="answer_element" direction="H" poll_id="$poll_id" requery="1"/> + </ul> + <div style="text-align: center; margin-top:8px; "> + <input type="hidden" id="selected_opt_<inp2:Field name="PollId"/>" name="selected_opt_<inp2:Field name="PollId"/>"/> + <input class="button" type="button" id="vote_button" disabled onclick="aPollManager.makeVote('poll', <inp2:Field name="PollId"/>, getElementById('selected_opt_<inp2:Field name="PollId"/>').value); return false;" value="<inp2:m_Phrase label="lu_btn_Vote" no_editing="1"/>"/> + </div> + </inp2:m_if> + </inp2:m_if> + </div> + + <!--## USER COMMENTS ##--> + <inp2:m_if check="Field" name="AllowComments"> + <div style="text-align:center;"> + <inp2:m_ifnot check="HasCommented"> + <a href="<inp2:CommentsLink t="in-bulletin/elements/content_boxes/add_poll_comment.elm" height="480" width="480"/>" title="<inp2:Field name="Question"/>" class="thickbox"/><inp2:m_phrase name="lu_title_AddComment"/></a><br> + </inp2:m_ifnot> + <a href="<inp2:CommentsLink t="in-bulletin/elements/content_boxes/poll_comments.elm" height="480" width="480"/>" title="<inp2:Field name="Question"/>" class="thickbox"/><inp2:m_phrase name="lu_title_ViewComments"/></a> + </div> + </inp2:m_if> + <!--## //USER COMMENTS ##--> +</div> +</inp2:m_DefineElement> + +<div style="width:100%; text-align:center;"> + <inp2:poll_PrintList list_name="list_polls" render_as="poll_element" direction="H"/> +</div> +<!-- //POllS --> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/polls.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/action_box.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/action_box.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/action_box.elm.tpl (revision 12766) @@ -0,0 +1,35 @@ +<inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_ActionBox"/> +</inp2:m_Capture> + +<table width="100%" style="border-width: 0px;"> + <inp2:m_RenderElement name="box_element" template="platform/categories/suggest_category" title="lu_SuggestCategory" prefix="bb"/> + <inp2:m_RenderElement name="box_element" template="in-bulletin/topics/new_topic" title="lu_NewTopic" prefix="bb"/> + + <inp2:m_if check="m_Param" name="item_actions"> + <tr> + <td>-</td> + <td> + <inp2:m_if check="bb_IsFavorite"> + <a href="<inp2:bb_FavoriteToggleLink/>"> + <inp2:m_phrase name="lu_btn_RemoveFromFavorites"/> + </a> + <inp2:m_else/> + <a href="<inp2:bb_FavoriteToggleLink template="platform/my_account/my_favorites"/>"> + <inp2:m_phrase name="lu_btn_AddToFavorites"/> + </a> + </inp2:m_if> + </td> + </tr> + + <!--## + <tr> + <td>-</td> + <td> + <a href="<inp2:bb_TopicLink template="in-bulletin/topics/rate"/>" class="static"><inp2:m_phrase name="lu_btn_RateThisTopic"/></a> + </td> + </tr> + ##--> + + </inp2:m_if> +</table> Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/action_box.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/poll_results.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/poll_results.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/poll_results.elm.tpl (revision 12766) @@ -0,0 +1,8 @@ +<inp2:m_DefineElement name="answer_element"> +<li> + <inp2:Field name="Answer"/> – <inp2:Field name="VotesQty"/> +</li> +</inp2:m_DefineElement> +<ul style="list-style-type: none; padding-left: 0px;"> + <inp2:poll-answer_PrintList list_name="list_answers" render_as="answer_element" direction="H" sort_by="VotesQty,Desc" requery="1"/> +</ul> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/side_boxes/poll_results.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/add_poll_comment.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/add_poll_comment.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/add_poll_comment.elm.tpl (revision 12766) @@ -0,0 +1,48 @@ +<inp2:m_DefineElement name="content"> + <inp2:poll-comment_PresetFormFields/> + <br/> + <form method="post" id="poll_comment_form" action="<inp2:m_Link height="480" width="480" pass="m,poll,poll-comment" poll-comment_event="OnCreate" />"> + <table class="form-data fullwidth"> + <inp2:m_ifnot check="m_LoggedIn"> + <inp2:m_RenderElement name="inp_edit_box" prefix="poll-comment" field="GuestName" title="lu_fld_Name" style="width:200px"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="poll-comment" field="GuestEmail" title="lu_fld_Email" style="width:200px"/> + </inp2:m_ifnot> + <inp2:m_RenderElement name="inp_edit_textarea" prefix="poll-comment" field="CommentBody" rows="8" cols="40" title="lu_fld_Comment" is_last="1"/> + <inp2:m_RenderElement design="inp_edit_buttons"> + <input type="hidden" name="success_template" value="in-bulletin/elements/content_boxes/poll_comments.elm" /> + <input class="button" id="add_comment_btn" type="button" name="events[poll-comment][OnCreate]" value="<inp2:m_Phrase label="lu_btn_Create" no_editing="1"/>" /> + <input class="button" type="reset" name="reset" value="<inp2:m_Phrase label="lu_btn_Reset" no_editing="1"/>" /> + </inp2:m_RenderElement> + </table> + </form> + <script language="javascript" type="text/javascript"> + $(document).ready( + function() { + $('#add_comment_btn').click( + function ($e) { + TB.show( + { + url: $('#poll_comment_form').attr('action'), + postParams: $('#poll_comment_form').serializeArray(), + showCallback: function() { + var $match_redirect = new RegExp('^#redirect#(.*)').exec($('#TB_ajaxContent').html()); + if ($match_redirect != null) { + // redirect to external template requested + TB.show( {url: $match_redirect[1]+'&height=480&width=480'} ); + return true; + } + } + } + ); + } + ) + } + ); + + + + </script> + +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design_ajax.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/add_poll_comment.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.3 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/poll_comments.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/poll_comments.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/poll_comments.elm.tpl (revision 12766) @@ -0,0 +1,27 @@ +<inp2:m_DefineElement name="content"> + + <inp2:m_DefineElement name="poll_comment_element"> + <li style="margin-bottom: 10px;"> + <inp2:Field name="CommentBody"/> + <inp2:Field name="CreatedOn"/> + <inp2:Field name="GuestEmail"/> + <inp2:Field name="GuestName"/> + <inp2:Field name="CreatedById"/> + </li> + </inp2:m_DefineElement> + <br/> + + <inp2:poll-comment_InitList list_name="list_comments" direction="H" sort_by="CreatedOn,Desc" requery="1"/> + + <inp2:m_if check="poll-comment_TotalRecords list_name="list_comments"> + <ul> + <inp2:poll-comment_PrintList list_name="list_comments" render_as="poll_comment_element" direction="H"/> + </ul> + <inp2:m_else/> + <div align="center"> + <a href="<inp2:poll_CommentsLink t="in-bulletin/elements/content_boxes/add_poll_comment.elm"/>?height=640&width=480" title="<inp2:poll_Field name="Question"/>" class="thickbox"><inp2:m_phrase name="lu_text_NoComments"/></a> + </div> + </inp2:m_if> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design_ajax.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/poll_comments.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.3 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/search_results.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/search_results.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/search_results.elm.tpl (revision 12766) @@ -0,0 +1,53 @@ +<inp2:m_RenderElement design="content_box" data_exists="1"> + <inp2:bb_InitList list_name="topic_search_results" types="search" parent_cat_id="any" recursive="1" per_page="short_list"/> + + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_TopicSearchResults"/> (<inp2:bb_TotalRecords list_name="topic_search_results" />) + </inp2:m_Capture> + + <inp2:m_include template="in-bulletin/elements/topics.elm"/> + <inp2:m_include template="platform/elements/search_results.elm"/> + + <table class="fullwidth"> + <tr> + <td class="category-statistics"> + <inp2:m_phrase name="lu_TotalTopics"/>: <inp2:bb_TotalRecords list_name="topic_search_results"/> | <span class="static"><inp2:m_phrase name="lu_AddedToday"/>: 0</span> + </td> + <td class="category-statistics static" align="right"> + <inp2:m_phrase name="lu_TopicsUpdated"/>: 05/17/2006 + </td> + </tr> + </table> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="4" alt="" /><br /> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/grey_pix.gif" width="100%" height="1" alt="" /><br /> + <br /> + + <table class="fullwidth"> + <tr> + <td colspan="5"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + <tr class="sub-section-header"> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Topics"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Poster"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Date"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Replies"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Views"/></td> + </tr> + + <inp2:bb_ListTopics list_name="topic_search_results" render_as="topic_element" show_relevance="1"/> + </table> + + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /><br /></div> + + <inp2:m_if check="bb_TotalRecords" list_name="topic_search_results"> + <inp2:m_Set items_found="1"/> + </inp2:m_if> + + <inp2:m_DefineElement name="more_link"> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="5" alt="" /><br /> + <a href="<inp2:m_Link template="in-bulletin/topics/search_results" />"><inp2:m_Phrase label="lu_More"/>...</a> + </inp2:m_DefineElement> + <inp2:bb_MoreLink list_name="topic_search_results" render_as="more_link" /> +</inp2:m_RenderElement> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/search_results.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.5 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/my_favorites.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/my_favorites.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/my_favorites.elm.tpl (revision 12766) @@ -0,0 +1,33 @@ +<!-- favorite topics --> +<inp2:m_RenderElement design="content_box" data_exists="1"> + <inp2:bb_InitList list_name="favorite_topics" types="favorites" parent_cat_id="0" recursive="1"/> + + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_FavoriteTopics"/> (<inp2:bb_TotalRecords list_name="favorite_topics"/>) + </inp2:m_Capture> + + <inp2:m_include template="in-bulletin/elements/topics.elm"/> + + <table class="fullwidth"> + <tr> + <td colspan="5"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + <tr class="sub-section-header"> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Topics"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Poster"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Date"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Replies"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Views"/></td> + </tr> + <inp2:bb_ListTopics list_name="favorite_topics" render_as="topic_element" no_table="1"/> + </table> + + <inp2:m_if check="bb_TotalRecords" list_name="favorite_topics"> + <inp2:m_Set favorites_found="1"/> + </inp2:m_if> + + <inp2:m_include template="platform/elements/pagination.elm" prefix="bb" list_name="favorite_topics"/> +</inp2:m_RenderElement> +<!-- // favorite topics --> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/my_favorites.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.4 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/contact_user.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/contact_user.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/contact_user.elm.tpl (revision 12766) @@ -0,0 +1,8 @@ +<tr> + <td style="width:140px"> </td> + <td colspan="2"> + <br /> + <a href="<inp2:private-message_SendMessageLink template="in-bulletin/my_account/private_messages/new_message"/>"><inp2:m_phrase name="lu_btn_SendMessage"/></a> + <br /><br /> + </td> +</tr> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/contact_user.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/category_topics.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/category_topics.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/category_topics.elm.tpl (revision 12766) @@ -0,0 +1,65 @@ +<!-- topics in category --> +<inp2:m_DefineElement name="no_topics"> + <inp2:m_phrase name="lu_NoTopics"/> +</inp2:m_DefineElement> + +<inp2:m_RenderElement design="content_box" data_exists="1" block_no_data="no_topics"> + <inp2:bb_InitList list_name="items_in_current_cat" /> + + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_Topics"/> (<inp2:bb_TotalRecords list_name="items_in_current_cat"/>) + </inp2:m_Capture> + + <inp2:m_include template="in-bulletin/elements/topics.elm"/> + + <!-- + <inp2:m_if check="bb_HasPermission" permissions="TOPIC.ADD|TOPIC.ADD.PENDING"> + <table> + <td> + [<a href="<inp2:bb_SuggestItemLink template="in-bulletin/topics/new_topic"/>"><inp2:m_phrase name="lu_btn_NewTopic"/></a>] + </td> + </table> + </inp2:m_if> + --> + + <table> + <tr> + <td class="category-statistics"> + <inp2:bb-post_ItemCount/> <inp2:m_Phrase name="lu_posts"/> <inp2:m_Phrase name="lu_in"/> <inp2:bb_ItemCount/> <inp2:m_Phrase name="lu_topics"/> | <inp2:m_Phrase name="lu_AddedToday"/>: <inp2:bb_ItemCount today="1"/> <inp2:m_Phrase name="lu_topics"/>, <inp2:bb-post_ItemCount today="1"/> <inp2:m_Phrase name="lu_posts"/> + </td> + </tr> + </table> + <br /> + + <table width="100%"> + <tr> + <td colspan="5"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + <tr class="sub-section-header"> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Topics"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Poster"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Date"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Replies"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Views"/></td> + </tr> + + <inp2:bb_ListTopics list_name="items_in_current_cat" no_table="1" render_as="topic_element"/> + </table> + + <br /> + + <inp2:m_include template="platform/elements/pagination.elm" prefix="bb" list_name="items_in_current_cat"/> + + <inp2:m_if check="bb_HasPermission" permissions="TOPIC.ADD|TOPIC.ADD.PENDING"> + <table> + <td> + <inp2:m_RenderElement design="big_button" title="lu_btn_NewTopic" icon="btn_reply"> + <inp2:bb_SuggestItemLink template="in-bulletin/topics/new_topic"/> + </inp2:m_RenderElement> + </td> + </table> + </inp2:m_if> +</inp2:m_RenderElement> +<!-- // topics in category --> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/category_topics.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.3 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/related_items.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/related_items.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/related_items.elm.tpl (revision 12766) @@ -0,0 +1,7 @@ +<!--## RELATED TOPICS ##--> + <inp2:m_include template="in-bulletin/elements/topics.elm"/> + + <table> + <inp2:bb_PrintList2 render_as="related_topic_element" types="related" related_to="$related_to" parent_cat_id="any" no_table="1"/> + </table> +<!--## // RELATED TOPICS ##--> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/content_boxes/related_items.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.4 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/.smsignore =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/.smsignore (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/.smsignore (revision 12766) @@ -0,0 +1 @@ +.*\.xml\.tpl \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/.smsignore ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/html_head.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/html_head.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/html_head.elm.tpl (revision 12766) @@ -0,0 +1,6 @@ +<link rel="stylesheet" rev="stylesheet" href="<inp2:m_TemplatesBase module="In-Bulletin"/>inc/styles.css" type="text/css" /> +<script type="text/javascript" src="<inp2:m_TemplatesBase module="In-Bulletin"/>inc/script.js"></script> + +<script type="text/javascript"> + var aPollManager = new PollManager('<inp2:m_Link template="in-bulletin/elements/side_boxes/poll_results.elm" events[#PREFIX#]="OnMakeVote" poll_id="#POLL_ID#" option_id="#OPTION_ID#" no_amp="1"/>'); +</script> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/html_head.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/posts.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/posts.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/posts.elm.tpl (revision 12766) @@ -0,0 +1,150 @@ +<inp2:m_DefineElement name="smiley_element"> + <img class="emoticon" src="<inp2:m_param name="smiley_url"/>" /> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="bbcode_element"> + <div class="bbcode"><inp2:m_param name="bb_code"/></div> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="post_quote_element"> +<table class="quoted-reply fullwidth"> + <tr> + <td><inp2:Field name="PosterAlias"/> <inp2:m_Phrase name="lu_wrote"/>:</td> + <td align="right"><inp2:Field name="CreatedOn"/></td> + </tr> + <tr> + <td colspan="2"> + <inp2:PostBody quote_render_as="post_quote_element" smiley_render_as="smiley_element" bbcode_render_as="bbcode_element"/> + </td> + </tr> +</table> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="small_button" title="" confirm_phrase="" icon=""> + <table style="margin: 0px;"> + <tr valign="top"> + <td> + <img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/small_buttons/top_left_corner.gif" width="5" height="27" alt="" /><br /> + </td> + <td class="small-button-text"> + + <a href="<inp2:m_Param name="content"/>"<inp2:m_if check="m_Param" name="confirm_phrase"> onclick="return confirm('<inp2:m_phrase name="$confirm_phrase" js_escape="1"/>');"</inp2:m_if>><inp2:m_phrase name="$title"/></a> + </td> + <td> + <a href="<inp2:m_Param name="content"/>"<inp2:m_if check="m_Param" name="confirm_phrase"> onclick="return confirm('<inp2:m_phrase name="$confirm_phrase" js_escape="1"/>');"</inp2:m_if>><img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/small_buttons/icons/<inp2:m_param name="icon"/>.gif"></a><br /> + </td> + </tr> + <tr valign="top" class="small-button-bottom"> + <td> + <img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/small_buttons/bottom_left_corner.gif" width="5" height="5" alt="" /><br /> + </td> + <td> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /><br /> + </td> + <td align="right"> + <img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/small_buttons/bottom_right_corner.gif" width="5" height="5" alt="" /><br /> + </td> + </tr> + </table> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="post_element"> + <tr> + <td colspan="2"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /><br /></div> + </td> + </tr> + <tr> + <td class="<inp2:m_odd_even odd="post-background-2" even="post-background-1" readonly="1"/>" valign="top"> + <table> + <tr> + <td style="padding:0px 5px" valign="top" width="21" class="post-icon-padding-right"> + <img src="<inp2:m_TemplatesBase module="In-bulletin"/>img/icon_post_1.gif" width="21" height="24" alt="" /> + </td> + <td style="padding:0px"> + <inp2:m_if check="PosterFound"> + <a href="<inp2:ProfileLink template="platform/my_account/public_profile"/>"><strong><inp2:Field name="PosterAlias"/></strong></a> + + <br /> + <inp2:PosterField name="PrimaryGroup"/><br /><br /> + + <inp2:Image render_as="image_element" primary="1" DefaultImage="platform/img/no_picture.gif" MaxWidth="60"/><br clear="all"/><br /><br /> + + <inp2:m_phrase name="lu_Joined"/>: <inp2:PosterField name="CreatedOn" format="_regional_DateFormat"/><br /> + <inp2:m_phrase name="lu_Posts"/>: <inp2:PosterPostsCount/><br /> + <inp2:m_phrase name="lu_Location"/>: <inp2:PosterField name="Country"/><br /> + <inp2:m_else/> + <inp2:m_if check="Field" name="PosterAlias"> + <strong><inp2:Field name="PosterAlias"/></strong> + <inp2:m_else/> + <inp2:m_phrase name="lu_Guest"/> + </inp2:m_if> + </inp2:m_if> + </td> + </tr> + </table> + + </td> + <td class="<inp2:m_odd_even odd="post-background-2" even="post-background-1"/>" valign="top"> + <table class="fullwidth"> + <tr> + <td class="post-control"> + <strong><inp2:m_phrase name="lu_Posted" /></strong>: <inp2:Field name="CreatedOn"/> + <br /><br /> + </td> + <td class="post-control" align="right"> + + + + + <table class="no-padding"> + <tr> + + <inp2:m_if check="HasPermission" permissions="TOPIC.REPLY.OWNER.MODIFY|TOPIC.REPLY.MODIFY"> + <td> + <inp2:m_RenderElement design="small_button" title="lu_btn_ModifyPost" confirm_phrase="" icon="btn_sm_modify" pass_params="1"> + <inp2:PostLink template="in-bulletin/topics/modify_post"/> + </inp2:m_RenderElement> + </td> + </inp2:m_if> + + <inp2:m_if check="HasPermission" permissions="TOPIC.REPLY.OWNER.DELETE|TOPIC.REPLY.DELETE"> + <td style="padding-left:5px"> + <inp2:m_RenderElement design="small_button" title="lu_btn_DeletePost" confirm_phrase="lu_DeletePostConfirm" icon="btn_sm_delete" pass_params="1"> + <inp2:PostLink bb-post_event="OnDelete"/> + </inp2:m_RenderElement> + </td> + </inp2:m_if> + + <inp2:m_if check="bb_HasPermission" permissions="TOPIC.REPLY.ADD"> + <td style="padding-left:5px"> + <inp2:m_RenderElement design="small_button" title="lu_btn_ReplyQuoted" confirm_phrase="" icon="btn_sm_quoted" pass_params="1"> + <inp2:ReplyQuotedLink template="in-bulletin/topics/new_topic_reply"/> + </inp2:m_RenderElement> + </td> + </inp2:m_if> + + </tr> + </table> + </td> + </tr> + </table> + <br /> + + <inp2:m_if check="PostSubject"> + <strong><inp2:PostSubject/></strong><br /> + </inp2:m_if> + + <inp2:PostBody quote_render_as="post_quote_element" smiley_render_as="smiley_element" bbcode_render_as="bbcode_element"/> + <br /><br /> + + <inp2:m_if check="ShowPostSignature"> + <div> + ------------------------------------------------------------------------------<br /> + <inp2:PostSignature smiley_render_as="smiley_element" bbcode_render_as="bbcode_element"/><br /> + <br /> + </div> + </inp2:m_if> + </td> + </tr> +</inp2:m_DefineElement> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/posts.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/private_messages.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/private_messages.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/private_messages.elm.tpl (revision 12766) @@ -0,0 +1,106 @@ +<inp2:m_DefineElement name="folder_tab"> + <td class="<inp2:m_if check="private-message_FolderSelected" folder="$folder">active-tab<inp2:m_else/>inactive-tab</inp2:m_if>"> + <a href="<inp2:private-message_FolderLink folder="$folder"/>"><inp2:m_phrase name="$title"/></a> + </td> + <td width="8"> + + </td> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="folder_tabs"> + <a href="<inp2:m_Link template="in-bulletin/my_account/private_messages/new_message"/>"><inp2:m_Phrase name="lu_btn_NewPrivateMessage"/></a><br /><br /> + + <table class="fullwidth tab-bottom-line"> + <tr> + <td class="tab-left-padding"> + <table> + <tr> + <inp2:m_RenderElement name="folder_tab" folder="inbox" title="lu_folder_Inbox"/> + <inp2:m_RenderElement name="folder_tab" folder="sent" title="lu_folder_Sent"/> + </tr> + </table> + </td> + </tr> + </table> + + <br /> + <br /> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="small_button" title="" icon=""> + <table style="margin: 0px;"> + <tr valign="top"> + <td> + <img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/small_buttons/top_left_corner.gif" width="5" height="27" alt="" /><br /> + </td> + <td class="small-button-text"> + <a href="<inp2:m_Param name="content"/>" <inp2:m_param name="icon"/>><inp2:m_phrase name="$title"/></a> + </td> + <td> + <a href="<inp2:m_Param name="content"/>"><img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/small_buttons/icons/<inp2:m_param name="icon"/>.gif"></a><br /> + </td> + </tr> + <tr valign="top" class="small-button-bottom"> + <td> + <img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/small_buttons/bottom_left_corner.gif" width="5" height="5" alt="" /><br /> + </td> + <td> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /><br /> + </td> + <td align="right"> + <img src="<inp2:m_TemplatesBase module="In-Bulletin"/>img/small_buttons/bottom_right_corner.gif" width="5" height="5" alt="" /><br /> + </td> + </tr> + </table> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="no_private_messages"> + <inp2:m_RenderElement name="folder_tabs"/> + + <inp2:m_Phrase name="lu_NoPrivateMessages"/> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="smiley_element"> + <img class="emoticon" src="<inp2:m_param name="smiley_url"/>" /> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="bbcode_element"> + <div class="bbcode"><inp2:m_param name="bb_code"/></div> +</inp2:m_DefineElement> + +<inp2:m_DefineElement name="private_message_element"> + <tr> + <td colspan="3"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + <tr class="listing-row"> + <td> + <inp2:m_if check="FolderSelected" folder="inbox"> + <a href="<inp2:ProfileLink template="platform/my_account/public_profile" type="From"/>"><strong><inp2:Field name="FromName"/></strong></a> + <inp2:m_if check="Field" name="FromFullName"> + (<inp2:Field name="FromFullName"/>) + </inp2:m_if> + <inp2:m_else/> + <a href="<inp2:ProfileLink template="platform/my_account/public_profile" type="To"/>"><strong><inp2:Field name="ToName"/></strong></a> + <inp2:m_if check="Field" name="ToFullName"> + (<inp2:Field name="ToFullName"/>) + </inp2:m_if> + </inp2:m_if> + </td> + <td> + <a href="<inp2:ItemLink template="in-bulletin/my_account/private_messages/view_message"/>"> + <inp2:m_if check="IsNew"> + <span class="new-private-message"> + <inp2:MessageSubject empty_title="lu_NoSubject"/> + </span> + <inp2:m_else/> + <inp2:MessageSubject empty_title="lu_NoSubject"/> + </inp2:m_if> + </a> + </td> + <td> + <inp2:Field name="CreatedOn"/> + </td> + </tr> +</inp2:m_DefineElement> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/private_messages.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/categories.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/categories.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/categories.elm.tpl (revision 12766) @@ -0,0 +1,49 @@ +<inp2:m_DefineElement name="category_element"> + <inp2:m_if check="SubCatCount"> + <tr> + <td colspan="4"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + + <tr> + <td class="forums-subheaders" colspan="4"> + <a href="<inp2:CategoryLink template="__default__"/>"><strong><inp2:Field name="Name"/></strong></a> + </td> + </tr> + <inp2:ListCategories render_as="category_element" per_page="-1" no_table="1" requery="1"/> + <inp2:m_else/> + <tr> + <td colspan="4"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + <tr> + <td class="forums-cells"> + <table> + <tr> + <td class="forums-icon-cell"> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/forums_dir.gif" width="20" height="24" alt="" /><br /> + </td> + <td> + <a href="<inp2:CategoryLink template="__default__"/>"><inp2:Field name="Name"/></a><br /> + <inp2:Field name="Description" nl2br="1"/> + </td> + </tr> + </table> + </td> + + <td class="forums-cells"> + <inp2:CategoryItemCount prefix="bb"/> + </td> + + <td class="forums-cells"> + <inp2:CategoryItemCount prefix="bb-post"/> + </td> + + <td class="forums-cells"> + <inp2:Field name="Modified" format="_regional_DateFormat"/> <inp2:Field name="Modified" format="g:i a"/> + </td> + </tr> + </inp2:m_if> +</inp2:m_DefineElement> Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/categories.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/forms.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/elements/forms.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/elements/forms.elm.tpl (revision 12766) @@ -0,0 +1,32 @@ +<inp2:m_DefineElement name="inp_edit_textarea_bb" style="" is_last="0"> + <tr class="<inp2:m_odd_even odd="table_color1" even="table_color2"/>"> + <inp2:m_RenderElement name="inp_edit_field_caption" prefix="$prefix" field="$field" title="$title"/> + <td class="field-value"> + <a href="<inp2:m_Link/>" onclick="insertTags('[B]', '[/B]', 'bold text', '<inp2:{$prefix}_InputName field="$field"/>'); return false;"> + <img src="<inp2:m_TemplatesBase module="in-bulletin"/>img/toolbar/bold_icon.png" border="0"/> + </a> + <a href="<inp2:m_Link/>" onclick="insertTags('[I]', '[/I]', 'italic text', '<inp2:{$prefix}_InputName field="$field"/>'); return false;"> + <img src="<inp2:m_TemplatesBase module="in-bulletin"/>img/toolbar/italic_icon.png" border="0"/> + </a> + <a href="<inp2:m_Link/>" onclick="insertTags('[U]', '[/U]', 'underlined text', '<inp2:{$prefix}_InputName field="$field"/>'); return false;"> + <img src="<inp2:m_TemplatesBase module="in-bulletin"/>img/toolbar/underline_icon.png" border="0"/> + </a> + <a href="<inp2:m_Link/>" onclick="insertTags('[URL HREF=', ']link name[/URL]', 'link url', '<inp2:{$prefix}_InputName field="$field"/>'); return false;"> + <img src="<inp2:m_TemplatesBase module="in-bulletin"/>img/toolbar/link_icon.png" border="0"/> + </a> + <a href="<inp2:m_Link/>" onclick="insertTags('[IMG BORDER=1 SRC=', '][/IMG]', 'image url', '<inp2:{$prefix}_InputName field="$field"/>'); return false;"> + <img src="<inp2:m_TemplatesBase module="in-bulletin"/>img/toolbar/image_icon.png" border="0"/> + </a> + <a href="<inp2:m_Link/>" onclick="insertTags('[CODE]', '[/CODE]', 'code text', '<inp2:{$prefix}_InputName field="$field"/>'); return false;"> + <img src="<inp2:m_TemplatesBase module="in-bulletin"/>img/toolbar/code_icon.png" border="0"/> + </a> + + <br /> + <inp2:m_if check="{$prefix}_HasError" field="$field"> + <span class="field-error"><inp2:{$prefix}_Error field="$field"/></span><br /> + </inp2:m_if> + <textarea class="input-textarea" tabindex="<inp2:m_get param="tab_index"/>" name="<inp2:{$prefix}_InputName field="$field"/>" id="<inp2:{$prefix}_InputName field="$field"/>" cols="<inp2:m_param name="cols"/>" rows="<inp2:m_param name="rows"/>" style="<inp2:m_param name="style"/>"><inp2:{$prefix}_Field field="$field"/></textarea> + </td> + </tr> + <inp2:m_RenderElement name="inp_edit_field_separator" is_last="$is_last"/> +</inp2:m_DefineElement> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/elements/forms.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/new_message.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/new_message.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/new_message.tpl (revision 12766) @@ -0,0 +1,76 @@ +<!--## +<NAME>Write Private Message</NAME> +<DESC>Write Private Message Form</DESC> +<SECTION>My Account||Private Messages</SECTION> +##--> + +<inp2:m_RequireLogin login_template="platform/login/register"/> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_NewPrivateMessage"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/action_box.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_MyAccount,lu_title_PrivateMessages,lu_title_NewPrivateMessage" templates="platform/my_account/my_account,in-bulletin/my_account/private_messages/private_messages,in-bulletin/my_account/private_messages/new_message"/> + </div> + <div class="movable-element"> + <!-- new private message --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_NewPrivateMessage"/> + </inp2:m_Capture> + + <inp2:private-message_PresetFormFields/> + <span class="field-required">*</span> <inp2:m_phrase name="lu_IndicatesRequired"/><br /><br /> + + <inp2:m_if check="private-message_HasError" field="any"> + <inp2:m_RenderElement name="error_message" /> + </inp2:m_if> + + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/grey_pix.gif" width="100%" height="1" align="absmiddle" alt="" /><br /><br /> + + <inp2:m_include template="in-bulletin/elements/forms.elm"/> + + <form method="post" action="<inp2:m_FormAction/>"> + <table class="form-data fullwidth"> + <inp2:m_RenderElement name="inp_edit_box" prefix="private-message" field="ToId" title="lu_fld_To"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="private-message" field="Subject" title="lu_fld_Subject"/> + <inp2:m_RenderElement name="inp_edit_textarea_bb" prefix="private-message" field="Body" cols="50" rows="10" title="lu_fld_MessageBody"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="private-message" field="DisableBBCodes" title="lu_fld_DisableBBCodes"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="private-message" field="DisableSmileys" title="lu_fld_DisableSmileys"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="private-message" field="ShowSignatures" title="lu_fld_ShowSignatures" is_last="1"/> + <inp2:m_RenderElement design="inp_edit_buttons"> + <input type="hidden" name="next_template" value="in-bulletin/my_account/private_messages/add_confirm"/> + <input class="button" type="submit" name="events[private-message][OnCreate]" value="<inp2:m_Phrase label="lu_btn_Create" no_editing="1"/>"/> + <input class="button" type="button" onclick="redirect('<inp2:m_Link template="in-bulletin/my_account/private_messages/private_messages"/>');" value="<inp2:m_Phrase label="lu_btn_Cancel" no_editing="1"/>"/> + </inp2:m_RenderElement> + </table> + </form> + + </inp2:m_RenderElement> + <!-- // new private message --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/new_message.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.8 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/private_messages.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/private_messages.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/private_messages.tpl (revision 12766) @@ -0,0 +1,75 @@ +<!--## +<NAME>List Private Messages</NAME> +<DESC>List Private Messages</DESC> +<SECTION>My Account||Private Messages</SECTION> +##--> + +<inp2:m_RequireLogin login_template="platform/login/register"/> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_PrivateMessages"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_MyAccount,lu_title_PrivateMessages" templates="platform/my_account/my_account,in-bulletin/my_account/private_messages/private_messages"/> + </div> + <div class="movable-element"> + <!-- private messages --> + <inp2:m_RenderElement design="content_box" data_exists="1" block_no_data="no_private_messages"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_PrivateMessages"/> (<inp2:private-message_TotalRecords/>) + </inp2:m_Capture> + + <inp2:m_include template="in-bulletin/elements/private_messages.elm"/> + + <inp2:m_RenderElement name="folder_tabs"/> + + <table class="fullwidth"> + <tr> + <td colspan="3"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + <tr class="sub-section-header"> + <td> + <inp2:m_if check="m_GetEquals" name="folder_id" value="-1"> + <inp2:m_Phrase name="lu_col_ToName"/> + <inp2:m_else/> + <inp2:m_Phrase name="lu_col_FromName"/> + </inp2:m_if> + </td> + <td> + <inp2:m_Phrase name="lu_col_Subject"/> + </td> + <td> + <inp2:m_Phrase name="lu_col_Created"/> + </td> + </tr> + <inp2:private-message_PrintList render_as="private_message_element"/> + </table> + + <inp2:m_include template="platform/elements/pagination.elm" prefix="private-message"/> + </inp2:m_RenderElement> + <!-- // private messages --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/private_messages.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.9 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/add_confirm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/add_confirm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/add_confirm.tpl (revision 12766) @@ -0,0 +1,46 @@ +<!--## +<NAME>Private Message - Sent</NAME> +<DESC>Private Message - Sent Confirmation</DESC> +<SECTION>My Account||Private Messages</SECTION> +##--> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_AddPrivateMessageConfirm"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_MyAccount,lu_title_PrivateMessages,lu_title_AddPrivateMessageConfirm" templates="platform/my_account/my_account,in-bulletin/my_account/private_messages/private_messages,in-bulletin/my_account/private_messages/add_confirm"/> + </div> + <div class="movable-element"> + <!-- add private message confirm --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_AddPrivateMessageConfirm"/> + </inp2:m_Capture> + + <inp2:m_phrase name="lu_newpm_Confirm_Text"/><br /><br /> + <a href="<inp2:private-message_FolderLink template="in-bulletin/my_account/private_messages/private_messages" folder="sent"/>"><inp2:m_Phrase name="lu_PrivateMessages"/></a> + </inp2:m_RenderElement> + <!-- // add private message confirm --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/add_confirm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.7 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/view_message.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/view_message.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/view_message.tpl (revision 12766) @@ -0,0 +1,85 @@ +<!--## +<NAME>View Private Message</NAME> +<DESC>View Private Message page</DESC> +<SECTION>My Account||Private Messages</SECTION> +##--> + +<inp2:m_RequireLogin login_template="platform/login/register"/> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_PrivateMessageDetails"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_MyAccount,lu_title_PrivateMessages,lu_title_PrivateMessageDetails" templates="platform/my_account/my_account,in-bulletin/my_account/private_messages/private_messages,in-bulletin/my_account/private_messages/view_message"/> + </div> + <div class="movable-element"> + <!-- private message details --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_PrivateMessageDetails"/> + </inp2:m_Capture> + + <inp2:m_include template="in-bulletin/elements/private_messages.elm"/> + + <inp2:private-message_MarkAsRead/> + <table class="fullwidth"> + <tr> + <td align="left"> + <inp2:m_if check="private-message_CanReplyMessage"> + [<a href="<inp2:private-message_ReplyLink template="in-bulletin/my_account/private_messages/new_message"/>"><inp2:m_Phrase name="lu_btn_Reply"/></a>] + </inp2:m_if> + + [<a href="<inp2:private-message_DeleteLink template="in-bulletin/my_account/private_messages/private_messages"/>" onclick="return confirm('<inp2:m_phrase name="lu_DeletePrivateMessageConfirm" js_escape="1"/>');"><inp2:m_phrase name="lu_btn_Delete"/></a>]<br /><br /> + </td> + </tr> + <tr> + <td> + <strong><inp2:m_Phrase name="lu_MessageCreated"/></strong>: <inp2:private-message_Field name="CreatedOn"/> + </td> + + </tr> + </table> + <br /> + + <strong><inp2:m_Phrase name="lu_fld_From"/></strong>: <inp2:private-message_Field name="FromId"/><br /> + <strong><inp2:m_Phrase name="lu_fld_Subject"/></strong>: <inp2:private-message_MessageSubject empty_title="lu_NoSubject"/><br /><br /> + + <inp2:private-message_MessageBody smiley_render_as="smiley_element" bbcode_render_as="bbcode_element"/> + <br/><br /> + <table class="fullwidth"> + <tr> + <td align="left"> + <inp2:m_if check="private-message_CanReplyMessage"> + [<a href="<inp2:private-message_ReplyLink template="in-bulletin/my_account/private_messages/new_message"/>"><inp2:m_Phrase name="lu_btn_Reply"/></a>] + </inp2:m_if> + + [<a href="<inp2:private-message_DeleteLink template="in-bulletin/my_account/private_messages/private_messages"/>" onclick="return confirm('<inp2:m_phrase name="lu_DeletePrivateMessageConfirm" js_escape="1"/>');"><inp2:m_phrase name="lu_btn_Delete"/></a>] + </td> + </tr> + </table> + + </inp2:m_RenderElement> + <!-- // private message details --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/private_messages/view_message.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.9 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_preferences.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_preferences.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_preferences.tpl (revision 12766) @@ -0,0 +1,80 @@ +<!--## +<NAME>User's Preferences</NAME> +<DESC>User's Preferences</DESC> +<SECTION>My Account</SECTION> +##--> + +<inp2:m_RequireLogin login_template="platform/login/register"/> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_MyPreferences"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_MyAccount,lu_title_MyPreferences" templates="platform/my_account/my_account,platform/my_account/my_preferences"/> + </div> + <div class="movable-element"> + <!-- my preferences --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_MyPreferences"/> + </inp2:m_Capture> + + + <table class="fullwidth tab-bottom-line"> + <tr> + <td class="tab-left-padding"> + + <table> + <tr> + <inp2:m_ModuleInclude template="my_account/preferences_tab.elm" in-portal_template="platform/my_account/preferences_tab.elm"/> + </tr> + </table> + + </td> + </tr> + </table> + + <br /> + + <strong><inp2:m_Phrase name="lu_Forums"/></strong><br /><br /> + + <form method="post" action="<inp2:m_FormAction/>"> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/grey_pix.gif" width="100%" height="1" align="absmiddle" alt="" /><br /><br /> + <table class="form-data fullwidth"> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="user-profile" field="show_sig" title="lu_fld_ShowSignatures"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="user-profile" field="Perpage_Topics" title="lu_fld_TopicsPerPage"/> + <inp2:m_RenderElement name="inp_edit_box" prefix="user-profile" field="Perpage_Postings" title="lu_fld_PostsPerPage"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="user-profile" field="owner_notify" title="lu_fld_NotifyOwnerOnChanges"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="user-profile" field="bb_pm_notify" title="lu_fld_NotifyOnPrivateMessages"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="user-profile" field="bbcode" title="lu_fld_EnableBBCodes"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="user-profile" field="smileys" title="lu_fld_EnableSmileys"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="user-profile" field="bb_signatures" title="lu_fld_ShowOtherSignatures"/> + <inp2:m_RenderElement name="inp_edit_textarea" prefix="user-profile" field="my_signature" title="lu_fld_MySignature" cols="50" rows="10" is_last="1"/> + + <inp2:m_RenderElement design="inp_edit_buttons"> + <input class="button" type="submit" name="events[user-profile][OnUpdate]" value="<inp2:m_Phrase label="lu_btn_Update" no_editing="1"/>"/> + </inp2:m_RenderElement> + </table> + </form> + </inp2:m_RenderElement> + <!-- // my preferences --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_preferences.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.7 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_topics.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_topics.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_topics.tpl (revision 12766) @@ -0,0 +1,73 @@ +<!--## +<NAME>User's Topics</NAME> +<DESC>List of User's Topics</DESC> +<SECTION>My Account</SECTION> +##--> + +<inp2:m_RequireLogin login_template="platform/login/register"/> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_MyTopics"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/action_box.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_MyAccount,lu_title_MyTopics" templates="platform/my_account/my_account,in-bulletin/my_account/my_topics"/> + </div> + <div class="movable-element"> + <!-- my topics --> + <inp2:m_DefineElement name="no_topics"> + <inp2:m_phrase name="lu_NoTopics"/> + </inp2:m_DefineElement> + + <inp2:m_RenderElement design="content_box" data_exists="1" block_no_data="no_topics"> + <inp2:bb_InitList list_name="my_topics" types="my_items" parent_cat_id="0" recursive="1"/> + + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_MyTopics"/> (<inp2:bb_TotalRecords list_name="my_topics"/>) + </inp2:m_Capture> + + <inp2:m_include template="in-bulletin/elements/topics.elm"/> + + <table class="fullwidth"> + <tr> + <td colspan="4"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + <tr class="sub-section-header"> + <td><inp2:m_phrase name="lu_col_Topics"/></td> + <td><inp2:m_phrase name="lu_col_Replies"/></td> + <td><inp2:m_phrase name="lu_col_Views"/></td> + <td><inp2:m_phrase name="lu_col_LastPost"/></td> + </tr> + <inp2:bb_ListTopics list_name="my_topics" render_as="my_topic_element" no_table="1"/> + </table> + + <inp2:m_include template="platform/elements/pagination.elm" prefix="bb" list_name="my_topics"/> + </inp2:m_RenderElement> + <!-- // my topics --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_topics.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.9 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_items.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_items.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_items.elm.tpl (revision 12766) @@ -0,0 +1,19 @@ +<inp2:m_if check="m_ParamEquals" name="section" value="1"> + <inp2:m_if check="m_ParamEquals" name="place" value="sidebox"> + <inp2:m_RenderElement name="box_element" template="in-bulletin/my_account/private_messages/private_messages" title="lu_PrivateMessages"/> + </inp2:m_if> + + <inp2:m_if check="m_ParamEquals" name="place" value="contentbox"> + <inp2:m_RenderElement name="my_account_element" template="in-bulletin/my_account/private_messages/private_messages" title="lu_PrivateMessages" description="lu_description_PrivateMessages" icon_image="in-bulletin/img/ic_pm_list46.gif"/> + </inp2:m_if> +</inp2:m_if> + +<inp2:m_if check="m_ParamEquals" name="section" value="2"> + <inp2:m_if check="m_ParamEquals" name="place" value="sidebox"> + <inp2:m_RenderElement name="box_element" template="in-bulletin/my_account/my_topics" title="lu_MyTopics" /> + </inp2:m_if> + + <inp2:m_if check="m_ParamEquals" name="place" value="contentbox"> + <inp2:m_RenderElement name="my_account_element" template="in-bulletin/my_account/my_topics" title="lu_MyTopics" description="lu_description_MyTopics" icon_image="in-bulletin/img/ic_mytopics46.gif"/> + </inp2:m_if> +</inp2:m_if> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/my_items.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/preferences_tab.elm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/preferences_tab.elm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/preferences_tab.elm.tpl (revision 12766) @@ -0,0 +1 @@ +<inp2:m_RenderElement name="tab" title="lu_tab_Forums" template="in-bulletin/my_account/my_preferences"/> Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/my_account/preferences_tab.elm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/new_topic_reply.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/topics/new_topic_reply.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/topics/new_topic_reply.tpl (revision 12766) @@ -0,0 +1,81 @@ +<!--## +<NAME>Topic Reply</NAME> +<DESC>Topic Reply Form</DESC> +<SECTION>Platform||Topics</SECTION> +##--> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_NewTopicReply"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/action_box.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="__item__,lu_title_NewTopicReply" templates="__default__,in-bulletin/topics/new_topic_reply" show_category="1"/> + </div> + <div class="movable-element"> + <!-- new topic reply --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_NewTopicReply"/> + </inp2:m_Capture> + + <inp2:m_if check="bb-post_HasPermission" permissions="TOPIC.REPLY.ADD"> + <inp2:bb-post_PresetFormFields/> + <span class="field-required">*</span> <inp2:m_phrase name="lu_IndicatesRequired"/><br /><br /> + + <inp2:m_if check="bb-post_HasError" field="any"> + <inp2:m_RenderElement name="error_message" /> + </inp2:m_if> + + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/grey_pix.gif" width="100%" height="1" align="absmiddle" alt="" /><br /><br /> + + <inp2:m_include template="in-bulletin/elements/forms.elm"/> + + <form method="post" action="<inp2:m_FormAction/>"> + <table class="form-data fullwidth"> + <inp2:m_RenderElement name="inp_label" prefix="bb" field="TopicText" title="lu_fld_Subject"/> + <inp2:m_RenderElement name="inp_label" prefix="bb" field="PostedBy" title="lu_fld_Author"/> + + <inp2:m_RenderElement name="inp_edit_box" prefix="bb-post" field="Subject" title="lu_fld_Subject" style="width: 300px"/> + <inp2:m_RenderElement name="inp_edit_textarea_bb" prefix="bb-post" field="PostingText" cols="50" rows="10" title="lu_fld_MessageBody" style="width: 400px"/> + + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb-post" field="DisableBBCodes" title="lu_fld_DisableBBCodes"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb-post" field="DisableSmileys" title="lu_fld_DisableSmileys"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb-post" field="ShowSignatures" title="lu_fld_ShowSignatures" is_last="1"/> + + <inp2:m_RenderElement design="inp_edit_buttons"> + <input type="hidden" name="next_template" value="__default__"/> + <input class="button" type="submit" name="events[bb-post][OnCreate]" value="<inp2:m_Phrase label="lu_btn_Create" no_editing="1"/>"/> + <input class="button" type="button" value="<inp2:m_Phrase label="lu_btn_Cancel" no_editing="1"/>" onclick="redirect('<inp2:bb_TopicLink template="__default__"/>');"/> + </inp2:m_RenderElement> + </table> + </form> + <inp2:m_else/> + <inp2:m_phrase name="lu_text_NoNewTopicReplyPermission"/> + </inp2:m_if> + </inp2:m_RenderElement> + <!-- // new topic reply --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/new_topic_reply.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.8 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_topic.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_topic.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_topic.tpl (revision 12766) @@ -0,0 +1,69 @@ +<!--## +<NAME>Topic Modify Form</NAME> +<DESC>Topic Modification Form</DESC> +<SECTION>Platform||Topics</SECTION> +##--> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_ModifyTopic"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_MyAccount,lu_title_MyTopics,__item__,lu_title_ModifyTopic" templates="platform/my_account/my_account,in-bulletin/my_account/my_topics,__default__,in-bulletin/topics/modify_topic"/> + </div> + <div class="movable-element"> + <!-- modify topic --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_ModifyTopic"/> + </inp2:m_Capture> + + <inp2:m_if check="bb_HasPermission" permissions="TOPIC.MODIFY|TOPIC.MODIFY.PENDING|TOPIC.OWNER.MODIFY|TOPIC.OWNER.MODIFY.PENDING"> + + <span class="field-required">*</span> <inp2:m_phrase name="lu_IndicatesRequired"/><br /><br /> + + <inp2:m_if check="bb_HasError" field="any"> + <inp2:m_RenderElement name="error_message" /> + </inp2:m_if> + + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/grey_pix.gif" width="100%" height="1" align="absmiddle" alt="" /><br /><br /> + + <form method="post" action="<inp2:m_FormAction/>"> + <table class="form-data fullwidth"> + <inp2:m_RenderElement name="inp_edit_box" prefix="bb" field="TopicText" title="lu_fld_Subject"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb" field="NotifyOwnerOnChanges" title="lu_fld_NotifyOwnerOnChanges" is_last="1"/> + + <inp2:m_RenderElement design="inp_edit_buttons"> + <input type="hidden" name="modify_confirm_template" value="in-bulletin/topics/modify_confirm"/> + <input type="hidden" name="modify_pending_confirm_template" value="in-bulletin/topics/modify_pending_confirm"/> + <input class="button" type="submit" name="events[bb][OnUpdate]" value="<inp2:m_Phrase label="lu_btn_Update" no_editing="1"/>"/> + </inp2:m_RenderElement> + </table> + </form> + <inp2:m_else/> + <inp2:m_phrase name="lu_text_NoModifyTopicPermission"/> + </inp2:m_if> + </inp2:m_RenderElement> + <!-- // modify topic --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_topic.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.8 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/new_topic.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/topics/new_topic.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/topics/new_topic.tpl (revision 12766) @@ -0,0 +1,81 @@ +<!--## +<NAME>New Topic</NAME> +<DESC>New Topic Form</DESC> +<SECTION>Platform||Topics</SECTION> +##--> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_NewTopic"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/action_box.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_NewTopic" templates="in-bulletin/topics/new_topic" show_category="1"/> + </div> + <div class="movable-element"> + <!-- new topic --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_NewTopic"/> + </inp2:m_Capture> + + <inp2:m_if check="bb_HasPermission" permissions="TOPIC.ADD|TOPIC.ADD.PENDING"> + <inp2:bb_PresetFormFields/> + <span class="field-required">*</span> <inp2:m_phrase name="lu_IndicatesRequired"/><br /><br /> + + <inp2:m_if check="bb_HasError" field="any"> + <inp2:m_RenderElement name="error_message" /> + </inp2:m_if> + + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/grey_pix.gif" width="100%" height="1" align="absmiddle" alt="" /><br /><br /> + + <inp2:m_include template="in-bulletin/elements/forms.elm"/> + + <form method="post" action="<inp2:m_FormAction/>"> + <table class="form-data fullwidth"> + + <inp2:m_RenderElement name="inp_edit_box" prefix="bb" field="TopicText" title="lu_fld_Subject" style="width: 300px"/> + <inp2:m_RenderElement name="inp_edit_textarea_bb" prefix="bb" field="PostingText" cols="70" rows="13" title="lu_fld_MessageBody" style="width: 400px"/> + + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb" field="DisableBBCodes" title="lu_fld_DisableBBCodes"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb" field="DisableSmileys" title="lu_fld_DisableSmileys"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb" field="ShowSignatures" title="lu_fld_ShowSignatures"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb" field="NotifyOwnerOnChanges" title="lu_fld_NotifyOwnerOnChanges" is_last="1"/> + + <inp2:m_RenderElement design="inp_edit_buttons"> + <input type="hidden" name="suggest_confirm_template" value="in-bulletin/topics/add_confirm"/> + <input type="hidden" name="suggest_pending_confirm_template" value="in-bulletin/topics/add_pending_confirm"/> + <input class="button" type="submit" name="events[bb][OnCreate]" value="<inp2:m_Phrase label="lu_btn_Create" no_editing="1"/>"/> + <input class="button" type="button" value="<inp2:m_Phrase label="lu_btn_Cancel" no_editing="1"/>" onclick="redirect('<inp2:m_Link template="__default__"/>');"/> + </inp2:m_RenderElement> + </table> + </form> + <inp2:m_else/> + <inp2:m_phrase name="lu_text_NoNewTopicPermission"/> + </inp2:m_if> + </inp2:m_RenderElement> + <!-- // new topic --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/new_topic.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.8 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_post.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_post.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_post.tpl (revision 12766) @@ -0,0 +1,80 @@ +<!--## +<NAME>Post Modify Form</NAME> +<DESC>Post Modification Form</DESC> +<SECTION>Platform||Topics</SECTION> +##--> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_TopicPostModify"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/action_box.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="__item__,lu_title_TopicPostModify" templates="__default__,in-bulletin/topics/modify_post" show_category="1"/> + </div> + <div class="movable-element"> + <!-- modify post --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_TopicPostModify"/> + </inp2:m_Capture> + + <inp2:m_if check="bb-post_HasPermission" permissions="TOPIC.REPLY.MODIFY|TOPIC.REPLY.OWNER.MODIFY"> + <span class="field-required">*</span> <inp2:m_phrase name="lu_IndicatesRequired"/><br /><br /> + + <inp2:m_if check="bb-post_HasError" field="any"> + <inp2:m_RenderElement name="error_message" /> + </inp2:m_if> + + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/grey_pix.gif" width="100%" height="1" align="absmiddle" alt="" /><br /><br /> + + <inp2:m_include template="in-bulletin/elements/forms.elm"/> + + <form method="post" action="<inp2:m_FormAction/>"> + <table class="form-data fullwidth"> + <inp2:m_RenderElement name="inp_label" prefix="bb" field="TopicText" title="lu_fld_Subject"/> + <inp2:m_RenderElement name="inp_label" prefix="bb" field="PostedBy" title="lu_fld_Author"/> + + <inp2:m_RenderElement name="inp_edit_box" prefix="bb-post" field="Subject" title="lu_fld_Subject" style="width: 300px;"/> + <inp2:m_RenderElement name="inp_edit_textarea_bb" prefix="bb-post" field="PostingText" cols="70" rows="13" title="lu_fld_MessageBody" style="width: 400px;"/> + + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb-post" field="DisableBBCodes" title="lu_fld_DisableBBCodes"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb-post" field="DisableSmileys" title="lu_fld_DisableSmileys"/> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="bb-post" field="ShowSignatures" title="lu_fld_ShowSignatures" is_last="1"/> + + <inp2:m_RenderElement design="inp_edit_buttons"> + <input type="hidden" name="next_template" value="__default__"/> + <input class="button" type="submit" name="events[bb-post][OnUpdate]" value="<inp2:m_Phrase label="lu_btn_Update" no_editing="1"/>"/> + <input class="button" type="button" value="<inp2:m_Phrase label="lu_btn_Cancel" no_editing="1"/>" onclick="redirect('<inp2:bb_TopicLink template="__default__"/>');"/> + </inp2:m_RenderElement> + </table> + </form> + <inp2:m_else/> + <inp2:m_phrase name="lu_text_NoTopicPostModifyPermission"/> + </inp2:m_if> + </inp2:m_RenderElement> + <!-- // modify post --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/>elements/html_head \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_post.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.8 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/.smsignore =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/topics/.smsignore (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/topics/.smsignore (revision 12766) @@ -0,0 +1 @@ +topic_detail\.tpl \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/.smsignore ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/topic_detail.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/topics/topic_detail.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/topics/topic_detail.tpl (revision 12766) @@ -0,0 +1,148 @@ +<!--## +<NAME>Topics - Details Design</NAME> +<DESC>General design template for Topic Details</DESC> +<SECTION>Platform||Topics</SECTION> +##--> +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:bb_Field name="TopicText"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/action_box.elm" design="blue_box" item_actions="1"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<!--## MAIN CONTENT ##--> +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="__item__,lu_title_TopicPosts" templates="__default__,in-bulletin/designs/post_list" show_category="1"/> + </div> + <div class="movable-element"> + <!-- posts in topic --> + <inp2:m_RenderElement design="content_box"> + <inp2:bb-post_InitList list_name="posts_in_topic"/> + + <inp2:m_Capture to_var="header"> + <inp2:m_if check="bb_IsLocked"> + [<inp2:m_phrase name="lu_LockedTopic"/>] + </inp2:m_if> + <inp2:bb_Field name="TopicText"/> - <inp2:m_phrase name="lu_title_TopicPosts"/> (<inp2:bb-post_TotalRecords list_name="posts_in_topic"/>) + </inp2:m_Capture> + + <inp2:m_if check="bb_HasPermission" permissions="TOPIC.REPLY.VIEW"> + <inp2:m_include template="in-bulletin/elements/categories.elm"/> + <inp2:m_include template="in-bulletin/elements/topics.elm"/> + <inp2:m_include template="in-bulletin/elements/posts.elm"/> + + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="10" alt="" /><br /> + + <table class="fullwidth"> + <tr> + <td align="left"> + <inp2:m_if check="bb_HasPermission" permissions="TOPIC.REPLY.ADD"> + <inp2:m_RenderElement design="big_button" title="lu_btn_Reply" icon="btn_reply"> + <inp2:bb_TopicLink template="in-bulletin/topics/new_topic_reply"/> + </inp2:m_RenderElement> + </inp2:m_if> + </td> + + <td align="right"> + <table> + <tr> + <inp2:m_if check="bb_HasPermission" permissions="TOPIC.MODIFY|TOPIC.MODIFY.PENDING|TOPIC.OWNER.MODIFY|TOPIC.OWNER.MODIFY.PENDING"> + <td> + <inp2:m_RenderElement design="big_button" title="lu_btn_Modify" icon="btn_modify"> + <inp2:bb_TopicLink template="in-bulletin/topics/modify_topic"/> + </inp2:m_RenderElement> + </td> + </inp2:m_if> + + <td> + <inp2:m_if check="bb_IsFavorite"> + <inp2:m_RenderElement design="big_button" title="lu_btn_RemoveFromFavorites" icon="btn_remove_favorites"> + <inp2:bb_FavoriteToggleLink/> + </inp2:m_RenderElement> + <inp2:m_else/> + <inp2:m_RenderElement design="big_button" title="lu_btn_AddToFavorites" icon="btn_add_favorites"> + <inp2:bb_FavoriteToggleLink/> + </inp2:m_RenderElement> + </inp2:m_if> + </td> + + <inp2:m_if check="bb_HasPermission" permissions="TOPIC.LOCK"> + <td> + <inp2:m_if check="bb_IsLocked"> + <inp2:m_RenderElement design="big_button" title="lu_btn_UnlockTopic" icon="btn_no_icon"> + <inp2:bb_LockToggleLink/> + </inp2:m_RenderElement> + <inp2:m_else/> + <inp2:m_RenderElement design="big_button" title="lu_btn_LockTopic" icon="btn_no_icon"> + <inp2:bb_LockToggleLink/> + </inp2:m_RenderElement> + </inp2:m_if> + </td> + </inp2:m_if> + </tr> + </table> + </td> + </tr> + </table> + <br /> + + <table width="100%"> + <tr> + <td colspan="2"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + <tr class="forums-header"> + <td style="width: 200px;"> + <inp2:m_phrase name="lu_col_Author"/> + </td> + <td> + <inp2:m_phrase name="lu_col_Message"/> + </td> + </tr> + <inp2:bb-post_ListPosts list_name="posts_in_topic" render_as="post_element" no_table="1"/> + </table> + <br /> + + <inp2:m_include template="platform/elements/pagination.elm" prefix="bb-post" list_name="posts_in_topic"/> + <inp2:m_else/> + <inp2:m_phrase name="lu_text_NoTopicReplyViewPermission"/> + </inp2:m_if> + </inp2:m_RenderElement> + <!-- // posts in topic --> + </div> + <div class="movable-element"> + <!--## RELATED TO POST ITEMS ##--> + <inp2:m_RenderElement design="content_box" related_to="Topic" data_exists="1"> + <inp2:m_Capture to_var="header"> + <inp2:m_Phrase label="lu_title_RelatedItems"/> + </inp2:m_Capture> + + <inp2:m_ModuleInclude template="elements/content_boxes/related_items.elm" related_to="$related_to" /> + </inp2:m_RenderElement> + <!--## // RELATED TO POST ITEMS ##--> + </div> + </div> +</inp2:m_DefineElement> +<!--## /MAIN CONTENT ##--> + +<!--## DESIGN TEMPLATE ##--> +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> +<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/topic_detail.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.3 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_confirm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_confirm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_confirm.tpl (revision 12766) @@ -0,0 +1,49 @@ +<!--## +<NAME>Topic Modified - Confirmation</NAME> +<DESC>Topic Modified Confirmation page</DESC> +<SECTION>Platform||Topics</SECTION> +##--> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_ModifyTopicConfirm"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/action_box.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_MyAccount,lu_title_MyTopics,__item__,lu_title_ModifyTopicConfirm" templates="platform/my_account/my_account,in-bulletin/my_account/my_topics,__default__,in-bulletin/topics/modify_confirm"/> + </div> + <div class="movable-element"> + <!-- modify topic confirm --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_ModifyTopicConfirm"/> + </inp2:m_Capture> + + <inp2:m_phrase name="lu_text_ModifyTopicConfirm"/><br /><br /> + <a href="<inp2:m_Link template="in-bulletin/my_account/my_topics" m_cat_id="0" m_cat_page="1"/>"<inp2:m_Phrase name="lu_text_MyTopics"/></a> + </inp2:m_RenderElement> + <!-- // modify topic confirm --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_confirm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.8 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/add_confirm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/topics/add_confirm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/topics/add_confirm.tpl (revision 12766) @@ -0,0 +1,49 @@ +<!--## +<NAME>New Topic - Confirmation</NAME> +<DESC>New Topic Confirmation page</DESC> +<SECTION>Platform||Topics</SECTION> +##--> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_AddTopicConfirm"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/action_box.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_AddTopicConfirm" templates="in-bulletin/topics/add_confirm" show_category="1"/> + </div> + <div class="movable-element"> + <!-- add topic confirm --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_AddTopicConfirm"/> + </inp2:m_Capture> + + <inp2:m_phrase name="lu_NewTopic_Confirm_Text"/><br /><br /> + <a href="<inp2:m_Link template="in-bulletin/my_account/my_topics" m_cat_id="0" m_cat_page="1"/>"><inp2:m_Phrase name="lu_text_MyTopics"/></a> + </inp2:m_RenderElement> + <!-- // add topic confirm --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/add_confirm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.8 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/search_results.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/topics/search_results.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/topics/search_results.tpl (revision 12766) @@ -0,0 +1,79 @@ +<!--## +<NAME>Topics - Search Results</NAME> +<DESC>List of Topics Search Results</DESC> +<SECTION>Platform||Topics</SECTION> +##--> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_Phrase label="lu_title_TopicSearchResults"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_TopicSearchResults" templates="in-bulletin/search/search_results"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement design="content_box"> + <inp2:bb_InitList list_name="topic_search_results" types="search" parent_cat_id="any" recursive="1"/> + + <inp2:m_Capture to_var="header"> + <inp2:m_Phrase label="lu_title_TopicSearchResults"/> + </inp2:m_Capture> + + <table class="fullwidth"> + <tr> + <td class="category-statistics"> + <inp2:m_phrase name="lu_TotalTopics"/>: <inp2:bb_TotalRecords list_name="topic_search_results"/> | <span class="static"><inp2:m_phrase name="lu_AddedToday"/>: 0</span> + </td> + <td class="category-statistics static" align="right"> + <inp2:m_phrase name="lu_TopicsUpdated"/>: 05/17/2006 + </td> + </tr> + </table> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="4" alt="" /><br /> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/grey_pix.gif" width="100%" height="1" alt="" /><br /> + <br /> + + <table class="fullwidth"> + <tr> + <td colspan="5"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + <tr class="sub-section-header"> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Topics"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Poster"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Date"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Replies"/></td> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Views"/></td> + </tr> + + <inp2:m_include template="in-bulletin/elements/topics.elm"/> + <inp2:m_include template="platform/elements/search_results.elm"/> + + <inp2:bb_ListTopics list_name="topic_search_results" render_as="topic_element" show_relevance="1"/> + </table> + + <inp2:m_include template="platform/elements/pagination.elm" prefix="bb" list_name="topic_search_results"/> + </inp2:m_RenderElement> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/search_results.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.10 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_pending_confirm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_pending_confirm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_pending_confirm.tpl (revision 12766) @@ -0,0 +1,49 @@ +<!--## +<NAME>Topic Modification Pending - Confirmation</NAME> +<DESC>Topic Modification Pending Confirmation page</DESC> +<SECTION>Platform||Topics</SECTION> +##--> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_ModifyTopicPendingConfirm"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/action_box.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_MyAccount,lu_title_MyTopics,__item__,lu_title_ModifyTopicPendingConfirm" templates="platform/my_account/my_account,in-bulletin/my_account/my_topics,__default__,in-bulletin/topics/modify_pending_confirm"/> + </div> + <div class="movable-element"> + <!-- modify topic pending confirm --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_ModifyTopicPendingConfirm"/> + </inp2:m_Capture> + + <inp2:m_phrase name="lu_text_ModifyTopicPendingConfirm"/><br /><br /> + <a href="<inp2:m_Link template="in-bulletin/my_account/my_topics" m_cat_id="0" m_cat_page="1"/>"><inp2:m_Phrase name="lu_text_MyTopics"/></a> + </inp2:m_RenderElement> + <!-- // modify topic pending confirm --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/modify_pending_confirm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.8 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/add_pending_confirm.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/topics/add_pending_confirm.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/topics/add_pending_confirm.tpl (revision 12766) @@ -0,0 +1,49 @@ +<!--## +<NAME>New Pending Topic - Confirmation</NAME> +<DESC>New Pending Topic Confirmation page</DESC> +<SECTION>Platform||Topics</SECTION> +##--> + +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_phrase name="lu_title_AddTopicPendingConfirm"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/action_box.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm" titles="lu_title_AddTopicPendingConfirm" templates="in-bulletin/topics/add_pending_confirm" show_category="1"/> + </div> + <div class="movable-element"> + <!-- add topic pending confirm --> + <inp2:m_RenderElement design="content_box"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_AddTopicPendingConfirm"/> + </inp2:m_Capture> + + <inp2:m_phrase name="lu_NewTopic_Confirm_Pending_Text"/><br /><br /> + <a href="<inp2:m_Link template="in-bulletin/my_account/my_topics" m_cat_id="0" m_cat_page="1"/>"><inp2:m_Phrase name="lu_text_MyTopics"/></a> + </inp2:m_RenderElement> + <!-- // add topic pending confirm --> + </div> + </div> +</inp2:m_DefineElement> + +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/topics/add_pending_confirm.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.8 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/designs/section.tpl =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/designs/section.tpl (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/designs/section.tpl (revision 12766) @@ -0,0 +1,110 @@ +<!--## +<NAME>Topics - Section Template</NAME> +<DESC>Topics</DESC> +<SECTION>Platform||Topics</SECTION> +##--> +<!--## PAGE TITLE ELEMENT ##--> +<inp2:m_DefineElement name="page_title"> + <inp2:m_include template="platform/elements/title_bar.elm"/> +</inp2:m_DefineElement> +<!--## //PAGE TITLE ELEMENT ##--> + +<!--## SIDE-BAR ELEMENT ##--> +<inp2:m_DefineElement name="sidebar"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/login.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="platform/elements/side_boxes/search.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/action_box.elm" design="blue_box"/> + </div> + <div class="movable-element"> + <inp2:m_RenderElement name="in-bulletin/elements/side_boxes/polls.elm" design="blue_box"/> + </div> + </div> +</inp2:m_DefineElement> +<!--## //SIDE-BAR ELEMENT ##--> + +<!--## MAIN CONTENT ##--> +<inp2:m_DefineElement name="content"> + <div class="movable-area"> + <div class="movable-element"> + <inp2:m_include template="platform/elements/navigation_bar.elm"/> + </div> + <div class="movable-element"> + <!-- categories --> + <inp2:m_RenderElement design="content_box" data_exists="1"> + <inp2:m_Capture to_var="header"> + <inp2:m_phrase name="lu_title_Categories"/> (<inp2:c_TotalRecords />) + </inp2:m_Capture> + + <inp2:m_include template="in-bulletin/elements/categories.elm"/> + + <table> + <tr> + <td class="category-statistics"> + <inp2:bb-post_ItemCount/> <inp2:m_Phrase name="lu_posts"/> <inp2:m_Phrase name="lu_in"/> <inp2:bb_ItemCount/> <inp2:m_Phrase name="lu_topics"/> | <inp2:m_Phrase name="lu_AddedToday"/>: <inp2:bb_ItemCount today="1"/> <inp2:m_Phrase name="lu_topics"/>, <inp2:bb-post_ItemCount today="1"/> <inp2:m_Phrase name="lu_posts"/> + </td> + </tr> + </table> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="4" alt="" /><br /> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + + <table class="forums-icon-description"> + <tr> + <td> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/forums_new_post.gif" width="20" height="23" alt="" /><br /> + </td> + <td> + <inp2:m_Phrase name="lu_new_posts" /> + </td> + <td> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/forums_no_new_post.gif" width="21" height="24" alt="" /><br /> + </td> + <td> + <inp2:m_Phrase name="lu_no_new_posts" /> + </td> + <td> + <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/forums_locked.gif" width="25" height="23" alt="" /><br /> + </td> + <td> + <inp2:m_Phrase name="lu_forum_locked_for_posting" /> + </td> + </tr> + </table> + + <table class="fullwidth"> + <tr> + <td colspan="4"> + <div class="horizontal-separator"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="1" height="1" alt="" /></div> + </td> + </tr> + <tr class="forums-header"> + <td><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Forums"/></td> + <td width="90"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Topics"/></td> + <td width="80"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_Posts"/></td> + <td width="130"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/header_arrow.gif" width="11" height="11" alt="" /> <inp2:m_phrase name="lu_col_LastUpdate"/></td> + </tr> + <inp2:c_ListCategories render_as="category_element" columns="1"/> + </table> + <br /> + + <inp2:m_include template="platform/elements/pagination.elm" prefix="c"/> + </inp2:m_RenderElement> + <!-- // categories --> + </div> + <div class="movable-element"> + <inp2:m_if check="c_TotalRecords" inverse="inverse"> + <inp2:m_include template="in-bulletin/elements/content_boxes/category_topics.elm"/> + </inp2:m_if> + </div> + </div> +</inp2:m_DefineElement> +<!--## /MAIN CONTENT ##--> + +<!--## DESIGN TEMPLATE ##--> +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> +<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/designs/section.tpl ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.3 \ No newline at end of property Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/designs/.smsignore =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/designs/.smsignore (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/designs/.smsignore (revision 12766) @@ -0,0 +1 @@ +.*\.tpl \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/designs/.smsignore ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/icons/btn_add_favorites.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/icons/btn_add_favorites.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/icons/btn_reply.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/icons/btn_reply.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/icons/btn_remove_favorites.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/icons/btn_remove_favorites.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/icons/btn_no_icon.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/icons/btn_no_icon.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/icons/btn_modify.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/icons/btn_modify.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/top_border.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/top_border.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/bottom_border.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/bottom_border.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/top_left_corner.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/top_left_corner.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/bottom_left_corner.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/bottom_left_corner.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/left_border.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/left_border.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/bottom_right_corner.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/big_buttons/bottom_right_corner.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/ic_mytopics46.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/ic_mytopics46.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/ic_pm_list46.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/ic_pm_list46.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/icon_post_1.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/icon_post_1.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/italic_icon.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/italic_icon.png ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/underline_icon.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/underline_icon.png ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/code_icon.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/code_icon.png ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/link_icon.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/link_icon.png ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/bold_icon.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/bold_icon.png ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/image_icon.png =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/toolbar/image_icon.png ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/top_border.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/top_border.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/bottom_border.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/bottom_border.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/top_left_corner.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/top_left_corner.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/bottom_left_corner.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/bottom_left_corner.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/icons/btn_sm_quoted.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/icons/btn_sm_quoted.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/icons/btn_threaded.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/icons/btn_threaded.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/icons/btn_sm_delete.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/icons/btn_sm_delete.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/icons/btn_sm_modify.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/icons/btn_sm_modify.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/bottom_right_corner.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/small_buttons/bottom_right_corner.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/img/menu_topics.gif =================================================================== Cannot display: file marked as a binary type. svn:mime-type = application/octet-stream Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/img/menu_topics.gif ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/inc/styles.css =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/inc/styles.css (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/inc/styles.css (revision 12766) @@ -0,0 +1,149 @@ +.bbcode { + border: 1px solid #888888; + background-color: #EEEEEE; + padding: 10px; +} + +.forums-header TD + { + padding:6px; + color:#21619e; + } + +.forums-icon-cell + { + width:20px; + padding-right:10px; + vertical-align:top; + } + +.forums-subheaders + { + background:#f4f4f4; + font-weight:bold; + padding:5px 15px; + font-size:12px; + } + + +.forums-subheaders A + { + color:#000000; + text-decoration: underline; + } + +.forums-subheaders A:hover + { + color: #666666; + text-decoration: underline; + } + +.forums-cells + { + vertical-align: middle; + padding:10px; + } + +.post-background-1 + { + background:#f4f4f4; + padding:8px; + } + +.post-background-2 + { + background:#FFFFFF; + padding:8px; + } + +.post-icon-padding-right + { + padding-right:10px; + } + +.topic-prewiew-padding-cell TD + { + padding: 13px; + } + +.post-control { + padding: 0px !important; + vertical-align: top; +} + + +.no-padding TD + { + padding:0px; + } + + +.forums-icon-description TD + { + padding:10px; + vertical-align:middle; + } + +.topics-icon-padding + { + width:14px; + padding-right:10px; + } + +.new-private-message { + font-weight: bold; +} + + + +.quoted-reply { + border: 1px dashed #333; +} + +.quoted-reply td { + padding: 5px; +} + +/* --- Topic Button Styles --- */ +.big-button-left-border { + background: #EFEFEF url('../img/big_buttons/left_border.gif') repeat-y top left; +} + +.big-button-bottom td { + background: #EFEFEF url('../img/big_buttons/bottom_border.gif') repeat-x top left; +} + +.big-button-text { + background: #EFEFEF url('../img/big_buttons/top_border.gif') repeat-x top left; + font: bold 11px Arial, sans-serif; + letter-spacing: 0px; + color: #1F569A; + padding-top: 14px; +} + +.big-button-text a, .big-button-text a:hover { + text-decoration: none; +} + +/* --- Post Button Styles --- */ +.small-button-bottom td { + background: #efefef url('../img/small_buttons/bottom_border.gif') repeat-x top left +} + +.small-button-text { + background: url('../img/small_buttons/top_border.gif') repeat-x top left; + font: 10px Arial, sans-serif; + color: #153C6A; + padding-top: 15px; + vertical-align: bottom; + height: 27px; +} + +.small-button-text a { + color: #153C6A; + text-decoration: none; +} + +.small-button-text a:hover { + text-decoration: none; +} \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/inc/styles.css ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/inc/script.js =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/inc/script.js (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/inc/script.js (revision 12766) @@ -0,0 +1,79 @@ +// apply tagOpen/tagClose to selection in textarea, +// use sampleText instead of selection if there is none +function insertTags(tagOpen, tagClose, sampleText, textarea_id) { + var txtarea = document.getElementById(textarea_id); + + var selText, isSample = false; + + if (document.selection && document.selection.createRange) { // IE/Opera + //save window scroll position + if (document.documentElement && document.documentElement.scrollTop) { + var winScroll = document.documentElement.scrollTop; + } + else if (document.body) { + var winScroll = document.body.scrollTop; + } + + //get current selection + txtarea.focus(); + var range = document.selection.createRange(); + selText = range.text; + + //insert tags + checkSelectedText(); + range.text = tagOpen + selText + tagClose; + //mark sample text as selected + if (isSample && range.moveStart) { + if (window.opera) { + tagClose = tagClose.replace(/\n/g,''); + } + range.moveStart('character', - tagClose.length - selText.length); + range.moveEnd('character', - tagClose.length); + } + range.select(); + + //restore window scroll position + if (document.documentElement && document.documentElement.scrollTop) { + document.documentElement.scrollTop = winScroll; + } + else if (document.body) { + document.body.scrollTop = winScroll; + } + } else if (txtarea.selectionStart || txtarea.selectionStart == '0') { // Mozilla + //save textarea scroll position + var textScroll = txtarea.scrollTop; + + //get current selection + txtarea.focus(); + var startPos = txtarea.selectionStart; + var endPos = txtarea.selectionEnd; + selText = txtarea.value.substring(startPos, endPos); + + //insert tags + checkSelectedText(); + txtarea.value = txtarea.value.substring(0, startPos) + + tagOpen + selText + tagClose + + txtarea.value.substring(endPos, txtarea.value.length); + //set new selection + if (isSample) { + txtarea.selectionStart = startPos + tagOpen.length; + txtarea.selectionEnd = startPos + tagOpen.length + selText.length; + } else { + txtarea.selectionStart = startPos + tagOpen.length + selText.length + tagClose.length; + txtarea.selectionEnd = txtarea.selectionStart; + } + //restore textarea scroll position + txtarea.scrollTop = textScroll; + } + + function checkSelectedText(){ + if (!selText) { + selText = sampleText; + isSample = true; + } else if (selText.charAt(selText.length - 1) == ' ') { //exclude ending space char + selText = selText.substring(0, selText.length - 1); + tagClose += ' ' + } + } + +} \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/inc/script.js ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.1 \ No newline at end of property Index: releases/5.0.2-B1/themes/advanced/in-bulletin/module_info.xml =================================================================== --- releases/5.0.2-B1/themes/advanced/in-bulletin/module_info.xml (nonexistent) +++ releases/5.0.2-B1/themes/advanced/in-bulletin/module_info.xml (revision 12766) @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<module_info> + <section_design_template>in-bulletin/designs/section</section_design_template> + <item_design_template>in-bulletin/designs/post_list</item_design_template> +</module_info> \ No newline at end of file Property changes on: releases/5.0.2-B1/themes/advanced/in-bulletin/module_info.xml ___________________________________________________________________ Added: cvs2svn:cvs-rev ## -0,0 +1 ## +1.1.2.2 \ No newline at end of property