Page Menu
Home
In-Portal Phabricator
Search
Configure Global Search
Log In
Files
F1084462
itemrating.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Wed, Aug 6, 12:23 PM
Size
4 KB
Mime Type
text/x-php
Expires
Fri, Aug 8, 12:23 PM (3 m, 13 s)
Engine
blob
Format
Raw Data
Handle
704438
Attached To
rINP In-Portal
itemrating.php
View Options
<?php
class
clsItemRating
extends
clsItemDB
{
function
clsItemRating
(
$RatingId
=
NULL
)
{
$this
->
clsItemDB
();
$this
->
tablename
=
GetTablePrefix
().
"ItemRating"
;
$this
->
id_field
=
"RatingId"
;
$this
->
NoResourceId
=
1
;
$this
->
type
=-
10
;
if
(
$RatingId
!=
NULL
)
$this
->
LoadFromDatabase
(
$RatingId
);
}
function
Validate
()
{
global
$Errors
;
$dataValid
=
true
;
if
(!
isset
(
$this
->
m_IPAddress
))
{
$Errors
->
AddError
(
"error.fieldIsRequired"
,
'IPAddress'
,
""
,
""
,
get_class
(
$this
),
"Validate"
);
$dataValid
=
false
;
}
if
(!
isset
(
$this
->
m_CreatedOn
))
{
$Errors
->
AddError
(
"error.fieldIsRequired"
,
'CreatedOn'
,
""
,
""
,
get_class
(
$this
),
"Validate"
);
$dataValid
=
false
;
}
if
(!
isset
(
$this
->
m_VoteRating
))
{
$Errors
->
AddError
(
"error.fieldIsRequired"
,
'VoteRating'
,
""
,
""
,
get_class
(
$this
),
"Validate"
);
$dataValid
=
false
;
}
if
(
$this
->
m_VoteRating
>
5
||
$this
->
m_VoteRating
<
1
||
!
is_int
(
$this
->
m_VoteRating
))
{
$Errors
->
AddError
(
"error.invalidVoteRaiting"
,
""
,
""
,
""
,
get_class
(
$this
),
"Validate"
);
$dataValid
=
false
;
}
return
$dataValid
;
}
function
Create
()
{
global
$REMOTE_ADDR
;
$this
->
Set
(
"CreatedOn"
,
adodb_date
(
"U"
));
$this
->
Set
(
"IPAddress"
,
$REMOTE_ADDR
);
/* if(ip_exists($this->Get("IPAddress"),$this->Get("ItemId"),$this->tablename))
{
//$Errors->AddError("error.already_rated","","","","clsItemRating","Create");
return false;
}
*/
parent
::
Create
();
return
true
;
}
function
LoadFromDatabase
(
$Id
)
{
global
$Errors
;
if
(!
isset
(
$Id
))
{
$Errors
->
AddError
(
"error.AppError"
,
NULL
,
'Internal error: LoadFromDatabase id'
,
""
,
get_class
(
$this
),
"LoadFromDatabase"
);
return
false
;
}
$sql
=
sprintf
(
"SELECT * FROM ItemRating WHERE RatingId = '%s'"
,
$Id
);
$result
=
$this
->
adodbConnection
->
Execute
(
$sql
);
if
(
$result
===
false
)
{
$Errors
->
AddError
(
"error.DatabaseError"
,
NULL
,
$this
->
adodbConnection
->
ErrorMsg
(),
""
,
get_class
(
$this
),
"LoadFromDatabase"
);
return
false
;
}
$data
=
$result
->
fields
;
$this
->
SetFromArray
(
$data
);
$this
->
Clean
();
return
true
;
}
}
/*clsItemRating*/
class
clsItemRatingList
extends
clsItemCollection
{
var
$ItemResourceId
=
0
;
function
clsItemRatingList
(
$ItemId
=
NULL
)
{
$this
->
clsItemCollection
;
$this
->
SourceTable
=
GetTablePrefix
().
"ItemRating"
;
if
(
$ItemId
)
{
$this
->
ItemResourceId
=
$ItemId
;
$this
->
LoadItemVotes
(
$ItemId
);
}
}
function
LoadItemVotes
(
$ItemId
=
NULL
)
{
if
(!
$ItemId
)
$ItemId
=
$this
->
ItemResourceId
;
if
(
$ItemId
)
{
$sql
=
"SELECT * FROM "
.
$this
->
SourceTable
.
" WHERE ItemId=$ItemId"
;
return
$this
->
Query_Item
(
$sql
);
}
else
return
NULL
;
}
}
/*
function RatingImage($n)
{
if($n<0.25 || $n>5)
return "0";
if($n>=0.25 && $n<0.75)
return "0_half";
if($n>=0.75 && $n<1.25)
return "1";
if($n>=1.25 && $n<1.75)
return "1_half";
if($n>=1.75 && $n<2.25)
return "2";
if($n>=2.25 && $n<2.75)
return "2_half";
if($n>=2.75 && $n<3.25)
return "3";
if($n>=3.25 && $n<3.75)
return "3_half";
if($n>=3.75 && $n<4.25)
return "4";
if($n>=4.25 && $n<4.75)
return "4_half";
if($n>=4.75 && $n<=5)
return "5";
}
*/
function
RatingTickImage
(
$n
,
$OnImage
,
$OffImage
)
{
$a
=
array
();
for
(
$x
=
1
;
$x
<
6
;
$x
++)
{
if
(
$n
>=
$x
)
{
$a
[
$x
]
=
$OnImage
;
}
else
$a
[
$x
]
=
$OffImage
;
}
return
$a
;
}
function
RatingText
(
$n
)
{
$text
=
array
(
language
(
"lu_rating_0"
),
language
(
"lu_rating_1"
),
language
(
"lu_rating_2"
),
language
(
"lu_rating_3"
),
language
(
"lu_rating_4"
),
language
(
"lu_rating_5"
));
$n
=
round
(
$n
);
return
$text
[
$n
];
}
?>
Event Timeline
Log In to Comment