delete selected items
This commit is contained in:
		| @@ -114,6 +114,8 @@ function conversation(&$a, $items, $mode, $update) { | |||||||
| 	$noshare_tpl = get_markup_template('like_noshare.tpl'); | 	$noshare_tpl = get_markup_template('like_noshare.tpl'); | ||||||
| 	$tpl         = get_markup_template('wall_item.tpl'); | 	$tpl         = get_markup_template('wall_item.tpl'); | ||||||
| 	$wallwall    = get_markup_template('wallwall_item.tpl'); | 	$wallwall    = get_markup_template('wallwall_item.tpl'); | ||||||
|  | 	$droptpl     = get_markup_template('wall_item_drop.tpl'); | ||||||
|  | 	$fakedrop    = get_markup_template('wall_fake_drop.tpl'); | ||||||
|  |  | ||||||
| 	$alike = array(); | 	$alike = array(); | ||||||
| 	$dlike = array(); | 	$dlike = array(); | ||||||
| @@ -126,7 +128,6 @@ function conversation(&$a, $items, $mode, $update) { | |||||||
| 			// - just loop through the items and format them minimally for display | 			// - just loop through the items and format them minimally for display | ||||||
|  |  | ||||||
| 			$tpl = get_markup_template('search_item.tpl'); | 			$tpl = get_markup_template('search_item.tpl'); | ||||||
| 			$droptpl = get_markup_template('wall_fake_drop.tpl'); |  | ||||||
|  |  | ||||||
| 			foreach($items as $item) { | 			foreach($items as $item) { | ||||||
|  |  | ||||||
| @@ -171,14 +172,7 @@ function conversation(&$a, $items, $mode, $update) { | |||||||
| 				} | 				} | ||||||
|  |  | ||||||
| 				$drop = ''; | 				$drop = ''; | ||||||
| 				$dropping = false; |  | ||||||
|  |  | ||||||
| 				if((intval($item['contact-id']) && $item['contact-id'] == remote_user()) || ($item['uid'] == local_user())) |  | ||||||
| 					$dropping = true; |  | ||||||
|  |  | ||||||
| 	            $drop = replace_macros((($dropping)? $droptpl : $fakedrop), array('$id' => $item['id'], '$delete' => t('Delete'))); |  | ||||||
|  |  | ||||||
| 				//  |  | ||||||
| 				localize_item($item); | 				localize_item($item); | ||||||
|  |  | ||||||
| 				$drop = replace_macros($droptpl,array('$id' => $item['id'])); | 				$drop = replace_macros($droptpl,array('$id' => $item['id'])); | ||||||
| @@ -390,7 +384,16 @@ function conversation(&$a, $items, $mode, $update) { | |||||||
| 					? '<a class="editpost" href="' . $a->get_baseurl() . '/editpost/' . $item['id']  | 					? '<a class="editpost" href="' . $a->get_baseurl() . '/editpost/' . $item['id']  | ||||||
| 						. '" title="' . t('Edit') . '"><img src="images/pencil.gif" /></a>' | 						. '" title="' . t('Edit') . '"><img src="images/pencil.gif" /></a>' | ||||||
| 					: ''); | 					: ''); | ||||||
| 			$drop = replace_macros(get_markup_template('wall_item_drop.tpl'), array('$id' => $item['id'], '$delete' => t('Delete'))); |  | ||||||
|  |  | ||||||
|  | 			$drop = ''; | ||||||
|  | 			$dropping = false; | ||||||
|  |  | ||||||
|  | 			if((intval($item['contact-id']) && $item['contact-id'] == remote_user()) || ($item['uid'] == local_user())) | ||||||
|  | 				$dropping = true; | ||||||
|  |  | ||||||
|  |             $drop = replace_macros((($dropping)? $droptpl : $fakedrop), array('$id' => $item['id'], '$delete' => t('Delete'))); | ||||||
|  |  | ||||||
|  |  | ||||||
| 			$photo = $item['photo']; | 			$photo = $item['photo']; | ||||||
| 			$thumb = $item['thumb']; | 			$thumb = $item['thumb']; | ||||||
| @@ -477,6 +480,7 @@ function conversation(&$a, $items, $mode, $update) { | |||||||
| 				'$comment' => $comment | 				'$comment' => $comment | ||||||
| 			)); | 			)); | ||||||
|  |  | ||||||
|  |  | ||||||
| 			$arr = array('item' => $item, 'output' => $tmp_item); | 			$arr = array('item' => $item, 'output' => $tmp_item); | ||||||
| 			call_hooks('display_item', $arr); | 			call_hooks('display_item', $arr); | ||||||
|  |  | ||||||
| @@ -491,6 +495,9 @@ function conversation(&$a, $items, $mode, $update) { | |||||||
| 	if($blowhard_count >= 3) | 	if($blowhard_count >= 3) | ||||||
| 		$o .= '</div>'; | 		$o .= '</div>'; | ||||||
|  |  | ||||||
|  | 	if($dropping) | ||||||
|  | 		$o .= '<div id="item-delete-selected" class="fakelink" onclick="deleteCheckedItems();"><div id="item-delete-selected-icon" class="icon drophide" title="' . t('Delete Selected Items') . '" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></div><div id="item-delete-selected-desc" >' .  t('Delete Selected Items') . '</div></div><div id="item-delete-selected-end"></div>'; | ||||||
|  |  | ||||||
| 	return $o; | 	return $o; | ||||||
| }  | }  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1772,3 +1772,129 @@ function item_expire($uid,$days) { | |||||||
|  |  | ||||||
| } | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | function drop_items($items) { | ||||||
|  | 	$uid = 0; | ||||||
|  |  | ||||||
|  | 	if(count($items)) { | ||||||
|  | 		foreach($items as $item) { | ||||||
|  | 			$owner = drop_item($item,false); | ||||||
|  | 			if($owner && ! $uid) | ||||||
|  | 				$uid = $owner; | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	// multiple threads may have been deleted, send an expire notification | ||||||
|  |  | ||||||
|  | 	if($uid) | ||||||
|  | 		proc_run('php',"include/notifier.php","expire","$uid"); | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | function drop_item($id,$interactive = true) { | ||||||
|  |  | ||||||
|  | 	$a = get_app(); | ||||||
|  |  | ||||||
|  | 	// locate item to be deleted | ||||||
|  |  | ||||||
|  | 	$r = q("SELECT * FROM `item` WHERE `id` = %d LIMIT 1", | ||||||
|  | 		intval($id) | ||||||
|  | 	); | ||||||
|  |  | ||||||
|  | 	if(! count($r)) { | ||||||
|  | 		if(! $interactive) | ||||||
|  | 			return 0; | ||||||
|  | 		notice( t('Item not found.') . EOL); | ||||||
|  | 		goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	$item = $r[0]; | ||||||
|  |  | ||||||
|  | 	$owner = $item['uid']; | ||||||
|  |  | ||||||
|  | 	// check if logged in user is either the author or owner of this item | ||||||
|  |  | ||||||
|  | 	if((local_user() == $item['uid']) || (remote_user() == $item['contact-id'])) { | ||||||
|  |  | ||||||
|  | 		// delete the item | ||||||
|  |  | ||||||
|  | 		$r = q("UPDATE `item` SET `deleted` = 1, `body` = '', `edited` = '%s', `changed` = '%s' WHERE `id` = %d LIMIT 1", | ||||||
|  | 			dbesc(datetime_convert()), | ||||||
|  | 			dbesc(datetime_convert()), | ||||||
|  | 			intval($item['id']) | ||||||
|  | 		); | ||||||
|  |  | ||||||
|  | 		// If item is a link to a photo resource, nuke all the associated photos  | ||||||
|  | 		// (visitors will not have photo resources) | ||||||
|  | 		// This only applies to photos uploaded from the photos page. Photos inserted into a post do not | ||||||
|  | 		// generate a resource-id and therefore aren't intimately linked to the item.  | ||||||
|  |  | ||||||
|  | 		if(strlen($item['resource-id'])) { | ||||||
|  | 			q("DELETE FROM `photo` WHERE `resource-id` = '%s' AND `uid` = %d ", | ||||||
|  | 				dbesc($item['resource-id']), | ||||||
|  | 				intval($item['uid']) | ||||||
|  | 			); | ||||||
|  | 			// ignore the result | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  | 		// If item is a link to an event, nuke the event record. | ||||||
|  |  | ||||||
|  | 		if(intval($item['event-id'])) { | ||||||
|  | 			q("DELETE FROM `event` WHERE `id` = %d AND `uid` = %d LIMIT 1", | ||||||
|  | 				intval($item['event-id']), | ||||||
|  | 				intval($item['uid']) | ||||||
|  | 			); | ||||||
|  | 			// ignore the result | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  |  | ||||||
|  | 		// If it's the parent of a comment thread, kill all the kids | ||||||
|  |  | ||||||
|  | 		if($item['uri'] == $item['parent-uri']) { | ||||||
|  | 			$r = q("UPDATE `item` SET `deleted` = 1, `edited` = '%s', `changed` = '%s', `body` = ''  | ||||||
|  | 				WHERE `parent-uri` = '%s' AND `uid` = %d ", | ||||||
|  | 				dbesc(datetime_convert()), | ||||||
|  | 				dbesc(datetime_convert()), | ||||||
|  | 				dbesc($item['parent-uri']), | ||||||
|  | 				intval($item['uid']) | ||||||
|  | 			); | ||||||
|  | 			// ignore the result | ||||||
|  | 		} | ||||||
|  | 		else { | ||||||
|  | 			// ensure that last-child is set in case the comment that had it just got wiped. | ||||||
|  | 			q("UPDATE `item` SET `last-child` = 0, `changed` = '%s' WHERE `parent-uri` = '%s' AND `uid` = %d ", | ||||||
|  | 				dbesc(datetime_convert()), | ||||||
|  | 				dbesc($item['parent-uri']), | ||||||
|  | 				intval($item['uid']) | ||||||
|  | 			); | ||||||
|  | 			// who is the last child now?  | ||||||
|  | 			$r = q("SELECT `id` FROM `item` WHERE `parent-uri` = '%s' AND `type` != 'activity' AND `deleted` = 0 AND `uid` = %d ORDER BY `edited` DESC LIMIT 1", | ||||||
|  | 				dbesc($item['parent-uri']), | ||||||
|  | 				intval($item['uid']) | ||||||
|  | 			); | ||||||
|  | 			if(count($r)) { | ||||||
|  | 				q("UPDATE `item` SET `last-child` = 1 WHERE `id` = %d LIMIT 1", | ||||||
|  | 					intval($r[0]['id']) | ||||||
|  | 				); | ||||||
|  | 			}	 | ||||||
|  | 		} | ||||||
|  | 		$drop_id = intval($item['id']); | ||||||
|  | 			 | ||||||
|  | 		// send the notification upstream/downstream as the case may be | ||||||
|  |  | ||||||
|  | 		if(! $interactive) | ||||||
|  | 			return $owner; | ||||||
|  |  | ||||||
|  | 		proc_run('php',"include/notifier.php","drop","$drop_id"); | ||||||
|  | 		goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); | ||||||
|  | 		//NOTREACHED | ||||||
|  | 	} | ||||||
|  | 	else { | ||||||
|  | 		if(! $interactive) | ||||||
|  | 			return 0; | ||||||
|  | 		notice( t('Permission denied.') . EOL); | ||||||
|  | 		goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); | ||||||
|  | 		//NOTREACHED | ||||||
|  | 	} | ||||||
|  | 	 | ||||||
|  | } | ||||||
| @@ -47,26 +47,6 @@ | |||||||
| 					$('#pause').html(''); | 					$('#pause').html(''); | ||||||
| 				} | 				} | ||||||
| 			} | 			} | ||||||
| //			// F8 - show/hide language selector |  | ||||||
| //			if(event.keyCode == '119') { |  | ||||||
| //				if(langSelect) { |  | ||||||
| //					langSelect = false; |  | ||||||
| //					$('#language-selector').hide(); |  | ||||||
| //				} |  | ||||||
| //				else { |  | ||||||
| //					langSelect = true; |  | ||||||
| //					$('#language-selector').show(); |  | ||||||
| //				} |  | ||||||
| //			}		 |  | ||||||
| // |  | ||||||
| // this is shift-home on FF, but $ on IE, disabling until I figure out why the diff. |  | ||||||
| // update: incompatible usage of onKeyDown vs onKeyPress |  | ||||||
| //			if(event.keyCode == '36' && event.shiftKey == true) { |  | ||||||
| //				if(homebase !== undefined) { |  | ||||||
| //					event.preventDefault(); |  | ||||||
| //					document.location = homebase; |  | ||||||
| //				} |  | ||||||
| //			} |  | ||||||
| 		});					 | 		});					 | ||||||
| 	}); | 	}); | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										105
									
								
								mod/item.php
									
									
									
									
									
								
							
							
						
						
									
										105
									
								
								mod/item.php
									
									
									
									
									
								
							| @@ -22,6 +22,13 @@ function item_post(&$a) { | |||||||
|  |  | ||||||
| 	$uid = local_user(); | 	$uid = local_user(); | ||||||
|  |  | ||||||
|  | 	if(x($_POST,'dropitems')) { | ||||||
|  | 		require_once('include/items.php'); | ||||||
|  | 		$arr_drop = explode(',',$_POST['dropitems']); | ||||||
|  | 		drop_items($arr_drop); | ||||||
|  | 		killme(); | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	call_hooks('post_local_start', $_POST); | 	call_hooks('post_local_start', $_POST); | ||||||
|  |  | ||||||
| 	$parent = ((x($_POST,'parent')) ? intval($_POST['parent']) : 0); | 	$parent = ((x($_POST,'parent')) ? intval($_POST['parent']) : 0); | ||||||
| @@ -735,102 +742,8 @@ function item_content(&$a) { | |||||||
|  |  | ||||||
| 	require_once('include/security.php'); | 	require_once('include/security.php'); | ||||||
|  |  | ||||||
| 	$uid = local_user(); |  | ||||||
|  |  | ||||||
| 	if(($a->argc == 3) && ($a->argv[1] === 'drop') && intval($a->argv[2])) { | 	if(($a->argc == 3) && ($a->argv[1] === 'drop') && intval($a->argv[2])) { | ||||||
|  | 		require_once('include/items.php'); | ||||||
| 		// locate item to be deleted | 		drop_item($a->argv[2]); | ||||||
|  |  | ||||||
| 		$r = q("SELECT * FROM `item` WHERE `id` = %d LIMIT 1", |  | ||||||
| 			intval($a->argv[2]) |  | ||||||
| 		); |  | ||||||
|  |  | ||||||
| 		if(! count($r)) { |  | ||||||
| 			notice( t('Item not found.') . EOL); |  | ||||||
| 			goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); |  | ||||||
| 		} |  | ||||||
| 		$item = $r[0]; |  | ||||||
|  |  | ||||||
| 		// check if logged in user is either the author or owner of this item |  | ||||||
|  |  | ||||||
| 		if(($_SESSION['visitor_id'] == $item['contact-id']) || ($_SESSION['uid'] == $item['uid'])) { |  | ||||||
|  |  | ||||||
| 			// delete the item |  | ||||||
|  |  | ||||||
| 			$r = q("UPDATE `item` SET `deleted` = 1, `body` = '', `edited` = '%s', `changed` = '%s' WHERE `id` = %d LIMIT 1", |  | ||||||
| 				dbesc(datetime_convert()), |  | ||||||
| 				dbesc(datetime_convert()), |  | ||||||
| 				intval($item['id']) |  | ||||||
| 			); |  | ||||||
|  |  | ||||||
| 			// If item is a link to a photo resource, nuke all the associated photos  |  | ||||||
| 			// (visitors will not have photo resources) |  | ||||||
| 			// This only applies to photos uploaded from the photos page. Photos inserted into a post do not |  | ||||||
| 			// generate a resource-id and therefore aren't intimately linked to the item.  |  | ||||||
|  |  | ||||||
| 			if(strlen($item['resource-id'])) { |  | ||||||
| 				q("DELETE FROM `photo` WHERE `resource-id` = '%s' AND `uid` = %d ", |  | ||||||
| 					dbesc($item['resource-id']), |  | ||||||
| 					intval($item['uid']) |  | ||||||
| 				); |  | ||||||
| 				// ignore the result |  | ||||||
| 			} |  | ||||||
|  |  | ||||||
| 			// If item is a link to an event, nuke the event record. |  | ||||||
|  |  | ||||||
| 			if(intval($item['event-id'])) { |  | ||||||
| 				q("DELETE FROM `event` WHERE `id` = %d AND `uid` = %d LIMIT 1", |  | ||||||
| 					intval($item['event-id']), |  | ||||||
| 					intval($item['uid']) |  | ||||||
| 				); |  | ||||||
| 				// ignore the result |  | ||||||
| 			} |  | ||||||
|  |  | ||||||
|  |  | ||||||
| 			// If it's the parent of a comment thread, kill all the kids |  | ||||||
|  |  | ||||||
| 			if($item['uri'] == $item['parent-uri']) { |  | ||||||
| 				$r = q("UPDATE `item` SET `deleted` = 1, `edited` = '%s', `changed` = '%s', `body` = ''  |  | ||||||
| 					WHERE `parent-uri` = '%s' AND `uid` = %d ", |  | ||||||
| 					dbesc(datetime_convert()), |  | ||||||
| 					dbesc(datetime_convert()), |  | ||||||
| 					dbesc($item['parent-uri']), |  | ||||||
| 					intval($item['uid']) |  | ||||||
| 				); |  | ||||||
| 				// ignore the result |  | ||||||
| 			} |  | ||||||
| 			else { |  | ||||||
| 				// ensure that last-child is set in case the comment that had it just got wiped. |  | ||||||
| 				q("UPDATE `item` SET `last-child` = 0, `changed` = '%s' WHERE `parent-uri` = '%s' AND `uid` = %d ", |  | ||||||
| 					dbesc(datetime_convert()), |  | ||||||
| 					dbesc($item['parent-uri']), |  | ||||||
| 					intval($item['uid']) |  | ||||||
| 				); |  | ||||||
| 				// who is the last child now?  |  | ||||||
| 				$r = q("SELECT `id` FROM `item` WHERE `parent-uri` = '%s' AND `type` != 'activity' AND `deleted` = 0 AND `uid` = %d ORDER BY `edited` DESC LIMIT 1", |  | ||||||
| 					dbesc($item['parent-uri']), |  | ||||||
| 					intval($item['uid']) |  | ||||||
| 				); |  | ||||||
| 				if(count($r)) { |  | ||||||
| 					q("UPDATE `item` SET `last-child` = 1 WHERE `id` = %d LIMIT 1", |  | ||||||
| 						intval($r[0]['id']) |  | ||||||
| 					); |  | ||||||
| 				}	 |  | ||||||
| 			} |  | ||||||
| 			$drop_id = intval($item['id']); |  | ||||||
| 			 |  | ||||||
| 			// send the notification upstream/downstream as the case may be |  | ||||||
|  |  | ||||||
| 			proc_run('php',"include/notifier.php","drop","$drop_id"); |  | ||||||
| // We seem to lose the return url occasionally. Have not been able to reliably duplicate |  | ||||||
| //			logger('drop_return_url: ' . $_SESSION['return_url']); |  | ||||||
| 			goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); |  | ||||||
| 			//NOTREACHED |  | ||||||
| 		} |  | ||||||
| 		else { |  | ||||||
| 			notice( t('Permission denied.') . EOL); |  | ||||||
| 			goaway($a->get_baseurl() . '/' . $_SESSION['return_url']); |  | ||||||
| 			//NOTREACHED |  | ||||||
| 		} |  | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1274,7 +1274,7 @@ function photos_content(&$a) { | |||||||
| 					$drop = ''; | 					$drop = ''; | ||||||
|  |  | ||||||
| 					if(($item['contact-id'] == remote_user()) || ($item['uid'] == local_user())) | 					if(($item['contact-id'] == remote_user()) || ($item['uid'] == local_user())) | ||||||
| 						$drop = replace_macros(get_markup_template('wall_item_drop.tpl'), array('$id' => $item['id'], '$delete' => t('Delete'))); | 						$drop = replace_macros(get_markup_template('photo_drop.tpl'), array('$id' => $item['id'], '$delete' => t('Delete'))); | ||||||
|  |  | ||||||
|  |  | ||||||
| 					$comments .= replace_macros($template,array( | 					$comments .= replace_macros($template,array( | ||||||
|   | |||||||
| @@ -261,11 +261,8 @@ function profile_content(&$a, $update = 0) { | |||||||
| 	if($is_owner && ! $update) | 	if($is_owner && ! $update) | ||||||
| 		$o .= get_birthdays(); | 		$o .= get_birthdays(); | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
| 	$o .= conversation($a,$r,'profile',$update); | 	$o .= conversation($a,$r,'profile',$update); | ||||||
|  |  | ||||||
|  |  | ||||||
| 	if(! $update) { | 	if(! $update) { | ||||||
| 		 | 		 | ||||||
| 		$o .= paginate($a); | 		$o .= paginate($a); | ||||||
|   | |||||||
| @@ -109,6 +109,22 @@ tinyMCE.init({ | |||||||
|  |  | ||||||
| 	}); | 	}); | ||||||
|  |  | ||||||
|  | 	function deleteCheckedItems() { | ||||||
|  | 		var checkedstr = ''; | ||||||
|  |  | ||||||
|  | 		$('.item-select').each( function() { | ||||||
|  | 			if($(this).is(':checked')) { | ||||||
|  | 				if(checkedstr.length != 0) | ||||||
|  | 					checkedstr = checkedstr + ',' + $(this).val(); | ||||||
|  | 				else | ||||||
|  | 					checkedstr = $(this).val(); | ||||||
|  | 			}	 | ||||||
|  | 		}); | ||||||
|  | 		$.post('item', { dropitems: checkedstr }); | ||||||
|  | 		window.location.reload(); | ||||||
|  |  | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	function jotGetLink() { | 	function jotGetLink() { | ||||||
| 		reply = prompt("$linkurl"); | 		reply = prompt("$linkurl"); | ||||||
| 		if(reply && reply.length) { | 		if(reply && reply.length) { | ||||||
|   | |||||||
							
								
								
									
										4
									
								
								view/photo_drop.tpl
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								view/photo_drop.tpl
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" > | ||||||
|  | 	<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drophide" title="$delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a> | ||||||
|  | </div> | ||||||
|  | <div class="wall-item-delete-end"></div> | ||||||
| @@ -2489,8 +2489,32 @@ a.mail-list-link { | |||||||
| 	margin-top: 10px; | 	margin-top: 10px; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | .item-select { | ||||||
|  | 	opacity: 0.3; | ||||||
|  | 	filter:alpha(opacity=30); | ||||||
|  | 	float: right; | ||||||
|  | 	margin-right: 10px; | ||||||
|  |  | ||||||
|  | } | ||||||
|  | .item-select:hover { | ||||||
|  | 	opacity: 1; | ||||||
|  | 	filter:alpha(opacity=100); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #item-delete-selected { | ||||||
|  | 	margin-top: 30px; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #item-delete-selected-end { | ||||||
|  | 	clear: both; | ||||||
|  | } | ||||||
|  | #item-delete-selected-icon, #item-delete-selected-desc { | ||||||
|  | 	float: left; | ||||||
|  | 	margin-right: 5px; | ||||||
|  | } | ||||||
|  | #item-delete-selected-desc:hover { | ||||||
|  | 	text-decoration: underline; | ||||||
|  | } | ||||||
|  |  | ||||||
| #lang-select-icon { | #lang-select-icon { | ||||||
| 	cursor: pointer; | 	cursor: pointer; | ||||||
|   | |||||||
| @@ -2518,6 +2518,33 @@ a.mail-list-link { | |||||||
| } | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | .item-select { | ||||||
|  | 	opacity: 0.3; | ||||||
|  | 	filter:alpha(opacity=30); | ||||||
|  | 	float: right; | ||||||
|  | 	margin-right: 10px; | ||||||
|  |  | ||||||
|  | } | ||||||
|  | .item-select:hover { | ||||||
|  | 	opacity: 1; | ||||||
|  | 	filter:alpha(opacity=100); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #item-delete-selected { | ||||||
|  | 	margin-top: 30px; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | #item-delete-selected-end { | ||||||
|  | 	clear: both; | ||||||
|  | } | ||||||
|  | #item-delete-selected-icon, #item-delete-selected-desc { | ||||||
|  | 	float: left; | ||||||
|  | 	margin-right: 5px; | ||||||
|  | } | ||||||
|  | #item-delete-selected-desc:hover { | ||||||
|  | 	text-decoration: underline; | ||||||
|  | } | ||||||
|  |  | ||||||
| #lang-select-icon { | #lang-select-icon { | ||||||
| 	cursor: pointer; | 	cursor: pointer; | ||||||
| 	position: absolute; | 	position: absolute; | ||||||
|   | |||||||
| @@ -1,4 +1,6 @@ | |||||||
| <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" > | <div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$id" > | ||||||
|  | 	 | ||||||
| 	<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drophide" title="$delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a> | 	<a href="item/drop/$id" onclick="return confirmDelete();" class="icon drophide" title="$delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a> | ||||||
| </div> | </div> | ||||||
|  | <input type="checkbox" class="item-select" name="itemselected[]" value="$id" /> | ||||||
| <div class="wall-item-delete-end"></div> | <div class="wall-item-delete-end"></div> | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user