]> git.uio.no Git - usit-rt.git/blame - lib/RT/ObjectTopic.pm
Dev to 4.0.11
[usit-rt.git] / lib / RT / ObjectTopic.pm
CommitLineData
84fb5b46
MKG
1# BEGIN BPS TAGGED BLOCK {{{
2#
3# COPYRIGHT:
4#
403d7b0b 5# This software is Copyright (c) 1996-2013 Best Practical Solutions, LLC
84fb5b46
MKG
6# <sales@bestpractical.com>
7#
8# (Except where explicitly superseded by other copyright notices)
9#
10#
11# LICENSE:
12#
13# This work is made available to you under the terms of Version 2 of
14# the GNU General Public License. A copy of that license should have
15# been provided with this software, but in any event can be snarfed
16# from www.gnu.org.
17#
18# This work is distributed in the hope that it will be useful, but
19# WITHOUT ANY WARRANTY; without even the implied warranty of
20# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21# General Public License for more details.
22#
23# You should have received a copy of the GNU General Public License
24# along with this program; if not, write to the Free Software
25# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
26# 02110-1301 or visit their web page on the internet at
27# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
28#
29#
30# CONTRIBUTION SUBMISSION POLICY:
31#
32# (The following paragraph is not intended to limit the rights granted
33# to you to modify and distribute this software under the terms of
34# the GNU General Public License and is only of importance to you if
35# you choose to contribute your changes and enhancements to the
36# community by submitting them to Best Practical Solutions, LLC.)
37#
38# By intentionally submitting any modifications, corrections or
39# derivatives to this work, or any other work intended for use with
40# Request Tracker, to Best Practical Solutions, LLC, you confirm that
41# you are the copyright holder for those contributions and you grant
42# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable,
43# royalty-free, perpetual, license to use, copy, create derivative
44# works based on those contributions, and sublicense and distribute
45# those contributions and any derivatives thereof.
46#
47# END BPS TAGGED BLOCK }}}
48
84fb5b46
MKG
49=head1 NAME
50
51RT::ObjectTopic
52
84fb5b46
MKG
53=head1 SYNOPSIS
54
55=head1 DESCRIPTION
56
57=head1 METHODS
58
59=cut
60
84fb5b46 61package RT::ObjectTopic;
403d7b0b
MKG
62use strict;
63use warnings;
64no warnings 'redefine';
65
84fb5b46
MKG
66use RT::Record;
67use RT::Topic;
68
69
70use base qw( RT::Record );
71
72sub _Init {
73 my $self = shift;
74
75 $self->Table('ObjectTopics');
76 $self->SUPER::_Init(@_);
77}
78
79
80
81
82
83=head2 Create PARAMHASH
84
85Create takes a hash of values and creates a row in the database:
86
87 int(11) 'Topic'.
88 varchar(64) 'ObjectType'.
89 int(11) 'ObjectId'.
90
91=cut
92
93
94
95
96sub Create {
97 my $self = shift;
98 my %args = (
99 Topic => '0',
100 ObjectType => '',
101 ObjectId => '0',
102
103 @_);
104 $self->SUPER::Create(
105 Topic => $args{'Topic'},
106 ObjectType => $args{'ObjectType'},
107 ObjectId => $args{'ObjectId'},
108);
109
110}
111
112
113
114=head2 id
115
116Returns the current value of id.
117(In the database, id is stored as int(11).)
118
119
120=cut
121
122
123=head2 Topic
124
125Returns the current value of Topic.
126(In the database, Topic is stored as int(11).)
127
128
129
130=head2 SetTopic VALUE
131
132
133Set Topic to VALUE.
134Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
135(In the database, Topic will be stored as a int(11).)
136
137
138=cut
139
140
141=head2 TopicObj
142
143Returns the Topic Object which has the id returned by Topic
144
145
146=cut
147
148sub TopicObj {
149 my $self = shift;
150 my $Topic = RT::Topic->new($self->CurrentUser);
151 $Topic->Load($self->Topic());
152 return($Topic);
153}
154
155=head2 ObjectType
156
157Returns the current value of ObjectType.
158(In the database, ObjectType is stored as varchar(64).)
159
160
161
162=head2 SetObjectType VALUE
163
164
165Set ObjectType to VALUE.
166Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
167(In the database, ObjectType will be stored as a varchar(64).)
168
169
170=cut
171
172
173=head2 ObjectId
174
175Returns the current value of ObjectId.
176(In the database, ObjectId is stored as int(11).)
177
178
179
180=head2 SetObjectId VALUE
181
182
183Set ObjectId to VALUE.
184Returns (1, 'Status message') on success and (0, 'Error Message') on failure.
185(In the database, ObjectId will be stored as a int(11).)
186
187
188=cut
189
190
191
192sub _CoreAccessible {
193 {
194
195 id =>
196 {read => 1, type => 'int(11)', default => ''},
197 Topic =>
198 {read => 1, write => 1, type => 'int(11)', default => '0'},
199 ObjectType =>
200 {read => 1, write => 1, type => 'varchar(64)', default => ''},
201 ObjectId =>
202 {read => 1, write => 1, type => 'int(11)', default => '0'},
203
204 }
205};
206
207RT::Base->_ImportOverlays();
208
2091;