Angular multiple - ASCII\with test data\MLL@20!3\48 results

by Harsha Jayamanna

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.0/angular.js"></script>
<script src=" https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js"></script>
<div ng-app="sample">
  <div ng-controller="materialController">
  <h1>
  Method 3 (MLL@20!3):(ASCII) / All results
  </h1>
  <p>
  Using a sort rule which was inherited from  ASCII sort. This rule doesn’t sort capital letters before lowercase letters., instead it considers only the alphabetical order when sorting letters.
  </p>
  <h2>
  Original Result
  </h2>
    <ul>
      <li ng-repeat="material in materials">
        {{ material.name}}<span ng-if="material.edition!=''">, </span> {{material.edition}}
      </li>
    </ul>
  <h2>
  Sorted Result
  </h2>
    <ul>
      <li ng-repeat="material in materials | asciiSort">
        {{ material.name}}<span ng-if="material.edition!=''">, </span> {{material.edition}}
      </li>
    </ul>
<!--     <h2>
      Angular default Sorting
      </h2>
    <ul>
      <li ng-repeat="material in materials | orderBy : ['name','-edition']">
        {{ material.name}} , {{material.edition}}
      </li>
    </ul> -->
  </div>
</div>

CSS

body {
  font-family: Arial;
}

JavaScript

var app = angular.module('sample', []);
app.controller('materialController', function($scope) {
  $scope.materials = [];
    
  function getMaterials() {
    $scope.materials = 
    [
    {
    	name: 'Chez nous: Branché sur le monde francophone, Media-Enhanced Version',
      edition:'4e'
    },
    {
    	name: 'Chez nous: Branché sur le monde francophone, Media-Enhanced Version',
      edition:'4e'
    },
    {
    	name: 'Contrastes: Grammaire du francais courant, 2/e, 2e, Summer 2014 Re-Release',
      edition:''
    },
    {
    	name: 'COORDINATOR, MyFrenchLab for Réseau : Communication, Intégration, Intersections',
      edition:'2e'
    },
    {
    	name: "COORDINATOR, MyItalianLab for Percorsi: L'Italia attraverso la lingua e la cultura",
      edition:''
    },
    {
    	name: 'COORDINATOR, MySpanishLab for Atando cabos, 4e, Summer 2014 Re-Release',
      edition:''
    },
    {
    	name: 'COORDINATOR, MySpanishLab for Conexiones: Comunicación y cultura',
      edition:''
    },
    {
    	name: 'COORDINATOR, MySpanishLab for Día a día: De lo personal a lo profesional​, 1e, 2015 Release',
      edition:''
    },
    {
    	name: 'COORDINATOR, MySpanishLab for Fusion: Comunicacion y cultura',
      edition:''
    },
    {
    	name: 'COORDINATOR, MySpanishLab for Fusión: Comunicación y cultura, 1e, Summer 2013 Re-Release',
      edition:''
    },
    {
    	name: 'COORDINATOR, MySpanishLab for Gente: Nivel intermedio, 1e, Summer 2014 Re-Release',
      edition:''
    },
    {
    	name: 'COORDINATOR, MySpanishLab for Identidades: Exploraciones e interconexiones, 3e, Summer 2014 Re-Release',
      edition:''
    },
    {
    	name: 'COORDINATOR, MySpanishLab for Mosaicos: Spanish as a World Language, 5e, Summer 2013 Re-Release',
      edition:''
    },
    {
    	name: 'COORDINATOR, MySpanishLab for ¡Anda! Curso elemental',
      edition:''
    },
    {
    	name: 'COORDINATOR, MySpanishLab for ¡Anda! Curso intermedio, 2e, Summer 2014 Re-Release',
   ...