Advertisement
Guest User

Untitled

a guest
Aug 19th, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.74 KB | None | 0 0
  1. function (data) {
  2. /*
  3. * Añadimos la información obtenida (data) dentro del contenedor (#contenedor-catalogo).
  4. */
  5. $("#contenedor-catalogo").append(data);
  6. console.log(data);
  7.  
  8. viewModel.lastLoadedPage(viewModel.currentPage());
  9. }
  10.  
  11. <div id="here">
  12. <div class="container animated fadeIn">
  13.  
  14. <!--Inicia sección menú de ordenación-->
  15. <ul class="list-inline order-items" style="margin:10px;">
  16. @{ var defaultType = "btn-default";
  17. var selectedType = "btn-primary";
  18. var auxType = defaultType;
  19. }
  20. <li><span>Ordenar por:</span></li>
  21. <li>
  22. @Ajax.ActionLink("Nombre", "Index", "Productos", new { orderby = "name", pagenumber = 0, category = @ViewBag.Category, keywords = @ViewBag.Keywords, orderType = @ViewBag.orderType, MostrarImagen = @TempData["MostrarImagen"] }, new AjaxOptions { LoadingElementId = "loading-container", HttpMethod = "POST", UpdateTargetId = "here", OnSuccess = "loadImages()", InsertionMode = InsertionMode.Replace }, new { @class = "btn " + ((ViewBag.OrderBy != null && ViewBag.OrderBy != "" && ViewBag.OrderBy != "name") ? defaultType : selectedType) + " btn-xs js-data-order btn-order _default", @data_order_id = "name" })
  23. </li>
  24. <li>
  25. @Ajax.ActionLink("Categoría", "Index", "Productos", new { orderby = "category", pagenumber = 0, category = @ViewBag.Category, keywords = @ViewBag.Keywords, orderType = @ViewBag.orderType, MostrarImagen = @TempData["MostrarImagen"] }, new AjaxOptions { LoadingElementId = "loading-container", HttpMethod = "POST", UpdateTargetId = "here", OnSuccess = "loadImages()", InsertionMode = InsertionMode.Replace }, new { @class = "btn " + ((ViewBag.OrderBy == null) ? defaultType : (ViewBag.OrderBy == "category") ? selectedType : defaultType) + " btn-xs js-data-order btn-order", @data_order_id = "category" })
  26. </li>
  27. <li>
  28. @Ajax.ActionLink("Precio", "Index", "Productos", new { orderby = "price", pagenumber = 0, category = @ViewBag.Category, keywords = @ViewBag.Keywords, orderType = @ViewBag.orderType, MostrarImagen = @TempData["MostrarImagen"] }, new AjaxOptions { LoadingElementId = "loading-container", HttpMethod = "POST", UpdateTargetId = "here", OnSuccess = "loadImages()", InsertionMode = InsertionMode.Replace }, new { @class = "btn " + ((ViewBag.OrderBy == null) ? defaultType : (ViewBag.OrderBy == "price") ? selectedType : defaultType) + " btn-xs js-data-order btn-order", @data_order_id = "price" })
  29. </li>
  30. @Html.Hidden("OrderBy", (object)ViewBag.OrderBy)
  31. @Html.Hidden("OrderType", (object)ViewBag.orderType)
  32. <li><span>Modo:</span></li>
  33. <li>
  34. @{ auxType = (@ViewBag.orderType == "" || @ViewBag.orderType.ToLower() == "asc") ? selectedType : defaultType; }
  35. @Ajax.ActionLink("asc", "Index", "Productos", new { orderby = @ViewBag.OrderBy, pagenumber = 0, category = @ViewBag.Category, keywords = @ViewBag.Keywords, orderType = "asc", MostrarImagen = @TempData["MostrarImagen"] }, new AjaxOptions { HttpMethod = "POST", UpdateTargetId = "here", InsertionMode = InsertionMode.Replace }, new { @class = "btn " + auxType + " btn-xs btn-ordertype _default" })
  36. <!--<a class="btn @auxType btn-xs btn-ordertype _default" data-ordertype-id="Asc" href="#">Asc</a>-->
  37.  
  38. @{ auxType = (@ViewBag.orderType.ToLower() == "desc") ? selectedType : defaultType; }
  39. @Ajax.ActionLink("desc", "Index", "Productos", new { orderby = @ViewBag.OrderBy, pagenumber = 0, category = @ViewBag.Category, keywords = @ViewBag.Keywords, orderType = "desc", MostrarImagen = @TempData["MostrarImagen"] }, new AjaxOptions { HttpMethod = "POST", UpdateTargetId = "here", InsertionMode = InsertionMode.Replace }, new { @class = "btn " + auxType + " btn-xs btn-ordertype _default" })
  40. <!--<a class="btn @auxType btn-xs btn-ordertype" data-ordertype-id="Desc" href="#">Desc</a>-->
  41.  
  42. </li>
  43.  
  44. <li><span>Mostrar Imagenes:</span></li>
  45. <li>
  46. @Html.CheckBox("MostrarImagen", true, new { @onchange = "OnValueChanged();" })
  47. </li>
  48.  
  49. </ul>
  50.  
  51.  
  52. <ul class="breadcrumb detallesCss">
  53. <li><a href='@Url.Action("Index","Home")'>Inicio</a></li>
  54.  
  55. <li class="active">Catálogo</li>
  56. </ul>
  57. </div><hr />
  58.  
  59. <!--Contenedor catálogo-->
  60. <div class="container">
  61.  
  62. <!--Sección listado catálogos-->
  63. <div class="flex-row row" id="contenedor-catalogo">
  64. @{
  65. if (!Model.Any())
  66. {
  67. <div class='alert alert-warning col-xs-12 errorMessage animated fadeIn fast'>
  68. Por El Momento No Existen Más Productos Disponibles
  69. </div>
  70. }
  71. else
  72. {
  73. foreach (var item in Model)
  74. {
  75. <div class="col-md-3 producto-item animated fadeIn fast">
  76. <div class="card">
  77. <a href="@Url.Action("detail", "Productos", new { id = item.EntidadId, name = item.Nombre.ToUrlSeo() })">
  78.  
  79. @if (!ViewBag.MostrarImagen)
  80. {
  81. <img class="card-img-top catalogo-imagen" src="" data-src="/Productos/image/@item.EntidadId" data-pending="true" onerror="imgError(this);" style="display:none">
  82. }
  83. else
  84. {
  85. <img class="card-img-top catalogo-imagen" src="" data-src="/Productos/image/@item.EntidadId" data-pending="true" onerror="imgError(this);" style="display:normal">
  86. }
  87.  
  88. </a>
  89. <div class="card-block">
  90. <h4 class="card-title">
  91. <a href="@Url.Action("detail", "Productos", new { id = item.EntidadId, name = item.Nombre.ToUrlSeo()})">
  92. @Html.DisplayFor(modelItem => item.Nombre)
  93. </a>
  94. </h4>
  95. <div class="meta">
  96. <a href="#" class="btn btn-default btn-xs">
  97.  
  98. @Html.DisplayFor(modelItem => item.Categoria)
  99.  
  100. </a>
  101. </div>
  102. <div class="card-text">
  103. @Html.DisplayFor(modelItem => item.Descripcion)
  104. </div>
  105. <div class="card-text">
  106. Precio:
  107. @Html.DisplayFor(modelItem => item.PrecioUnitario)
  108. </div>
  109. </div>
  110.  
  111. </div>
  112. </div>
  113. }
  114.  
  115. }
  116.  
  117. }
  118. </div>
  119.  
  120. @* Contenedor que incluye Loader 1 y el componente para mostrar los mensajes de error. *@
  121. <div class="container-result">
  122. <div id="pre-loader"><div class='text-center'><i class='fa fa-circle-o-notch fa-spin' style='font-size:24px'></i></div></div>
  123. <div style="display:none;" id="error-msg"><p>Ocurrío un error al obtener la información.</p></div>
  124. </div>
  125.  
  126. </div>
  127.  
  128. <!--remove float-->
  129. <div style="clear:both;"></div>
  130.  
  131. <!-- Loader 2 -->
  132. <div id="loading-container" style="display:none;text-align:center;width: 100%;height: 100%;opacity: 0.6;position: fixed;background-color: white;top: 70px;left: 0;margin: 0 auto;z-index: 9999;"></div>
  133.  
  134. function ajaxMovement(queryParams, beforeSend, onSuccess, onError) {
  135.  
  136. $.ajax({
  137. url: "Productos/Index" + document.location.search, //URL del recurso
  138. type: "post", //Se define el método POST como verbo de solicitud.
  139. contentType: "text/html", //La respuesta vendrá en formato text/html
  140. data: queryParams, //Los parámetros están definidos en la URL destino, por lo cual la propiedad 'data' se envía como vacía.
  141. beforeSend: function () {
  142. if (beforeSend != null)
  143. beforeSend();
  144. }
  145. }).then(function (data) {
  146.  
  147. if (!data.includes("errorMessage"))
  148. //Mostramos AJAX loader
  149. $(".container-result #pre-loader").show();
  150. else
  151. $(".container-result #pre-loader").hide();
  152.  
  153. //Ocultamos los mensajes de error
  154. $(".container-result #error-msg").hide();
  155.  
  156. if (onSuccess != null)
  157. onSuccess(data);
  158.  
  159.  
  160.  
  161. loadImages();
  162.  
  163. }, function (error) {
  164.  
  165. //Ocultar componente AJAX loader
  166. $(".container-result #pre-loader").hide();
  167.  
  168. //Mostrar mensaje de error.
  169. $(".container-result #error-msg").show();
  170.  
  171. if (onError != null)
  172. onError(error);
  173.  
  174. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement