СКР - Решение сортировки

второй вариант

by Denis Tverdokhlebov

HTML

<div id="object">
	<table id="table_all">
		<tbody>
			<tr>
				<td>
					<p>Текст</p>
				</td>
			</tr>
			<tr>
				<td id="#">
					<table>
						<tbody>
							<tr class="класс_1" valign="top">
								<td>
									<p>Заголовок</p>
								</td>
							</tr>
							<tr>
								<td>
									<td id="wrapp_rotate">
                  <table id="block">
										<tbody>
											<!-- список для ротации -->
											<tr>
												<td>
													<table>
														<tbody>
															<tr class="kat_pls">
																<td class="name" align="left">
																	<a class="links">Название</a>
																</td>
																<td id="date" class="date">
																	<p align="left" class="check_date check_1">Дата: 2015-07-15</p>
																</td>
																<td class="kat">
																	<font color="green"><b class="kat_pls">КАТЕГОРИЯ +</b></font>
																</td>
																<td class="icon" align="right">
																	<span id="namber"><img class="img_play status_on" title="1" src="/images/Play.png"></span>
																</td>
															</tr>
														</tbody>
													</table>
												</td>
											</tr>

											<tr>
												<td>
													<table>
														<tbody>
															<tr class="kat_min">
																<td class="name" align="left">
																	<a class="links">Название</a>
																</td>
																<td id="date" class="date">
																	<p align="left" class="check_date check_1">Дата: 2015-07-15</p>
																</td>
																<td class="kat">
																	<font color="red"><b class="kat_min">КАТЕГОРИЯ -</b></font>
																</td>
																<td class="icon" align="right">
																	<span id="namber"><img class="img_play status_on" title="1" src="/images/Play.png"></span>
																</td>
															</tr>
														</tbody>
													</table>
												</td>
											</tr>
       ...

JavaScript

<!-- Необходимо решить задачу по сорировке замороченным способом минимум в 50 строк  -->
var c = document.querySelector("#block");
Array.apply(null,document.querySelectorAll("#wrapp_rotate tr"))
.sort(function(a, b) {
    a = a.classList;
    a = a.contains('kat_pls') ? -1 : a.contains('kat_min') ? 0 : 1;
    b = b.classList;
    b = b.contains('kat_pls') ? -1 : b.contains('kat_min') ? 0 : 1;
    return a < b ? -1 : a > b ? 1 : 0
})
.forEach(function(a) {
    c.appendChild(a)
});