View file upload/engine/inc/static.php

File size: 55.24Kb
<?php
/*
=====================================================
 DataLife Engine - by SoftNews Media Group 
-----------------------------------------------------
 https://dle-news.ru/
-----------------------------------------------------
 Copyright (c) 2004-2025 SoftNews Media Group
=====================================================
 This code is protected by copyright
=====================================================
 File: static.php
-----------------------------------------------------
 Use: edit static pages
=====================================================
*/

if( !defined( 'DATALIFEENGINE' ) OR !defined( 'LOGGED_IN' ) ) {
	header( "HTTP/1.1 403 Forbidden" );
	header ( 'Location: ../../' );
	die( "Hacking attempt!" );
}

if( !$user_group[$member_id['user_group']]['admin_static'] ) {
	msg( "error", $lang['index_denied'], $lang['index_denied'] );
}

$parse = new ParseFilter();

function SelectSkin($skin) {
	global $lang;
	
	$templates_list = get_folder_list( 'templates' );
	
	$skin_list = "<select class=\"uniform\" name=\"skin_name\">";
	$skin_list .= "<option value=\"\">" . $lang['cat_skin_sel'] . "</option>";
	
	foreach ( $templates_list as $key => $value ) {
		
		if( $key == $skin ) $selected = " selected";
		else $selected = "";
		
		$skin_list .= "<option value=\"{$key}\"" . $selected . ">{$value['name']}</option>";
	}
	
	$skin_list .= '</select>';
	
	return $skin_list;
}

if( !$action ) $action = "list";

if( $action == "list" ) {
	
	$_SESSION['static_referrer'] = htmlspecialchars($_SERVER['REQUEST_URI'], ENT_QUOTES, 'UTF-8' );

	echoheader( "<i class=\"fa fa-file-text-o position-left\"></i><span class=\"text-semibold\">{$lang['opt_sm_static']}</span>", $lang['header_st_1'] );
	
	$search_field = isset($_GET['search_field']) ? $db->safesql( trim( htmlspecialchars( stripslashes( @urldecode( $_GET['search_field'] ) ), ENT_QUOTES, 'UTF-8' ) ) ) : '';
	$search_field2 = isset($_REQUEST['search_field']) ? $db->safesql( addslashes(addslashes(trim( urldecode( $_REQUEST['search_field'] ) ) ) ) ) : '';
	
	if (isset($_GET['fromnewsdate']) AND $_GET['fromnewsdate']) $fromnewsdate = strtotime( $_GET['fromnewsdate'] ); else $fromnewsdate = "";
	if (isset($_GET['tonewsdate']) AND $_GET['tonewsdate']) $tonewsdate = strtotime( $_GET['tonewsdate'] ); else $tonewsdate = "";


	if ($fromnewsdate === -1 OR !$fromnewsdate) $fromnewsdate = "";
	if ($tonewsdate === -1 OR !$tonewsdate)   $tonewsdate = "";
	
	$start_from = isset($_GET['start_from']) ? intval( $_GET['start_from'] ) : 0;
	$news_per_page = isset($_GET['news_per_page']) ? intval( $_GET['news_per_page'] ) : 0;
	$gopage = isset($_REQUEST['gopage']) ? intval( $_REQUEST['gopage'] ) : 0;

	if( ! $news_per_page or $news_per_page < 1 ) {
		$news_per_page = 50;
	}
	if( $gopage ) $start_from = ($gopage - 1) * $news_per_page;
	
	if( $start_from < 0 ) $start_from = 0;

	$where = array ();
	$where[] = "name != 'dle-rules-page'";
	
	if( $search_field ) {
		
		$search_field = preg_replace('/\s+/u', '%', $search_field);
		
		if(!$_REQUEST['search_area']) {
			$where[] = "(name like '%$search_field%' OR template like '%$search_field2%' OR descr like '%$search_field%')";
		} elseif($_REQUEST['search_area'] == 1) {
			$where[] = "name like '%{$search_field}%'";
		} elseif($_REQUEST['search_area'] == 2) {
			$where[] = "descr like '%{$search_field}%'";
		} elseif($_REQUEST['search_area'] == 3) {
			$where[] = "template like '%{$search_field2}%'";
		}
	
	}
	
	if( $fromnewsdate != "" ) {
		
		$where[] = "date >= '$fromnewsdate'";
	
	}
	
	if( $tonewsdate != "" ) {
		
		$where[] = "date <= '$tonewsdate'";
	
	}
	
	if( count( $where ) ) {
		
		$where = implode( " AND ", $where );
		$where = " WHERE " . $where;
	
	} else {
		$where = "";
	}
	
	$order_by = array ();
	
	$_REQUEST['search_order_t'] = isset($_REQUEST['search_order_t']) ? $_REQUEST['search_order_t'] : '';
	$_REQUEST['search_order_d'] = isset($_REQUEST['search_order_d']) ? $_REQUEST['search_order_d'] : '';
	$_REQUEST['search_order_v'] = isset($_REQUEST['search_order_v']) ? $_REQUEST['search_order_v'] : '';
	
	if( $_REQUEST['search_order_t'] == "asc" or $_REQUEST['search_order_t'] == "desc" ) $search_order_t = $_REQUEST['search_order_t'];
	else $search_order_t = "";
	if( $_REQUEST['search_order_d'] == "asc" or $_REQUEST['search_order_d'] == "desc" ) $search_order_d = $_REQUEST['search_order_d'];
	else $search_order_d = "";
	if( $_REQUEST['search_order_v'] == "asc" or $_REQUEST['search_order_v'] == "desc" ) $search_order_v = $_REQUEST['search_order_v'];
	else $search_order_v = "";
	
	if( ! empty( $search_order_t ) ) {
		$order_by[] = "name $search_order_t";
	}
	if( ! empty( $search_order_d ) ) {
		$order_by[] = "date $search_order_d";
	}
	if( ! empty( $search_order_v ) ) {
		$order_by[] = "views $search_order_v";
	}
	
	$order_by = implode( ", ", $order_by );
	if( ! $order_by ) $order_by = "date desc";
	
	$search_order_date = array ('----' => '', 'asc' => '', 'desc' => '' );
	if( isset( $_REQUEST['search_order_d'] ) ) {
		$search_order_date[$search_order_d] = 'selected';
	} else {
		$search_order_date['desc'] = 'selected';
	}
	
	$search_order_title = array ('----' => '', 'asc' => '', 'desc' => '' );
	if( ! empty( $search_order_t ) ) {
		$search_order_title[$search_order_t] = 'selected';
	} else {
		$search_order_title['----'] = 'selected';
	}
	
	$search_order_view = array ('----' => '', 'asc' => '', 'desc' => '' );
	if( ! empty( $search_order_v ) ) {
		$search_order_view[$search_order_v] = 'selected';
	} else {
		$search_order_view['----'] = 'selected';
	}
	
	$search_area = array('', '', '', '');
	
	if( isset( $_REQUEST['search_area'] ) ) {
		$_REQUEST['search_area'] = intval($_REQUEST['search_area']);
		$search_area[$_REQUEST['search_area']] = 'selected';
	} else {
		$search_area[0] = 'selected';
	}

	$db->query( "SELECT id, name, descr, template, views, date, password FROM " . PREFIX . "_static" . $where . " ORDER BY " . $order_by . " LIMIT $start_from,$news_per_page" );

	// Prelist Entries
	
	$i = $start_from;
	
	if( $start_from == "0" ) {
		$start_from = "";
	}

	$entries_showed = 0;

	$entries = "";
	
	while ( $row = $db->get_array() ) {

		$i ++;
		
		if( !$langformatdate ) $langformatdate = "d.m.Y";
		
		$itemdate = @date( $langformatdate, $row['date'] );
		
		$title = htmlspecialchars( stripslashes( $row['name'] ), ENT_QUOTES, 'UTF-8' );
		$descr = stripslashes($row['descr']);

		$vlink =  DLEUrl::BuildUrl('static', ['page' => $row['name']]);

		if( $row['password'] ) $lock = "<i class=\"fa fa-lock position-left text-muted\"></i>"; else $lock = "";

		$row['views'] = number_format( $row['views'], 0, ',', ' ');
		
		$entries .= "<tr>
        <td class=\"hidden-xs\">$itemdate - {$lock}<a title=\"{$lang['static_view']}\" class=\"tip\" href=\"{$vlink}\" target=\"_blank\">$title</a></td>
        <td class=\"cursor-pointer\" onclick=\"document.location = '?mod=static&action=doedit&id={$row['id']}'; return false;\"><a title=\"{$lang['edit_static_act']}\" class=\"tip\" href=\"?mod=static&action=doedit&id={$row['id']}\">$descr</a></td>
        <td class=\"hidden-xs text-center text-nowrap cursor-pointer\" onclick=\"document.location = '?mod=static&action=doedit&id={$row['id']}'; return false;\">{$row['views']}</td>
        <td><input name=\"selected_news[]\" value=\"{$row['id']}\" type='checkbox' class=\"icheck\" /></td>
        </tr>";

		$entries_showed ++;
		
	}
	
	// End prelisting
	$result_count = $db->super_query( "SELECT COUNT(*) as count FROM " . PREFIX . "_static" . $where );
	
	$all_count_news = $result_count['count'];
	if ( $fromnewsdate ) $fromnewsdate = date("Y-m-d", $fromnewsdate );
	if ( $tonewsdate ) $tonewsdate = date("Y-m-d", $tonewsdate );

	
	///////////////////////////////////////////
	// Options Bar
	echo <<<HTML
<script language="javascript">
    function search_submit(prm){
      document.optionsbar.start_from.value=prm;
      document.optionsbar.submit();
      return false;
    }
    function gopage_submit(prm){
      document.optionsbar.start_from.value= (prm - 1) * {$news_per_page};
      document.optionsbar.submit();
      return false;
    }
    </script>
<div class="modal fade" id="advancedsearch" name="advancedsearch" role="dialog" aria-labelledby="advancedsearchLabel">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content">
	<form action="?mod=static&amp;action=list" method="GET" name="optionsbar" id="optionsbar" class="form-horizontal">
	<input type="hidden" name="mod" value="static">
	<input type="hidden" name="action" value="list">
	<input type="hidden" name="start_from" id="start_from" value="{$start_from}">
  <div class="modal-header ui-dialog-titlebar">
    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
    <span class="ui-dialog-title" id="newcatsLabel">{$lang['edit_stat']}&nbsp;{$entries_showed}&nbsp;&nbsp;&nbsp;{$lang['edit_stat_1']}&nbsp;{$all_count_news}</span>
  </div>

  <div class="modal-body">

	<div class="row">
	  <div class="col-sm-12">
		 
		<div class="form-group">
				<div class="col-sm-12">
					<label>{$lang['edit_search_static']}</label>
					<div class="input-group">
						<input name="search_field" value="{$search_field}" type="text" dir="auto" class="form-control">
						<span class="input-group-btn">
							<select name="search_area" class="uniform form-control"><option value="0" {$search_area[0]}>{$lang['filter_search_0']}</option><option value="1" {$search_area[1]}>{$lang['filter_search_7']}</option><option value="2" {$search_area[2]}>{$lang['filter_search_8']}</option><option value="3" {$search_area[3]}>{$lang['filter_search_9']}</option></select>
						</span>
					</div>
				</div>
		</div>
		
	  </div>
	</div>
	
	<div class="row">	  
	  <div class="col-sm-6">

	  	<div class="form-group">
		  <label class="control-label col-sm-12">{$lang['search_by_date']}</label>
		  <div class="col-sm-12">
			{$lang['edit_fdate']} <input data-rel="calendardate" type="text" dir="auto" name="fromnewsdate" id="fromnewsdate" class="form-control" style="width:160px;" value="{$fromnewsdate}" autocomplete="off">
			{$lang['edit_tdate']} <input data-rel="calendardate" type="text" dir="auto" name="tonewsdate" id="tonewsdate" class="form-control" style="width:160px;" value="{$tonewsdate}" autocomplete="off">
		  </div>
		 </div>

	  </div>
	  
	  <div class="col-sm-6">
		<div class="form-group">
		  <label class="control-label col-sm-12">{$lang['static_per_page']}</label>
		  <div class="col-sm-12">
			<input class="form-control text-center" name="news_per_page" value="{$news_per_page}" type="text" dir="auto">
		  </div>
		 </div>
	  </div>
	</div>
	
	<div class="pb-10">{$lang['static_order']}</div>

	<div class="form-group">
			<div class="col-sm-4">
				<label>{$lang['edit_et']}</label>
				<select class="uniform" data-width="100%" name="search_order_t" id="search_order_t">
					<option {$search_order_title['----']} value="">{$lang['user_order_no']}</option>
					<option {$search_order_title['asc']} value="asc">{$lang['user_order_plus']}</option>
					<option {$search_order_title['desc']} value="desc">{$lang['user_order_minus']}</option>
				</select>
			</div>
			<div class="col-sm-4">
				<label>{$lang['search_by_date']}</label>
				<select class="uniform" data-width="100%" name="search_order_d" id="search_order_d">
				   <option {$search_order_date['----']} value="">{$lang['user_order_no']}</option>
				   <option {$search_order_date['asc']} value="asc">{$lang['user_order_plus']}</option>
				   <option {$search_order_date['desc']} value="desc">{$lang['user_order_minus']}</option>
				</select>
			</div>
			
			<div class="col-sm-4">
				<label>{$lang['search_by_view']}</label>
				<select class="uniform" data-width="100%" name="search_order_v" id="search_order_v">
					<option {$search_order_view['----']} value="">{$lang['user_order_no']}</option>
					<option {$search_order_view['asc']} value="asc">{$lang['user_order_plus']}</option>
					<option {$search_order_view['desc']} value="desc">{$lang['user_order_minus']}</option>
				</select>
			</div>
		</div>

	</div>

   <div class="modal-footer">
		<button onclick="search_submit(0); return(false);" class="btn bg-teal btn-sm btn-raised position-left"><i class="fa fa-search position-left"></i>{$lang['edit_act_1']}</button>
		<button onclick="document.location='?mod=static'; return(false);" class="btn bg-danger btn-sm btn-raised"><i class="fa fa-eraser position-left"></i>{$lang['drop_search']}</button>
   </div>

	</form>
   </div>
</div>
</div>
HTML;
	// End Options Bar
	

	echo <<<JSCRIPT
<script>
<!--
function ckeck_uncheck_all() {
    var frm = document.static;
    for (var i=0;i<frm.elements.length;i++) {
        var elmnt = frm.elements[i];
        if (elmnt.type=='checkbox') {
            if(frm.master_box.checked == true){ elmnt.checked=false; $(elmnt).parents('tr').removeClass('warning');}
            else{ elmnt.checked=true; $(elmnt).parents('tr').addClass('warning'); }
        }
    }
	
    if(frm.master_box.checked == true){ frm.master_box.checked = false; }
    else{ frm.master_box.checked = true; }
	
	$(frm.master_box).parents('tr').removeClass('warning');
	
	$.uniform.update();
	
}

$(function() {
    $('.table').find('tr > td:last-child').find('input[type=checkbox]').on('change', function() {
        if($(this).is(':checked')) {
            $(this).parents('tr').addClass('warning');
        }
        else {
            $(this).parents('tr').removeClass('warning');
        }
    });
});

-->
</script>
JSCRIPT;
	
	if( $entries_showed == 0 ) {
		
		echo <<<HTML
<div class="panel panel-default">
  <div class="panel-heading">
    {$lang['static_head']}
	<div class="heading-elements not-collapsible">
		<ul class="icons-list">
			<li><a data-toggle="modal" data-target="#advancedsearch" href="#"><i class="fa fa-search position-left"></i><span class="visible-lg-inline visible-md-inline visible-sm-inline">{$lang['static_advanced_search']}</span></a></li>
		</ul>
	</div>
  </div>
	<div class="panel-body">
		<div style="display: table;min-height:100px;width:100%;">
		  <div class="text-center" style="display: table-cell;vertical-align:middle;">{$lang['edit_nostatic']}</div>
		</div>
	</div>
	<div class="panel-footer">
	  <a class="btn bg-teal btn-sm btn-raised" href="?mod=static&action=addnew"><i class="fa fa-plus-circle position-left"></i>{$lang['static_new']}</a>
	</div>
</div>
HTML;
	
	} else {

		// pagination
		$npp_nav = "";
			
		if( $all_count_news > $news_per_page ) {
			
			if( $start_from > 0 ) {
				$previous = $start_from - $news_per_page;
				$npp_nav .= "<li><a onclick=\"javascript:search_submit($previous); return(false);\" href=\"#\" title=\"{$lang['edit_prev']}\"><i class=\"fa fa-backward\"></i></a></li>";
			}
			
			$enpages_count = @ceil( $all_count_news / $news_per_page );
			$enpages_start_from = 0;
			$enpages = "";
			
			if( $enpages_count <= 10 ) {
				
				for($j = 1; $j <= $enpages_count; $j ++) {
					
					if( $enpages_start_from != $start_from ) {
						
						$enpages .= "<li><a onclick=\"javascript:search_submit($enpages_start_from); return(false);\" href=\"#\">$j</a></li>";
					
					} else {
						
						$enpages .= "<li class=\"active\"><span>$j</span></li>";
					}
					
					$enpages_start_from += $news_per_page;
				}
				
				$npp_nav .= $enpages;
			
			} else {
				
				$start = 1;
				$end = 10;
				
				if( $start_from > 0 ) {
					
					if( ($start_from / $news_per_page) > 4 ) {
						
						$start = @ceil( $start_from / $news_per_page ) - 3;
						$end = $start + 9;
						
						if( $end > $enpages_count ) {
							$start = $enpages_count - 10;
							$end = $enpages_count - 1;
						}
						
						$enpages_start_from = ($start - 1) * $news_per_page;
					
					}
				
				}
				
				if( $start > 2 ) {
					
					$enpages .= "<li><a onclick=\"javascript:search_submit(0); return(false);\" href=\"#\">1</a></li> <li><span>...</span></li>";
				
				}
				
				for($j = $start; $j <= $end; $j ++) {
					
					if( $enpages_start_from != $start_from ) {
						
						$enpages .= "<li><a onclick=\"javascript:search_submit($enpages_start_from); return(false);\" href=\"#\">$j</a></li>";
					
					} else {
						
						$enpages .= "<li class=\"active\"><span>$j</span></li>";
					}
					
					$enpages_start_from += $news_per_page;
				}
				
				$enpages_start_from = ($enpages_count - 1) * $news_per_page;
				$enpages .= "<li><span>...</span></li><li><a onclick=\"javascript:search_submit($enpages_start_from); return(false);\" href=\"#\">$enpages_count</a></li>";
				
				$npp_nav .= $enpages;
			
			}
			
			if( $all_count_news > $i ) {
				$how_next = $all_count_news - $i;
				if( $how_next > $news_per_page ) {
					$how_next = $news_per_page;
				}
				$npp_nav .= "<li><a onclick=\"javascript:search_submit($i); return(false);\" href=\"#\" title=\"{$lang['edit_next']}\"><i class=\"fa fa-forward\"></i></a></li>";
			}
			
			$npp_nav = "<ul class=\"pagination pagination-sm\">".$npp_nav."</ul>";
		
		}
		
		// pagination
	
		echo <<<HTML
<form action="" method="post" name="static">
<input type="hidden" name="mod" value="mass_static_actions">
<input type="hidden" name="user_hash" value="$dle_login_hash" />
<div class="panel panel-default">
  <div class="panel-heading">
    {$lang['static_head']}
	
	<div class="heading-elements not-collapsible">
		<ul class="icons-list">
			<li><a data-toggle="modal" data-target="#advancedsearch" href="#"><i class="fa fa-search position-left"></i><span class="visible-lg-inline visible-md-inline visible-sm-inline">{$lang['static_advanced_search']}</span></a></li>
		</ul>
	</div>

  </div>
  
    <table class="table table-striped table-xs table-hover">
      <thead>
      <tr>
        <th class="hidden-xs" style="width: 400px">{$lang['static_title']}</th>
        <th>{$lang['static_descr']}</th>
        <th class="hidden-xs" style="width: 60px;text-align:center;"><i class="fa fa-eye tip" data-original-title="{$lang['st_views']}"></i></th>
        <th style="width: 40px"><input class="icheck" type="checkbox" name="master_box" title="{$lang['edit_selall']}" onclick="javascript:ckeck_uncheck_all()"></th>
      </tr>
      </thead>
	  <tbody>
		{$entries}
	  </tbody>
	</table>
		  
  
<div class="panel-footer">
 <div class="pull-left"><a class="btn bg-teal btn-sm btn-raised" href="?mod=static&action=addnew"><i class="fa fa-plus-circle position-left"></i>{$lang['static_new']}</a></div>
 <div class="pull-right"><select name="action" class="uniform">
  <option value="">{$lang['edit_selact']}</option>
  <option value="mass_date">{$lang['mass_edit_date']}</option>
  <option value="mass_clear_count">{$lang['mass_clear_count']}</option>
  <option value="mass_delete">{$lang['edit_seldel']}</option>
  </select>
  <input class="btn bg-brown-600 btn-sm btn-raised" type="submit" value="{$lang['b_start']}"></div>
</div>  
  
</div>
<div class="mb-20">{$npp_nav}</div>
</form>
HTML;
	
	}
	
	echofooter();

} elseif( $action == "addnew" ) {
	
	$js_array[] = "public/editor/tiny_mce/tinymce.min.js";
	
	echoheader( "<i class=\"fa fa-file-text-o position-left\"></i><span class=\"text-semibold\">{$lang['opt_sm_static']}</span>", array($_SESSION['static_referrer'] => $lang['opt_sm_static'], '' => $lang['static_a'] ) );
	
	echo "
    <script>
    function preview(){
		tinyMCE.triggerSave();

		if(document.static.template.value == '' || document.static.description.value == '' || document.static.name.value == ''){ DLEPush.error('{$lang['static_err_1']}'); }
		else{
			dd=window.open('','prv','height=400,width=750,resizable=1,scrollbars=1')
			document.static.mod.value='preview';document.static.target='prv'
			document.static.submit(); dd.focus()
			setTimeout(\"document.static.mod.value='static';document.static.target='_self'\",500)
		}
    }
    onload=focus;function focus(){document.forms[0].name.focus();}

	function auto_keywords ( key )
	{

		tinyMCE.triggerSave();

		var short_txt = document.getElementById('template').value;

		ShowLoading('');

		$.post(\"index.php?controller=ajax&mod=keywords\", { short_txt: short_txt, key: key, user_hash: '{$dle_login_hash}' }, function(data){
	
			HideLoading('');
	
			if (key == 1) { $('#autodescr').val(data); }
			else { $('#keywords').tokenfield('setTokens', data); }
	
		});

		return false;
	}
	$(function(){
		  $('.cat_select').chosen({allow_single_deselect:true, no_results_text: '{$lang['addnews_cat_fault']}'});

	});
	
	function onPassChange(obj) {
  
	  var value = obj.checked;
	  
	  if (value == true) {
		$('#passlist').show();
	  } else {
		$('#passlist').hide();
	  }
	  
	}
	
    </script>";

	$fix_br = "<div class=\"radio\"><label><input class=\"icheck\" type=\"radio\" name=\"allow_br\" name=\"allow_br\" value=\"0\">{$lang['static_br_html_1']}</label></div>";

	if ($member_id['user_group'] == 1 ) $fix_br .= "<div class=\"radio\"><label><input class=\"icheck\" type=\"radio\" name=\"allow_br\" id=\"allow_br2\" value=\"2\" />{$lang['static_br_html_2']}</label></div>";

	$groups = get_groups();
	$skinlist = SelectSkin('');
	
	echo <<<HTML
<form class="form-horizontal" method="post" name="static" id="addnews" onsubmit="if(document.static.name.value == '' || document.static.description.value == ''){DLEPush.error('{$lang['static_err_1']}'); return false}" action="" autocomplete="off">
<input type="hidden" name="action" value="dosavenew">
<input type="hidden" name="mod" value="static">
<input type="hidden" name="preview_mode" value="static" >
<input type="hidden" name="user_hash" value="$dle_login_hash" />
<div class="panel panel-default">
  <div class="panel-heading">
    {$lang['static_a']}
    <div class="heading-elements">
	    <ul class="icons-list">
		<li><a href="#" class="panel-fullscreen"><i class="fa fa-expand"></i></a></li>
		</ul>
    </div>
  </div>
  <div class="panel-body">
	
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['static_title']}</label>
		  <div class="col-md-10">
			<input type="text" dir="auto" name="name" class="form-control width-550" maxlength="100"><i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['hint_stitle']}" ></i>
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['static_descr']}</label>
		  <div class="col-md-10">
			<input type="text" dir="auto" name="description" class="form-control width-550" maxlength="250"><i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['hint_sdesc']}" ></i>
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['edit_edate']}</label>
		  <div class="col-md-10">
			<input data-rel="calendar" type="text" dir="auto" name="newdate" class="form-control position-left" style="width:190px;" value="" autocomplete="off"><label class="checkbox-inline"><input class="icheck" type="checkbox" name="allow_now" id="allow_now" value="yes" checked>{$lang['edit_jdate']}</label>
		  </div>
		 </div>
		<div class="form-group editor-group">
		  <label class="control-label col-md-2">{$lang['static_templ']}</label>
		  <div class="col-md-10">
HTML;
	
	include (DLEPlugins::Check(ENGINE_DIR . '/editor/static.php'));

	echo <<<HTML
		  </div>
		 </div>
		 
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['static_type']}</label>
		  <div class="col-md-10">
			{$fix_br}
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2"></label>
		  <div class="col-md-10">
			{$lang['add_metatags']}<i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['hint_metas']}" ></i>
		  </div>
		 </div>	
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['meta_title']}</label>
		  <div class="col-md-10">
			<input type="text" name="meta_title" class="form-control width-500" maxlength="140">
		  </div>
		 </div>	
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['meta_descr']}</label>
		  <div class="col-md-10">
			<input type="text" dir="auto" name="descr" id="autodescr" class="form-control width-500" maxlength="300">
		  </div>
		 </div>	
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['meta_keys']}</label>
		  <div class="col-md-10">
			<textarea dir="auto" class="tags" name="keywords" id='keywords'></textarea><br /><br />
			<button onclick="auto_keywords(1); return false;" class="btn bg-primary-600 btn-sm btn-raised position-left"><i class="fa fa-exchange position-left"></i>{$lang['btn_descr']}</button>
			<button onclick="auto_keywords(2); return false;" class="btn bg-primary-600 btn-sm btn-raised"><i class="fa fa-exchange position-left"></i>{$lang['btn_keyword']}</button>
		  </div>
		 </div>		 
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['static_tpl']}</label>
		  <div class="col-md-10 text-nowrap">
			<input type="text" dir="auto" name="static_tpl" class="form-control position-left width-500">.tpl<i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left" data-rel="popover" data-html="true" data-trigger="hover" data-placement="auto right" data-content="{$lang['hint_stpl']}" ></i>
		  </div>
		 </div>	
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['static_skin']}</label>
		  <div class="col-md-10">
			{$skinlist}<i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left" data-rel="popover" data-html="true" data-trigger="hover" data-placement="auto right" data-content="{$lang['hint_static_skin']}" ></i>
		  </div>
		 </div>	
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['stat_allow']}</label>
		  <div class="col-md-10">
			<select name="grouplevel[]" class="cat_select" data-placeholder="{$lang['group_select_1']}" style="width:250px;" multiple><option value="all" selected>{$lang['edit_all']}</option>{$groups}</select>
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2 col-sm-3"></label>
		  <div class="col-md-10 col-sm-9">
			<div class="checkbox"><label><input class="icheck" type="checkbox" id="need_pass" name="need_pass" value="1" onchange="onPassChange(this)">{$lang['pass_list_1']}</label></div>
		  </div>
		 </div>
		<div class="form-group" id="passlist" style="display:none;">
		  <label class="control-label col-md-2 col-sm-3">{$lang['pass_list_2']}<div class="text-muted text-size-small">{$lang['pass_list_3']}</div></label>
		  <div class="col-md-10 col-sm-9">
			<textarea dir="auto" rows="5" class="classic width-500" name="password"></textarea>
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2"></label>
		  <div class="col-md-10">
		    <div class="checkbox"><label><input class="icheck" type="checkbox" name="allow_template" id="allow_template" value="1" checked>{$lang['st_al_templ']}</label></div>
			<div class="checkbox"><label><input class="icheck" type="checkbox" name="allow_count" id="allow_count" value="1" checked>{$lang['allow_count']}</label></div>
			<div class="checkbox"><label><input class="icheck" type="checkbox" name="allow_sitemap" id="allow_sitemap" value="1" checked>{$lang['allow_sitemap']}</label></div>
			<div class="checkbox"><label><input class="icheck" type="checkbox" name="disable_index" id="disable_index" value="1">{$lang['add_disable_index']}</label></div>
			<div class="checkbox"><label><input class="icheck" type="checkbox" id="disable_search" name="disable_search" value="1">{$lang['cat_d_search']}</label></div>
		  </div>
		 </div>	
	
   </div>
<div class="panel-footer">
	<button class="btn bg-teal btn-sm btn-raised position-left" type="submit"><i class="fa fa fa-floppy-o position-left"></i>{$lang['news_add']}</button>
	<button onclick="preview(); return false;" class="btn bg-slate-600 btn-sm btn-raised position-left"><i class="fa fa-desktop position-left"></i>{$lang['btn_preview']}</button>
</div>
</div>
</form>
HTML;
	
	echofooter();
	
} elseif( $action == "dosavenew" ) {
	@header('X-XSS-Protection: 0;');
	
	if( !isset($_REQUEST['user_hash']) OR !$_REQUEST['user_hash'] OR $_REQUEST['user_hash'] != $dle_login_hash ) {
		
		die( "Hacking attempt! User not found" );
	
	}
	
	if( !isset($_SESSION['static_referrer']) OR !$_SESSION['static_referrer'] ) {

		$_SESSION['static_referrer'] = "?mod=static&amp;action=list";

	}
	
	$allow_br = isset($_POST['allow_br']) ? intval( $_POST['allow_br'] ) : 0;
	if ($member_id['user_group'] != 1 AND $allow_br > 1 ) $allow_br = 1;

	if ($allow_br == 2) {

		$template = trim( addslashes( $_POST['template'] ) );

	} else {

		$parse->allow_code = false;

		$template = $parse->process( $_POST['template'] );
	
		$template = $parse->BB_Parse( $template );

	}

	$disable_index = isset( $_POST['disable_index'] ) ? intval( $_POST['disable_index'] ) : 0;
	$disable_search = isset( $_POST['disable_search'] ) ? intval( $_POST['disable_search'] ) : 0;
	
	$metatags = create_metatags( $template );
	$name = totranslit( $_POST['name'], true, false, $config['translit_url'] );
	$descr = $db->safesql( htmlspecialchars( strip_tags(trim($_POST['description'])), ENT_QUOTES, 'UTF-8' ) );
	$template = $db->safesql( $template );
	$password = $db->safesql(trim($_POST['password']));

	$tpl = $db->safesql(cleanpath( $_POST['static_tpl'] ));

	$skin_name =  totranslit( $_POST['skin_name'], false, false );
	$newdate = $_POST['newdate'];
    if( isset( $_POST['allow_now'] ) ) $allow_now = $_POST['allow_now']; else $allow_now = "";
	
	if( ! count( $_POST['grouplevel'] ) ) $_POST['grouplevel'] = array ("all" );
	$grouplevel = $db->safesql( implode( ',', $_POST['grouplevel'] ) );
	
	$allow_template = intval( $_POST['allow_template'] );
	$allow_count = intval( $_POST['allow_count'] );
	$allow_sitemap = intval( $_POST['allow_sitemap'] );

	$added_time = time();
	$newsdate = strtotime( $newdate );

	if( ($allow_now == "yes") OR ($newsdate === - 1) OR !$newsdate) {
		$thistime = $added_time;
	} else {
		$thistime = $newsdate;
		if( ! intval( $config['no_date'] ) and $newsdate > $added_time ) $thistime = $added_time;
	}
					
	if( $name == "" or $descr == "" or $template == "" ) msg( "error", $lang['static_err'], $lang['static_err_1'], $_SESSION['static_referrer'] );
	
	$static_count = $db->super_query( "SELECT COUNT(*) as count FROM " . PREFIX . "_static WHERE name='{$name}'" );

	if ($static_count['count']) msg( "error", $lang['static_err'], $lang['static_err_2'], $_SESSION['static_referrer'] );
	
	$db->query( "INSERT INTO " . PREFIX . "_static (name, descr, template, allow_br, allow_template, grouplevel, tpl, metadescr, metakeys, template_folder, date, metatitle, allow_count, sitemap, disable_index, disable_search, password) values ('$name', '$descr', '$template', '$allow_br', '$allow_template', '$grouplevel', '$tpl', '{$metatags['description']}', '{$metatags['keywords']}', '{$skin_name}', '{$thistime}', '{$metatags['title']}', '$allow_count', '$allow_sitemap', '$disable_index', '$disable_search', '$password')" );
	$row = $db->insert_id();
	$db->query( "UPDATE " . PREFIX . "_static_files SET static_id='{$row}' WHERE author = '{$member_id['name']}' AND static_id = '0'" );

	$db->query( "INSERT INTO " . USERPREFIX . "_admin_logs (name, date, ip, action, extras) values ('".$db->safesql($member_id['name'])."', '{$_TIME}', '{$_IP}', '59', '{$name}')" );

	$full_link = DLEUrl::BuildUrl('static', ['page' => $name]);
	
	if( $config['news_indexnow'] ) {
		
		$result = DLESEO::IndexNow( $full_link );
		
		if( $result !== true ) {
			
			$lang['indexnow_error_1'] = str_ireplace('{name}', md5(SECURE_AUTH_KEY), $lang['indexnow_error_1']);
			$lang['indexnow_error_2'] = str_ireplace('{name}', md5(SECURE_AUTH_KEY), $lang['indexnow_error_2']);
	
			if( $result === null ) $result = $lang['indexnow_error_1'];
			elseif( $result === -1 ) $result = $lang['indexnow_error_2'];
			elseif( is_array($result) ) {
				
				$lang['indexnow_error_3'] = str_ireplace('{searchengine}', $result[0], $lang['indexnow_error_3']);
				$lang['indexnow_error_3'] = str_ireplace('{errorcode}',    $result[1], $lang['indexnow_error_3']);
				
				$result = $lang['indexnow_error_3'];
			}
			
			$result = "<div class=\"alert alert-warning alert-styled-left alert-arrow-left text-left\">".$result."</div>";
			
		} else $result = ''; 

	} else $result = '';
	
	msg( "success", $lang['static_addok'], $lang['static_addok_1'].$result, array('?mod=static&action=addnew' => $lang['add_s_1'], '?mod=static&action=doedit&id='.$row => $lang['add_s_2'], $_SESSION['static_referrer'] => $lang['add_s_3'], $full_link => $lang['add_s_5'] ) );

} elseif( $action == "doedit" ) {

	if (!isset($_SESSION['static_referrer']) or !$_SESSION['static_referrer']) {

		$_SESSION['static_referrer'] = "?mod=static&amp;action=list";
	}
	
	$id = isset($_GET['id']) ? intval( $_GET['id'] ) : 0;
	
	if( isset($_GET['page']) AND $_GET['page'] == "rules" ) {
		
		$row = $db->super_query( "SELECT * FROM " . PREFIX . "_static where name='dle-rules-page'" );
		$lang['static_edit'] = $lang['rules_edit'];

		if( !$row['id'] ) {
			$id = "";
			$row['allow_template'] = "1";
		} else $id = $row['id'];
		
		if( ! $config['registration_rules'] ) $lang['rules_descr'] = $lang['rules_descr'] . " <span class=\"text-danger\">" . $lang['rules_check'] . "</span>";

		$_SESSION['static_referrer'] = "?mod=static&amp;action=list";
	
	} else {
		
		$row = $db->super_query( "SELECT * FROM " . PREFIX . "_static where id='$id'" );

		if($row['name'] == "dle-rules-page") {
			header( "Location: ?mod=static&action=doedit&page=rules" ); 
			die();
		}
	}

	if ($row['allow_br'] == 2) {

		if ($member_id['user_group'] != 1) msg( "error", $lang['index_denied'], $lang['static_not_allowed'], $_SESSION['static_referrer'] );

		$row['template'] = htmlspecialchars( stripslashes( $row['template'] ), ENT_QUOTES, 'UTF-8' );


	} else {
			
		$row['template'] = $parse->decodeBBCodes( $row['template'], true, true );
	}
	
	$skinlist = SelectSkin( $row['template_folder'] );
	$row['descr'] = stripslashes($row['descr']);
	$row['metatitle'] = stripslashes( $row['metatitle'] );
	$itemdate = @date( "Y-m-d H:i:s", $row['date'] );
	
	$js_array[] = "public/editor/tiny_mce/tinymce.min.js";
	
	echoheader( "<i class=\"fa fa-file-text-o position-left\"></i><span class=\"text-semibold\">{$lang['opt_sm_static']}</span>", array($_SESSION['static_referrer'] => $lang['opt_sm_static'], '' => $lang['static_edit'] ) );
	
	echo <<<HTML
<script language="javascript">

function confirmdelete(id) {
	    DLEconfirmDelete( '{$lang['static_confirm']}', '{$lang['p_confirm']}', function () {
			document.location="?mod=static&action=dodelete&user_hash={$dle_login_hash}&id="+id;
		} );
}

function onPassChange(obj) {
  
	var value = obj.checked;
  
  if (value == true) {
	$('#passlist').show();
  } else {
	$('#passlist').hide();
  }
  
}
	
$(function(){

	if( document.getElementById('need_pass') ) {
		onPassChange(document.getElementById('need_pass'));
	}
	
	$('.cat_select').chosen({allow_single_deselect:true, no_results_text: '{$lang['addnews_cat_fault']}'});
	
});
</script>
HTML;

	echo "
    <script>
    function preview(){
		tinyMCE.triggerSave();
		
		if(document.static.template.value == ''){ DLEPush.error('{$lang['static_err_1']}'); }
		else{
			dd=window.open('','prv','height=400,width=750,resizable=1,scrollbars=1')
			document.static.mod.value='preview';document.static.target='prv'
			document.static.submit(); dd.focus()
			setTimeout(\"document.static.mod.value='static';document.static.target='_self'\",500)
		}
    }

	function auto_keywords ( key )
	{
		tinyMCE.triggerSave();

		var short_txt = document.getElementById('template').value;

		ShowLoading('');

		$.post(\"index.php?controller=ajax&mod=keywords\", { short_txt: short_txt, key: key, user_hash: '{$dle_login_hash}' }, function(data){
	
			HideLoading('');
	
			if (key == 1) { $('#autodescr').val(data); }
			else { $('#keywords').tokenfield('setTokens', data); }
	
		});

		return false;
	}
    </script>";
	$check = array('', '', '');

	$check[$row['allow_br']] = "checked=\"checked\"";

	$fix_br = "<div class=\"radio\"><label><input class=\"icheck\" type=\"radio\" name=\"allow_br\" id=\"allow_br\" value=\"0\" {$check[0]} />{$lang['static_br_html_1']}</label></div>";

	if ($member_id['user_group'] == 1 ) $fix_br .= "<div class=\"radio\"><label><input class=\"icheck\" type=\"radio\" name=\"allow_br\" id=\"allow_br2\" value=\"2\" {$check[2]} />{$lang['static_br_html_2']}</label></div>";

	if( $row['allow_template'] ) $check_t = "checked";
	else $check_t = "";

	if( $row['allow_count'] ) $check_c = "checked";
	else $check_c = "";
	
	if( $row['disable_search'] ) $check_ds = "checked";
	else $check_ds = "";
	
	if( $row['password'] ) $check_pass = "checked";
	else $check_pass = "";
	
	$password  = htmlspecialchars( $row['password'], ENT_QUOTES, 'UTF-8' );
	$_GET['page'] = isset($_GET['page']) ? $_GET['page'] : '';

	if( $_GET['page'] != "rules" ) {

		if( $row['sitemap'] ) $allow_sitemap = "<div class=\"checkbox\"><label><input class=\"icheck\" type=\"checkbox\" name=\"allow_sitemap\" id=\"allow_sitemap\" value=\"1\" checked>{$lang['allow_sitemap']}</label></div>";
		else $allow_sitemap = "<div class=\"checkbox\"><label><input class=\"icheck\" type=\"checkbox\" name=\"allow_sitemap\" id=\"allow_sitemap\" value=\"1\">{$lang['allow_sitemap']}</label></div>";

		if( $row['disable_index'] ) $disable_index = "<div class=\"checkbox\"><label><input class=\"icheck\" type=\"checkbox\" name=\"disable_index\" id=\"disable_index\" value=\"1\" checked>{$lang['add_disable_index']}</label></div>";
		else $disable_index = "<div class=\"checkbox\"><label><input class=\"icheck\" type=\"checkbox\" name=\"disable_index\" id=\"disable_index\" value=\"1\">{$lang['add_disable_index']}</label></div>";
	
	} else {$allow_sitemap = ""; $disable_index = "";}


	$groups = get_groups( explode( ',', $row['grouplevel'] ) );
	if( $row['grouplevel'] == "all" ) $check_all = "selected";
	else $check_all = "";
	
	if( $_GET['page'] == "rules" ) {
		
		echo "<form class=\"form-horizontal\" method=post name=\"static\" id=\"addnews\" action=\"\" autocomplete=\"off\">";
	
	} else {
		
		echo "<form class=\"form-horizontal\" method=post name=\"static\" id=\"addnews\" onsubmit=\"if(document.static.name.value == '' || document.static.description.value == '' ){DLEPush.error('{$lang['static_err_1']}'); return false}\" action=\"\" autocomplete=\"off\">";
	
	}
	
	echo <<<HTML
<input type="hidden" name="action" value="dosaveedit">
<input type="hidden" name="mod" value="static">
<input type="hidden" name="preview_mode" value="static" >
<input type="hidden" name="user_hash" value="{$dle_login_hash}" />
<input type="hidden" name="id" value="{$id}">
<div class="panel panel-default">
  <div class="panel-heading">
    {$lang['static_edit']}
    <div class="heading-elements">
	    <ul class="icons-list">
		<li><a href="#" class="panel-fullscreen"><i class="fa fa-expand"></i></a></li>
		</ul>
    </div>
  </div>
  <div class="panel-body">

HTML;
	
	if( $_GET['page'] == "rules" ) {
		
		echo <<<HTML
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['static_descr']}</label>
		  <div class="col-md-10">
			<input type="text" dir="auto" name="description" class="form-control width-550" maxlength="250" value="{$row['descr']}"><i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['hint_sdesc']}" ></i>
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2"></label>
		  <div class="col-md-10">
			{$lang['rules_descr']}
		  </div>
		 </div>
HTML;
	
	} else {
		
		echo <<<HTML
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['static_title']}</label>
		  <div class="col-md-10">
			<input type="text" dir="auto" name="name" class="form-control width-550" maxlength="100" value="{$row['name']}"><i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['hint_stitle']}" ></i>
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['static_descr']}</label>
		  <div class="col-md-10">
			<input type="text" dir="auto" name="description" class="form-control width-550" maxlength="250" value="{$row['descr']}"><i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['hint_sdesc']}" ></i>
		  </div>
		 </div>
HTML;
	
	}
	
	echo <<<HTML
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['edit_edate']}</label>
		  <div class="col-md-10">
			<input data-rel="calendar" type="text" dir="auto" name="newdate" value="{$itemdate}" class="form-control position-left" style="width:190px;" autocomplete="off"><label class="checkbox-inline"><input class="icheck" type="checkbox" name="allow_now" id="allow_now" value="yes">{$lang['edit_jdate']}</label>
		  </div>
		 </div>
		<div class="form-group editor-group">
		  <label class="control-label col-md-2">{$lang['static_templ']}</label>
		  <div class="col-md-10">
HTML;
		
		include (DLEPlugins::Check(ENGINE_DIR . '/editor/static.php'));
	
	echo <<<HTML
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['static_type']}</label>
		  <div class="col-md-10">
			{$fix_br}
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2"></label>
		  <div class="col-md-10">
			{$lang['add_metatags']}<i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left" data-rel="popover" data-trigger="hover" data-placement="auto right" data-content="{$lang['hint_metas']}" ></i>
		  </div>
		 </div>			 
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['meta_title']}</label>
		  <div class="col-md-10">
			<input type="text" dir="auto" name="meta_title" class="form-control width-500" maxlength="140" value="{$row['metatitle']}">
		  </div>
		 </div>	
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['meta_descr']}</label>
		  <div class="col-md-10">
			<input type="text" dir="auto" name="descr" id="autodescr" class="form-control width-500" maxlength="300" value="{$row['metadescr']}">
		  </div>
		 </div>	
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['meta_keys']}</label>
		  <div class="col-md-10">
			<textarea dir="auto" class="tags" name="keywords" id='keywords'>{$row['metakeys']}</textarea><br /><br />
			<button onclick="auto_keywords(1); return false;" class="btn bg-primary-600 btn-sm btn-raised position-left"><i class="fa fa-exchange position-left"></i>{$lang['btn_descr']}</button>&nbsp;
			<button onclick="auto_keywords(2); return false;" class="btn bg-primary-600 btn-sm btn-raised"><i class="fa fa-exchange position-left"></i>{$lang['btn_keyword']}</button>
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['static_tpl']}</label>
		  <div class="col-md-10 text-nowrap">
			<input type="text" dir="auto" name="static_tpl" class="form-control position-left width-500" value="{$row['tpl']}">.tpl<i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left" data-rel="popover" data-html="true" data-trigger="hover" data-placement="auto right" data-content="{$lang['hint_stpl']}" ></i>
		  </div>
		 </div>
HTML;
	
	
	if( $_GET['page'] != "rules" ) echo <<<HTML
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['static_skin']}</label>
		  <div class="col-md-10">
			{$skinlist}<i class="help-button visible-lg-inline-block text-primary-600 fa fa-question-circle position-right position-left" data-rel="popover" data-html="true" data-trigger="hover" data-placement="auto right" data-content="{$lang['hint_static_skin']}" ></i>
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2">{$lang['stat_allow']}</label>
		  <div class="col-md-10">
			<select name="grouplevel[]" class="cat_select" data-placeholder="{$lang['group_select_1']}" multiple><option value="all" {$check_all}>{$lang['edit_all']}</option>{$groups}</select>
		  </div>
		 </div>
		<div class="form-group">
		  <label class="control-label col-md-2 col-sm-3"></label>
		  <div class="col-md-10 col-sm-9">
			<div class="checkbox"><label><input class="icheck" type="checkbox" id="need_pass" name="need_pass" value="1" onchange="onPassChange(this)" {$check_pass}>{$lang['pass_list_1']}</label></div>
		  </div>
		 </div>
		<div class="form-group" id="passlist" style="display:none;">
		  <label class="control-label col-md-2 col-sm-3">{$lang['pass_list_2']}<div class="text-muted text-size-small">{$lang['pass_list_3']}</div></label>
		  <div class="col-md-10 col-sm-9">
			<textarea dir="auto" rows="5" class="classic width-500" name="password">{$password}</textarea>
		  </div>
		 </div>
HTML;


	
	echo <<<HTML
		<div class="form-group">
		  <label class="control-label col-md-2"></label>
		  <div class="col-md-10">
		    <div class="checkbox"><label><input class="icheck" type="checkbox" name="allow_template" id="allow_template" value="1" {$check_t}>{$lang['st_al_templ']}</label></div>
			<div class="checkbox"><label><input class="icheck" type="checkbox" name="allow_count" id="allow_count" value="1" {$check_c}>{$lang['allow_count']}</label></div>
			{$allow_sitemap}
			{$disable_index}
			<div class="checkbox"><label><input class="icheck" type="checkbox" id="disable_search" name="disable_search" value="1" {$check_ds}>{$lang['cat_d_search']}</label></div>
		  </div>
		 </div>

   </div>
	<div class="panel-footer">
		<button type="submit" class="btn bg-teal btn-sm btn-raised position-left"><i class="fa fa-floppy-o position-left"></i>{$lang['user_save']}</button>
		<button type="button" onclick="preview(); return false;" class="btn bg-slate-600 btn-sm btn-raised position-left"><i class="fa fa-desktop position-left"></i>{$lang['btn_preview']}</button>
		<button type="button" onclick="confirmdelete('{$row['id']}'); return false;" class="btn bg-danger btn-sm btn-raised"><i class="fa fa-desktop position-left"></i>{$lang['edit_dnews']}</button>
	</div>
</div>
</form>
HTML;

	echofooter();
	
} elseif( $action == "dosaveedit" ) {
	
	@header('X-XSS-Protection: 0;');
	
	if( !isset($_REQUEST['user_hash']) OR !$_REQUEST['user_hash'] OR $_REQUEST['user_hash'] != $dle_login_hash ) {
		
		die( "Hacking attempt! User not found" );
	
	}
	
	if( !$_SESSION['static_referrer'] ) {

		$_SESSION['static_referrer'] = "?mod=static&amp;action=list";

	}
	
	$allow_br = isset($_POST['allow_br'])  ? intval( $_POST['allow_br'] ) : 0;
	
	if ($member_id['user_group'] != 1 AND $allow_br > 1 ) $allow_br = 1;

	if ($allow_br == 2) {

		$template = trim( addslashes( $_POST['template'] ) );
		
	} else {

		$parse->allow_code = false;

		$template = $parse->process( $_POST['template'] );
	
		$template = $parse->BB_Parse( $template );

	}
	
	$metatags = create_metatags( $template );
	
	if( isset($_GET['page']) AND $_GET['page'] == "rules" ) {
		
		$name = "dle-rules-page";
	
	} else {
		
		$name = totranslit( $_POST['name'], true, false, $config['translit_url'] );
		
		if( ! count( $_POST['grouplevel'] ) ) $_POST['grouplevel'] = array ("all" );
		$grouplevel = $db->safesql( implode( ',', $_POST['grouplevel'] ) );
	
	}

	$descr = trim( $db->safesql( htmlspecialchars( $_POST['description'], ENT_QUOTES, 'UTF-8' ) ) );
	$disable_index = isset( $_POST['disable_index'] ) ? intval( $_POST['disable_index'] ) : 0;
	$disable_search = isset( $_POST['disable_search'] ) ? intval( $_POST['disable_search'] ) : 0;
	$need_pass = isset( $_POST['need_pass'] ) ? intval( $_POST['need_pass'] ) : 0;
	$template = $db->safesql( $template );
	$allow_template = isset( $_POST['allow_template'] ) ? intval( $_POST['allow_template'] ) : 0;
	$allow_count = isset( $_POST['allow_count'] ) ? intval( $_POST['allow_count'] ) : 0;
	$allow_sitemap = isset( $_POST['allow_sitemap'] ) ? intval( $_POST['allow_sitemap'] ) : 0;
	$tpl = $db->safesql(cleanpath( $_POST['static_tpl'] ));
	$skin_name =  isset( $_POST['skin_name'] ) ? totranslit( $_POST['skin_name'], false, false ) : '';

	if($need_pass AND trim($_POST['password'])) {
		
		$password = $db->safesql(trim($_POST['password']));
		
	} else $password = "";

	$added_time = time();
	$newdate = trim($_POST['newdate']);
	if( isset( $_POST['allow_now'] ) )  $allow_now = $_POST['allow_now']; else $allow_now = "";
	
	if( $newdate ) {
		
        $newsdate = strtotime( $newdate );
		
		if( $allow_now == "yes" ) {
			
			$thistime = $added_time;
			
		} elseif( ($newsdate === - 1) OR !$newsdate ) {
			
				$thistime = $added_time;
				
		} else {

			$thistime = $newsdate;

			if( ! intval( $config['no_date'] ) and $newsdate > $added_time ) {
				$thistime = $added_time;
			}

		}

	} else {
		$thistime = $added_time;
	}
	
	if( isset($_GET['page']) AND $_GET['page'] == "rules" ) {
		
		if( $_POST['id'] ) {
			
			$db->query( "UPDATE " . PREFIX . "_static SET descr='$descr', template='$template', allow_br='$allow_br', allow_template='$allow_template', grouplevel='all', tpl='$tpl', metadescr='{$metatags['description']}', metakeys='{$metatags['keywords']}', template_folder='{$skin_name}', date='{$thistime}', metatitle='{$metatags['title']}', allow_count='{$allow_count}', sitemap='0', disable_index='0', disable_search='{$disable_search}', password='' WHERE name='dle-rules-page'" );

			$db->query( "INSERT INTO " . USERPREFIX . "_admin_logs (name, date, ip, action, extras) values ('".$db->safesql($member_id['name'])."', '{$_TIME}', '{$_IP}', '60', 'dle-rules-page')" );
		
		} else {
			
			$db->query( "INSERT INTO " . PREFIX . "_static (name, descr, template, allow_br, allow_template, grouplevel, tpl, metadescr, metakeys, template_folder, date, metatitle, allow_count, sitemap, disable_index, disable_search, password) values ('$name', '$descr', '$template', '$allow_br', '$allow_template', 'all', '$tpl', '{$metatags['description']}', '{$metatags['keywords']}', '{$skin_name}', '{$thistime}', '{$metatags['title']}', '{$allow_count}', '0', '0', '{$disable_search}', '')" );
			$row = $db->insert_id();
			$db->query( "UPDATE " . PREFIX . "_static_files SET static_id='{$row}' WHERE author = '{$member_id['name']}' AND static_id = '0'" );
		
		}
		
		$full_link = DLEUrl::BuildUrl('rules', []);

		if( $config['news_indexnow'] ) {
			
			$result = DLESEO::IndexNow( $full_link );
			
			if( $result !== true ) {
				
				$lang['indexnow_error_1'] = str_ireplace('{name}', md5(SECURE_AUTH_KEY), $lang['indexnow_error_1']);
				$lang['indexnow_error_2'] = str_ireplace('{name}', md5(SECURE_AUTH_KEY), $lang['indexnow_error_2']);
		
				if( $result === null ) $result = $lang['indexnow_error_1'];
				elseif( $result === -1 ) $result = $lang['indexnow_error_2'];
				elseif( is_array($result) ) {
					
					$lang['indexnow_error_3'] = str_ireplace('{searchengine}', $result[0], $lang['indexnow_error_3']);
					$lang['indexnow_error_3'] = str_ireplace('{errorcode}',    $result[1], $lang['indexnow_error_3']);
					
					$result = $lang['indexnow_error_3'];
				}
				
				$result = "<div class=\"alert alert-warning alert-styled-left alert-arrow-left text-left\">".$result."</div>";
				
			} else $result = ''; 
	
		} else $result = '';
	
		msg( "success", $lang['rules_ok'], $lang['rules_ok'].$result, array( '?mod=static&action=doedit&page=rules' => $lang['add_s_4'], $full_link => $lang['add_s_5'] )  );
	
	} else {
		
		$id = intval( $_GET['id'] );

		if( $name == "" or $descr == "" or $template == "" ) msg( "error", $lang['static_err'], $lang['static_err_1'], $_SESSION['static_referrer'] );

		$static_count = $db->super_query( "SELECT COUNT(*) as count FROM " . PREFIX . "_static WHERE name='$name' AND id != '$id'" );
	
		if ($static_count['count']) msg( "error", $lang['static_err'], $lang['static_err_2'], $_SESSION['static_referrer'] );

		$db->query( "UPDATE " . PREFIX . "_static SET name='$name', descr='$descr', template='$template', allow_br='$allow_br', allow_template='$allow_template', grouplevel='$grouplevel', tpl='$tpl', metadescr='{$metatags['description']}', metakeys='{$metatags['keywords']}', template_folder='{$skin_name}', date='{$thistime}', metatitle='{$metatags['title']}', allow_count='{$allow_count}', sitemap='{$allow_sitemap}', disable_index='$disable_index', disable_search='{$disable_search}', password='{$password}' WHERE id='$id'" );

		$db->query( "INSERT INTO " . USERPREFIX . "_admin_logs (name, date, ip, action, extras) values ('".$db->safesql($member_id['name'])."', '{$_TIME}', '{$_IP}', '60', '{$name}')" );

		$full_link = DLEUrl::BuildUrl('static', ['page' => $name]);

		if( $config['news_indexnow'] ) {
			
			$result = DLESEO::IndexNow( $full_link );
			
			if( $result !== true ) {
				
				$lang['indexnow_error_1'] = str_ireplace('{name}', md5(SECURE_AUTH_KEY), $lang['indexnow_error_1']);
				$lang['indexnow_error_2'] = str_ireplace('{name}', md5(SECURE_AUTH_KEY), $lang['indexnow_error_2']);
		
				if( $result === null ) $result = $lang['indexnow_error_1'];
				elseif( $result === -1 ) $result = $lang['indexnow_error_2'];
				elseif( is_array($result) ) {
					
					$lang['indexnow_error_3'] = str_ireplace('{searchengine}', $result[0], $lang['indexnow_error_3']);
					$lang['indexnow_error_3'] = str_ireplace('{errorcode}',    $result[1], $lang['indexnow_error_3']);
					
					$result = $lang['indexnow_error_3'];
				}
				
				$result = "<div class=\"alert alert-warning alert-styled-left alert-arrow-left text-left\">".$result."</div>";
				
			} else $result = ''; 
	
		} else $result = '';
		
		msg( "success", $lang['static_addok'], $lang['static_addok_1'].$result, array( $_SESSION['static_referrer'] => $lang['add_s_3'], '?mod=static&action=doedit&id='.$id => $lang['add_s_4'], $full_link => $lang['add_s_5'] ) );
	
	}
	

} elseif( $action == "dodelete" ) {
	
	if( !isset($_REQUEST['user_hash']) OR !$_REQUEST['user_hash'] OR $_REQUEST['user_hash'] != $dle_login_hash ) {
		
		die( "Hacking attempt! User not found" );
	
	}

	if( !$_SESSION['static_referrer'] ) {

		$_SESSION['static_referrer'] = "?mod=static&amp;action=list";

	}

	$id = intval( $_GET['id'] );
	DLEFiles::init();
	
	$db->query( "DELETE FROM " . PREFIX . "_static WHERE id='$id'" );
	
	$db->query( "SELECT * FROM " . PREFIX . "_static_files WHERE static_id = '$id'" );
	
	while ( $row = $db->get_row() ) {
		
		if( $row['onserver'] ) {
				
			if( trim($row['onserver']) == ".htaccess") die("Hacking attempt!");
			
			if( $row['is_public'] ) $uploaded_path = 'public_files/'; else $uploaded_path = 'files/';

			DLEFiles::Delete( $uploaded_path.$row['onserver'], $row['driver'] );
		
		} else {
			
			$dataimage = get_uploaded_image_info( $row['name'] );
		
			DLEFiles::Delete( "posts/" . $dataimage->path, $row['driver'] );

			if ($dataimage->hidpi) {
				DLEFiles::Delete("posts/{$dataimage->folder}/{$dataimage->hidpi}", $row['driver']);
			}

			if( $dataimage->thumb ) {
				
				DLEFiles::Delete( "posts/{$dataimage->folder}/thumbs/{$dataimage->name}", $row['driver'] );

				if ($dataimage->hidpi) {
					DLEFiles::Delete("posts/{$dataimage->folder}/thumbs/{$dataimage->hidpi}", $row['driver']);
				}

			}
			
			if( $dataimage->medium ) {
				
				DLEFiles::Delete( "posts/{$dataimage->folder}/medium/{$dataimage->name}", $row['driver'] );
				
				if ($dataimage->hidpi) {
					DLEFiles::Delete("posts/{$dataimage->folder}/medium/{$dataimage->hidpi}", $row['driver']);
				}

			}
		}
	
	}
	
	$db->query( "DELETE FROM " . PREFIX . "_static_files WHERE static_id = '$id'" );
	
	msg( "success", $lang['static_del'], $lang['static_del_1'], $_SESSION['static_referrer'] );

}
?>