int
CAdvBanner::Set(
array arFields,
int BANNER_ID="",
char(1) CHECK_RIGHTS="Y"
);
The Set method creates a new or modifies an existing banner. To modify an
existing banner, pass the banner ID in the second parameter. Non-static method.
Parameters
Parameter | Description |
arFields |
Array containing the banner parameters. The following array keys are
possible:
- CONTRACT_ID -
contract ID (required for a new banner)
- TYPE_SID - symbolic code of a
banner type
- STATUS_SID -
symbolic status code; can be one of the following :
- PUBLISHED -
a banner is approved and published;
- READY -
a banner is still on approval;
- REJECTED -
a banner is rejected.
- STATUS_COMMENTS -
comments for the status
- NAME - banner name
- GROUP_SID -
name of a banner group
- ACTIVE - active state: "Y" - banner
is active; "N" - banner is inactive;
- LID - code of the
site to display the banner
- WEIGHT - banner weight
- MAX_SHOW_COUNT - maximum
shows
- RESET_SHOW_COUNT - indicates that the shows counter
is to be reset; the contract counter will decrements accordingly
- MAX_CLICK_COUNT -
maximum clicks
- RESET_CLICK_COUNT - indicates that the
clicks counter is to be reset; the contract counter will decrements accordingly
- DATE_SHOW_FROM - the date
of the first show
- DATE_SHOW_TO - the date of the
last show
- arrIMAGE - array that describes the
image to load; the following array keys are possible:
- name -
image file name
- type - MIME type of
a file (e.g.: "image/gif")
- tmp_name -
name of the temporary file on server
- error -
error code ("0" means no error)
- size -
file size
- MODULE_ID - module
identifier ("advertising")
- IMAGE_ALT -
image tooltip text
- URL - link which is opened upon click on
a banner. This field can contain the template
#EVENT_GID#
that is replaced upon click with the visitor ID used in the Statistics
module - URL_TARGET - value of the
target
attribute of the tag <a> :
- _blank - specifies to load the link into a new blank
window. This window is not named.
- _parent - specifies to load the link into the
immediate parent of the document the link is in.
- _self - specifies to load the link into the same
window the link was clicked in.
- _top - specifies to load the link into the full body
of the window.
- CODE - HTML code of the banner, or banner text
- CODE_TYPE -
type of the banner code: "text" for plain text; "html" for HTML;
- STAT_EVENT_1 -
event type identifier "
event1 " (for registration in the
Statistics module) - STAT_EVENT_2 - event type
identifier "
event2 " - STAT_EVENT_3 - auxiliary
event type identifier "
event3 ". The identifiers event1 , event2 , event3
allow the following templates: #BANNER_NAME# -
banner name #BANNER_ID# -
banner ID #CONTRACT_ID# -
contract ID #TYPE_SID# -
banner type - FOR_NEW_GUEST - if
set to "Y", the banner is to be shown to new visitors solely; if "N",
the banner is shown to all visitors
- COMMENTS - banner
comments
- arrSHOW_PAGE - array of pages and sections of
the site where the banner is allowed to be shown
- arrNOT_SHOW_PAGE -
array of pages and sections of the site where the banner is disallowed
to be shown
- arrCOUNTRY - array of two-character country
codes. Describes countries whose visitors the banner is allowed to
be shown to.
- arrSTAT_ADV - array of the
advertising campaign identifiers. Describes campaigns whose
visitors, both direct and returned, the banner is allowed to be
shown to.
- arrWEEKDAY - array with days of week and time
when the banner is to be displayed. The following keys are possible:
- SUNDAY -
array of hours when the banner is to be displayed on Sunday (0-23)
- MONDAY -
on Monday
- TUESDAY - on Tuesday
- WEDNESDAY -
on Wednesday
- THURSDAY - on Thursday
- FRIDAY -
on Friday
- SATURDAY - on Saturday
- SEND_EMAIL -
indicates that the e-mail message is to be sent to contract owners
upon change of the banner status.
|
BANNER_ID |
Banner ID. If omitted, a new banner is created. |
CHECK_RIGHTS |
Indicates to check the current user permissions. If "Y",
permissions are checked before the creation or modification of a
banner. If set to "N", the method creates or modifies a
banner disregarding permissions. |
Returned value
Returns the ID of a new or modified banner.
Example
// This code adds a new banner or modifies the existing one
<?
if ((strlen($save)>0 || strlen($apply)>0) && $REQUEST_METHOD=="POST")
{
InitBVar($SEND_EMAIL);
$arrIMAGE_ID = $HTTP_POST_FILES["IMAGE_ID"];
$arrIMAGE["MODULE_ID"] = "advertising";
$arrIMAGE_ID["del"] = ${"IMAGE_ID_del"};
$arrWEEKDAY = array(
"SUNDAY" => $arrSUNDAY,
"MONDAY" => $arrMONDAY,
"TUESDAY" => $arrTUESDAY,
"WEDNESDAY" => $arrWEDNESDAY,
"THURSDAY" => $arrTHURSDAY,
"FRIDAY" => $arrFRIDAY,
"SATURDAY" => $arrSATURDAY
);
if ($action=="view" && $isAbsAdmin)
{
$arFields = array(
"STATUS_SID" => $STATUS_SID,
"STATUS_COMMENTS" => $STATUS_COMMENTS
);
}
else
{
$arFields = array(
"CONTRACT_ID" => $CONTRACT_ID,
"TYPE_SID" => $TYPE_SID,
"STATUS_SID" => $STATUS_SID,
"STATUS_COMMENTS" => $STATUS_COMMENTS,
"NAME" => $NAME,
"GROUP_SID" => $GROUP_SID,
"ACTIVE" => $ACTIVE,
"LID" => $LID,
"WEIGHT" => $WEIGHT,
"MAX_SHOW_COUNT" => $MAX_SHOW_COUNT,
"RESET_SHOW_COUNT" => $RESET_SHOW_COUNT,
"MAX_CLICK_COUNT" => $MAX_CLICK_COUNT,
"RESET_CLICK_COUNT" => $RESET_CLICK_COUNT,
"DATE_SHOW_FROM" => $DATE_SHOW_FROM,
"DATE_SHOW_TO" => $DATE_SHOW_TO,
"arrIMAGE_ID" => $arrIMAGE_ID,
"IMAGE_ALT" => $IMAGE_ALT,
"URL" => $URL,
"URL_TARGET" => $URL_TARGET,
"CODE" => $CODE,
"CODE_TYPE" => $CODE_TYPE,
"STAT_EVENT_1" => $STAT_EVENT_1,
"STAT_EVENT_2" => $STAT_EVENT_2,
"STAT_EVENT_3" => $STAT_EVENT_3,
"FOR_NEW_GUEST" => $FOR_NEW_GUEST,
"COMMENTS" => $COMMENTS,
"arrSHOW_PAGE" => split("[\n\r]",$SHOW_PAGE),
"arrNOT_SHOW_PAGE" => split("[\n\r]",$NOT_SHOW_PAGE),
"arrCOUNTRY" => $arrCOUNTRY,
"arrSTAT_ADV" => $arrSTAT_ADV,
"arrWEEKDAY" => $arrWEEKDAY,
"SEND_EMAIL" => $SEND_EMAIL
);
}
if ($ID = CAdvBanner::Set($arFields, $ID))
{
if (strlen($strError) <= 0)
{
if (strlen($save) > 0)
LocalRedirect("adv_banner_list.php?lang=".LANG);
else
LocalRedirect(
"adv_banner_edit.php?ID=".$ID."&CONTRACT_ID=".$CONTRACT_ID."=".LANG."&action=".$action);
}
}
$DB->PrepareFields("b_adv_banner");
}
?>
© «Bitrix24», 2001-2024