ADDED : New Page System
ADDED : FOOTER AND HEADER Menu System ADDED : CopyRight Notice Fixed : Delete Confirm Messages
This commit is contained in:
parent
a055ace334
commit
c8f50e3ccd
21 changed files with 1611 additions and 89 deletions
|
@ -63,34 +63,18 @@ RewriteRule ^users/ channels.php [nc]
|
|||
RewriteRule ^user/(.*) view_channel.php?user=$1 [nc]
|
||||
RewriteRule ^channel/(.*) view_channel.php?user=$1 [nc]
|
||||
|
||||
#
|
||||
RewriteRule ^my_account myaccount.php [nc]
|
||||
RewriteRule ^manage/videos/ manage_videos.php [nc]
|
||||
RewriteRule ^manage/favourites/ manage_favourites.php [nc]
|
||||
RewriteRule ^manage/contacts/ manage_contacts.php [nc]
|
||||
RewriteRule ^manage/subscriptions/ manage_subscriptions.php [nc]
|
||||
RewriteRule ^manage/account user_account.php [nc]
|
||||
RewriteRule ^manage/video/edit edit_video.php [nc]
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
RewriteRule ^my_account myaccount.php [nc]
|
||||
|
||||
|
||||
|
||||
#Pages
|
||||
RewriteRule ^pages/help help.php [nc]
|
||||
RewriteRule ^pages/privacy privacy.php [nc]
|
||||
RewriteRule ^pages/termsofuse termsofuse.php [nc]
|
||||
RewriteRule ^pages/contactus contactus.php [nc]
|
||||
RewriteRule ^pages/aboutus aboutus.php [nc]
|
||||
#
|
||||
#
|
||||
RewriteRule ^page/([0-9]+)/(.*) view_page.php?pid=$1 [nc]
|
||||
#
|
||||
#Miscellenous
|
||||
RewriteRule ^subscriptions manage_subscriptions.php [nc]
|
||||
RewriteRule ^search/result search_result.php [nc]
|
||||
RewriteRule ^upload upload.php [nc]
|
||||
RewriteRule ^External/Upload external_upload.php [nc]
|
||||
|
||||
#
|
||||
#
|
||||
#Group Section
|
||||
|
||||
RewriteRule ^group/([a-zA-Z0-9].+) view_group.php?url=$1&%{QUERY_STRING} [L]
|
||||
|
@ -101,6 +85,7 @@ RewriteRule ^create_group create_group.php [L]
|
|||
|
||||
|
||||
RewriteRule ^sitemap.xml$ sitemap.php
|
||||
RewriteRule ^signup signup.php
|
||||
|
||||
#Error Pages
|
||||
ErrorDocument 404 /error_pages/404.php
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?php
|
||||
/*
|
||||
****************************************************************************************************
|
||||
| Copyright (c) 2007-2008 Clip-Bucket.com. All rights reserved. |
|
||||
| Copyright (c) 2007-2010 Clip-Bucket.com. All rights reserved. |
|
||||
| @ Author : ArslanHassan |
|
||||
| @ Software : ClipBucket , © PHPBucket.com |
|
||||
****************************************************************************************************
|
||||
|
@ -10,7 +10,88 @@
|
|||
require'../includes/admin_config.php';
|
||||
$userquery->admin_login_check();
|
||||
$pages->page_redir();
|
||||
|
||||
//Activating Page
|
||||
if(isset($_GET['activate']))
|
||||
{
|
||||
$pid = mysql_clean($_GET['activate']);
|
||||
$cbpage->page_actions('activate',$pid);
|
||||
}
|
||||
|
||||
//Dectivating Page
|
||||
if(isset($_GET['deactivate']))
|
||||
{
|
||||
$pid = mysql_clean($_GET['deactivate']);
|
||||
$cbpage->page_actions('deactivate',$pid);
|
||||
}
|
||||
//Deleting
|
||||
if(isset($_GET['delete']))
|
||||
{
|
||||
$pid = mysql_clean($_GET['delete']);
|
||||
$cbpage->page_actions('delete',$pid);
|
||||
}
|
||||
if(isset($_POST['activate_selected'])){
|
||||
for($id=0;$id<=count($_POST['check_page']);$id++){
|
||||
$cbpage->page_actions('activate',$_POST['check_page'][$id]);
|
||||
}
|
||||
$eh->flush();
|
||||
e("Selected pages have been activated","m");
|
||||
}
|
||||
|
||||
if(isset($_POST['deactivate_selected'])){
|
||||
for($id=0;$id<=count($_POST['check_page']);$id++){
|
||||
$cbpage->page_actions('deactivate',$_POST['check_page'][$id]);
|
||||
}
|
||||
$eh->flush();
|
||||
e("Selected pages have been deactivated","m");
|
||||
}
|
||||
if(isset($_POST['delete_selected'])){
|
||||
for($id=0;$id<=count($_POST['check_page']);$id++){
|
||||
$cbpage->page_actions('delete',$_POST['check_page'][$id]);
|
||||
}
|
||||
$eh->flush();
|
||||
e("Selected pages have been deleted","m");
|
||||
}
|
||||
|
||||
$mode = $_GET['mode'];
|
||||
|
||||
if(isset($_POST['add_page']))
|
||||
{
|
||||
if($cbpage->create_page($_POST))
|
||||
$mode = 'view';
|
||||
}
|
||||
|
||||
switch($mode)
|
||||
{
|
||||
case "new":
|
||||
{
|
||||
assign("mode","new");
|
||||
}
|
||||
break;
|
||||
|
||||
case "view":
|
||||
default:
|
||||
{
|
||||
assign("mode","manage");
|
||||
assign("cbpages",$cbpage->get_pages());
|
||||
}
|
||||
break;
|
||||
case "edit":
|
||||
{
|
||||
if(isset($_POST['update_page']))
|
||||
{
|
||||
$_POST['page_id'] = $_GET['pid'];
|
||||
$cbpage->edit_page($_POST);
|
||||
}
|
||||
|
||||
assign("mode","edit");
|
||||
$page = $cbpage->get_page(mysql_clean($_GET['pid']));
|
||||
assign('page',$page);
|
||||
if(!$page)
|
||||
e("Page does not exist");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
template_files('manage_pages.html');
|
||||
display_it();
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 298 B After Width: | Height: | Size: 341 B |
|
@ -30,7 +30,7 @@ var imageurl = "{$imageurl}";
|
|||
<script src="{$js}/jquery_plugs/compressed/jeditable.js" type="text/javascript"></script>
|
||||
|
||||
<!-- Including Nice Edit -->
|
||||
|
||||
<script type="text/javascript" src="{$js}/nicedit/nicEdit.js"></script>
|
||||
{literal}
|
||||
|
||||
<script type="text/javascript" charset="utf-8">
|
||||
|
|
|
@ -1,31 +1,186 @@
|
|||
|
||||
<span class="page_title">Manage Pages</span>
|
||||
|
||||
|
||||
{if $mode =="new"}
|
||||
<form method="post">
|
||||
<fieldset class="fieldset">
|
||||
<fieldset class="fieldset cbform">
|
||||
<legend>Add New Page
|
||||
</legend><table width="98%" border="0" align="center" cellpadding="0" cellspacing="0" class="block">
|
||||
<tr>
|
||||
<td width="200"><strong>Page Title</strong></td>
|
||||
<td width="200"><label for="page_name">Page Name</label></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><label for="textfield"></label>
|
||||
<input type="text" name="textfield" id="textfield"></td>
|
||||
<td>
|
||||
<input name="page_name" type="text" id="page_name" value="{'page_name'|post}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Page Content</td>
|
||||
<td><label for="page_title">Page Title</label></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><label for="textarea"></label>
|
||||
<textarea name="textarea" id="textarea" cols="45" rows="5"></textarea><script type="text/javascript">
|
||||
{literal}new nicEditor({fullPanel : true}).panelInstance('textarea');{/literal}
|
||||
<td><input type="text" name="page_title" id="page_title" value="{'page_title'|post}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><label for="page_content">Page Content</label></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="background-color:#FFF">
|
||||
<textarea name="page_content" id="page_content" style="width:100%; min-height:250px">{'page_content'|post}</textarea><script type="text/javascript">
|
||||
{literal}new nicEditor({fullPanel : true,maxHeight:350}).panelInstance('page_content');{/literal}
|
||||
</script></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="background-color:#FFF"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" style="background-color:#FFF">
|
||||
<input type="submit" name="add_page" id="add_page" value="Create new page" class="button"/></td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</fieldset>
|
||||
</form>
|
||||
{/if}
|
||||
|
||||
</td>
|
||||
|
||||
|
||||
|
||||
|
||||
{if $mode =="edit" && $page.page_name!=''}
|
||||
<form method="post">
|
||||
<fieldset class="fieldset cbform">
|
||||
<legend>Add New Page
|
||||
</legend><table width="98%" border="0" align="center" cellpadding="0" cellspacing="0" class="block">
|
||||
<tr>
|
||||
<td width="200"><label for="page_name">Page Name</label></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input name="page_name" type="text" id="page_name" value="{$page.page_name}"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><label for="page_title">Page Title</label></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><input type="text" name="page_title" id="page_title" value="{$page.page_title}" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><label for="page_content">Page Content</label></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="background-color:#FFF">
|
||||
<textarea name="page_content" id="page_content" style="width:100%; min-height:250px">{$page.page_content}</textarea><script type="text/javascript">
|
||||
{literal}new nicEditor({fullPanel : true,maxHeight:350}).panelInstance('page_content');{/literal}
|
||||
</script></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style="background-color:#FFF"> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" style="background-color:#FFF">
|
||||
<input type="submit" name="update_page" id="update_page" value="Update page" class="button"/></td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</fieldset>
|
||||
</form>
|
||||
{/if}
|
||||
|
||||
|
||||
|
||||
|
||||
{if $mode=='manage'}
|
||||
<form name="page_form" action="" method="post">
|
||||
<table width="99%" border="0" align="center" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td width="30" align="center" valign="middle"><img src="{$imageurl}/arrow_return.png" width="25" height="25"></td>
|
||||
<td height="50" style="padding-left:15px">
|
||||
<input type="submit" name="activate_selected" value="Activate" class="button"/>
|
||||
<input type="submit" name="deactivate_selected" value="Deactivate" class="button" />
|
||||
<input type="submit" name="delete_selected" value="Delete" class="button" onclick="return confirm_it('Are you sure you want to delete selected page(s)')"/>
|
||||
|
||||
</td>
|
||||
<td align="right" style="padding-left:15px"><input type="button" value="Create New Page" class="button" onClick="window.location='?mode=new'"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
<table width="99%" border="0" align="center" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td width="30" align="center" valign="middle" class="left_head">
|
||||
<input type="checkbox" name="checkall" onclick="checkUncheckAll(this);"/></td>
|
||||
<td width="50" class="head_sep_left">PID</td>
|
||||
<td class="head"><div class="head_sep_left" style="width:250px">Details</div></td>
|
||||
<td width="50" class="right_head"> </td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<table width="99%" border="0" align="center" cellpadding="0" cellspacing="0">
|
||||
{assign var = bgcolor value = ""}
|
||||
{section name=list loop=$cbpages}
|
||||
<tr class="video_opt_td" bgcolor="{$bgcolor}">
|
||||
<td width="30" align="center" valign="top" class="video_opt_td"> <input name="check_page[]" type="checkbox" id="check_video" value="{$cbpages[list].page_id}" /></td>
|
||||
<td width="50" align="center" valign="top" class="video_opt_td">{$cbpages[list].page_id}</td>
|
||||
<td valign="top" class="video_opt_td"
|
||||
onmouseover="$('#vid_opt-{$cbpages[list].page_id}').show()"
|
||||
onmouseout="$('#vid_opt-{$cbpages[list].page_id}').hide()" style="padding-left:10px">
|
||||
<a href="{$cbpage->page_link($cbpages[list])}" target="_blank" style="text-indent:10px">
|
||||
{$cbpages[list].page_name}
|
||||
</a> —
|
||||
<span class="vdo_sets">
|
||||
Active:<strong>{$cbpages[list].active} </strong> •
|
||||
Added:<strong>{$cbpages[list].date_added|niceTime} </strong>
|
||||
{if $cbpages[list].delete_able =='no'} • <strong>UNDELETE-ABLE</strong></span>{/if}
|
||||
</span>
|
||||
|
||||
<br />
|
||||
<div id="vid_opt-{$cbpages[list].page_id}" style="display:none" class="vid_opts">
|
||||
|
||||
<a href="{$cbpage->page_link($cbpages[list])}">View</a> |
|
||||
<a href="?mode=edit&pid={$cbpages[list].page_id}">Edit</a>
|
||||
{if $cbpages[list].active == yes} |
|
||||
<a href="?deactivate={$cbpages[list].page_id}">Deactivate</a> {else} |
|
||||
<a href="?activate={$cbpages[list].page_id}">Activate</a> {/if} |
|
||||
<a href="?delete={$cbpages[list].page_id}">Delete</a>
|
||||
</div>
|
||||
</td>
|
||||
<td width="50" valign="top" class="video_opt_td"> </td>
|
||||
</tr>
|
||||
{if $bgcolor == ""}
|
||||
{assign var = bgcolor value = "#EEEEEE"}
|
||||
{else}
|
||||
{assign var = bgcolor value = ""}
|
||||
{/if}
|
||||
|
||||
{/section}
|
||||
</table>
|
||||
|
||||
<table width="99%" border="0" align="center" cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<td width="30" align="center" valign="middle"><img src="{$imageurl}/arrow_return_invert.png" width="25" height="25"></td>
|
||||
<td height="50" style="padding-left:15px">
|
||||
<input type="submit" name="activate_selected" value="Activate" class="button"/>
|
||||
<input type="submit" name="deactivate_selected" value="Deactivate" class="button" />
|
||||
<input type="submit" name="delete_selected" value="Delete" class="button" onclick="return confirm_it('Are you sure you want to delete selected page(s)')"/>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
{/if}
|
|
@ -74,7 +74,7 @@
|
|||
<input type="submit" name="deactivate_selected" value="Deactivate" class="button" />
|
||||
<input type="submit" name="make_featured_selected" value="Make Featured" class="button"/>
|
||||
<input type="submit" name="make_unfeatured_selected" value="Make Unfeatured" class="button"/>
|
||||
<input type="submit" name="delete_selected" value="Delete" class="button" onclick="Confirm_Delete('')"/>
|
||||
<input type="submit" name="delete_selected" value="Delete" class="button" onclick="return confirm_it('Are you sure you want to delete selected video(s)')"/>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
@ -152,7 +152,7 @@
|
|||
<input type="submit" name="deactivate_selected" value="Deactivate" class="button" />
|
||||
<input type="submit" name="make_featured_selected" value="Make Featured" class="button"/>
|
||||
<input type="submit" name="make_unfeatured_selected" value="Make Unfeatured" class="button"/>
|
||||
<input type="submit" name="delete_selected" value="Delete" class="button" onclick="Confirm_Delete('')"/>
|
||||
<input type="submit" name="delete_selected" value="Delete" class="button" onclick="return confirm_it('Are you sure you want to delete selected video(s)')"/>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
|
|
@ -78,19 +78,20 @@ a[rel=sponsors]:hover { background:#555; border:1px solid #232323; }
|
|||
/**
|
||||
* Forms
|
||||
*/
|
||||
.button{background-image:url(../images/button_bg.png); height:22px; color:#FFF; font-weight:bold; border:1px; line-height:22px; -moz-border-radius: 8px;
|
||||
-webkit-border-radius: 8px; border:1px solid #146194; cursor:pointer}
|
||||
.button{background-image:url(../images/button_bg.png); height:30px; color:#FFF; font-weight:bold; border:1px; line-height:30px; -moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;border-radius: 3px; border:1px solid #003366; cursor:pointer;outline:none}
|
||||
|
||||
.button:focus{background-position:-0 -22px}
|
||||
.button:focus{background-position:-0 -30px; outline:none}
|
||||
|
||||
.fieldset{-moz-border-radius: 5px;
|
||||
-webkit-border-radius: 5px; border:2px solid #EAEEFF; width:98%; margin:0px; padding:0px; margin:auto; margin-top:15px}
|
||||
|
||||
.fieldset select,.fieldset input,.fieldset textarea{border:1px solid #CCC; font-size:11px; margin:2px; padding:2px}
|
||||
.fieldset select,.fieldset input[type="text"],.fieldset input[type="textfield"],.fieldset textarea{border:1px solid #CCC; font-size:11px; margin:2px; padding:2px}
|
||||
|
||||
.fieldset .block{margin:5px}
|
||||
.fieldset legend{margin:2px; font-size:13px; font-weight:bold; color:#147dc3}
|
||||
|
||||
.cbform input[type="text"],.cbform input[type="textfield"]{width:300px; padding:3px; font-size:12px}
|
||||
|
||||
/**
|
||||
* Forms End
|
||||
|
|
|
@ -28,6 +28,11 @@ class ClipBucket
|
|||
var $links = array();
|
||||
var $captchas = array();
|
||||
|
||||
var $head_menu = array();
|
||||
var $foot_menu = array();
|
||||
|
||||
var $in_footer = false;
|
||||
|
||||
var $search_types = array('videos'=>'cbvid','groups'=>'cbgroup','users'=>'userquery');
|
||||
|
||||
/**
|
||||
|
@ -385,6 +390,65 @@ class ClipBucket
|
|||
|
||||
return $new_form;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Function used to load head menu
|
||||
*/
|
||||
function head_menu($params=NULL)
|
||||
{
|
||||
global $cbpage;
|
||||
$this->head_menu[] = array('name'=>lang("menu_home"),'link'=>BASEURL,"this"=>"home");
|
||||
$this->head_menu[] = array('name'=>lang("videos"),'link'=>cblink(array('name'=>'videos')),"this"=>"videos");
|
||||
$this->head_menu[] = array('name'=>lang("menu_channels"),'link'=>cblink(array('name'=>'channels')),"this"=>"channels");
|
||||
$this->head_menu[] = array('name'=>lang("groups"),'link'=>cblink(array('name'=>'groups')),"this"=>"groups");
|
||||
if(!userid())
|
||||
$this->head_menu[] = array('name'=>lang("signup"),'link'=>cblink(array('name'=>'signup')),"this"=>"signup");
|
||||
|
||||
$this->head_menu[] = array('name'=>lang("upload"),'link'=>cblink(array('name'=>'upload')),"this"=>"upload");
|
||||
|
||||
if($params['assign'])
|
||||
assign($params['assign'],$this->head_menu);
|
||||
else
|
||||
return $this->head_menu;
|
||||
}
|
||||
|
||||
/**
|
||||
* Function used to load head menu
|
||||
*/
|
||||
function foot_menu($params=NULL)
|
||||
{
|
||||
global $cbpage;
|
||||
$this->foot_menu[] = array('name'=>lang("menu_home"),'link'=>BASEURL,"this"=>"home");
|
||||
$this->foot_menu[] = array('name'=>lang("contact_us"),'link'=>cblink(array('name'=>'contact_us')),"this"=>"home");
|
||||
if(userid())
|
||||
$this->foot_menu[] = array('name'=>lang("my_account"),'link'=>cblink(array('name'=>'my_account')),"this"=>"home");
|
||||
|
||||
if($cbpage->is_active(1))
|
||||
$this->foot_menu[] = array('name'=>lang("about_us"),'link'=>$cbpage->get_page_link(1),"this"=>"home");
|
||||
|
||||
if($cbpage->is_active(2))
|
||||
$this->foot_menu[] = array('name'=>lang("privacy_policy"),'link'=>$cbpage->get_page_link(2),"this"=>"home");
|
||||
|
||||
if($cbpage->is_active(3))
|
||||
$this->foot_menu[] = array('name'=>lang("terms_of_serivce"),'link'=>$cbpage->get_page_link(3),"this"=>"home");
|
||||
|
||||
if($cbpage->is_active(4))
|
||||
$this->foot_menu[] = array('name'=>lang("help"),'link'=>$cbpage->get_page_link(4),"this"=>"groups");
|
||||
|
||||
if($params['assign'])
|
||||
assign($params['assign'],$this->foot_menu);
|
||||
else
|
||||
return $this->foot_menu;
|
||||
}
|
||||
|
||||
/**
|
||||
* Function used to call footer
|
||||
*/
|
||||
function footer()
|
||||
{
|
||||
ANCHOR(array('place'=>'the_footer'));
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
197
upload/includes/classes/cbpage.class.php
Normal file
197
upload/includes/classes/cbpage.class.php
Normal file
|
@ -0,0 +1,197 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* Class use to create and manage simple pages
|
||||
* ie About us, Privacy Policy etc
|
||||
*/
|
||||
|
||||
class cbpage
|
||||
{
|
||||
|
||||
var $page_tbl = '';
|
||||
|
||||
|
||||
/**
|
||||
* _CONTRUCTOR
|
||||
*/
|
||||
function cbpage()
|
||||
{
|
||||
$this->page_tbl = 'cb_pages';
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Function used to create new page
|
||||
* @param ARRAY
|
||||
*/
|
||||
function create_page($param)
|
||||
{
|
||||
global $db;
|
||||
$name = mysql_clean($param['page_name']);
|
||||
$title = mysql_clean($param['page_title']);
|
||||
$content = mysql_real_escape_string($param['page_content']);
|
||||
|
||||
if(empty($name))
|
||||
e("Page name was empty");
|
||||
if(empty($title))
|
||||
e("Page title was empty");
|
||||
if(empty($content))
|
||||
e("Page content was empty");
|
||||
|
||||
if(!error())
|
||||
{
|
||||
$db->insert($this->page_tbl,array("page_name","page_title","page_content","userid","date_added","active"),
|
||||
array($name,$title,"|no_mc|".$content,userid(),now(),"yes"));
|
||||
e("New page has been added successfully","m");
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Function used to get details using id
|
||||
*/
|
||||
function get_page($id)
|
||||
{
|
||||
global $db;
|
||||
$result = $db->select($this->page_tbl,"*"," page_id ='$id' ");
|
||||
if($db->num_rows>0)
|
||||
return $result[0];
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Function used to get all pages from database
|
||||
*/
|
||||
function get_pages()
|
||||
{
|
||||
global $db;
|
||||
$result = $db->select($this->page_tbl,"*");
|
||||
if($db->num_rows>0)
|
||||
return $result;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Function used to edit page
|
||||
*/
|
||||
function edit_page($param)
|
||||
{
|
||||
global $db;
|
||||
$id = $param['page_id'];
|
||||
$name = mysql_clean($param['page_name']);
|
||||
$title = mysql_clean($param['page_title']);
|
||||
$content = mysql_real_escape_string($param['page_content']);
|
||||
|
||||
$page = $this->get_page($id);
|
||||
|
||||
if(!$page)
|
||||
e("Page does not exist");
|
||||
if(empty($name))
|
||||
e("Page name was empty");
|
||||
if(empty($title))
|
||||
e("Page title was empty");
|
||||
if(empty($content))
|
||||
e("Page content was empty");
|
||||
|
||||
if(!error())
|
||||
{
|
||||
$db->update($this->page_tbl,array("page_name","page_title","page_content"),
|
||||
array($name,$title,$content)," page_id='$id'");
|
||||
e("Page has been updated","m");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Function used to delete page
|
||||
*/
|
||||
function delete_page($id)
|
||||
{
|
||||
$page = $this->get_page($id);
|
||||
if(!$page)
|
||||
e("Page does not exist");
|
||||
if(!error())
|
||||
{
|
||||
$db->delete($this->page_tbl,array("page_id"),array($id));
|
||||
e("Page has been deleted successfully","m");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Function used to create page link
|
||||
*/
|
||||
function page_link($pdetails)
|
||||
{
|
||||
//baseurl/page/$id/page_name
|
||||
if(SEO=='yes')
|
||||
return BASEURL.'/page/'.$pdetails['page_id'].'/'.SEO(strtolower($pdetails['page_name']));
|
||||
else
|
||||
return BASEURL.'/view_page.php?pid='.$pdetails['page_id'];
|
||||
}
|
||||
|
||||
/**
|
||||
* Function used to get page link fro id
|
||||
*/
|
||||
function get_page_link($id)
|
||||
{
|
||||
$page = $this->get_page($id);
|
||||
return $this->page_link($page);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Function used to activate, deactivate or to delete pages
|
||||
*/
|
||||
function page_actions($type,$id)
|
||||
{
|
||||
global $db;
|
||||
$page = $this->get_page($id);
|
||||
if(!$page)
|
||||
e("Page does not exist");
|
||||
else
|
||||
{
|
||||
switch($type)
|
||||
{
|
||||
case "activate";
|
||||
$db->update($this->page_tbl,array("active"),array("yes")," page_id='$id'");
|
||||
e("Page has been activated","m");
|
||||
break;
|
||||
case "deactivate";
|
||||
$db->update($this->page_tbl,array("active"),array("no")," page_id='$id'");
|
||||
e("Page has been dectivated","m");
|
||||
break;
|
||||
case "delete";
|
||||
{
|
||||
if($page['delete_able']=='yes')
|
||||
{
|
||||
$db->delete($this->page_tbl,array("page_id"),array($id));
|
||||
e("Page has been delete","m");
|
||||
}else
|
||||
e("You cannot delete this page");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* function used to check weather page is active or not
|
||||
*/
|
||||
function is_active($id)
|
||||
{
|
||||
global $db;
|
||||
$result = $db->count($this->page_tbl,"page_id"," page_id='$id' ");
|
||||
if($result>0)
|
||||
return true;
|
||||
else
|
||||
return falses;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?>
|
|
@ -73,7 +73,7 @@ if(file_exists(dirname(__FILE__).'/../install/isinstall.php')){
|
|||
require_once('classes/player.class.php');
|
||||
require_once('classes/cbemail.class.php');
|
||||
require_once('classes/pm.class.php');
|
||||
|
||||
require_once('classes/cbpage.class.php');
|
||||
require_once 'languages.php';
|
||||
|
||||
$pages = new pages();
|
||||
|
@ -100,7 +100,7 @@ if(file_exists(dirname(__FILE__).'/../install/isinstall.php')){
|
|||
$cbemail = new CBEmail();
|
||||
$cbsearch = new CBSearch();
|
||||
$cbpm = new cb_pm();
|
||||
|
||||
$cbpage = new cbpage();
|
||||
|
||||
require 'defined_links.php';
|
||||
|
||||
|
@ -361,6 +361,7 @@ $Smarty->assign_by_ref('cbobjects',$cbobjects);
|
|||
$Smarty->assign_by_ref('cbplayer',$cbplayer);
|
||||
$Smarty->assign_by_ref('cbsearch',$cbsearch);
|
||||
$Smarty->assign_by_ref('cbpm',$cbpm);
|
||||
$Smarty->assign_by_ref('cbpage',$cbpage);
|
||||
|
||||
/*
|
||||
REGISERTING FUNCTION FOR SMARTY TEMPLATES
|
||||
|
@ -395,6 +396,8 @@ $Smarty->register_function('private_message','private_message');
|
|||
$Smarty->register_function('show_video_rating','show_video_rating');
|
||||
$Smarty->register_function('load_captcha','load_captcha');
|
||||
$Smarty->register_function('cbtitle','cbtitle');
|
||||
$Smarty->register_function('head_menu','head_menu');
|
||||
$Smarty->register_function('foot_menu','foot_menu');
|
||||
|
||||
$Smarty->register_modifier('SetTime','SetTime');
|
||||
$Smarty->register_modifier('getname','getname');
|
||||
|
|
|
@ -125,6 +125,8 @@
|
|||
}
|
||||
}
|
||||
|
||||
function cb_footer(){ define("footer_loaded",TRUE); echo base64_decode(config(base64_decode('Y2JoYXNo')));}
|
||||
|
||||
function Assign($name,$value)
|
||||
{
|
||||
CBTemplate::assign($name,$value);
|
||||
|
@ -879,7 +881,13 @@
|
|||
foreach($vls as $value)
|
||||
{
|
||||
$count++;
|
||||
$val = mysql_clean($value);
|
||||
|
||||
preg_match('/\|no_mc\|/',$value,$matches);
|
||||
pr($matches);
|
||||
if($matches[0]!='')
|
||||
$val = preg_replace('/\|no_mc\|/','',$value);
|
||||
else
|
||||
$val = mysql_clean($value);
|
||||
$needle = substr($val,0,3);
|
||||
|
||||
if($needle != '|f|')
|
||||
|
@ -890,7 +898,7 @@
|
|||
$values_query .= "'".$val."'";
|
||||
}
|
||||
|
||||
|
||||
$val ;
|
||||
if($total_values!=$count)
|
||||
$values_query .= ',';
|
||||
}
|
||||
|
@ -1852,6 +1860,14 @@
|
|||
|
||||
assign('template_files',$new_list);
|
||||
Template('body.html');
|
||||
|
||||
if(count($ClipBucket->anchor_function_list['the_footer'])==0 ||!defined("footer_loaded"))
|
||||
{
|
||||
echo base64_decode("PGgyPklsbGVnYWwgT3BlcmF0aW9uIEZvdW5k");
|
||||
echo "- Please VISIT ";
|
||||
echo base64_decode("PGEgaHJlZj0iaHR0cDovL2NsaXAtYnVja2V0LmNvbS8iPkNsaXBCdWNrZXQ8L2E+");
|
||||
echo " for Details</h2>";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
@ -3160,4 +3176,23 @@
|
|||
global $userquery;
|
||||
return $userquery->get_username($uid,'username');
|
||||
}
|
||||
|
||||
/**
|
||||
* FUnction used to get head menu
|
||||
*/
|
||||
function head_menu($params=NULL)
|
||||
{
|
||||
global $Cbucket;
|
||||
return $Cbucket->head_menu($params);
|
||||
}
|
||||
|
||||
/**
|
||||
* FUnction used to get foot menu
|
||||
*/
|
||||
function foot_menu($params=NULL)
|
||||
{
|
||||
global $Cbucket;
|
||||
return $Cbucket->foot_menu($params);
|
||||
}
|
||||
|
||||
?>
|
|
@ -45,7 +45,7 @@
|
|||
* then our function will get all the code for this placement and will display it
|
||||
* @param : array(Ad Code, LIMIT);
|
||||
*/
|
||||
function ANCHOR($params,&$Smarty)
|
||||
function ANCHOR($params)
|
||||
{
|
||||
global $Cbucket;
|
||||
//Getting List of codes to display at this anchor
|
||||
|
@ -287,5 +287,7 @@
|
|||
{
|
||||
global $Cbucket;
|
||||
$Cbucket->captchas[] = array('load_function'=>$func,'validate_function'=>$ver_func,'show_field'=>$show_field);
|
||||
}
|
||||
}register_anchor_function('cb_footer','the_footer');
|
||||
|
||||
|
||||
?>
|
127
upload/js/nicedit/nicEdit.js
Normal file
127
upload/js/nicedit/nicEdit.js
Normal file
|
@ -0,0 +1,127 @@
|
|||
/* NicEdit - Micro Inline WYSIWYG
|
||||
* Copyright 2007-2008 Brian Kirchoff
|
||||
*
|
||||
* NicEdit is distributed under the terms of the MIT license
|
||||
* For more information visit http://nicedit.com/
|
||||
* Do not remove this copyright message
|
||||
*/
|
||||
var bkExtend=function(){var A=arguments;if(A.length==1){A=[this,A[0]]}for(var B in A[1]){A[0][B]=A[1][B]}return A[0]};function bkClass(){}bkClass.prototype.construct=function(){};bkClass.extend=function(C){var A=function(){if(arguments[0]!==bkClass){return this.construct.apply(this,arguments)}};var B=new this(bkClass);bkExtend(B,C);A.prototype=B;A.extend=this.extend;return A};var bkElement=bkClass.extend({construct:function(B,A){if(typeof (B)=="string"){B=(A||document).createElement(B)}B=$BK(B);return B},appendTo:function(A){A.appendChild(this);return this},appendBefore:function(A){A.parentNode.insertBefore(this,A);return this},addEvent:function(B,A){bkLib.addEvent(this,B,A);return this},setContent:function(A){this.innerHTML=A;return this},pos:function(){var C=curtop=0;var B=obj=this;if(obj.offsetParent){do{C+=obj.offsetLeft;curtop+=obj.offsetTop}while(obj=obj.offsetParent)}var A=(!window.opera)?parseInt(this.getStyle("border-width")||this.style.border)||0:0;return[C+A,curtop+A+this.offsetHeight]},noSelect:function(){bkLib.noSelect(this);return this},parentTag:function(A){var B=this;do{if(B&&B.nodeName&&B.nodeName.toUpperCase()==A){return B}B=B.parentNode}while(B);return false},hasClass:function(A){return this.className.match(new RegExp("(\\s|^)nicEdit-"+A+"(\\s|$)"))},addClass:function(A){if(!this.hasClass(A)){this.className+=" nicEdit-"+A}return this},removeClass:function(A){if(this.hasClass(A)){this.className=this.className.replace(new RegExp("(\\s|^)nicEdit-"+A+"(\\s|$)")," ")}return this},setStyle:function(A){var B=this.style;for(var C in A){switch(C){case"float":B.cssFloat=B.styleFloat=A[C];break;case"opacity":B.opacity=A[C];B.filter="alpha(opacity="+Math.round(A[C]*100)+")";break;case"className":this.className=A[C];break;default:B[C]=A[C]}}return this},getStyle:function(A,C){var B=(!C)?document.defaultView:C;if(this.nodeType==1){return(B&&B.getComputedStyle)?B.getComputedStyle(this,null).getPropertyValue(A):this.currentStyle[bkLib.camelize(A)]}},remove:function(){this.parentNode.removeChild(this);return this},setAttributes:function(A){for(var B in A){this[B]=A[B]}return this}});var bkLib={isMSIE:(navigator.appVersion.indexOf("MSIE")!=-1),addEvent:function(C,B,A){(C.addEventListener)?C.addEventListener(B,A,false):C.attachEvent("on"+B,A)},toArray:function(C){var B=C.length,A=new Array(B);while(B--){A[B]=C[B]}return A},noSelect:function(B){if(B.setAttribute&&B.nodeName.toLowerCase()!="input"&&B.nodeName.toLowerCase()!="textarea"){B.setAttribute("unselectable","on")}for(var A=0;A<B.childNodes.length;A++){bkLib.noSelect(B.childNodes[A])}},camelize:function(A){return A.replace(/\-(.)/g,function(B,C){return C.toUpperCase()})},inArray:function(A,B){return(bkLib.search(A,B)!=null)},search:function(A,C){for(var B=0;B<A.length;B++){if(A[B]==C){return B}}return null},cancelEvent:function(A){A=A||window.event;if(A.preventDefault&&A.stopPropagation){A.preventDefault();A.stopPropagation()}return false},domLoad:[],domLoaded:function(){if(arguments.callee.done){return }arguments.callee.done=true;for(i=0;i<bkLib.domLoad.length;i++){bkLib.domLoad[i]()}},onDomLoaded:function(A){this.domLoad.push(A);if(document.addEventListener){document.addEventListener("DOMContentLoaded",bkLib.domLoaded,null)}else{if(bkLib.isMSIE){document.write("<style>.nicEdit-main p { margin: 0; }</style><script id=__ie_onload defer "+((location.protocol=="https:")?"src='javascript:void(0)'":"src=//0")+"><\/script>");$BK("__ie_onload").onreadystatechange=function(){if(this.readyState=="complete"){bkLib.domLoaded()}}}}window.onload=bkLib.domLoaded}};function $BK(A){if(typeof (A)=="string"){A=document.getElementById(A)}return(A&&!A.appendTo)?bkExtend(A,bkElement.prototype):A}var bkEvent={addEvent:function(A,B){if(B){this.eventList=this.eventList||{};this.eventList[A]=this.eventList[A]||[];this.eventList[A].push(B)}return this},fireEvent:function(){var A=bkLib.toArray(arguments),C=A.shift();if(this.eventList&&this.eventList[C]){for(var B=0;B<this.eventList[C].length;B++){this.eventList[C][B].apply(this,A)}}}};function __(A){return A}Function.prototype.closure=function(){var A=this,B=bkLib.toArray(arguments),C=B.shift();return function(){if(typeof (bkLib)!="undefined"){return A.apply(C,B.concat(bkLib.toArray(arguments)))}}};Function.prototype.closureListener=function(){var A=this,C=bkLib.toArray(arguments),B=C.shift();return function(E){E=E||window.event;if(E.target){var D=E.target}else{var D=E.srcElement}return A.apply(B,[E,D].concat(C))}};
|
||||
|
||||
|
||||
|
||||
var nicEditorConfig = bkClass.extend({
|
||||
buttons : {
|
||||
'bold' : {name : __('Click to Bold'), command : 'Bold', tags : ['B','STRONG'], css : {'font-weight' : 'bold'}, key : 'b'},
|
||||
'italic' : {name : __('Click to Italic'), command : 'Italic', tags : ['EM','I'], css : {'font-style' : 'italic'}, key : 'i'},
|
||||
'underline' : {name : __('Click to Underline'), command : 'Underline', tags : ['U'], css : {'text-decoration' : 'underline'}, key : 'u'},
|
||||
'left' : {name : __('Left Align'), command : 'justifyleft', noActive : true},
|
||||
'center' : {name : __('Center Align'), command : 'justifycenter', noActive : true},
|
||||
'right' : {name : __('Right Align'), command : 'justifyright', noActive : true},
|
||||
'justify' : {name : __('Justify Align'), command : 'justifyfull', noActive : true},
|
||||
'ol' : {name : __('Insert Ordered List'), command : 'insertorderedlist', tags : ['OL']},
|
||||
'ul' : {name : __('Insert Unordered List'), command : 'insertunorderedlist', tags : ['UL']},
|
||||
'subscript' : {name : __('Click to Subscript'), command : 'subscript', tags : ['SUB']},
|
||||
'superscript' : {name : __('Click to Superscript'), command : 'superscript', tags : ['SUP']},
|
||||
'strikethrough' : {name : __('Click to Strike Through'), command : 'strikeThrough', css : {'text-decoration' : 'line-through'}},
|
||||
'removeformat' : {name : __('Remove Formatting'), command : 'removeformat', noActive : true},
|
||||
'indent' : {name : __('Indent Text'), command : 'indent', noActive : true},
|
||||
'outdent' : {name : __('Remove Indent'), command : 'outdent', noActive : true},
|
||||
'hr' : {name : __('Horizontal Rule'), command : 'insertHorizontalRule', noActive : true}
|
||||
},
|
||||
iconsPath : imageurl+'/nicEditIcons-latest.gif',
|
||||
buttonList : ['save','bold','italic','underline','left','center','right','justify','ol','ul','fontSize','fontFamily','fontFormat','indent','outdent','image','upload','link','unlink','forecolor','bgcolor'],
|
||||
iconList : {"xhtml":1,"bgcolor":2,"forecolor":3,"bold":4,"center":5,"hr":6,"indent":7,"italic":8,"justify":9,"left":10,"ol":11,"outdent":12,"removeformat":13,"right":14,"save":25,"strikethrough":16,"subscript":17,"superscript":18,"ul":19,"underline":20,"image":21,"link":22,"unlink":23,"close":24,"arrow":26,"upload":27}
|
||||
|
||||
});
|
||||
;
|
||||
var nicEditors={nicPlugins:[],editors:[],registerPlugin:function(B,A){this.nicPlugins.push({p:B,o:A})},allTextAreas:function(C){var A=document.getElementsByTagName("textarea");for(var B=0;B<A.length;B++){nicEditors.editors.push(new nicEditor(C).panelInstance(A[B]))}return nicEditors.editors},findEditor:function(C){var B=nicEditors.editors;for(var A=0;A<B.length;A++){if(B[A].instanceById(C)){return B[A].instanceById(C)}}}};var nicEditor=bkClass.extend({construct:function(C){this.options=new nicEditorConfig();bkExtend(this.options,C);this.nicInstances=new Array();this.loadedPlugins=new Array();var A=nicEditors.nicPlugins;for(var B=0;B<A.length;B++){this.loadedPlugins.push(new A[B].p(this,A[B].o))}nicEditors.editors.push(this);bkLib.addEvent(document.body,"mousedown",this.selectCheck.closureListener(this))},panelInstance:function(B,C){B=this.checkReplace($BK(B));var A=new bkElement("DIV").setStyle({width:(parseInt(B.getStyle("width"))||B.clientWidth)+"px"}).appendBefore(B);this.setPanel(A);return this.addInstance(B,C)},checkReplace:function(B){var A=nicEditors.findEditor(B);if(A){A.removeInstance(B);A.removePanel()}return B},addInstance:function(B,C){B=this.checkReplace($BK(B));if(B.contentEditable||!!window.opera){var A=new nicEditorInstance(B,C,this)}else{var A=new nicEditorIFrameInstance(B,C,this)}this.nicInstances.push(A);return this},removeInstance:function(C){C=$BK(C);var B=this.nicInstances;for(var A=0;A<B.length;A++){if(B[A].e==C){B[A].remove();this.nicInstances.splice(A,1)}}},removePanel:function(A){if(this.nicPanel){this.nicPanel.remove();this.nicPanel=null}},instanceById:function(C){C=$BK(C);var B=this.nicInstances;for(var A=0;A<B.length;A++){if(B[A].e==C){return B[A]}}},setPanel:function(A){this.nicPanel=new nicEditorPanel($BK(A),this.options,this);this.fireEvent("panel",this.nicPanel);return this},nicCommand:function(B,A){if(this.selectedInstance){this.selectedInstance.nicCommand(B,A)}},getIcon:function(D,A){var C=this.options.iconList[D];var B=(A.iconFiles)?A.iconFiles[D]:"";return{backgroundImage:"url('"+((C)?this.options.iconsPath:B)+"')",backgroundPosition:((C)?((C-1)*-18):0)+"px 0px"}},selectCheck:function(C,A){var B=false;do{if(A.className&&A.className.indexOf("nicEdit")!=-1){return false}}while(A=A.parentNode);this.fireEvent("blur",this.selectedInstance,A);this.lastSelectedInstance=this.selectedInstance;this.selectedInstance=null;return false}});nicEditor=nicEditor.extend(bkEvent);
|
||||
var nicEditorInstance=bkClass.extend({isSelected:false,construct:function(G,D,C){this.ne=C;this.elm=this.e=G;this.options=D||{};newX=parseInt(G.getStyle("width"))||G.clientWidth;newY=parseInt(G.getStyle("height"))||G.clientHeight;this.initialHeight=newY-8;var H=(G.nodeName.toLowerCase()=="textarea");if(H||this.options.hasPanel){var B=(bkLib.isMSIE&&!((typeof document.body.style.maxHeight!="undefined")&&document.compatMode=="CSS1Compat"));var E={width:newX+"px",border:"1px solid #ccc",borderTop:0,overflowY:"auto",overflowX:"hidden"};E[(B)?"height":"maxHeight"]=(this.ne.options.maxHeight)?this.ne.options.maxHeight+"px":null;this.editorContain=new bkElement("DIV").setStyle(E).appendBefore(G);var A=new bkElement("DIV").setStyle({width:(newX-8)+"px",margin:"4px",minHeight:newY+"px"}).addClass("main").appendTo(this.editorContain);G.setStyle({display:"none"});A.innerHTML=G.innerHTML;if(H){A.setContent(G.value);this.copyElm=G;var F=G.parentTag("FORM");if(F){bkLib.addEvent(F,"submit",this.saveContent.closure(this))}}A.setStyle((B)?{height:newY+"px"}:{overflow:"hidden"});this.elm=A}this.ne.addEvent("blur",this.blur.closure(this));this.init();this.blur()},init:function(){this.elm.setAttribute("contentEditable","true");if(this.getContent()==""){this.setContent("<br />")}this.instanceDoc=document.defaultView;this.elm.addEvent("mousedown",this.selected.closureListener(this)).addEvent("keypress",this.keyDown.closureListener(this)).addEvent("focus",this.selected.closure(this)).addEvent("blur",this.blur.closure(this)).addEvent("keyup",this.selected.closure(this));this.ne.fireEvent("add",this)},remove:function(){this.saveContent();if(this.copyElm||this.options.hasPanel){this.editorContain.remove();this.e.setStyle({display:"block"});this.ne.removePanel()}this.disable();this.ne.fireEvent("remove",this)},disable:function(){this.elm.setAttribute("contentEditable","false")},getSel:function(){return(window.getSelection)?window.getSelection():document.selection},getRng:function(){var A=this.getSel();if(!A){return null}return(A.rangeCount>0)?A.getRangeAt(0):A.createRange()},selRng:function(A,B){if(window.getSelection){B.removeAllRanges();B.addRange(A)}else{A.select()}},selElm:function(){var C=this.getRng();if(C.startContainer){var D=C.startContainer;if(C.cloneContents().childNodes.length==1){for(var B=0;B<D.childNodes.length;B++){var A=D.childNodes[B].ownerDocument.createRange();A.selectNode(D.childNodes[B]);if(C.compareBoundaryPoints(Range.START_TO_START,A)!=1&&C.compareBoundaryPoints(Range.END_TO_END,A)!=-1){return $BK(D.childNodes[B])}}}return $BK(D)}else{return $BK((this.getSel().type=="Control")?C.item(0):C.parentElement())}},saveRng:function(){this.savedRange=this.getRng();this.savedSel=this.getSel()},restoreRng:function(){if(this.savedRange){this.selRng(this.savedRange,this.savedSel)}},keyDown:function(B,A){if(B.ctrlKey){this.ne.fireEvent("key",this,B)}},selected:function(C,A){if(!A){A=this.selElm()}if(!C.ctrlKey){var B=this.ne.selectedInstance;if(B!=this){if(B){this.ne.fireEvent("blur",B,A)}this.ne.selectedInstance=this;this.ne.fireEvent("focus",B,A)}this.ne.fireEvent("selected",B,A);this.isFocused=true;this.elm.addClass("selected")}return false},blur:function(){this.isFocused=false;this.elm.removeClass("selected")},saveContent:function(){if(this.copyElm||this.options.hasPanel){this.ne.fireEvent("save",this);(this.copyElm)?this.copyElm.value=this.getContent():this.e.innerHTML=this.getContent()}},getElm:function(){return this.elm},getContent:function(){this.content=this.getElm().innerHTML;this.ne.fireEvent("get",this);return this.content},setContent:function(A){this.content=A;this.ne.fireEvent("set",this);this.elm.innerHTML=this.content},nicCommand:function(B,A){document.execCommand(B,false,A)}});
|
||||
var nicEditorIFrameInstance=nicEditorInstance.extend({savedStyles:[],init:function(){var B=this.elm.innerHTML.replace(/^\s+|\s+$/g,"");this.elm.innerHTML="";(!B)?B="<br />":B;this.initialContent=B;this.elmFrame=new bkElement("iframe").setAttributes({src:"javascript:;",frameBorder:0,allowTransparency:"true",scrolling:"no"}).setStyle({height:"100px",width:"100%"}).addClass("frame").appendTo(this.elm);if(this.copyElm){this.elmFrame.setStyle({width:(this.elm.offsetWidth-4)+"px"})}var A=["font-size","font-family","font-weight","color"];for(itm in A){this.savedStyles[bkLib.camelize(itm)]=this.elm.getStyle(itm)}setTimeout(this.initFrame.closure(this),50)},disable:function(){this.elm.innerHTML=this.getContent()},initFrame:function(){var B=$BK(this.elmFrame.contentWindow.document);B.designMode="on";B.open();var A=this.ne.options.externalCSS;B.write("<html><head>"+((A)?'<link href="'+A+'" rel="stylesheet" type="text/css" />':"")+'</head><body id="nicEditContent" style="margin: 0 !important; background-color: transparent !important;">'+this.initialContent+"</body></html>");B.close();this.frameDoc=B;this.frameWin=$BK(this.elmFrame.contentWindow);this.frameContent=$BK(this.frameWin.document.body).setStyle(this.savedStyles);this.instanceDoc=this.frameWin.document.defaultView;this.heightUpdate();this.frameDoc.addEvent("mousedown",this.selected.closureListener(this)).addEvent("keyup",this.heightUpdate.closureListener(this)).addEvent("keydown",this.keyDown.closureListener(this)).addEvent("keyup",this.selected.closure(this));this.ne.fireEvent("add",this)},getElm:function(){return this.frameContent},setContent:function(A){this.content=A;this.ne.fireEvent("set",this);this.frameContent.innerHTML=this.content;this.heightUpdate()},getSel:function(){return(this.frameWin)?this.frameWin.getSelection():this.frameDoc.selection},heightUpdate:function(){this.elmFrame.style.height=Math.max(this.frameContent.offsetHeight,this.initialHeight)+"px"},nicCommand:function(B,A){this.frameDoc.execCommand(B,false,A);setTimeout(this.heightUpdate.closure(this),100)}});
|
||||
var nicEditorPanel=bkClass.extend({construct:function(E,B,A){this.elm=E;this.options=B;this.ne=A;this.panelButtons=new Array();this.buttonList=bkExtend([],this.ne.options.buttonList);this.panelContain=new bkElement("DIV").setStyle({overflow:"hidden",width:"100%",border:"1px solid #cccccc",backgroundColor:"#efefef"}).addClass("panelContain");this.panelElm=new bkElement("DIV").setStyle({margin:"2px",marginTop:"0px",zoom:1,overflow:"hidden"}).addClass("panel").appendTo(this.panelContain);this.panelContain.appendTo(E);var C=this.ne.options;var D=C.buttons;for(button in D){this.addButton(button,C,true)}this.reorder();E.noSelect()},addButton:function(buttonName,options,noOrder){var button=options.buttons[buttonName];var type=(button.type)?eval("(typeof("+button.type+') == "undefined") ? null : '+button.type+";"):nicEditorButton;var hasButton=bkLib.inArray(this.buttonList,buttonName);if(type&&(hasButton||this.ne.options.fullPanel)){this.panelButtons.push(new type(this.panelElm,buttonName,options,this.ne));if(!hasButton){this.buttonList.push(buttonName)}}},findButton:function(B){for(var A=0;A<this.panelButtons.length;A++){if(this.panelButtons[A].name==B){return this.panelButtons[A]}}},reorder:function(){var C=this.buttonList;for(var B=0;B<C.length;B++){var A=this.findButton(C[B]);if(A){this.panelElm.appendChild(A.margin)}}},remove:function(){this.elm.remove()}});
|
||||
var nicEditorButton=bkClass.extend({construct:function(D,A,C,B){this.options=C.buttons[A];this.name=A;this.ne=B;this.elm=D;this.margin=new bkElement("DIV").setStyle({"float":"left",marginTop:"2px"}).appendTo(D);this.contain=new bkElement("DIV").setStyle({width:"20px",height:"20px"}).addClass("buttonContain").appendTo(this.margin);this.border=new bkElement("DIV").setStyle({backgroundColor:"#efefef",border:"1px solid #efefef"}).appendTo(this.contain);this.button=new bkElement("DIV").setStyle({width:"18px",height:"18px",overflow:"hidden",zoom:1,cursor:"pointer"}).addClass("button").setStyle(this.ne.getIcon(A,C)).appendTo(this.border);this.button.addEvent("mouseover",this.hoverOn.closure(this)).addEvent("mouseout",this.hoverOff.closure(this)).addEvent("mousedown",this.mouseClick.closure(this)).noSelect();if(!window.opera){this.button.onmousedown=this.button.onclick=bkLib.cancelEvent}B.addEvent("selected",this.enable.closure(this)).addEvent("blur",this.disable.closure(this)).addEvent("key",this.key.closure(this));this.disable();this.init()},init:function(){},hide:function(){this.contain.setStyle({display:"none"})},updateState:function(){if(this.isDisabled){this.setBg()}else{if(this.isHover){this.setBg("hover")}else{if(this.isActive){this.setBg("active")}else{this.setBg()}}}},setBg:function(A){switch(A){case"hover":var B={border:"1px solid #666",backgroundColor:"#ddd"};break;case"active":var B={border:"1px solid #666",backgroundColor:"#ccc"};break;default:var B={border:"1px solid #efefef",backgroundColor:"#efefef"}}this.border.setStyle(B).addClass("button-"+A)},checkNodes:function(A){var B=A;do{if(this.options.tags&&bkLib.inArray(this.options.tags,B.nodeName)){this.activate();return true}}while(B=B.parentNode&&B.className!="nicEdit");B=$BK(A);while(B.nodeType==3){B=$BK(B.parentNode)}if(this.options.css){for(itm in this.options.css){if(B.getStyle(itm,this.ne.selectedInstance.instanceDoc)==this.options.css[itm]){this.activate();return true}}}this.deactivate();return false},activate:function(){if(!this.isDisabled){this.isActive=true;this.updateState();this.ne.fireEvent("buttonActivate",this)}},deactivate:function(){this.isActive=false;this.updateState();if(!this.isDisabled){this.ne.fireEvent("buttonDeactivate",this)}},enable:function(A,B){this.isDisabled=false;this.contain.setStyle({opacity:1}).addClass("buttonEnabled");this.updateState();this.checkNodes(B)},disable:function(A,B){this.isDisabled=true;this.contain.setStyle({opacity:0.6}).removeClass("buttonEnabled");this.updateState()},toggleActive:function(){(this.isActive)?this.deactivate():this.activate()},hoverOn:function(){if(!this.isDisabled){this.isHover=true;this.updateState();this.ne.fireEvent("buttonOver",this)}},hoverOff:function(){this.isHover=false;this.updateState();this.ne.fireEvent("buttonOut",this)},mouseClick:function(){if(this.options.command){this.ne.nicCommand(this.options.command,this.options.commandArgs);if(!this.options.noActive){this.toggleActive()}}this.ne.fireEvent("buttonClick",this)},key:function(A,B){if(this.options.key&&B.ctrlKey&&String.fromCharCode(B.keyCode||B.charCode).toLowerCase()==this.options.key){this.mouseClick();if(B.preventDefault){B.preventDefault()}}}});
|
||||
var nicPlugin=bkClass.extend({construct:function(B,A){this.options=A;this.ne=B;this.ne.addEvent("panel",this.loadPanel.closure(this));this.init()},loadPanel:function(C){var B=this.options.buttons;for(var A in B){C.addButton(A,this.options)}C.reorder()},init:function(){}});
|
||||
|
||||
|
||||
var nicPaneOptions = { };
|
||||
|
||||
var nicEditorPane=bkClass.extend({construct:function(D,C,B,A){this.ne=C;this.elm=D;this.pos=D.pos();this.contain=new bkElement("div").setStyle({zIndex:"99999",overflow:"hidden",position:"absolute",left:this.pos[0]+"px",top:this.pos[1]+"px"});this.pane=new bkElement("div").setStyle({fontSize:"12px",border:"1px solid #ccc",overflow:"hidden",padding:"4px",textAlign:"left",backgroundColor:"#ffffc9"}).addClass("pane").setStyle(B).appendTo(this.contain);if(A&&!A.options.noClose){this.close=new bkElement("div").setStyle({"float":"right",height:"16px",width:"16px",cursor:"pointer"}).setStyle(this.ne.getIcon("close",nicPaneOptions)).addEvent("mousedown",A.removePane.closure(this)).appendTo(this.pane)}this.contain.noSelect().appendTo(document.body);this.position();this.init()},init:function(){},position:function(){if(this.ne.nicPanel){var B=this.ne.nicPanel.elm;var A=B.pos();var C=A[0]+parseInt(B.getStyle("width"))-(parseInt(this.pane.getStyle("width"))+8);if(C<this.pos[0]){this.contain.setStyle({left:C+"px"})}}},toggle:function(){this.isVisible=!this.isVisible;this.contain.setStyle({display:((this.isVisible)?"block":"none")})},remove:function(){if(this.contain){this.contain.remove();this.contain=null}},append:function(A){A.appendTo(this.pane)},setContent:function(A){this.pane.setContent(A)}});
|
||||
|
||||
|
||||
var nicSelectOptions = {
|
||||
buttons : {
|
||||
'fontSize' : {name : __('Select Font Size'), type : 'nicEditorFontSizeSelect', command : 'fontsize'},
|
||||
'fontFamily' : {name : __('Select Font Family'), type : 'nicEditorFontFamilySelect', command : 'fontname'},
|
||||
'fontFormat' : {name : __('Select Font Format'), type : 'nicEditorFontFormatSelect', command : 'formatBlock'}
|
||||
}
|
||||
};
|
||||
|
||||
var nicEditorSelect=bkClass.extend({construct:function(D,A,C,B){this.options=C.buttons[A];this.elm=D;this.ne=B;this.name=A;this.selOptions=new Array();this.margin=new bkElement("div").setStyle({"float":"left",margin:"2px 1px 0 1px"}).appendTo(this.elm);this.contain=new bkElement("div").setStyle({width:"90px",height:"20px",cursor:"pointer",overflow:"hidden"}).addClass("selectContain").addEvent("click",this.toggle.closure(this)).appendTo(this.margin);this.items=new bkElement("div").setStyle({overflow:"hidden",zoom:1,border:"1px solid #ccc",paddingLeft:"3px",backgroundColor:"#fff"}).appendTo(this.contain);this.control=new bkElement("div").setStyle({overflow:"hidden","float":"right",height:"18px",width:"16px"}).addClass("selectControl").setStyle(this.ne.getIcon("arrow",C)).appendTo(this.items);this.txt=new bkElement("div").setStyle({overflow:"hidden","float":"left",width:"66px",height:"14px",marginTop:"1px",fontFamily:"sans-serif",textAlign:"center",fontSize:"12px"}).addClass("selectTxt").appendTo(this.items);if(!window.opera){this.contain.onmousedown=this.control.onmousedown=this.txt.onmousedown=bkLib.cancelEvent}this.margin.noSelect();this.ne.addEvent("selected",this.enable.closure(this)).addEvent("blur",this.disable.closure(this));this.disable();this.init()},disable:function(){this.isDisabled=true;this.close();this.contain.setStyle({opacity:0.6})},enable:function(A){this.isDisabled=false;this.close();this.contain.setStyle({opacity:1})},setDisplay:function(A){this.txt.setContent(A)},toggle:function(){if(!this.isDisabled){(this.pane)?this.close():this.open()}},open:function(){this.pane=new nicEditorPane(this.items,this.ne,{width:"88px",padding:"0px",borderTop:0,borderLeft:"1px solid #ccc",borderRight:"1px solid #ccc",borderBottom:"0px",backgroundColor:"#fff"});for(var C=0;C<this.selOptions.length;C++){var B=this.selOptions[C];var A=new bkElement("div").setStyle({overflow:"hidden",borderBottom:"1px solid #ccc",width:"88px",textAlign:"left",overflow:"hidden",cursor:"pointer"});var D=new bkElement("div").setStyle({padding:"0px 4px"}).setContent(B[1]).appendTo(A).noSelect();D.addEvent("click",this.update.closure(this,B[0])).addEvent("mouseover",this.over.closure(this,D)).addEvent("mouseout",this.out.closure(this,D)).setAttributes("id",B[0]);this.pane.append(A);if(!window.opera){D.onmousedown=bkLib.cancelEvent}}},close:function(){if(this.pane){this.pane=this.pane.remove()}},over:function(A){A.setStyle({backgroundColor:"#ccc"})},out:function(A){A.setStyle({backgroundColor:"#fff"})},add:function(B,A){this.selOptions.push(new Array(B,A))},update:function(A){this.ne.nicCommand(this.options.command,A);this.close()}});var nicEditorFontSizeSelect=nicEditorSelect.extend({sel:{1:"1 (8pt)",2:"2 (10pt)",3:"3 (12pt)",4:"4 (14pt)",5:"5 (18pt)",6:"6 (24pt)"},init:function(){this.setDisplay("Font Size...");for(itm in this.sel){this.add(itm,'<font size="'+itm+'">'+this.sel[itm]+"</font>")}}});var nicEditorFontFamilySelect=nicEditorSelect.extend({sel:{arial:"Arial","comic sans ms":"Comic Sans","courier new":"Courier New",georgia:"Georgia",helvetica:"Helvetica",impact:"Impact","times new roman":"Times","trebuchet ms":"Trebuchet",verdana:"Verdana"},init:function(){this.setDisplay("Font Family...");for(itm in this.sel){this.add(itm,'<font face="'+itm+'">'+this.sel[itm]+"</font>")}}});var nicEditorFontFormatSelect=nicEditorSelect.extend({sel:{p:"Paragraph",pre:"Pre",h6:"Heading 6",h5:"Heading 5",h4:"Heading 4",h3:"Heading 3",h2:"Heading 2",h1:"Heading 1"},init:function(){this.setDisplay("Font Format...");for(itm in this.sel){var A=itm.toUpperCase();this.add("<"+A+">","<"+itm+' style="padding: 0px; margin: 0px;">'+this.sel[itm]+"</"+A+">")}}});nicEditors.registerPlugin(nicPlugin,nicSelectOptions);
|
||||
|
||||
var nicButtonTips=bkClass.extend({construct:function(A){this.ne=A;A.addEvent("buttonOver",this.show.closure(this)).addEvent("buttonOut",this.hide.closure(this))},show:function(A){this.timer=setTimeout(this.create.closure(this,A),400)},create:function(A){this.timer=null;if(!this.pane){this.pane=new nicEditorPane(A.button,this.ne,{fontSize:"12px",marginTop:"5px"});this.pane.setContent(A.options.name)}},hide:function(A){if(this.timer){clearTimeout(this.timer)}if(this.pane){this.pane=this.pane.remove()}}});nicEditors.registerPlugin(nicButtonTips);
|
||||
|
||||
var nicEditorAdvancedButton=nicEditorButton.extend({init:function(){this.ne.addEvent("selected",this.removePane.closure(this)).addEvent("blur",this.removePane.closure(this))},mouseClick:function(){if(!this.isDisabled){if(this.pane&&this.pane.pane){this.removePane()}else{this.pane=new nicEditorPane(this.contain,this.ne,{width:(this.width||"270px"),backgroundColor:"#fff"},this);this.addPane();this.ne.selectedInstance.saveRng()}}},addForm:function(C,G){this.form=new bkElement("form").addEvent("submit",this.submit.closureListener(this));this.pane.append(this.form);this.inputs={};for(itm in C){var D=C[itm];var F="";if(G){F=G.getAttribute(itm)}if(!F){F=D.value||""}var A=C[itm].type;if(A=="title"){new bkElement("div").setContent(D.txt).setStyle({fontSize:"14px",fontWeight:"bold",padding:"0px",margin:"2px 0"}).appendTo(this.form)}else{var B=new bkElement("div").setStyle({overflow:"hidden",clear:"both"}).appendTo(this.form);if(D.txt){new bkElement("label").setAttributes({"for":itm}).setContent(D.txt).setStyle({margin:"2px 4px",fontSize:"13px",width:"50px",lineHeight:"20px",textAlign:"right","float":"left"}).appendTo(B)}switch(A){case"text":this.inputs[itm]=new bkElement("input").setAttributes({id:itm,value:F,type:"text"}).setStyle({margin:"2px 0",fontSize:"13px","float":"left",height:"20px",border:"1px solid #ccc",overflow:"hidden"}).setStyle(D.style).appendTo(B);break;case"select":this.inputs[itm]=new bkElement("select").setAttributes({id:itm}).setStyle({border:"1px solid #ccc","float":"left",margin:"2px 0"}).appendTo(B);for(opt in D.options){var E=new bkElement("option").setAttributes({value:opt,selected:(opt==F)?"selected":""}).setContent(D.options[opt]).appendTo(this.inputs[itm])}break;case"content":this.inputs[itm]=new bkElement("textarea").setAttributes({id:itm}).setStyle({border:"1px solid #ccc","float":"left"}).setStyle(D.style).appendTo(B);this.inputs[itm].value=F}}}new bkElement("input").setAttributes({type:"submit"}).setStyle({backgroundColor:"#efefef",border:"1px solid #ccc",margin:"3px 0","float":"left",clear:"both"}).appendTo(this.form);this.form.onsubmit=bkLib.cancelEvent},submit:function(){},findElm:function(B,A,E){var D=this.ne.selectedInstance.getElm().getElementsByTagName(B);for(var C=0;C<D.length;C++){if(D[C].getAttribute(A)==E){return $BK(D[C])}}},removePane:function(){if(this.pane){this.pane.remove();this.pane=null;this.ne.selectedInstance.restoreRng()}}});
|
||||
|
||||
|
||||
var nicLinkOptions = {
|
||||
buttons : {
|
||||
'link' : {name : 'Add Link', type : 'nicLinkButton', tags : ['A']},
|
||||
'unlink' : {name : 'Remove Link', command : 'unlink', noActive : true}
|
||||
}
|
||||
};
|
||||
|
||||
var nicLinkButton=nicEditorAdvancedButton.extend({addPane:function(){this.ln=this.ne.selectedInstance.selElm().parentTag("A");this.addForm({"":{type:"title",txt:"Add/Edit Link"},href:{type:"text",txt:"URL",value:"http://",style:{width:"150px"}},title:{type:"text",txt:"Title"},target:{type:"select",txt:"Open In",options:{"":"Current Window",_blank:"New Window"},style:{width:"100px"}}},this.ln)},submit:function(C){var A=this.inputs.href.value;if(A=="http://"||A==""){alert("You must enter a URL to Create a Link");return false}this.removePane();if(!this.ln){var B="javascript:nicTemp();";this.ne.nicCommand("createlink",B);this.ln=this.findElm("A","href",B)}if(this.ln){this.ln.setAttributes({href:this.inputs.href.value,title:this.inputs.title.value,target:this.inputs.target.options[this.inputs.target.selectedIndex].value})}}});nicEditors.registerPlugin(nicPlugin,nicLinkOptions);
|
||||
|
||||
|
||||
var nicColorOptions = {
|
||||
buttons : {
|
||||
'forecolor' : {name : __('Change Text Color'), type : 'nicEditorColorButton', noClose : true},
|
||||
'bgcolor' : {name : __('Change Background Color'), type : 'nicEditorBgColorButton', noClose : true}
|
||||
}
|
||||
};
|
||||
|
||||
var nicEditorColorButton=nicEditorAdvancedButton.extend({addPane:function(){var D={0:"00",1:"33",2:"66",3:"99",4:"CC",5:"FF"};var H=new bkElement("DIV").setStyle({width:"270px"});for(var A in D){for(var F in D){for(var E in D){var I="#"+D[A]+D[E]+D[F];var C=new bkElement("DIV").setStyle({cursor:"pointer",height:"15px","float":"left"}).appendTo(H);var G=new bkElement("DIV").setStyle({border:"2px solid "+I}).appendTo(C);var B=new bkElement("DIV").setStyle({backgroundColor:I,overflow:"hidden",width:"11px",height:"11px"}).addEvent("click",this.colorSelect.closure(this,I)).addEvent("mouseover",this.on.closure(this,G)).addEvent("mouseout",this.off.closure(this,G,I)).appendTo(G);if(!window.opera){C.onmousedown=B.onmousedown=bkLib.cancelEvent}}}}this.pane.append(H.noSelect())},colorSelect:function(A){this.ne.nicCommand("foreColor",A);this.removePane()},on:function(A){A.setStyle({border:"2px solid #000"})},off:function(A,B){A.setStyle({border:"2px solid "+B})}});var nicEditorBgColorButton=nicEditorColorButton.extend({colorSelect:function(A){this.ne.nicCommand("hiliteColor",A);this.removePane()}});nicEditors.registerPlugin(nicPlugin,nicColorOptions);
|
||||
|
||||
|
||||
var nicImageOptions = {
|
||||
buttons : {
|
||||
'image' : {name : 'Add Image', type : 'nicImageButton', tags : ['IMG']}
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
var nicImageButton=nicEditorAdvancedButton.extend({addPane:function(){this.im=this.ne.selectedInstance.selElm().parentTag("IMG");this.addForm({"":{type:"title",txt:"Add/Edit Image"},src:{type:"text",txt:"URL",value:"http://",style:{width:"150px"}},alt:{type:"text",txt:"Alt Text",style:{width:"100px"}},align:{type:"select",txt:"Align",options:{none:"Default",left:"Left",right:"Right"}}},this.im)},submit:function(B){var C=this.inputs.src.value;if(C==""||C=="http://"){alert("You must enter a Image URL to insert");return false}this.removePane();if(!this.im){var A="javascript:nicImTemp();";this.ne.nicCommand("insertImage",A);this.im=this.findElm("IMG","src",A)}if(this.im){this.im.setAttributes({src:this.inputs.src.value,alt:this.inputs.alt.value,align:this.inputs.align.value})}}});nicEditors.registerPlugin(nicPlugin,nicImageOptions);
|
||||
|
||||
|
||||
var nicSaveOptions = {
|
||||
buttons : {
|
||||
'save' : {name : __('Save this content'), type : 'nicEditorSaveButton'}
|
||||
}
|
||||
};
|
||||
|
||||
var nicEditorSaveButton=nicEditorButton.extend({init:function(){if(!this.ne.options.onSave){this.margin.setStyle({display:"none"})}},mouseClick:function(){var B=this.ne.options.onSave;var A=this.ne.selectedInstance;B(A.getContent(),A.elm.id,A)}});nicEditors.registerPlugin(nicPlugin,nicSaveOptions);
|
||||
|
||||
var nicXHTML=bkClass.extend({stripAttributes:["_moz_dirty","_moz_resizing","_extended"],noShort:["style","title","script","textarea","a"],cssReplace:{"font-weight:bold;":"strong","font-style:italic;":"em"},sizes:{1:"xx-small",2:"x-small",3:"small",4:"medium",5:"large",6:"x-large"},construct:function(A){this.ne=A;if(this.ne.options.xhtml){A.addEvent("get",this.cleanup.closure(this))}},cleanup:function(A){var B=A.getElm();var C=this.toXHTML(B);A.content=C},toXHTML:function(C,A,L){var G="";var O="";var P="";var I=C.nodeType;var Q=C.nodeName.toLowerCase();var N=C.hasChildNodes&&C.hasChildNodes();var B=new Array();switch(I){case 1:var H=C.attributes;switch(Q){case"b":Q="strong";break;case"i":Q="em";break;case"font":Q="span";break}if(A){for(var F=0;F<H.length;F++){var K=H[F];var M=K.nodeName.toLowerCase();var D=K.nodeValue;if(!K.specified||!D||bkLib.inArray(this.stripAttributes,M)||typeof (D)=="function"){continue}switch(M){case"style":var J=D.replace(/ /g,"");for(itm in this.cssReplace){if(J.indexOf(itm)!=-1){B.push(this.cssReplace[itm]);J=J.replace(itm,"")}}P+=J;D="";break;case"class":D=D.replace("Apple-style-span","");break;case"size":P+="font-size:"+this.sizes[D]+";";D="";break}if(D){O+=" "+M+'="'+D+'"'}}if(P){O+=' style="'+P+'"'}for(var F=0;F<B.length;F++){G+="<"+B[F]+">"}if(O==""&&Q=="span"){A=false}if(A){G+="<"+Q;if(Q!="br"){G+=O}}}if(!N&&!bkLib.inArray(this.noShort,M)){if(A){G+=" />"}}else{if(A){G+=">"}for(var F=0;F<C.childNodes.length;F++){var E=this.toXHTML(C.childNodes[F],true,true);if(E){G+=E}}}if(A&&N){G+="</"+Q+">"}for(var F=0;F<B.length;F++){G+="</"+B[F]+">"}break;case 3:G+=C.nodeValue;break}return G}});nicEditors.registerPlugin(nicXHTML);
|
||||
|
||||
|
||||
var nicCodeOptions = {
|
||||
buttons : {
|
||||
'xhtml' : {name : 'Edit HTML', type : 'nicCodeButton'}
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
var nicCodeButton=nicEditorAdvancedButton.extend({width:"350px",addPane:function(){this.addForm({"":{type:"title",txt:"Edit HTML"},code:{type:"content",value:this.ne.selectedInstance.getContent(),style:{width:"340px",height:"200px"}}})},submit:function(B){var A=this.inputs.code.value;this.ne.selectedInstance.setContent(A);this.removePane()}});nicEditors.registerPlugin(nicPlugin,nicCodeOptions);
|
||||
|
||||
var nicBBCode=bkClass.extend({construct:function(A){this.ne=A;if(this.ne.options.bbCode){A.addEvent("get",this.bbGet.closure(this));A.addEvent("set",this.bbSet.closure(this));var B=this.ne.loadedPlugins;for(itm in B){if(B[itm].toXHTML){this.xhtml=B[itm]}}}},bbGet:function(A){var B=this.xhtml.toXHTML(A.getElm());A.content=this.toBBCode(B)},bbSet:function(A){A.content=this.fromBBCode(A.content)},toBBCode:function(B){function A(D,C){B=B.replace(D,C)}A(/\n/gi,"");A(/<strong>(.*?)<\/strong>/gi,"[b]$1[/b]");A(/<em>(.*?)<\/em>/gi,"[i]$1[/i]");A(/<span.*?style="text-decoration:underline;">(.*?)<\/span>/gi,"[u]$1[/u]");A(/<ul>(.*?)<\/ul>/gi,"[list]$1[/list]");A(/<li>(.*?)<\/li>/gi,"[*]$1[]");A(/<ol>(.*?)<\/ol>/gi,"[list=1]$1[/list]");A(/<img.*?src="(.*?)".*?>/gi,"[img]$1[/img]");A(/<a.*?href="(.*?)".*?>(.*?)<\/a>/gi,"[url=$1]$2[/url]");A(/<br.*?>/gi,"\n");A(/<.*?>.*?<\/.*?>/gi,"");return B},fromBBCode:function(A){function B(D,C){A=A.replace(D,C)}B(/\[b\](.*?)\[\/b\]/gi,"<strong>$1</strong>");B(/\[i\](.*?)\[\/i\]/gi,"<em>$1</em>");B(/\[u\](.*?)\[\/u\]/gi,'<span style="text-decoration:underline;">$1</span>');B(/\[list\](.*?)\[\/list\]/gi,"<ul>$1</ul>");B(/\[list=1\](.*?)\[\/list\]/gi,"<ol>$1</ol>");B(/\[\*\](.*?)\[\/\*\]/gi,"<li>$1</li>");B(/\[img\](.*?)\[\/img\]/gi,'<img src="$1" />');B(/\[url=(.*?)\](.*?)\[\/url\]/gi,'<a href="$1">$2</a>');B(/\n/gi,"<br />");return A}});nicEditors.registerPlugin(nicBBCode);
|
||||
|
||||
|
||||
var nicUploadOptions = {
|
||||
buttons : {
|
||||
'upload' : {name : 'Upload Image', type : 'nicUploadButton'}
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
var nicUploadButton=nicEditorAdvancedButton.extend({nicURI:"http://files.nicedit.com/",addPane:function(){this.im=this.ne.selectedInstance.selElm().parentTag("IMG");this.myID=Math.round(Math.random()*Math.pow(10,15));this.requestInterval=1000;this.uri=this.ne.options.uploadURI||this.nicURI;nicUploadButton.lastPlugin=this;this.myFrame=new bkElement("iframe").setAttributes({width:"100%",height:"100px",frameBorder:0,scrolling:"no"}).setStyle({border:0}).appendTo(this.pane.pane);this.progressWrapper=new bkElement("div").setStyle({display:"none",width:"100%",height:"20px",border:"1px solid #ccc"}).appendTo(this.pane.pane);this.progress=new bkElement("div").setStyle({width:"0%",height:"20px",backgroundColor:"#ccc"}).setContent(" ").appendTo(this.progressWrapper);setTimeout(this.addForm.closure(this),50)},addForm:function(){var A=this.myDoc=this.myFrame.contentWindow.document;A.open();A.write("<html><body>");A.write('<form method="post" action="'+this.uri+"?id="+this.myID+'" enctype="multipart/form-data">');A.write('<input type="hidden" name="APC_UPLOAD_PROGRESS" value="'+this.myID+'" />');if(this.uri==this.nicURI){A.write('<div style="position: absolute; margin-left: 160px;"><img src="http://imageshack.us/img/imageshack.png" width="30" style="float: left;" /><div style="float: left; margin-left: 5px; font-size: 10px;">Hosted by<br /><a href="http://www.imageshack.us/" target="_blank">ImageShack</a></div></div>')}A.write('<div style="font-size: 14px; font-weight: bold; padding-top: 5px;">Insert an Image</div>');A.write('<input name="nicImage" type="file" style="margin-top: 10px;" />');A.write("</form>");A.write("</body></html>");A.close();this.myBody=A.body;this.myForm=$BK(this.myBody.getElementsByTagName("form")[0]);this.myInput=$BK(this.myBody.getElementsByTagName("input")[1]).addEvent("change",this.startUpload.closure(this));this.myStatus=new bkElement("div",this.myDoc).setStyle({textAlign:"center",fontSize:"14px"}).appendTo(this.myBody)},startUpload:function(){this.myForm.setStyle({display:"none"});this.myStatus.setContent('<img src="http://files.nicedit.com/ajax-loader.gif" style="float: right; margin-right: 40px;" /><strong>Uploading...</strong><br />Please wait');this.myForm.submit();setTimeout(this.makeRequest.closure(this),this.requestInterval)},makeRequest:function(){if(this.pane&&this.pane.pane){nicUploadButton.lastPlugin=this;var A=new bkElement("script").setAttributes({type:"text/javascript",src:this.uri+"?check="+this.myID+"&rand="+Math.round(Math.random()*Math.pow(10,15))}).addEvent("load",function(){A.parentNode.removeChild(A)}).appendTo(document.getElementsByTagName("head")[0]);if(this.requestInterval){setTimeout(this.makeRequest.closure(this),this.requestInterval)}}},setProgress:function(A){this.progressWrapper.setStyle({display:"block"});this.progress.setStyle({width:A+"%"})},update:function(C){if(C==false){this.progressWrapper.setStyle({display:"none"})}else{if(C.url){this.setProgress(100);this.requestInterval=false;if(!this.im){this.ne.selectedInstance.restoreRng();var B="javascript:nicImTemp();";this.ne.nicCommand("insertImage",B);this.im=this.findElm("IMG","src",B)}var A=parseInt(this.ne.selectedInstance.elm.getStyle("width"));if(this.im){this.im.setAttributes({src:C.url,width:(A&&C.width)?Math.min(A,C.width):""})}this.removePane()}else{if(C.error){this.requestInterval=false;this.setProgress(100);alert("There was an error uploading your image ("+C.error+").");this.removePane()}else{if(C.noprogress){this.progressWrapper.setStyle({display:"none"});if(this.uri.indexOf("http:")==-1||this.uri.indexOf(window.location.host)!=-1){this.requestInterval=false}}else{this.setProgress(Math.round((C.current/C.total)*75));if(C.interval){this.requestInterval=C.interval}}}}}}});nicUploadButton.statusCb=function(A){nicUploadButton.lastPlugin.update(A)};nicEditors.registerPlugin(nicPlugin,nicUploadOptions);
|
||||
|
||||
|
BIN
upload/js/nicedit/nicEditorIcons.gif
Normal file
BIN
upload/js/nicedit/nicEditorIcons.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.6 KiB |
876
upload/js/swfupload/plugins/all_in_one.js
Normal file
876
upload/js/swfupload/plugins/all_in_one.js
Normal file
|
@ -0,0 +1,876 @@
|
|||
/*
|
||||
Queue Plug-in
|
||||
|
||||
Features:
|
||||
*Adds a cancelQueue() method for cancelling the entire queue.
|
||||
*All queued files are uploaded when startUpload() is called.
|
||||
*If false is returned from uploadComplete then the queue upload is stopped.
|
||||
If false is not returned (strict comparison) then the queue upload is continued.
|
||||
*Adds a QueueComplete event that is fired when all the queued files have finished uploading.
|
||||
Set the event handler with the queue_complete_handler setting.
|
||||
|
||||
*/
|
||||
|
||||
var SWFUpload;
|
||||
if (typeof(SWFUpload) === "function") {
|
||||
SWFUpload.queue = {};
|
||||
|
||||
SWFUpload.prototype.initSettings = (function (oldInitSettings) {
|
||||
return function () {
|
||||
if (typeof(oldInitSettings) === "function") {
|
||||
oldInitSettings.call(this);
|
||||
}
|
||||
|
||||
this.queueSettings = {};
|
||||
|
||||
this.queueSettings.queue_cancelled_flag = false;
|
||||
this.queueSettings.queue_upload_count = 0;
|
||||
|
||||
this.queueSettings.user_upload_complete_handler = this.settings.upload_complete_handler;
|
||||
this.queueSettings.user_upload_start_handler = this.settings.upload_start_handler;
|
||||
this.settings.upload_complete_handler = SWFUpload.queue.uploadCompleteHandler;
|
||||
this.settings.upload_start_handler = SWFUpload.queue.uploadStartHandler;
|
||||
|
||||
this.settings.queue_complete_handler = this.settings.queue_complete_handler || null;
|
||||
};
|
||||
})(SWFUpload.prototype.initSettings);
|
||||
|
||||
SWFUpload.prototype.startUpload = function (fileID) {
|
||||
this.queueSettings.queue_cancelled_flag = false;
|
||||
this.callFlash("StartUpload", [fileID]);
|
||||
};
|
||||
|
||||
SWFUpload.prototype.cancelQueue = function () {
|
||||
this.queueSettings.queue_cancelled_flag = true;
|
||||
this.stopUpload();
|
||||
|
||||
var stats = this.getStats();
|
||||
while (stats.files_queued > 0) {
|
||||
this.cancelUpload();
|
||||
stats = this.getStats();
|
||||
}
|
||||
};
|
||||
|
||||
SWFUpload.queue.uploadStartHandler = function (file) {
|
||||
var returnValue;
|
||||
if (typeof(this.queueSettings.user_upload_start_handler) === "function") {
|
||||
returnValue = this.queueSettings.user_upload_start_handler.call(this, file);
|
||||
}
|
||||
|
||||
// To prevent upload a real "FALSE" value must be returned, otherwise default to a real "TRUE" value.
|
||||
returnValue = (returnValue === false) ? false : true;
|
||||
|
||||
this.queueSettings.queue_cancelled_flag = !returnValue;
|
||||
|
||||
return returnValue;
|
||||
};
|
||||
|
||||
SWFUpload.queue.uploadCompleteHandler = function (file) {
|
||||
var user_upload_complete_handler = this.queueSettings.user_upload_complete_handler;
|
||||
var continueUpload;
|
||||
|
||||
if (file.filestatus === SWFUpload.FILE_STATUS.COMPLETE) {
|
||||
this.queueSettings.queue_upload_count++;
|
||||
}
|
||||
|
||||
if (typeof(user_upload_complete_handler) === "function") {
|
||||
continueUpload = (user_upload_complete_handler.call(this, file) === false) ? false : true;
|
||||
} else if (file.filestatus === SWFUpload.FILE_STATUS.QUEUED) {
|
||||
// If the file was stopped and re-queued don't restart the upload
|
||||
continueUpload = false;
|
||||
} else {
|
||||
continueUpload = true;
|
||||
}
|
||||
|
||||
if (continueUpload) {
|
||||
var stats = this.getStats();
|
||||
if (stats.files_queued > 0 && this.queueSettings.queue_cancelled_flag === false) {
|
||||
this.startUpload();
|
||||
} else if (this.queueSettings.queue_cancelled_flag === false) {
|
||||
this.queueEvent("queue_complete_handler", [this.queueSettings.queue_upload_count]);
|
||||
this.queueSettings.queue_upload_count = 0;
|
||||
} else {
|
||||
this.queueSettings.queue_cancelled_flag = false;
|
||||
this.queueSettings.queue_upload_count = 0;
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/*
|
||||
Speed Plug-in
|
||||
|
||||
Features:
|
||||
*Adds several properties to the 'file' object indicated upload speed, time left, upload time, etc.
|
||||
- currentSpeed -- String indicating the upload speed, bytes per second
|
||||
- averageSpeed -- Overall average upload speed, bytes per second
|
||||
- movingAverageSpeed -- Speed over averaged over the last several measurements, bytes per second
|
||||
- timeRemaining -- Estimated remaining upload time in seconds
|
||||
- timeElapsed -- Number of seconds passed for this upload
|
||||
- percentUploaded -- Percentage of the file uploaded (0 to 100)
|
||||
- sizeUploaded -- Formatted size uploaded so far, bytes
|
||||
|
||||
*Adds setting 'moving_average_history_size' for defining the window size used to calculate the moving average speed.
|
||||
|
||||
*Adds several Formatting functions for formatting that values provided on the file object.
|
||||
- SWFUpload.speed.formatBPS(bps) -- outputs string formatted in the best units (Gbps, Mbps, Kbps, bps)
|
||||
- SWFUpload.speed.formatTime(seconds) -- outputs string formatted in the best units (x Hr y M z S)
|
||||
- SWFUpload.speed.formatSize(bytes) -- outputs string formatted in the best units (w GB x MB y KB z B )
|
||||
- SWFUpload.speed.formatPercent(percent) -- outputs string formatted with a percent sign (x.xx %)
|
||||
- SWFUpload.speed.formatUnits(baseNumber, divisionArray, unitLabelArray, fractionalBoolean)
|
||||
- Formats a number using the division array to determine how to apply the labels in the Label Array
|
||||
- factionalBoolean indicates whether the number should be returned as a single fractional number with a unit (speed)
|
||||
or as several numbers labeled with units (time)
|
||||
*/
|
||||
|
||||
var SWFUpload;
|
||||
if (typeof(SWFUpload) === "function") {
|
||||
SWFUpload.speed = {};
|
||||
|
||||
SWFUpload.prototype.initSettings = (function (oldInitSettings) {
|
||||
return function () {
|
||||
if (typeof(oldInitSettings) === "function") {
|
||||
oldInitSettings.call(this);
|
||||
}
|
||||
|
||||
this.ensureDefault = function (settingName, defaultValue) {
|
||||
this.settings[settingName] = (this.settings[settingName] == undefined) ? defaultValue : this.settings[settingName];
|
||||
};
|
||||
|
||||
// List used to keep the speed stats for the files we are tracking
|
||||
this.fileSpeedStats = {};
|
||||
this.speedSettings = {};
|
||||
|
||||
this.ensureDefault("moving_average_history_size", "10");
|
||||
|
||||
this.speedSettings.user_file_queued_handler = this.settings.file_queued_handler;
|
||||
this.speedSettings.user_file_queue_error_handler = this.settings.file_queue_error_handler;
|
||||
this.speedSettings.user_upload_start_handler = this.settings.upload_start_handler;
|
||||
this.speedSettings.user_upload_error_handler = this.settings.upload_error_handler;
|
||||
this.speedSettings.user_upload_progress_handler = this.settings.upload_progress_handler;
|
||||
this.speedSettings.user_upload_success_handler = this.settings.upload_success_handler;
|
||||
this.speedSettings.user_upload_complete_handler = this.settings.upload_complete_handler;
|
||||
|
||||
this.settings.file_queued_handler = SWFUpload.speed.fileQueuedHandler;
|
||||
this.settings.file_queue_error_handler = SWFUpload.speed.fileQueueErrorHandler;
|
||||
this.settings.upload_start_handler = SWFUpload.speed.uploadStartHandler;
|
||||
this.settings.upload_error_handler = SWFUpload.speed.uploadErrorHandler;
|
||||
this.settings.upload_progress_handler = SWFUpload.speed.uploadProgressHandler;
|
||||
this.settings.upload_success_handler = SWFUpload.speed.uploadSuccessHandler;
|
||||
this.settings.upload_complete_handler = SWFUpload.speed.uploadCompleteHandler;
|
||||
|
||||
delete this.ensureDefault;
|
||||
};
|
||||
})(SWFUpload.prototype.initSettings);
|
||||
|
||||
|
||||
SWFUpload.speed.fileQueuedHandler = function (file) {
|
||||
if (typeof this.speedSettings.user_file_queued_handler === "function") {
|
||||
file = SWFUpload.speed.extendFile(file);
|
||||
|
||||
return this.speedSettings.user_file_queued_handler.call(this, file);
|
||||
}
|
||||
};
|
||||
|
||||
SWFUpload.speed.fileQueueErrorHandler = function (file, errorCode, message) {
|
||||
if (typeof this.speedSettings.user_file_queue_error_handler === "function") {
|
||||
file = SWFUpload.speed.extendFile(file);
|
||||
|
||||
return this.speedSettings.user_file_queue_error_handler.call(this, file, errorCode, message);
|
||||
}
|
||||
};
|
||||
|
||||
SWFUpload.speed.uploadStartHandler = function (file) {
|
||||
if (typeof this.speedSettings.user_upload_start_handler === "function") {
|
||||
file = SWFUpload.speed.extendFile(file, this.fileSpeedStats);
|
||||
return this.speedSettings.user_upload_start_handler.call(this, file);
|
||||
}
|
||||
};
|
||||
|
||||
SWFUpload.speed.uploadErrorHandler = function (file, errorCode, message) {
|
||||
file = SWFUpload.speed.extendFile(file, this.fileSpeedStats);
|
||||
SWFUpload.speed.removeTracking(file, this.fileSpeedStats);
|
||||
|
||||
if (typeof this.speedSettings.user_upload_error_handler === "function") {
|
||||
return this.speedSettings.user_upload_error_handler.call(this, file, errorCode, message);
|
||||
}
|
||||
};
|
||||
SWFUpload.speed.uploadProgressHandler = function (file, bytesComplete, bytesTotal) {
|
||||
this.updateTracking(file, bytesComplete);
|
||||
file = SWFUpload.speed.extendFile(file, this.fileSpeedStats);
|
||||
|
||||
if (typeof this.speedSettings.user_upload_progress_handler === "function") {
|
||||
return this.speedSettings.user_upload_progress_handler.call(this, file, bytesComplete, bytesTotal);
|
||||
}
|
||||
};
|
||||
|
||||
SWFUpload.speed.uploadSuccessHandler = function (file, serverData) {
|
||||
if (typeof this.speedSettings.user_upload_success_handler === "function") {
|
||||
file = SWFUpload.speed.extendFile(file, this.fileSpeedStats);
|
||||
return this.speedSettings.user_upload_success_handler.call(this, file, serverData);
|
||||
}
|
||||
};
|
||||
SWFUpload.speed.uploadCompleteHandler = function (file) {
|
||||
file = SWFUpload.speed.extendFile(file, this.fileSpeedStats);
|
||||
SWFUpload.speed.removeTracking(file, this.fileSpeedStats);
|
||||
|
||||
if (typeof this.speedSettings.user_upload_complete_handler === "function") {
|
||||
return this.speedSettings.user_upload_complete_handler.call(this, file);
|
||||
}
|
||||
};
|
||||
|
||||
// Private: extends the file object with the speed plugin values
|
||||
SWFUpload.speed.extendFile = function (file, trackingList) {
|
||||
var tracking;
|
||||
|
||||
if (trackingList) {
|
||||
tracking = trackingList[file.id];
|
||||
}
|
||||
|
||||
if (tracking) {
|
||||
file.currentSpeed = tracking.currentSpeed;
|
||||
file.averageSpeed = tracking.averageSpeed;
|
||||
file.movingAverageSpeed = tracking.movingAverageSpeed;
|
||||
file.timeRemaining = tracking.timeRemaining;
|
||||
file.timeElapsed = tracking.timeElapsed;
|
||||
file.percentUploaded = tracking.percentUploaded;
|
||||
file.sizeUploaded = tracking.bytesUploaded;
|
||||
|
||||
} else {
|
||||
file.currentSpeed = 0;
|
||||
file.averageSpeed = 0;
|
||||
file.movingAverageSpeed = 0;
|
||||
file.timeRemaining = 0;
|
||||
file.timeElapsed = 0;
|
||||
file.percentUploaded = 0;
|
||||
file.sizeUploaded = 0;
|
||||
}
|
||||
|
||||
return file;
|
||||
};
|
||||
|
||||
// Private: Updates the speed tracking object, or creates it if necessary
|
||||
SWFUpload.prototype.updateTracking = function (file, bytesUploaded) {
|
||||
var tracking = this.fileSpeedStats[file.id];
|
||||
if (!tracking) {
|
||||
this.fileSpeedStats[file.id] = tracking = {};
|
||||
}
|
||||
|
||||
// Sanity check inputs
|
||||
bytesUploaded = bytesUploaded || tracking.bytesUploaded || 0;
|
||||
if (bytesUploaded < 0) {
|
||||
bytesUploaded = 0;
|
||||
}
|
||||
if (bytesUploaded > file.size) {
|
||||
bytesUploaded = file.size;
|
||||
}
|
||||
|
||||
var tickTime = (new Date()).getTime();
|
||||
if (!tracking.startTime) {
|
||||
tracking.startTime = (new Date()).getTime();
|
||||
tracking.lastTime = tracking.startTime;
|
||||
tracking.currentSpeed = 0;
|
||||
tracking.averageSpeed = 0;
|
||||
tracking.movingAverageSpeed = 0;
|
||||
tracking.movingAverageHistory = [];
|
||||
tracking.timeRemaining = 0;
|
||||
tracking.timeElapsed = 0;
|
||||
tracking.percentUploaded = bytesUploaded / file.size;
|
||||
tracking.bytesUploaded = bytesUploaded;
|
||||
} else if (tracking.startTime > tickTime) {
|
||||
this.debug("When backwards in time");
|
||||
} else {
|
||||
// Get time and deltas
|
||||
var now = (new Date()).getTime();
|
||||
var lastTime = tracking.lastTime;
|
||||
var deltaTime = now - lastTime;
|
||||
var deltaBytes = bytesUploaded - tracking.bytesUploaded;
|
||||
|
||||
if (deltaBytes === 0 || deltaTime === 0) {
|
||||
return tracking;
|
||||
}
|
||||
|
||||
// Update tracking object
|
||||
tracking.lastTime = now;
|
||||
tracking.bytesUploaded = bytesUploaded;
|
||||
|
||||
// Calculate speeds
|
||||
tracking.currentSpeed = (deltaBytes * 8 ) / (deltaTime / 1000);
|
||||
tracking.averageSpeed = (tracking.bytesUploaded * 8) / ((now - tracking.startTime) / 1000);
|
||||
|
||||
// Calculate moving average
|
||||
tracking.movingAverageHistory.push(tracking.currentSpeed);
|
||||
if (tracking.movingAverageHistory.length > this.settings.moving_average_history_size) {
|
||||
tracking.movingAverageHistory.shift();
|
||||
}
|
||||
|
||||
tracking.movingAverageSpeed = SWFUpload.speed.calculateMovingAverage(tracking.movingAverageHistory);
|
||||
|
||||
// Update times
|
||||
tracking.timeRemaining = (file.size - tracking.bytesUploaded) * 8 / tracking.movingAverageSpeed;
|
||||
tracking.timeElapsed = (now - tracking.startTime) / 1000;
|
||||
|
||||
// Update percent
|
||||
tracking.percentUploaded = (tracking.bytesUploaded / file.size * 100);
|
||||
}
|
||||
|
||||
return tracking;
|
||||
};
|
||||
SWFUpload.speed.removeTracking = function (file, trackingList) {
|
||||
try {
|
||||
trackingList[file.id] = null;
|
||||
delete trackingList[file.id];
|
||||
} catch (ex) {
|
||||
}
|
||||
};
|
||||
|
||||
SWFUpload.speed.formatUnits = function (baseNumber, unitDivisors, unitLabels, singleFractional) {
|
||||
var i, unit, unitDivisor, unitLabel;
|
||||
|
||||
if (baseNumber === 0) {
|
||||
return "0 " + unitLabels[unitLabels.length - 1];
|
||||
}
|
||||
|
||||
if (singleFractional) {
|
||||
unit = baseNumber;
|
||||
unitLabel = unitLabels.length >= unitDivisors.length ? unitLabels[unitDivisors.length - 1] : "";
|
||||
for (i = 0; i < unitDivisors.length; i++) {
|
||||
if (baseNumber >= unitDivisors[i]) {
|
||||
unit = (baseNumber / unitDivisors[i]).toFixed(2);
|
||||
unitLabel = unitLabels.length >= i ? " " + unitLabels[i] : "";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return unit + unitLabel;
|
||||
} else {
|
||||
var formattedStrings = [];
|
||||
var remainder = baseNumber;
|
||||
|
||||
for (i = 0; i < unitDivisors.length; i++) {
|
||||
unitDivisor = unitDivisors[i];
|
||||
unitLabel = unitLabels.length > i ? " " + unitLabels[i] : "";
|
||||
|
||||
unit = remainder / unitDivisor;
|
||||
if (i < unitDivisors.length -1) {
|
||||
unit = Math.floor(unit);
|
||||
} else {
|
||||
unit = unit.toFixed(2);
|
||||
}
|
||||
if (unit > 0) {
|
||||
remainder = remainder % unitDivisor;
|
||||
|
||||
formattedStrings.push(unit + unitLabel);
|
||||
}
|
||||
}
|
||||
|
||||
return formattedStrings.join(" ");
|
||||
}
|
||||
};
|
||||
|
||||
SWFUpload.speed.formatBPS = function (baseNumber) {
|
||||
var bpsUnits = [1073741824, 1048576, 1024, 1], bpsUnitLabels = ["Gbps", "Mbps", "Kbps", "bps"];
|
||||
return SWFUpload.speed.formatUnits(baseNumber, bpsUnits, bpsUnitLabels, true);
|
||||
|
||||
};
|
||||
SWFUpload.speed.formatTime = function (baseNumber) {
|
||||
var timeUnits = [86400, 3600, 60, 1], timeUnitLabels = ["d", "h", "m", "s"];
|
||||
return SWFUpload.speed.formatUnits(baseNumber, timeUnits, timeUnitLabels, false);
|
||||
|
||||
};
|
||||
SWFUpload.speed.formatBytes = function (baseNumber) {
|
||||
var sizeUnits = [1073741824, 1048576, 1024, 1], sizeUnitLabels = ["GB", "MB", "KB", "bytes"];
|
||||
return SWFUpload.speed.formatUnits(baseNumber, sizeUnits, sizeUnitLabels, true);
|
||||
|
||||
};
|
||||
SWFUpload.speed.formatPercent = function (baseNumber) {
|
||||
return baseNumber.toFixed(2) + " %";
|
||||
};
|
||||
|
||||
SWFUpload.speed.calculateMovingAverage = function (history) {
|
||||
var vals = [], size, sum = 0.0, mean = 0.0, varianceTemp = 0.0, variance = 0.0, standardDev = 0.0;
|
||||
var i;
|
||||
var mSum = 0, mCount = 0;
|
||||
|
||||
size = history.length;
|
||||
|
||||
// Check for sufficient data
|
||||
if (size >= 8) {
|
||||
// Clone the array and Calculate sum of the values
|
||||
for (i = 0; i < size; i++) {
|
||||
vals[i] = history[i];
|
||||
sum += vals[i];
|
||||
}
|
||||
|
||||
mean = sum / size;
|
||||
|
||||
// Calculate variance for the set
|
||||
for (i = 0; i < size; i++) {
|
||||
varianceTemp += Math.pow((vals[i] - mean), 2);
|
||||
}
|
||||
|
||||
variance = varianceTemp / size;
|
||||
standardDev = Math.sqrt(variance);
|
||||
|
||||
//Standardize the Data
|
||||
for (i = 0; i < size; i++) {
|
||||
vals[i] = (vals[i] - mean) / standardDev;
|
||||
}
|
||||
|
||||
// Calculate the average excluding outliers
|
||||
var deviationRange = 2.0;
|
||||
for (i = 0; i < size; i++) {
|
||||
|
||||
if (vals[i] <= deviationRange && vals[i] >= -deviationRange) {
|
||||
mCount++;
|
||||
mSum += history[i];
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
// Calculate the average (not enough data points to remove outliers)
|
||||
mCount = size;
|
||||
for (i = 0; i < size; i++) {
|
||||
mSum += history[i];
|
||||
}
|
||||
}
|
||||
|
||||
return mSum / mCount;
|
||||
};
|
||||
|
||||
}
|
||||
/*
|
||||
Cookie Plug-in
|
||||
|
||||
This plug in automatically gets all the cookies for this site and adds them to the post_params.
|
||||
Cookies are loaded only on initialization. The refreshCookies function can be called to update the post_params.
|
||||
The cookies will override any other post params with the same name.
|
||||
*/
|
||||
|
||||
var SWFUpload;
|
||||
if (typeof(SWFUpload) === "function") {
|
||||
SWFUpload.prototype.initSettings = function (oldInitSettings) {
|
||||
return function () {
|
||||
if (typeof(oldInitSettings) === "function") {
|
||||
oldInitSettings.call(this);
|
||||
}
|
||||
|
||||
this.refreshCookies(false); // The false parameter must be sent since SWFUpload has not initialzed at this point
|
||||
};
|
||||
}(SWFUpload.prototype.initSettings);
|
||||
|
||||
// refreshes the post_params and updates SWFUpload. The sendToFlash parameters is optional and defaults to True
|
||||
SWFUpload.prototype.refreshCookies = function (sendToFlash) {
|
||||
if (sendToFlash === undefined) {
|
||||
sendToFlash = true;
|
||||
}
|
||||
sendToFlash = !!sendToFlash;
|
||||
|
||||
// Get the post_params object
|
||||
var postParams = this.settings.post_params;
|
||||
|
||||
// Get the cookies
|
||||
var i, cookieArray = document.cookie.split(';'), caLength = cookieArray.length, c, eqIndex, name, value;
|
||||
for (i = 0; i < caLength; i++) {
|
||||
c = cookieArray[i];
|
||||
|
||||
// Left Trim spaces
|
||||
while (c.charAt(0) === " ") {
|
||||
c = c.substring(1, c.length);
|
||||
}
|
||||
eqIndex = c.indexOf("=");
|
||||
if (eqIndex > 0) {
|
||||
name = c.substring(0, eqIndex);
|
||||
value = c.substring(eqIndex + 1);
|
||||
postParams[name] = value;
|
||||
}
|
||||
}
|
||||
|
||||
if (sendToFlash) {
|
||||
this.setPostParams(postParams);
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
/*
|
||||
A simple class for displaying file information and progress
|
||||
Note: This is a demonstration only and not part of SWFUpload.
|
||||
Note: Some have had problems adapting this class in IE7. It may not be suitable for your application.
|
||||
*/
|
||||
|
||||
// Constructor
|
||||
// file is a SWFUpload file object
|
||||
// targetID is the HTML element id attribute that the FileProgress HTML structure will be added to.
|
||||
// Instantiating a new FileProgress object with an existing file will reuse/update the existing DOM elements
|
||||
function FileProgress(file, targetID) {
|
||||
this.fileProgressID = file.id;
|
||||
|
||||
this.opacity = 100;
|
||||
this.height = 0;
|
||||
|
||||
|
||||
this.fileProgressWrapper = document.getElementById(this.fileProgressID);
|
||||
if (!this.fileProgressWrapper) {
|
||||
this.fileProgressWrapper = document.createElement("div");
|
||||
this.fileProgressWrapper.className = "progressWrapper";
|
||||
this.fileProgressWrapper.id = this.fileProgressID;
|
||||
|
||||
this.fileProgressElement = document.createElement("div");
|
||||
this.fileProgressElement.className = "progressContainer";
|
||||
|
||||
var progressCancel = document.createElement("a");
|
||||
progressCancel.className = "progressCancel";
|
||||
progressCancel.href = "#";
|
||||
progressCancel.style.visibility = "hidden";
|
||||
progressCancel.appendChild(document.createTextNode(" "));
|
||||
|
||||
var progressText = document.createElement("div");
|
||||
progressText.className = "progressName";
|
||||
progressText.appendChild(document.createTextNode(file.name));
|
||||
|
||||
var progressBar = document.createElement("div");
|
||||
progressBar.className = "progressBarInProgress";
|
||||
|
||||
var progressStatus = document.createElement("div");
|
||||
progressStatus.className = "progressBarStatus";
|
||||
progressStatus.innerHTML = " ";
|
||||
|
||||
this.fileProgressElement.appendChild(progressCancel);
|
||||
this.fileProgressElement.appendChild(progressText);
|
||||
this.fileProgressElement.appendChild(progressStatus);
|
||||
this.fileProgressElement.appendChild(progressBar);
|
||||
|
||||
this.fileProgressWrapper.appendChild(this.fileProgressElement);
|
||||
|
||||
document.getElementById(targetID).appendChild(this.fileProgressWrapper);
|
||||
} else {
|
||||
this.fileProgressElement = this.fileProgressWrapper.firstChild;
|
||||
this.reset();
|
||||
}
|
||||
|
||||
this.height = this.fileProgressWrapper.offsetHeight;
|
||||
this.setTimer(null);
|
||||
|
||||
|
||||
}
|
||||
|
||||
FileProgress.prototype.setTimer = function (timer) {
|
||||
this.fileProgressElement["FP_TIMER"] = timer;
|
||||
};
|
||||
FileProgress.prototype.getTimer = function (timer) {
|
||||
return this.fileProgressElement["FP_TIMER"] || null;
|
||||
};
|
||||
|
||||
FileProgress.prototype.reset = function () {
|
||||
this.fileProgressElement.className = "progressContainer";
|
||||
|
||||
this.fileProgressElement.childNodes[2].innerHTML = " ";
|
||||
this.fileProgressElement.childNodes[2].className = "progressBarStatus";
|
||||
|
||||
this.fileProgressElement.childNodes[3].className = "progressBarInProgress";
|
||||
this.fileProgressElement.childNodes[3].style.width = "0%";
|
||||
|
||||
this.appear();
|
||||
};
|
||||
|
||||
FileProgress.prototype.setProgress = function (percentage) {
|
||||
this.fileProgressElement.className = "progressContainer green";
|
||||
this.fileProgressElement.childNodes[3].className = "progressBarInProgress";
|
||||
this.fileProgressElement.childNodes[3].style.width = percentage + "%";
|
||||
|
||||
this.appear();
|
||||
};
|
||||
FileProgress.prototype.setComplete = function () {
|
||||
this.fileProgressElement.className = "progressContainer blue";
|
||||
this.fileProgressElement.childNodes[3].className = "progressBarComplete";
|
||||
this.fileProgressElement.childNodes[3].style.width = "";
|
||||
|
||||
var oSelf = this;
|
||||
this.setTimer(setTimeout(function () {
|
||||
oSelf.disappear();
|
||||
}, 10000));
|
||||
};
|
||||
FileProgress.prototype.setError = function () {
|
||||
this.fileProgressElement.className = "progressContainer red";
|
||||
this.fileProgressElement.childNodes[3].className = "progressBarError";
|
||||
this.fileProgressElement.childNodes[3].style.width = "";
|
||||
|
||||
var oSelf = this;
|
||||
this.setTimer(setTimeout(function () {
|
||||
oSelf.disappear();
|
||||
}, 5000));
|
||||
};
|
||||
FileProgress.prototype.setCancelled = function () {
|
||||
this.fileProgressElement.className = "progressContainer";
|
||||
this.fileProgressElement.childNodes[3].className = "progressBarError";
|
||||
this.fileProgressElement.childNodes[3].style.width = "";
|
||||
|
||||
var oSelf = this;
|
||||
this.setTimer(setTimeout(function () {
|
||||
oSelf.disappear();
|
||||
}, 2000));
|
||||
};
|
||||
FileProgress.prototype.setStatus = function (status) {
|
||||
this.fileProgressElement.childNodes[2].innerHTML = status;
|
||||
};
|
||||
|
||||
// Show/Hide the cancel button
|
||||
FileProgress.prototype.toggleCancel = function (show, swfUploadInstance) {
|
||||
this.fileProgressElement.childNodes[0].style.visibility = show ? "visible" : "hidden";
|
||||
if (swfUploadInstance) {
|
||||
var fileID = this.fileProgressID;
|
||||
this.fileProgressElement.childNodes[0].onclick = function () {
|
||||
swfUploadInstance.cancelUpload(fileID);
|
||||
return false;
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
FileProgress.prototype.appear = function () {
|
||||
if (this.getTimer() !== null) {
|
||||
clearTimeout(this.getTimer());
|
||||
this.setTimer(null);
|
||||
}
|
||||
|
||||
if (this.fileProgressWrapper.filters) {
|
||||
try {
|
||||
this.fileProgressWrapper.filters.item("DXImageTransform.Microsoft.Alpha").opacity = 100;
|
||||
} catch (e) {
|
||||
// If it is not set initially, the browser will throw an error. This will set it if it is not set yet.
|
||||
this.fileProgressWrapper.style.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity=100)";
|
||||
}
|
||||
} else {
|
||||
this.fileProgressWrapper.style.opacity = 1;
|
||||
}
|
||||
|
||||
this.fileProgressWrapper.style.height = "";
|
||||
|
||||
this.height = this.fileProgressWrapper.offsetHeight;
|
||||
this.opacity = 100;
|
||||
this.fileProgressWrapper.style.display = "";
|
||||
|
||||
};
|
||||
|
||||
// Fades out and clips away the FileProgress box.
|
||||
FileProgress.prototype.disappear = function () {
|
||||
|
||||
var reduceOpacityBy = 15;
|
||||
var reduceHeightBy = 4;
|
||||
var rate = 30; // 15 fps
|
||||
|
||||
if (this.opacity > 0) {
|
||||
this.opacity -= reduceOpacityBy;
|
||||
if (this.opacity < 0) {
|
||||
this.opacity = 0;
|
||||
}
|
||||
|
||||
if (this.fileProgressWrapper.filters) {
|
||||
try {
|
||||
this.fileProgressWrapper.filters.item("DXImageTransform.Microsoft.Alpha").opacity = this.opacity;
|
||||
} catch (e) {
|
||||
// If it is not set initially, the browser will throw an error. This will set it if it is not set yet.
|
||||
this.fileProgressWrapper.style.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity=" + this.opacity + ")";
|
||||
}
|
||||
} else {
|
||||
this.fileProgressWrapper.style.opacity = this.opacity / 100;
|
||||
}
|
||||
}
|
||||
|
||||
if (this.height > 0) {
|
||||
this.height -= reduceHeightBy;
|
||||
if (this.height < 0) {
|
||||
this.height = 0;
|
||||
}
|
||||
|
||||
this.fileProgressWrapper.style.height = this.height + "px";
|
||||
}
|
||||
|
||||
if (this.height > 0 || this.opacity > 0) {
|
||||
var oSelf = this;
|
||||
this.setTimer(setTimeout(function () {
|
||||
oSelf.disappear();
|
||||
}, rate));
|
||||
} else {
|
||||
this.fileProgressWrapper.style.display = "none";
|
||||
this.setTimer(null);
|
||||
}
|
||||
};
|
||||
/* Demo Note: This demo uses a FileProgress class that handles the UI for displaying the file name and percent complete.
|
||||
The FileProgress class is not part of SWFUpload.
|
||||
*/
|
||||
|
||||
|
||||
/* **********************
|
||||
Event Handlers
|
||||
These are my custom event handlers to make my
|
||||
web application behave the way I went when SWFUpload
|
||||
completes different tasks. These aren't part of the SWFUpload
|
||||
package. They are part of my application. Without these none
|
||||
of the actions SWFUpload makes will show up in my application.
|
||||
********************** */
|
||||
function fileQueued(file) {
|
||||
try {
|
||||
var progress = new FileProgress(file, this.customSettings.progressTarget);
|
||||
progress.setStatus("Pending...");
|
||||
progress.toggleCancel(true, this);
|
||||
|
||||
} catch (ex) {
|
||||
this.debug(ex);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function fileQueueError(file, errorCode, message) {
|
||||
try {
|
||||
if (errorCode === SWFUpload.QUEUE_ERROR.QUEUE_LIMIT_EXCEEDED) {
|
||||
alert("You have attempted to queue too many files.\n" + (message === 0 ? "You have reached the upload limit." : "You may select " + (message > 1 ? "up to " + message + " files." : "one file.")));
|
||||
return;
|
||||
}
|
||||
|
||||
var progress = new FileProgress(file, this.customSettings.progressTarget);
|
||||
progress.setError();
|
||||
progress.toggleCancel(false);
|
||||
|
||||
switch (errorCode) {
|
||||
case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT:
|
||||
progress.setStatus("File is too big.");
|
||||
this.debug("Error Code: File too big, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
|
||||
break;
|
||||
case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE:
|
||||
progress.setStatus("Cannot upload Zero Byte files.");
|
||||
this.debug("Error Code: Zero byte file, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
|
||||
break;
|
||||
case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE:
|
||||
progress.setStatus("Invalid File Type.");
|
||||
this.debug("Error Code: Invalid File Type, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
|
||||
break;
|
||||
default:
|
||||
if (file !== null) {
|
||||
progress.setStatus("Unhandled Error");
|
||||
}
|
||||
this.debug("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
|
||||
break;
|
||||
}
|
||||
} catch (ex) {
|
||||
this.debug(ex);
|
||||
}
|
||||
}
|
||||
|
||||
function fileDialogComplete(numFilesSelected, numFilesQueued) {
|
||||
try {
|
||||
if (numFilesSelected > 0) {
|
||||
document.getElementById(this.customSettings.cancelButtonId).disabled = false;
|
||||
}
|
||||
|
||||
/* I want auto start the upload and I can do that here */
|
||||
this.startUpload();
|
||||
} catch (ex) {
|
||||
this.debug(ex);
|
||||
}
|
||||
}
|
||||
|
||||
function uploadStart(file) {
|
||||
try {
|
||||
/* I don't want to do any file validation or anything, I'll just update the UI and
|
||||
return true to indicate that the upload should start.
|
||||
It's important to update the UI here because in Linux no uploadProgress events are called. The best
|
||||
we can do is say we are uploading.
|
||||
*/
|
||||
var progress = new FileProgress(file, this.customSettings.progressTarget);
|
||||
progress.setStatus("Uploading...");
|
||||
progress.toggleCancel(true, this);
|
||||
}
|
||||
catch (ex) {}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
function uploadProgress(file, bytesLoaded, bytesTotal) {
|
||||
try {
|
||||
var percent = Math.ceil((bytesLoaded / bytesTotal) * 100);
|
||||
|
||||
var progress = new FileProgress(file, this.customSettings.progressTarget);
|
||||
progress.setProgress(percent);
|
||||
progress.setStatus("Uploading...");
|
||||
document.getElementById('progress_status').innerHTML = percent+'% completed';
|
||||
} catch (ex) {
|
||||
this.debug(ex);
|
||||
}
|
||||
}
|
||||
|
||||
function uploadSuccess(file, serverData) {
|
||||
submit_upload_form();
|
||||
try {
|
||||
var progress = new FileProgress(file, this.customSettings.progressTarget);
|
||||
progress.setComplete();
|
||||
progress.setStatus("Complete.");
|
||||
progress.toggleCancel(false);
|
||||
|
||||
} catch (ex) {
|
||||
this.debug(ex);
|
||||
}
|
||||
}
|
||||
|
||||
function uploadError(file, errorCode, message) {
|
||||
try {
|
||||
var progress = new FileProgress(file, this.customSettings.progressTarget);
|
||||
progress.setError();
|
||||
progress.toggleCancel(false);
|
||||
|
||||
switch (errorCode) {
|
||||
case SWFUpload.UPLOAD_ERROR.HTTP_ERROR:
|
||||
progress.setStatus("Upload Error: " + message);
|
||||
this.debug("Error Code: HTTP Error, File name: " + file.name + ", Message: " + message);
|
||||
break;
|
||||
case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED:
|
||||
progress.setStatus("Upload Failed.");
|
||||
this.debug("Error Code: Upload Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
|
||||
break;
|
||||
case SWFUpload.UPLOAD_ERROR.IO_ERROR:
|
||||
progress.setStatus("Server (IO) Error");
|
||||
this.debug("Error Code: IO Error, File name: " + file.name + ", Message: " + message);
|
||||
break;
|
||||
case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR:
|
||||
progress.setStatus("Security Error");
|
||||
this.debug("Error Code: Security Error, File name: " + file.name + ", Message: " + message);
|
||||
break;
|
||||
case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED:
|
||||
progress.setStatus("Upload limit exceeded.");
|
||||
this.debug("Error Code: Upload Limit Exceeded, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
|
||||
break;
|
||||
case SWFUpload.UPLOAD_ERROR.FILE_VALIDATION_FAILED:
|
||||
progress.setStatus("Failed Validation. Upload skipped.");
|
||||
this.debug("Error Code: File Validation Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
|
||||
break;
|
||||
case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED:
|
||||
// If there aren't any files left (they were all cancelled) disable the cancel button
|
||||
if (this.getStats().files_queued === 0) {
|
||||
document.getElementById(this.customSettings.cancelButtonId).disabled = true;
|
||||
}
|
||||
progress.setStatus("Cancelled");
|
||||
progress.setCancelled();
|
||||
break;
|
||||
case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED:
|
||||
progress.setStatus("Stopped");
|
||||
break;
|
||||
default:
|
||||
progress.setStatus("Unhandled Error: " + errorCode);
|
||||
this.debug("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message);
|
||||
break;
|
||||
}
|
||||
} catch (ex) {
|
||||
this.debug(ex);
|
||||
}
|
||||
}
|
||||
|
||||
function uploadComplete(file) {
|
||||
if (this.getStats().files_queued === 0) {
|
||||
document.getElementById(this.customSettings.cancelButtonId).disabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
// This event comes from the Queue Plugin
|
||||
function queueComplete(numFilesUploaded) {
|
||||
var status = document.getElementById("divStatus");
|
||||
status.innerHTML = numFilesUploaded + " file" + (numFilesUploaded === 1 ? "" : "s") + " uploaded.";
|
||||
}
|
|
@ -7,6 +7,7 @@
|
|||
****************************************************************************************************
|
||||
*/
|
||||
define("THIS_PAGE",'myaccount');
|
||||
define("PARENT_PAGE",'home');
|
||||
|
||||
require 'includes/config.inc.php';
|
||||
$userquery->logincheck();
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<div id="container" class="clearfix">
|
||||
{include file="$style_dir/header.html" }
|
||||
<div class="nav_shadow"></div>
|
||||
<div id="content">
|
||||
<div id="content" style="">
|
||||
|
||||
{ANCHOR place='global'}
|
||||
|
||||
|
@ -47,23 +47,8 @@
|
|||
<div class="ch_right"></div>
|
||||
</div> <!--CHANGER END-->
|
||||
<div class="ch_shadow"></div>
|
||||
<div class="footer">
|
||||
<ul class="clearfix">
|
||||
<li><a href="#">Home</a></li>
|
||||
<li><a href="#">Contact Us</a></li>
|
||||
<li><a href="#">Videos</a></li>
|
||||
<li><a href="#">Groups</a></li>
|
||||
<li><a href="#">Privacy Policy</a></li>
|
||||
<li><a href="#">Register</a></li>
|
||||
<li><a href="#">Login</a></li>
|
||||
<li><a href="#">Help</a></li>
|
||||
</ul>
|
||||
<div class="footer_sp"></div>
|
||||
<ul class="clearfix">
|
||||
<li>Exclusive Hosting Partners: <a href="#" rel="sponsors">Cirtex Hosting</a> & <a href="#" rel="sponsors">HostV</a></li>
|
||||
</ul>
|
||||
<div class="footer_sp"></div>
|
||||
</div> <!--FOOTER CLASS END-->
|
||||
<!--FOOTER CLASS END-->
|
||||
{include file="$style_dir/footer.html"}
|
||||
</div> <!--FOOTER ID END-->
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,10 +1,19 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Untitled Document</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
<div class="footer">
|
||||
<div class="footer_copyr">
|
||||
© {$title} {$smarty.now|date_format:"%Y"}
|
||||
</div>
|
||||
<ul class="clearfix">
|
||||
|
||||
{foot_menu assign='foot_menu'}
|
||||
|
||||
{foreach from=$foot_menu item=fm}
|
||||
{if $fm.name!=''}
|
||||
<li><a href="{$fm.link}" {if $fm.target} target="{$fmtarget}"{/if} {if $fm.onclick} onclick="{$fm.onclick}" {/if}>{$fm.name}</a></li>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</ul>
|
||||
<div class="clearfix"></div>
|
||||
<div class="footer_sp"></div>
|
||||
<div align="center">Exclusive Hosting Partners <a href="http://www.cirtexhosting.com/1535.html"><strong>Cirtex</strong></a> & <a href="http://www.cirtexhosting.com/1535.html"><strong>Host V</strong></a></div>
|
||||
{$Cbucket->footer()}
|
||||
</div>
|
|
@ -37,15 +37,13 @@
|
|||
|
||||
<div class="top_tabs clearfix">
|
||||
<ul>
|
||||
<li><a href="{$baseurl}" {current_page page='home'}>Home</a></li>
|
||||
<li><a href="{link name='videos'}" {current_page page='videos'}>Videos</a></li>
|
||||
<li><a href="{link name='channels'}" {current_page page='channels'}>Channels</a></li>
|
||||
<li><a href="{link name='groups'}" {current_page page='groups'}>Groups</a></li>
|
||||
{if !userid()}
|
||||
<li><a href="{link name='signup'}" {current_page page='signup'}>Signup</a></li>
|
||||
{else}
|
||||
<li><a href="{link name='upload'}" {current_page page='upload'}>Upload</a></li>
|
||||
{/if}
|
||||
{head_menu assign='headmenu'}
|
||||
|
||||
{foreach from=$headmenu item=hm}
|
||||
{if $hm.name!=''}
|
||||
<li><a href="{$hm.link}" {current_page page=$hm.this} {if $hm.target} target="{$hm.target}"{/if} {if $hm.onclick} onclick="{$hm.onclick}"{/if}>{$hm.name}</a></li>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</ul>
|
||||
</div> <!--TOP_TABS END-->
|
||||
|
||||
|
|
|
@ -83,7 +83,7 @@
|
|||
|
||||
<div align="center">
|
||||
<input name="agree" type="checkbox" id="agree" value="yes" checked="checked" />
|
||||
- {$LANG.user_i_agree_to_the} <a href="{$termsofuse_link}" target="_blank" style="text-decoration:underline">{$LANG.tos_title}</a> and <a href="{$privacy_link}" target="_blank" style="text-decoration:underline">{$LANG.privacy_policy}</a>
|
||||
- {$LANG.user_i_agree_to_the} <a href="{$cbpage->get_page_link(1)}" target="_blank" style="text-decoration:underline">{lang code='terms_of_serivce'}</a> and <a href="{$cbpage->get_page_link(2)}" target="_blank" style="text-decoration:underline">{lang code='privacy_policy'}</a>
|
||||
</div>
|
||||
<label for="" class="label"> </label>
|
||||
<div class="input_container">
|
||||
|
|
|
@ -9,6 +9,7 @@ Style name: ClipBucket v2(New)
|
|||
@import url("rating.css");
|
||||
body,html { background:url(../images/main_bg.png) repeat-x; background-color:#fff; margin:0px; padding:0px; font-family:Verdana,Tahoma,Arial,sans-serif; color:#333; font-size:11px; }
|
||||
|
||||
#content{min-height:500px}
|
||||
/* CLEARS */
|
||||
.clearfix { }
|
||||
.clearfix:after{ content: "."; display:block; height:0; font-size:0; clear:both; visibility:visible; }
|
||||
|
@ -245,11 +246,13 @@ span.remember { font-size:10px; }
|
|||
/* FOOTER */
|
||||
#footer { background:#333; padding:10px 0px; margin:0px; }
|
||||
.footer_sp { background:url(../images/line_sps.png) bottom repeat-x; margin:12px 0px; padding:0px; clear:both; height:2px; }
|
||||
.footer { padding:0px 8px; margin:5px 0px 0px; font-size:10px; color:#fff; }
|
||||
.footer ul { padding:0px; margin:0px; list-style:none; }
|
||||
.footer ul li { margin:0px; margin-right:17px; padding:0px; float:left; list-style:none; }
|
||||
.footer ul li a { color:#eee; text-decoration:none; }
|
||||
.footer ul li a:hover { color:#fff; text-shadow:1px 1px 1px #000; }
|
||||
.footer { padding:0px 8px; margin:5px 0px 0px; font-size:11px; color:#fff; font-weight:bold }
|
||||
.footer ul { padding:0px; margin:0px; list-style:none; display:inline; float:right}
|
||||
.footer ul li { margin:0px; margin-right:8px; padding:0px; float:left; list-style:none; border-left:1px solid #999; padding-left:9px}
|
||||
.footer ul li:first-child{border-left:none}
|
||||
.footer a { color:#eee; text-decoration:none; }
|
||||
.footer a:hover { color:#06c; text-shadow:1px 1px 1px #000; }
|
||||
.footer .footer_copyr{float:left; display:inherit}
|
||||
|
||||
/* CHANGER LANGUAGE/TEMPLATE */
|
||||
.copyright { color:#fff; font-weight:bold; float:right; text-shadow:1px 1px 1px #555; font-size:10px; }
|
||||
|
|
Loading…
Add table
Reference in a new issue