{"version":3,"file":"main.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAuG;AAMnE;;;;;;;;;;;;;;;;;;ICH9B,6EAAiG;IAAxB,uSAAS,oBAAa,IAAC;IAC9F,2EAAU;IAAA,8DAAG;IAAA,4DAAW;IACxB,0EACF;IAAA,4DAAS;;;IAwBS,yEAAkD;IAAA,uDAAiB;IAAA,4DAAK;;;IAAtB,0DAAiB;IAAjB,iFAAiB;;;;IAErE,6EAGyC;IAAjC,iZAAS,iCAAsB,IAAC;IACtC,2EAAU;IAAA,+DAAI;IAAA,4DAAW;;;;IAqBzB,6EAG2C;IAAnC,iaAAS,mCAAwB,IAAC;IACxC,2EAAU;IAAA,iEAAM;IAAA,4DAAW;;;;IAE7B,6EAG0C;IAAlC,iaAAS,kCAAuB,IAAC;IACvC,2EAAU;IAAA,oEAAS;IAAA,4DAAW;;;;IAEhC,6EAGyC;IAAjC,iaAAS,iCAAsB,IAAC;IACtC,2EAAU;IAAA,+DAAI;IAAA,4DAAW;;;;IAlC3B,qFAAuC;IAC1B,2EAAgB;IAAA,4DAAY;IACvC,4EAEwC;IAAjC,yXAAgC;IAFvC,4DAEwC;IAE1C,qFAA8B;IACjB,2EAAgB;IAAA,4DAAY;IACvC,4EAE4C;IAArC,6XAAoC;IAF3C,4DAE4C;IAE9C,mFAAoE;IAAtD,qZAAqD;IACjE,4FACF;IAAA,4DAAe;IACf,oFAAsE;IAAxD,wZAAuD;IACnE,gGACF;IAAA,4DAAe;IACf,oJAKS;IACT,oJAKS;IACT,oJAKS;IACT,oFAAmF;IAA5C,6aAAc,uCAA4B,IAAC;IAAC,4DAAe;;;;IAjCzF,0DAAwB;IAAxB,oFAAwB;IAMxB,0DAAwB;IAAxB,oFAAwB;IAGnB,0DAAqD;IAArD,0GAAqD;IAGrD,0DAAuD;IAAvD,4GAAuD;IAG/C,0DAAsB;IAAtB,qFAAsB;IAMtB,0DAAsB;IAAtB,qFAAsB;IAMtB,0DAAsB;IAAtB,qFAAsB;;;IAhDhD,8EAA6F;IAKvF,qEAEE;IACJ,4DAAM;IACN,4HAAwE;IAC1E,4DAAI;IACJ,oIAKS;IACT,+IAsCc;IAChB,4DAAU;;;;IAtDN,0DAA8F;IAA9F,8QAA8F;IAIvF,0DAAsF;IAAtF,yNAAsF;IAGpE,0DAAuB;IAAvB,sFAAuB;IAE5B,0DAAkC;IAAlC,wGAAkC;IAM3C,0DAAyB;IAAzB,qFAAyB;;;IAuDxD,0EAAqD;IACnD,uDACA;IAEF,4DAAM;;;IAHJ,0DACA;IADA,gGACA;;ADjFC,MAAM,sBAAsB;IAcjC,YAAmB,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;QAZ3C,kBAAa,GAAoB,EAAE,CAAC;QACpC,YAAO,GAAG,KAAK,CAAC;QAChB,WAAM,GAAG,KAAK,CAAC;QACf,YAAO,GAAG,KAAK,CAAC;QACP,cAAS,GAAG,CAAC,CAAC;QACd,aAAQ,GAAG,EAAE,CAAC;QAEb,kBAAa,GAAG,IAAI,uDAAY,EAAa,CAAC;QAC9C,kBAAa,GAAG,IAAI,uDAAY,EAAQ,CAAC;QAKjD,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC;QAClC,WAAW,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;YAC1C,IAAI,CAAC,OAAO,GAAG,CAAC,WAAW,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,iBAAiB,GAAG,uBAAuB,CAAC;IACtE,CAAC;IAED,eAAe;QACb,8DAAkB,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC9D,IAAI,KAAK,IAAI,IAAI,EAAE;gBACjB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;aAC3B;iBAAM;gBACL,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC;aACjC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,eAAe,CAAC,SAAoB;QAClC,IAAI,CAAC,YAAY,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;QAClD,IAAI,CAAC,kBAAkB,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;QACxD,8DAA8D;QAC9D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAED,WAAW;QACT,8BAA8B;QAC9B,MAAM,QAAQ,GAAa;YACzB,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,IAAI;YACV,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,IAAI;SACd,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACrC,+DAA+D;IACjE,CAAC;IAED,cAAc,CAAC,QAAkB;QAC/B,IAAI,QAAQ,IAAI,IAAI,IAAI,QAAQ,CAAC,MAAM,IAAI,IAAI,EAAE;YAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACjC;QACD,8DAAkB,EAAE,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC3E,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE;gBACtB,IAAI,QAAQ,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;oBAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAC/C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBACjC;aACF;QACH,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;YAChB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CAAC,QAAkB;IAEhC,CAAC;IAED,YAAY,CAAC,QAAkB;QAC7B,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,YAAY,CAAC,QAAkB;QAC7B,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,8DAAkB,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACxE,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE;gBACtB,IAAI,QAAQ,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;oBAC5C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;oBACpB,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAC/C,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;iBAC7B;aACF;QACH,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;YAChB,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YAClD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,UAAU,CAAC,QAAkB,EAAE,MAAsB;QACnD,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC;IACpC,CAAC;;4FApGU,sBAAsB;oHAAtB,sBAAsB;;;;;;;;QCdnC,mFAAwE;QAGlE,wHAGS;QACT,sFAG6B;QADd,yJAAQ,2BAAuB,IAAC;QAE/C,4DAAgB;QAEhB,6EAAmC;QAQrB,6HAwDU;QACZ,4DAAM;QAQlB,wFAIC;QAFc,0JAAQ,2BAAuB,IAAC;QAG/C,4DAAgB;QAElB,qHAIM;QACR,4DAAU;;QAjG4B,0DAAsC;QAAtC,8FAAsC;QAEnB,0DAAkB;QAAlB,6EAAkB;QAIxD,0DAAoB;QAApB,iFAAoB;QAcsD,0DAAgB;QAAhB,sFAAgB;QAiE1F,0DAAoB;QAApB,iFAAoB;QAOb,0DAA2B;QAA3B,2FAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;AC5FnB;;;;;;;;;;ICM9B,yEAAsC;IAAA,oEAAI;IAAA,4DAAK;;;IAC/C,yEAAmC;IAAA,uDAAc;IAAA,4DAAK;;;IAAnB,0DAAc;IAAd,+EAAc;;;IAIjD,yEAAsC;IAAA,kEAAO;IAAA,4DAAK;;;IAClD,yEAAmC;IAAA,uDAAoB;IAAA,4DAAK;;;IAAzB,0DAAoB;IAApB,qFAAoB;;;IAIvD,yEAAsC;IAAA,iEAAM;IAAA,4DAAK;;;IACjD,yEAAmC;IAAA,uDAAa;IAAA,4DAAK;;;IAAlB,0DAAa;IAAb,8EAAa;;;IAIhD,yEAAsC;IAAA,iEAAM;IAAA,4DAAK;;;;IACjD,yEAAmC;;IACmG,uDAAmB;IAAA,4DAAI;;;IAAxJ,0DAA4E;IAA5E,uPAA4E;IAAqD,0DAAmB;IAAnB,oFAAmB;;;IAKzJ,yEAAsC;IAAA,+DAAI;IAAA,4DAAK;;;IAC/C,yEAAmC;;IACmG,uDAAY;IAAA,4DAAI;;;IAAjJ,0DAA4E;IAA5E,uPAA4E;IAAqD,0DAAY;IAAZ,6EAAY;;;IAKlJ,yEAAsC;IAAA,yEAAS;IAAA,4DAAK;;;IACpD,yEAAmC;IAAA,uDAAiB;IAAA,4DAAK;;;IAAtB,0DAAiB;IAAjB,kFAAiB;;;IAIpD,yEAAsC;IAAA,iEAAM;IAAA,4DAAK;;;IACjD,yEAAmC;IAAA,uDAAoC;;IAAA,4DAAK;;;IAAzC,0DAAoC;IAApC,gKAAoC;;;IAIvE,yEAAsC;IAAA,0EAAK;IAAA,4DAAK;;;;IAChD,yEAAmC;IACP,qWAAS,+BAAkB,QAAQ,CAAC,IAAC;IAAC,iEAAM;IAAA,4DAAS;IAC/E,6EAAkE;IAAxC,qWAAS,+BAAkB,UAAU,CAAC,IAAC;IAAC,mEAAQ;IAAA,4DAAS;IACnF,6EAA0D;IAAhC,qWAAS,iCAAqB,IAAC;IAAC,iEAAM;IAAA,4DAAS;;;IAU7E,oEAA0E;;;IAC1E,oEAAkE;;ADnD/D,MAAM,0BAA0B;IAQrC,YAAoB,QAAqB;QAArB,aAAQ,GAAR,QAAQ,CAAa;QANzC,YAAO,GAAG,IAAI,CAAC;QAEf,qBAAgB,GAAG;YACjB,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS;SAClG,CAAC;IAGF,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,8DAAkB,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACnE,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;YAChC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CAAC,GAAQ,EAAE,SAAiB;QACvC,8DAAkB,EAAE,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC,EAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACzG,mCAAmC;YACnC,uCAAuC;YAEvC,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YAEtC,0CAA0C;YAC1C,gCAAgC;YAChC,gDAAgD;YAChD,gDAAgD;YAChD,QAAQ;YACR,MAAM;YACN,OAAO;YACP,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CAAC,GAAQ;QAEvB,8DAAkB,EAAE,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC,EAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;;YAC9F,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;YAChE,IAAI,YAAM,CAAC,IAAI,0CAAE,MAAM,EAAE;gBACvB,8DAA8D;gBAC9D,wCAAwC;gBACxC,yBAAyB;gBACzB,kCAAkC;gBAClC,4BAA4B;gBAC5B,wBAAwB;gBACxB,oDAAoD;gBACpD,mCAAmC;gBACnC,mBAAmB;gBACnB,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBAElE,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC7C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACnC,IAAI,CAAC,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;gBAE3C,kDAAkD;gBAClD,mEAAmE;gBACnE,kCAAkC;gBAClC,4BAA4B;gBAC5B,kDAAkD;gBAClD,4BAA4B;aAC7B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;;oGAjEU,0BAA0B;wHAA1B,0BAA0B;QCVvC,oEAA8C;QAC9C,sEAAK;QAKD,2EAAoC;QAClC,oHAA+C;QAC/C,oHAAsD;QACxD,qEAAe;QAEf,2EAA0C;QACxC,oHAAkD;QAClD,oHAA4D;QAC9D,qEAAe;QAEf,2EAAmC;QACjC,sHAAiD;QACjD,sHAAqD;QACvD,qEAAe;QAEf,4EAAyC;QACvC,sHAAiD;QACjD,sHAEK;QACP,qEAAe;QAEf,4EAAkC;QAChC,sHAA+C;QAC/C,sHAEK;QACP,qEAAe;QAEf,4EAAuC;QACrC,sHAAoD;QACpD,sHAAyD;QAC3D,qEAAe;QAEf,6EAA2C;QACzC,sHAAiD;QACjD,sHAA4E;QAC9E,qEAAe;QAEf,6EAAqC;QACnC,sHAAgD;QAChD,sHAIK;QACP,qEAAe;QAQf,uHAA0E;QAC1E,uHAAkE;QACpE,4DAAQ;QACR,mFAEiE;QACnE,4DAAM;;QA9DG,0DAA2B;QAA3B,wFAA2B;QAwDZ,2DAAmC;QAAnC,iGAAmC;QACtB,0DAA0B;QAA1B,kGAA0B;QAI3D,0DAA2C;QAA3C,+FAA2C;;;;;;;;;;;;;;;;;;;;;;;AC9DX;;;;AAM7B,MAAM,mBAAmB;IAI9B,YAAmB,WAAwB,EAAU,OAAe;QAAjD,gBAAW,GAAX,WAAW,CAAa;QAAU,YAAO,GAAP,OAAO,CAAQ;QAFpE,YAAO,GAAG,KAAK,CAAC;QAGd,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC;IACpC,CAAC;IAED,QAAQ;QAEN,IAAI,IAAI,CAAC,OAAO;YACd,IAAI,CAAC,YAAY,EAAE,CAAC;;YAEpB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;IAEK,YAAY;;YAChB,MAAM,UAAU,GAAG,MAAM,8DAAkB,EAAE,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;YAC7E,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC;YAEnC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;QACtE,CAAC;KAAA;;sFArBU,mBAAmB;iHAAnB,mBAAmB;QCThC,sEAAK;QACH,uEACF;QAAA,4DAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACD4C;AAEa;AACY;AAG3C;AAEW;;;;;;;;;;;;;;;;;;;;;ICDzC,iFAAmF;;;;IAarE,wEAA2H;;IAAA,uDAAkB;IAAA,4DAAI;;;IAApG,sPAA6E;IAAC,0DAAkB;IAAlB,kFAAkB;;;;IAC7I,wEAA+H;;IAAA,uDAAkB;IAAA,4DAAI;;;IAAtG,sPAA+E;IAAC,0DAAkB;IAAlB,kFAAkB;;;;IACjJ,wEAA0H;;IAAA,uDAAkB;IAAA,4DAAI;;;IAApG,sPAA6E;IAAC,0DAAkB;IAAlB,kFAAkB;;;IAH9I,0EAAmF;IACjF,yIAAiJ;IACjJ,yIAAqJ;IACrJ,yIAAgJ;IAClJ,4DAAM;;;IAJiD,uFAA2B;IAC5E,0DAAuB;IAAvB,6FAAuB;IACvB,0DAAyB;IAAzB,0FAAyB;IACzB,0DAAsB;IAAtB,kFAAsB;;;;IAG1B,qFAAkC;IACrB,uDAAkB;IAAA,4DAAY;IACzC,4EAA6C;IAA7B,gYAA4B;IAA5C,4DAA6C;;;IADlC,0DAAkB;IAAlB,kFAAkB;IACb,0DAA4B;IAA5B,sFAA4B;;;;IAIlD,qFAAuE;IAC1D,8EAAS;IAAA,4DAAY;IAChC,4EAAyF;IAAzE,yYAAiC;IAAjD,4DAAyF;;;IAAzE,0DAAiC;IAAjC,2FAAiC;;;;IAGjD,wEACqJ;IAG9I,sZAAS,2BAAgB,IAAC;IAF/B,4DAGE;;;IAJD,8QAAiJ;IAE7I,0DAAwK;IAAxK,mTAAwK;;;IAJjL,0EAA4E;IAC1E,0IAMI;IACN,4DAAM;;;IAPgB,0DAA6B;IAA7B,4FAA6B;;;;IAQnD,qFAAsF;IACzE,qEAAU;IAAA,4DAAY;IACjC,4EAA0F;IAA1E,0YAAkC;IAAlD,4DAA0F;;;IAA1E,0DAAkC;IAAlC,4FAAkC;;;;IAEpD,uFAAgI;IAAxE,qZAAgC;IACtF,qEACF;IAAA,4DAAmB;;;IAFqC,0FAAgC;;;;IAGxF,uFAAgI;IAAzE,sZAAiC;IACtF,2EACF;IAAA,4DAAmB;;;IAFoC,2FAAiC;;;IAGxF,2EAAyC;IAAA,uDAAwB;IAAA,4DAAO;;;IAA/B,0DAAwB;IAAxB,iGAAwB;;;;IACjE,6EAAkG;IAApD,wZAAS,qBAAU,IAAC;IAChE,2EAAU;IAAA,+DAAI;IAAA,4DAAW;;;;IAKzB,6EAEmF;IAFzD,wZAAS,uBAAY,IAAC;IAG9C,2EAAU;IAAA,wEAAa;IAAA,4DAAW;IAClC,oEACF;IAAA,4DAAS;;;;IAJD,sGAAkC;;;IAK1C,6EACoF;IACxE,0EAAe;IAAA,4DAAW;;;;;IAFZ,mFAAgC;;;;IAK5D,4EACmD;IAA5C,8ZAAU,2CAAgC,IAAC;IADlD,4DACmD;;;;IAOnD,6EAA8I;IAAhG,wZAAS,qBAAU,IAAC;IAChE,2EAAU;IAAA,+DAAI;IAAA,4DAAW;IACzB,mEACF;IAAA,4DAAS;;;IAH2F,qGAAyC;;;;IAI7I,6EAAkJ;IAAlG,wZAAS,uBAAY,IAAC;IACpE,2EAAU;IAAA,iEAAM;IAAA,4DAAW;IAC3B,qEACF;IAAA,4DAAS;;;IAH+F,qGAAyC;;;;IA1EvJ,0EAAsI;IAGhI,uDACF;IAAA,4DAAW;IAEb,0EAA8I;IAGxI,uIAIM;IACN,mOAKc;IAChB,4DAAM;IACN,+JAGiB;IACjB,yIAQM;IACN,+JAGiB;IACjB,mKAEmB;IACnB,mKAEmB;IACnB,2IAAwE;IACxE,+IAES;IACX,4DAAM;IACN,2EAAsF;IAElF,+IAKS;IACT,+IAGS;IACX,4DAA0B;IAC1B,6IACmD;IACnD,oFAAiD;IACzB,8YAAS,uBAAY,IAAC;IAC1C,4EAAU;IAAA,kEAAM;IAAA,4DAAW;IAC3B,qEAAQ;IAAA,0EAAQ;IAAA,2EAAe;IAAA,4DAAS;IAAA,8DAC1C;IAAA,4DAAS;IAEX,+IAGS;IACT,+IAGS;IACX,4DAAM;;;;;IA7EkC,0DAAwB;IAAxB,oFAAwB;IAE9D,0DACF;IADE,oLACF;IAE2F,0DAAgD;IAAhD,uGAAgD;IAGjI,0DAA+B;IAA/B,6FAA+B;IAYtB,0DAAkC;IAAlC,2GAAkC;IAIX,0DAAkC;IAAlC,2GAAkC;IASzB,0DAAmC;IAAnC,0GAAmC;IAIjE,0DAAmC;IAAnC,0GAAmC;IAGnC,0DAAkC;IAAlC,+FAAkC;IAGlC,0DAAoB;IAApB,mFAAoB;IAC6B,0DAA4B;IAA5B,yFAA4B;IAM5C,0DAA8B;IAA9B,6FAA8B;IAMpB,0DAA8B;IAA9B,6FAA8B;IAKpC,0DAAiE;IAAjE,yIAAiE;IAQrD,2DAA8B;IAA9B,6FAA8B;IAI1B,0DAA8B;IAA9B,6FAA8B;;;IAgCpG,iFAAyD;IACvD,iFAA0D;IAC1D,uEAAM;IAAA,uDAA2B;IAAA,4DAAO;;;IAFH,0EAAiB;IAEhD,0DAA2B;IAA3B,gGAA2B;;;IAGjC,iFAA+F;IACvF,uDAAkB;IAAA,4DAAO;IAC/B,2EAA0D;IAAA,uDAAyB;IAAA,4DAAO;;;IAFjB,gFAAmB;IACtF,0DAAkB;IAAlB,mFAAkB;IACkC,0DAAyB;IAAzB,wGAAyB;;;IAHvF,kFAA2D;IACzD,mLAGa;IACf,qEAAe;;;IAJ+C,0DAAa;IAAb,uFAAa;;;;IA5BjF,0EAAmJ;IAGzI,4UAA8B,IAAI,IAAE;IAE1C,2EAAU;IAAA,8DAAG;IAAA,4DAAW;IACxB,6FACF;IAAA,4DAAS;IACT,mFAAuD;IACH,sUAAS,wBAAwB,sBAAyB,IAAI,IAAE;IAChH,gFAAgC;IAAA,0EAAS;IAAA,4DAAY;IACrD,4EAIC;IACH,4DAAiB;IACjB,4FAKC;IADC,mgBAAkB,kDAAuC,SAAE,gBAAmC,IAAC;IAE/F,qKAGa;IACb,yKAKe;IACjB,4DAAmB;IAErB,8EAC2C;IAAnC,6ZAAS,8BAAmB,IAAI,CAAC,IAAC;IACxC,4EAAU;IAAA,+DAAG;IAAA,4DAAW;IACxB,0FACF;IAAA,4DAAS;;;;;IAnCD,0DAAsC;IAAtC,mFAAsC;IAQnC,2DAAgC;IAAhC,iGAAgC;IAQvC,0DAAgC;IAAhC,iGAAgC;IAGnB,0DAAwB;IAAxB,4FAAwB;IAItB,0DAAyB;IAAzB,6FAAyB;;;IAqCxC,iFAAsD;IACpD,iFAA0D;IAC1D,uEAAM;IAAA,uDAAwB;IAAA,4DAAO;;;IAFH,0EAAiB;IAE7C,0DAAwB;IAAxB,8FAAwB;;;IAG9B,iFAAsF;IAC9E,uDAAe;IAAA,4DAAO;IAC5B,2EAA0D;IAAA,uDAAuB;IAAA,4DAAO;;;IAFrB,8EAAgB;IAC7E,0DAAe;IAAf,iFAAe;IACqC,0DAAuB;IAAvB,kGAAuB;;;IAHrF,kFAAqD;IACnD,mLAGa;IACf,qEAAe;;;IAJ4C,0DAAU;IAAV,qFAAU;;;;IA5B3E,0EAAqJ;IAG3I,+UAA2B,IAAI,IAAC;IAEtC,2EAAU;IAAA,8DAAG;IAAA,4DAAW;IACxB,2EACF;IAAA,4DAAS;IACT,mFAAoD;IACA,wUAAS,wBAAwB,uBAAsB,IAAI,IAAE;IAC7G,gFAAgC;IAAA,kEAAM;IAAA,4DAAY;IAClD,4EAIC;IACH,4DAAiB;IACjB,4FAKC;IADC,qgBAAkB,gDAAoC,SAAE,gBAAgC,IAAC;IAEzF,qKAGa;IACb,yKAKe;IACjB,4DAAmB;;;;;IA7Bb,0DAAmC;IAAnC,mFAAmC;IAQhC,2DAA6B;IAA7B,8FAA6B;IAQpC,0DAA6B;IAA7B,8FAA6B;IAGhB,0DAAqB;IAArB,yFAAqB;IAInB,0DAAsB;IAAtB,0FAAsB;;;IApE3C,gJAwCM;IACN,gJAmCM;;;IA5EA,4GAAmC;IAyCnC,0DAAqC;IAArC,yGAAqC;;;IAqC7C,kFAA4H;;;IAlK9H,mFAA+F;IAC7F,kIAgFM;IAEN,6NA8Ec;IACd,2JAA4H;IAC9H,4DAAgB;;;;IAlKuE,0DAAmC;IAAnC,iGAAmC;IAiKrG,0DAA+B;IAA/B,8FAA+B;;ADtJxD,sDAAsD;AAC/C,MAAM,eAAe;IAI1B,YACS,IAAa,EACb,aAAa,KAAK,EAClB,SAA6C,IAAI;QAFjD,SAAI,GAAJ,IAAI,CAAS;QACb,eAAU,GAAV,UAAU,CAAQ;QAClB,WAAM,GAAN,MAAM,CAA2C;IAC1D,CAAC;CACF;AAED;;;GAGG;AAEI,MAAM,eAAe;IAD5B;QAEE,wCAAwC;QACxC,+CAA+C;QAC/C,mDAAmD;QACnD,sCAAsC;QACtC,6CAA6C;QAC7C,MAAM;QAEN,uDAAuD;QACvD,mBAAc,GAAmB,IAAI,CAAC;KAsCvC;IApCC,iCAAiC;IAC3B,WAAW;;YAEf,IAAI,GAAsB,CAAC;YAE3B,MAAM,0DAAkB,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACjE,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC;gBACjC,wBAAwB;gBACxB,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBACnC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;oBACtB,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACzC,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YACH,OAAO,GAAG,CAAC;QACb,CAAC;KAAA;IAED,WAAW,CAAC,IAAkC;QAC5C,QAAQ,IAAI,CAAC,IAAI,EAAE;YACjB,KAAK,SAAS;gBACZ,OAAO,IAAI,CAAC,SAAS,CAAC;YACxB,KAAK,WAAW;gBACd,OAAO,IAAI,CAAC,MAAM,CAAC;YACrB,KAAK,QAAQ;gBACX,OAAO,IAAI,CAAC;SACf;IACH,CAAC;IAED,YAAY,CAAC,IAAkC;QAC7C,QAAQ,IAAI,CAAC,IAAI,EAAE;YACjB,KAAK,SAAS;gBACZ,OAAO,IAAI,CAAC,SAAS,KAAK,EAAE,CAAC;YAC/B,KAAK,WAAW;gBACd,OAAO,IAAI,CAAC,MAAM,KAAK,EAAE,CAAC;SAC7B;QACD,OAAO,KAAK,CAAC;IACf,CAAC;;8EA9CU,eAAe;gHAAf,eAAe,WAAf,eAAe,mBADH,MAAM;AAkD/B;;;;;;GAMG;AACI,MAAM,iBAAiB;IAa5B,YAAoB,YAA8C,EAC9C,SAA0B;QAD1B,iBAAY,GAAZ,YAAY,CAAkC;QAC9C,cAAS,GAAT,SAAS,CAAiB;QAZ9C,eAAU,GAAG,IAAI,iDAAe,CAAoB,EAAE,CAAC,CAAC;IAaxD,CAAC;IAXD,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;IAC/B,CAAC;IAED,IAAI,IAAI,CAAC,KAAwB;QAC/B,IAAI,CAAC,YAAY,CAAC,SAAS,GAAG,KAAK,CAAC;QACpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAMD,OAAO,CAAC,gBAAkC;QACxC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YAC1D,IAAK,MAA2C,CAAC,KAAK;gBACnD,MAA2C,CAAC,OAAO,EAAE;gBACtD,IAAI,CAAC,iBAAiB,CAAC,MAA0C,CAAC,CAAC;aACpE;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,2CAAK,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,mDAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACxF,CAAC;IAED,UAAU,CAAC,gBAAkC;IAC7C,CAAC;IAED,uCAAuC;IACvC,iBAAiB,CAAC,MAAwC;QACxD,IAAI,MAAM,CAAC,KAAK,EAAE;YAChB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;SAC3D;QACD,IAAI,MAAM,CAAC,OAAO,EAAE;YAClB,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;SAChF;IACH,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,IAAqB,EAAE,MAAe;QAC/C,0DAA0D;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEtC,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBACtB,KAAK,SAAS;oBACZ,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;oBACrC,0DAAkB,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,EAAC,WAAW,EAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;wBAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;4BAChC,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;4BACxB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;4BAC/B,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;wBACzC,CAAC,CACF,CAAC;wBACF,MAAM,OAAO,GAAY;4BACvB,IAAI,EAAE,SAAS;4BACf,KAAK,EAAE,SAAS;4BAChB,WAAW;4BACX,KAAK,EAAE,KAAK,CAAC,MAAM;yBACpB,CAAC;wBACF,KAAK,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;wBACzC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;wBACzC,oBAAoB;wBACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;oBACrB,CAAC,CAAC,CAAC;oBACH,MAAM;gBACR,KAAK,WAAW;oBACd,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;oBACvC,0DAAkB,EAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC,EAAC,aAAa,EAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;wBACnF,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;4BAClC,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;4BACrB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;4BACnC,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,IAAI,qBAAqB,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;4BAC1E,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;wBAC1C,CAAC,CAAC,CAAC;wBACH,MAAM,OAAO,GAAY;4BACvB,IAAI,EAAE,SAAS;4BACf,KAAK,EAAE,WAAW;4BAClB,aAAa;4BACb,KAAK,EAAE,KAAK,CAAC,MAAM;yBACpB,CAAC;wBACF,KAAK,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;wBACzC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;wBACzC,oBAAoB;wBACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;oBACrB,CAAC,CAAC,CAAC;oBACH,MAAM;aACT;SAEF;aAAM;YACL,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,MAAM,SAAS,GAAG,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEtD,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EACjB,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,EACjF,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;gBACjB,kDAAkD;aACnD;YACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;YACnC,oBAAoB;YACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;SACpB;IACH,CAAC;CACF;AAED;;GAEG;AAMI,MAAM,oBAAoB;IAe/B,YAAY,eAAgC,EAAU,OAA2B;QAA3B,YAAO,GAAP,OAAO,CAAoB;QAdjF,UAAU;QACV,qBAAgB,GAAG,KAAK,CAAC;QACzB,oBAAe,GAAG,KAAK,CAAC;QACxB,YAAY;QACZ,uBAAkB,GAAG,KAAK,CAAC;QAC3B,qBAAgB,GAAG,IAAI,uDAAW,EAAE,CAAC;QACrC,4BAAuB,GAAW,IAAI,CAAC;QAEvC,SAAS;QACT,oBAAe,GAAG,KAAK,CAAC;QACxB,kBAAa,GAAG,IAAI,uDAAW,EAAE,CAAC;QAClC,yBAAoB,GAAW,IAAI,CAAC;QAqHpC,iBAAY,GAAG,CAAC,IAAqB,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC;QAE1D,aAAQ,GAAG,CAAC,KAAa,EAAE,QAAyB,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;QAnH3E,IAAI,CAAC,WAAW,GAAG,IAAI,8DAAe,CAAkB,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1G,IAAI,CAAC,UAAU,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAE3E,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAE7B,eAAe,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACzC,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,KAAK,CAAC;YAC7B,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,IAAI,CACrC,4DAAY,CAAC,IAAI,CAAC,EAClB,0DAAS,CAAC,KAAK,CAAC,EAAE;YAChB,6CAA6C;YAC7C,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpB,IAAI,CAAC,uBAAuB,GAAG,0CAA0C,CAAC;aAC3E;iBAAM;gBACL,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAC/B,IAAI,CAAC,uBAAuB,GAAG,mCAAmC,KAAK,GAAG,CAAC;gBAC3E,IAAI,IAAY,CAAC;gBACjB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBAC7B,IAAI,GAAG,KAAK,CAAC;iBACd;qBAAM;oBACL,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;iBACnB;gBACD,0DAAkB,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;oBACpE,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;oBAChC,MAAM,iBAAiB,GAAgB,MAAM,CAAC,IAAI,CAAC;oBACnD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;oBACrB,IAAI,kBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,MAAM,IAAG,CAAC,EAAE;wBACjC,iBAAiB,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;4BACrC,MAAM,SAAS,GAAG,KAAK,CAAC;4BACxB,2DAA2D;4BAC3D,6DAA6D;4BAC7D,wBAAwB;4BACxB,MAAM;4BACN,MAAM;4BACN,IAAI,CAAC,SAAS,EAAE;gCACd,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;6BAClC;wBACH,CAAC,CAAC,CAAC;qBACJ;gBACH,CAAC,CAAC,CAAC;aACJ;YACD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CACH,CAAC,SAAS,EAAE,CAAC;QAEd,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAClC,4DAAY,CAAC,IAAI,CAAC,EAClB,0DAAS,CAAC,KAAK,CAAC,EAAE;YAChB,6CAA6C;YAC7C,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpB,IAAI,CAAC,oBAAoB,GAAG,0CAA0C,CAAC;aACxE;iBAAM;gBACL,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAC5B,IAAI,CAAC,oBAAoB,GAAG,gCAAgC,KAAK,GAAG,CAAC;gBACrE,IAAI,IAAY,CAAC;gBACjB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBAC7B,IAAI,GAAG,KAAK,CAAC;iBACd;qBAAM;oBACL,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;iBACnB;gBACD,0DAAkB,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;oBACtE,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;oBAC7B,MAAM,cAAc,GAAa,MAAM,CAAC,IAAI,CAAC;oBAC7C,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;oBAClB,IAAI,eAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,MAAM,IAAG,CAAC,EAAE;wBAC9B,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;4BAClC,MAAM,SAAS,GAAG,KAAK,CAAC;4BACxB,qDAAqD;4BACrD,0DAA0D;4BAC1D,wBAAwB;4BACxB,MAAM;4BACN,MAAM;4BACN,IAAI,CAAC,SAAS,EAAE;gCACd,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;6BAC/B;wBACH,CAAC,CAAC,CAAC;qBACJ;gBACH,CAAC,CAAC,CAAC;aACJ;YACD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CACH,CAAC,SAAS,EAAE,CAAC;IAChB,CAAC;IAMM,MAAM,CAAC,QAAQ,CAAC,IAAqB;QAC1C,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACtB,KAAK,SAAS;gBACZ,OAAO,CAAC,CAAC;YACX,KAAK,WAAW;gBACd,OAAO,CAAC,CAAC;YACX,KAAK,QAAQ;gBACX,OAAO,CAAC,CAAC;YACX,KAAK,SAAS;gBACZ,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;oBACvB,KAAK,SAAS;wBACZ,OAAO,CAAC,CAAC;oBACX,KAAK,WAAW;wBACd,OAAO,CAAC,CAAC;oBACX,KAAK,QAAQ;wBACX,OAAO,CAAC,CAAC;iBACZ;gBACD,OAAO,CAAC,CAAC;SACZ;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAMD,gBAAgB,CAAC,IAAS;QACxB,IAAI,IAAI,IAAI,IAAI,EAAE;YAChB,OAAO,IAAI,CAAC;SACb;aAAM,IAAI,IAAI,CAAC,IAAI,EAAE;YACpB,OAAO,IAAI,CAAC,IAAI,CAAC;SAClB;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,YAAY,CAAC,IAAqB,EAAE,YAAuB,IAAI;QAC7D,qCAAqC;QAErC,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,SAAS,GAAG;gBACV,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,gBAAgB;gBACtB,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,IAAI;gBACX,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;gBAClC,2CAA2C;aAC5C,CAAC;SACH;aAAM;YACL,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;YAC9C,sDAAsD;SACvD;QAED,0DAAkB,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC1E,IAAI,KAAa,CAAC;YAClB,KAAK,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,EAAE;gBACrG,yBAAyB;gBACzB,qFAAqF;gBACrF,gEAAgE;aACjE;YACD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAChC,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;gBACxB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;gBACzC,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACzC,CAAC,CACF,CAAC;YACF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;YAChD,oBAAoB;YACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,aAAa,CAAC,IAAS;QACrB,IAAI,IAAI,IAAI,IAAI,EAAE;YAChB,OAAO,IAAI,CAAC;SACb;aAAM,IAAI,IAAI,CAAC,IAAI,EAAE;YACpB,OAAO,IAAI,CAAC,IAAI,CAAC;SAClB;aAAM;YACL,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,SAAS,CAAC,IAAqB,EAAE,SAAiB,IAAI;QACpD,0DAAkB,EAAE,CAAC,aAAa,CAAC,sBAAsB,CAAC,CACzD,EAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACjF,IAAI,KAAa,CAAC;YAClB,KAAK,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,EAAE;gBACrG,yBAAyB;gBACzB,qFAAqF;gBACrF,gEAAgE;aACjE;YACD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAChC,IAAI,qBAAO,MAAM,CAAC,CAAC;gBACnB,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;gBACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;gBACpC,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC1C,CAAC,CACF,CAAC;YACF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;YAChD,oBAAoB;YACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,UAAU;QACR,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,0DAAkB,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC/D,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAChC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;gBACtB,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACzC,CAAC,CACF,CAAC;YACF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;YAC5C,oBAAoB;YACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACtD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,IAAqB;QAC1B,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC;QACzB,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACtB,KAAK,SAAS;gBACZ,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,0DAAkB,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;;oBAC3E,IAAI,YAAK,CAAC,IAAI,0CAAE,MAAM,IAAG,CAAC,EAAE;wBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;wBACnE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;wBAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;wBACnB,oBAAoB;wBACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;qBACvD;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,0DAAkB,EAAE,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAC7D,EAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;;oBACnF,IAAI,YAAK,CAAC,IAAI,0CAAE,MAAM,IAAG,CAAC,EAAE;wBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;wBACnE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;wBAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;wBACnB,oBAAoB;wBACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;qBACvD;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,0DAAkB,EAAE,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;oBAC5D,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;oBACtC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;iBAC7B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;;oBACd,IAAI,YAAK,CAAC,IAAI,0CAAE,MAAM,IAAG,CAAC,EAAE;wBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;wBACnE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;wBAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;wBACnB,oBAAoB;wBACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;qBACvD;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM;SACT;IACH,CAAC;IAED,MAAM,CAAC,IAAqB;QAC1B,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACtB,KAAK,SAAS;gBACZ,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,0DAAkB,EAAE,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;;oBAC3E,IAAI,YAAK,CAAC,IAAI,0CAAE,MAAM,IAAG,CAAC,EAAE;wBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;wBACnE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;wBAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;wBACnB,oBAAoB;wBACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;qBACvD;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,0DAAkB,EAAE,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAC7D,EAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;;oBACnF,IAAI,YAAK,CAAC,IAAI,0CAAE,MAAM,IAAG,CAAC,EAAE;wBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;wBACnE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;wBAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;wBACnB,oBAAoB;wBACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;qBACvD;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,0DAAkB,EAAE,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;oBAC5D,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;oBACtC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;iBAC7B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;;oBACd,IAAI,YAAK,CAAC,IAAI,0CAAE,MAAM,IAAG,CAAC,EAAE;wBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;wBACnE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;wBAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;wBACnB,oBAAoB;wBACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;qBACvD;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM;SACT;IACH,CAAC;IAEO,cAAc,CAAC,IAAqB;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAClC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,SAAS,GAAG,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEtD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjC,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EACjB,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,EACvE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;SAClB;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,IAAI,CAAC,IAAqB;QACxB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,SAAS,qBAAO,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,CAAC,IAAqB;QACxB,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACtB,KAAK,SAAS;gBACZ,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;gBACxB,0DAAkB,EAAE,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACxE,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;wBAChC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;wBACtB,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBACzC,CAAC,CACF,CAAC;oBACF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;oBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;oBAC7E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;oBACnB,oBAAoB;oBACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACxD,CAAC,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;gBACxB,0DAAkB,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;wBAChC,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;wBACxB,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBACzC,CAAC,CACF,CAAC;oBACF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;oBAC1B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;oBAC7E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;oBACnB,oBAAoB;oBACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACxD,CAAC,CAAC,CAAC;gBACH,MAAM;gBACN,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;gBACxB,0DAAkB,EAAE,CAAC,aAAa,CAAC,sBAAsB,CAAC,CACzD,EAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACtH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;oBACnB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;oBACnB,oBAAoB;oBACpB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACxD,CAAC,CAAC,CAAC;gBACH,MAAM;SACT;IACH,CAAC;IAED,MAAM,CAAC,IAAqB;QAE1B,SAAS;QACT,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAEnB,UAAU;QACV,4BAA4B;QAC5B,oBAAoB;QACpB,+BAA+B;QAC/B,gGAAgG;QAChG,+CAA+C;QAC/C,mCAAmC;QACnC,oDAAoD;QACpD,YAAY;QACZ,WAAW;QACX,mCAAmC;QACnC,sFAAsF;QACtF,4BAA4B;QAC5B,6BAA6B;QAC7B,+DAA+D;QAC/D,UAAU;QACV,sBAAsB;QACtB,+BAA+B;QAC/B,iFAAiF;QACjF,+CAA+C;QAC/C,qCAAqC;QACrC,oDAAoD;QACpD,YAAY;QACZ,WAAW;QACX,mCAAmC;QACnC,sFAAsF;QACtF,4BAA4B;QAC5B,6BAA6B;QAC7B,+DAA+D;QAC/D,UAAU;QACV,aAAa;QACb,mBAAmB;QACnB,+BAA+B;QAC/B,6DAA6D;QAC7D,iIAAiI;QACjI,4BAA4B;QAC5B,6BAA6B;QAC7B,+DAA+D;QAC/D,UAAU;QACV,aAAa;QACb,IAAI;IACN,CAAC;IAED,QAAQ,CAAC,IAAqB;QAC5B,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;YAChC,OAAO,CAAC,CAAC;SACV;QACD,OAAO,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED,aAAa,CAAC,IAAI;QAChB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;SACjC;QACD,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACtB,KAAK,SAAS;gBACZ,OAAO,wCAAwC,CAAC;YAClD,KAAK,WAAW;gBACd,OAAO,mCAAmC,CAAC;YAC7C,KAAK,QAAQ;gBACX,OAAO,kCAAkC,CAAC;SAC7C;IACH,CAAC;IAED,WAAW,CAAC,IAAqB,EAAE,MAAW;QAC5C,MAAM,IAAI,GAAS,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,mBAAmB;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3B,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;QAC7D,MAAM,IAAI,GAAG,iBAAiB,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;QAE7D,8BAA8B;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEnC,gBAAgB;QAChB,MAAM,IAAI,GAA0B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAEpE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YACZ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,MAAM,CAAC,GAAG,4CAAK,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;gBAClB,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YACxC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,UAAU,CAAC,IAAqB;QAC9B,sDAAsD;QACtD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;;wFA9dU,oBAAoB,kEAeF,eAAe;kHAfjC,oBAAoB;QCzNjC,yEAAwF;QACtF,oEAA8C;QAC9C,yEAAyF;QAC7D,4IAAS,gBAAY,IAAC;QAC9C,2EAAU;QAAA,8DAAG;QAAA,4DAAW;QACxB,mFACF;QAAA,4DAAS;QAEX,0IAAmF;QACnF,8EAA4E;QAC1E,oIAmKgB;QAClB,4DAAW;;QA3KwC,0DAA4B;QAA5B,yFAA4B;QAK5D,0DAAsB;QAAtB,sFAAsB;QAC/B,0DAAyB;QAAzB,sFAAyB;QACS,0DAAc;QAAd,4FAAc;;;;;;;;;;;;;;;;;;;;;ACHrD,MAAM,YAAY;IACvB,gBAAe,CAAC;IAEhB,QAAQ,KAAU,CAAC;IAEnB,eAAe,KAAU,CAAC;IAC1B,UAAU;QACR,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtB,CAAC;;wEARU,YAAY;0GAAZ,YAAY;QCPzB,mFAAyC;QAA1B,iJAAY,gBAAY,IAAC;QAAC,4DAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAe;AACV;AACJ;AACN;AACM;AACX;AACgC;AAClB;AACA;AACN;AACI;AACa;AACf;AACc;AACX;AACJ;AACkB;AACE;AACH;AACS;AACH;AACG;AACM;AACN;AACA;AACU;AACnC;AACE;AACO;AACe;AAC1B;AAC0D;AAC1C;AACgG;AACtG;AACR;AACa;AACf;AACM;AACE;AACwB;AACc;AAC/B;AACf;AACM;AACN;AACI;AACE;AACT;AACiD;AACpC;AACM;AACD;AACiB;AACT;AAC2B;AACxB;AACH;AACrB;AACkD;AACzB;AACA;AACG;AACnC;AACA;AACqB;AACQ;AACE;AACA;AACxB;AACoB;AACQ;AAC1C;AACU;AACqC;AACY;AAClC;AACS;AACT;AACuC;AACnB;AACN;AACzB;AACiC;AACQ;AACvC;AACkB;AAC3B;AACH;AACA;AACmC;AACQ;AACO;AACJ;AACxB;AACL;AACqC;AAC5C;AACF;AACe;AACa;AACD;AACT;AACoB;AACJ;AAC1B;AAC4B;AACtC;AACsC;AACZ;AAClB;AACc;AAClB;AACU;AACZ;AACE;AACgD;AACnC;AACM;AACe;AAC7C;AACmD;AACT;AACN;AACC;AACX;AACgB;AACO;AAChB;AACD;AACwB;AACT;AAC0B;AA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ACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["./src/app/admin/lista-parceiro/lista-parceiro.component.ts","./src/app/admin/lista-parceiro/lista-parceiro.component.html","./src/app/admin/lista-proprietario/lista-proprietario.component.ts","./src/app/admin/lista-proprietario/lista-proprietario.component.html","./src/app/admin/nova-escola/nova-escola.component.ts","./src/app/admin/nova-escola/nova-escola.component.html","./src/app/admin/tree-colecao/tree-colecao.component.ts","./src/app/admin/tree-colecao/tree-colecao.component.html","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/calculadora/calculadora.component.ts","./src/app/calculadora/calculadora.component.html","./src/app/chat/addroom/addroom.component.ts","./src/app/chat/addroom/addroom.component.html","./src/app/chat/admin/admin.component.ts","./src/app/chat/admin/admin.component.html","./src/app/chat/chat.component.ts","./src/app/chat/chat.component.html","./src/app/chat/chatroom/chatroom.component.ts","./src/app/chat/chatroom/chatroom.component.html","./src/app/chat/roomlist/roomlist.component.ts","./src/app/chat/roomlist/roomlist.component.html","./src/app/component/aside-menu-edit/aside-menu-edit.component.ts","./src/app/component/aside-menu-edit/aside-menu-edit.component.html","./src/app/component/aside-menu-new/aside-menu-new.component.ts","./src/app/component/aside-menu-new/aside-menu-new.component.html","./src/app/component/buscar-escola/buscar-escola.component.ts","./src/app/component/buscar-escola/buscar-escola.component.html","./src/app/component/button-go-top-new/button-go-top-new.component.ts","./src/app/component/button-go-top-new/button-go-top-new.component.html","./src/app/component/escola-ads-slide/escola-ads-slide.component.ts","./src/app/component/escola-ads-slide/escola-ads-slide.component.html","./src/app/component/escola-artigos/escola-artigos.component.ts","./src/app/component/escola-artigos/escola-artigos.component.html","./src/app/component/escola-aside/escola-aside.component.ts","./src/app/component/escola-aside/escola-aside.component.html","./src/app/component/escola-caracteristicas/escola-caracteristicas.component.ts","./src/app/component/escola-caracteristicas/escola-caracteristicas.component.html","./src/app/component/escola-depoimentos/escola-depoimentos.component.ts","./src/app/component/escola-depoimentos/escola-depoimentos.component.html","./src/app/component/escola-detail-edit/escola-detail-edit.component.ts","./src/app/component/escola-detail-edit/escola-detail-edit.component.html","./src/app/component/escola-esportes-cultura/escola-esportes-cultura.component.ts","./src/app/component/escola-esportes-cultura/escola-esportes-cultura.component.html","./src/app/component/escola-eventos-edit/escola-eventos-edit.component.ts","./src/app/component/escola-eventos-edit/escola-eventos-edit.component.html","./src/app/component/escola-eventos/escola-eventos.component.ts","./src/app/component/escola-eventos/escola-eventos.component.html","./src/app/component/escola-gallery-new/escola-gallery-new.component.ts","./src/app/component/escola-gallery-new/escola-gallery-new.component.html","./src/app/component/escola-idiomas/escola-idiomas.component.ts","./src/app/component/escola-idiomas/escola-idiomas.component.html","./src/app/component/escola-info/escola-info.component.ts","./src/app/component/escola-info/escola-info.component.html","./src/app/component/escola-infra-acessibilidade/escola-infra-acessibilidade.component.ts","./src/app/component/escola-infra-acessibilidade/escola-infra-acessibilidade.component.html","./src/app/component/escola-mais-sobre/escola-mais-sobre.component.ts","./src/app/component/escola-mais-sobre/escola-mais-sobre.component.html","./src/app/component/escola-modal-avaliar/escola-modal-avaliar.component.ts","./src/app/component/escola-modal-avaliar/escola-modal-avaliar.component.html","./src/app/component/escola-modal-share/escola-modal-share.component.ts","./src/app/component/escola-modal-share/escola-modal-share.component.html","./src/app/component/escola-niveis-oferecidos/escola-niveis-oferecidos.component.ts","./src/app/component/escola-niveis-oferecidos/escola-niveis-oferecidos.component.html","./src/app/component/escola-parcerias-e-certificacoes/escola-parcerias-e-certificacoes.component.ts","./src/app/component/escola-parcerias-e-certificacoes/escola-parcerias-e-certificacoes.component.html","./src/app/component/escola-perfil/escola-perfil.component.ts","./src/app/component/escola-perfil/escola-perfil.component.html","./src/app/component/escola-professores-time-pedagogico/escola-professores-time-pedagogico.component.ts","./src/app/component/escola-professores-time-pedagogico/escola-professores-time-pedagogico.component.html","./src/app/component/escola-publicidade/escola-publicidade.component.ts","./src/app/component/escola-publicidade/escola-publicidade.component.html","./src/app/component/escola-qualificacoes/escola-qualificacoes.component.ts","./src/app/component/escola-qualificacoes/escola-qualificacoes.component.html","./src/app/component/escola-recomendadas/escola-recomendadas.component.ts","./src/app/component/escola-recomendadas/escola-recomendadas.component.html","./src/app/component/escola-sobre-regiao/escola-sobre-regiao.component.ts","./src/app/component/escola-sobre-regiao/escola-sobre-regiao.component.html","./src/app/component/escola-sobre/escola-sobre.component.ts","./src/app/component/escola-sobre/escola-sobre.component.html","./src/app/component/escola-videos/escola-videos.component.ts","./src/app/component/escola-videos/escola-videos.component.html","./src/app/component/escola-visao-especialista/escola-visao-especialista.component.ts","./src/app/component/escola-visao-especialista/escola-visao-especialista.component.html","./src/app/component/footer-edit/footer-edit.component.ts","./src/app/component/footer-edit/footer-edit.component.html","./src/app/component/header-new/header-new.component.ts","./src/app/component/header-new/header-new.component.html","./src/app/component/selo-escola/selo-escola.component.ts","./src/app/component/selo-escola/selo-escola.component.html","./src/app/dropzone.directive.ts","./src/app/layout/RM-escola-detail/escola-detail.component.ts","./src/app/layout/RM-escola-detail/escola-detail.component.html","./src/app/layout/RM-escola-detail/bottom-sheet-info.html","./src/app/layout/RM-escola-detail/dialog-motivo.html","./src/app/layout/RM-escola-detail/dialog-request-info.html","./src/app/layout/RM-escola-detail/dialog-request-info-response.html","./src/app/layout/RM-escola-detail/more-info/school-detail-more-info.ts","./src/app/layout/RM-escola-detail/more-info/school-detail-more-info.html","./src/app/layout/RM-escola-detail/qualifications/school-qualifications.ts","./src/app/layout/RM-escola-detail/qualifications/school-qualifications.html","./src/app/layout/banner-parceiro/banner-parceiro.component.ts","./src/app/layout/banner-parceiro/banner-parceiro.component.html","./src/app/layout/colecao/colecao.component.ts","./src/app/layout/colecao/colecao.component.html","./src/app/layout/diretorio/diretorio.component.ts","./src/app/layout/diretorio/diretorio.component.html","./src/app/layout/edit/geral/geral.component.ts","./src/app/layout/edit/geral/geral.component.html","./src/app/layout/escola-card/escola-card.component.ts","./src/app/layout/escola-card/escola-card.component.html","./src/app/layout/escola-competitors/escola-competitors.component.ts","./src/app/layout/escola-competitors/escola-competitors.component.html","./src/app/layout/escola-detail-new/escola-detail-new.component.ts","./src/app/layout/escola-detail-new/escola-detail-new.component.html","./src/app/layout/escola-filter-all/escola-filter-all.component.ts","./src/app/layout/escola-filter-all/escola-filter-all.component.html","./src/app/layout/escola-filter-header/escola-filter-header.component.ts","./src/app/layout/escola-filter-header/escola-filter-header.component.html","./src/app/layout/escola-filter-listas/escola-filter-listas.component.ts","./src/app/layout/escola-filter-listas/escola-filter-listas.component.html","./src/app/layout/escola-filter-rate/escola-filter-rate.component.ts","./src/app/layout/escola-filter-rate/escola-filter-rate.component.html","./src/app/layout/escola-filter-tags/escola-filter-tags.component.ts","./src/app/layout/escola-filter-tags/escola-filter-tags.component.html","./src/app/layout/escola-gallery/escola-gallery.component.ts","./src/app/layout/escola-gallery/escola-gallery.component.html","./src/app/layout/escola-list-horizontal/escola-list-horizontal.component.ts","./src/app/layout/escola-list-horizontal/escola-list-horizontal.component.html","./src/app/layout/escola-list-vertical/escola-list-vertical.component.ts","./src/app/layout/escola-list-vertical/escola-list-vertical.component.html","./src/app/layout/escola-lista/escola-lista.component.ts","./src/app/layout/escola-lista/escola-lista.component.html","./src/app/layout/escola-map/escola-map.component.ts","./src/app/layout/escola-map/escola-map.component.html","./src/app/layout/escola-products/escola-products.component.ts","./src/app/layout/escola-products/escola-products.component.html","./src/app/layout/escola-result/escola-result.component.ts","./src/app/layout/escola-result/escola-result.component.html","./src/app/layout/escola-score/escola-score.component.ts","./src/app/layout/escola-score/escola-score.component.html","./src/app/layout/escola-video/escola-video.component.ts","./src/app/layout/escola-video/escola-video.component.html","./src/app/layout/layout.component.ts","./src/app/layout/layout.component.html","./src/app/layout/parceiro/parceiro.component.ts","./src/app/layout/parceiro/parceiro.component.html","./src/app/layout/perfil-afinidade/perfil-afinidade.component.ts","./src/app/layout/perfil-afinidade/perfil-afinidade.component.html","./src/app/mapa/mapa.component.ts","./src/app/mapa/mapa.component.html","./src/app/mapa/mapa-loading.html","./src/app/mapa/mapa-criar-diretorio-popup.html","./src/app/navigation/Slider.ts","./src/app/navigation/auth/avatar/avatar.component.ts","./src/app/navigation/auth/forgot-password/forgot-password.component.ts","./src/app/navigation/auth/forgot-password/forgot-password.component.html","./src/app/navigation/auth/login-dialog/dialog-confirm-data.ts","./src/app/navigation/auth/login-dialog/dialog-confirm-data.html","./src/app/navigation/auth/login-dialog/login-dialog.component.ts","./src/app/navigation/auth/login-dialog/dialog-optin.html","./src/app/navigation/auth/login-dialog/login-dialog.component.html","./src/app/navigation/auth/login-dialog/yes-no-dialog.html","./src/app/navigation/auth/one-tap/one-tap.component.ts","./src/app/navigation/auth/one-tap/one-tap.component.html","./src/app/navigation/auth/sign-in/sign-in.component.ts","./src/app/navigation/auth/sign-in/sign-in.component.html","./src/app/navigation/auth/sign-up/sign-up.component.ts","./src/app/navigation/auth/sign-up/sign-up.component.html","./src/app/navigation/auth/verify-email/verify-email.component.ts","./src/app/navigation/auth/verify-email/verify-email.component.html","./src/app/navigation/blur-display/blur-display.component.ts","./src/app/navigation/blur-display/blur-display.component.html","./src/app/navigation/bottom-banner/bottom-banner.component.ts","./src/app/navigation/bottom-banner/bottom-banner.component.html","./src/app/navigation/button-favorite/button-favorite.component.ts","./src/app/navigation/button-favorite/button-favorite.component.html","./src/app/navigation/button-parceiro/button-parceiro.component.ts","./src/app/navigation/button-parceiro/button-parceiro.component.html","./src/app/navigation/button-rating/button-rating.component.ts","./src/app/navigation/button-rating/button-rating.component.html","./src/app/navigation/button-to-top/button-to-top.component.ts","./src/app/navigation/button-to-top/button-to-top.component.html","./src/app/navigation/footer/footer.component.ts","./src/app/navigation/footer/footer.component.html","./src/app/navigation/header/header.component.ts","./src/app/navigation/header/header.component.html","./src/app/navigation/paginator/paginator.component.ts","./src/app/navigation/paginator/paginator.component.html","./src/app/navigation/sidenav/sidenav.component.ts","./src/app/navigation/sidenav/sidenav.component.html","./src/app/navigation/text-bound/text-bound.component.ts","./src/app/navigation/text-bound/text-bound.component.html","./src/app/navigation/tri-state-checkbox/tri-state-checkbox.component.ts","./src/app/navigation/tri-state-checkbox/tri-state-checkbox.component.html","./src/app/navigation/upload-task/upload-task.component.ts","./src/app/navigation/upload-task/upload-task.component.html","./src/app/navigation/uploader/uploader.component.ts","./src/app/navigation/uploader/uploader.component.html","./src/app/page/RM-page-cellep/page-cellep.component.ts","./src/app/page/RM-page-cellep/page-cellep.component.html","./src/app/page/RM-page-funciona/page-funciona.component.ts","./src/app/page/RM-page-funciona/page-funciona.component.html","./src/app/page/RM-page-lista/page-lista.component.ts","./src/app/page/RM-page-lista/page-lista.component.html","./src/app/page/RM-page-parceiros/page-parceiros.component.ts","./src/app/page/RM-page-parceiros/page-parceiros.component.html","./src/app/page/RM-page-perfil/page-perfil.component.ts","./src/app/page/RM-page-perfil/page-perfil.component.html","./src/app/page/RM-page-planos/page-planos.component.ts","./src/app/page/RM-page-planos/page-planos.component.html","./src/app/page/RM-page-politica/page-politica.component.ts","./src/app/page/RM-page-politica/page-politica.component.html","./src/app/page/RM-page-regras/page-regras.component.ts","./src/app/page/RM-page-regras/page-regras.component.html","./src/app/page/RM-page-reviews/page-reviews.component.ts","./src/app/page/RM-page-reviews/page-reviews.component.html","./src/app/page/RM-page-termos/page-termos.component.ts","./src/app/page/RM-page-termos/page-termos.component.html","./src/app/page/page-about/page-about.component.ts","./src/app/page/page-about/page-about.component.html","./src/app/page/page-blog/page-blog.component.ts","./src/app/page/page-blog/page-blog.component.html","./src/app/page/page-colecao/page-colecao.component.ts","./src/app/page/page-colecao/page-colecao.component.html","./src/app/page/page-contato/page-contato.component.ts","./src/app/page/page-contato/page-contato.component.html","./src/app/page/page-diretorio/page-diretorio.component.ts","./src/app/page/page-diretorio/page-diretorio.component.html","./src/app/page/page-duvidas/page-duvidas.component.ts","./src/app/page/page-duvidas/page-duvidas.component.html","./src/app/page/page-escola/page-escola.component.ts","./src/app/page/page-escola/page-escola.component.html","./src/app/page/page-escolas/page-escolas.component.ts","./src/app/page/page-escolas/page-escolas.component.html","./src/app/page/page-home/page-home.component.ts","./src/app/page/page-home/page-home.component.html","./src/app/pipe/url-fixer.pipe.ts","./src/app/pipe/url-normalizer.pipe.ts","./src/app/review/review-detail/review-detail.component.ts","./src/app/review/review-detail/review-detail.component.html","./src/app/review/review-edit/review-edit.component.ts","./src/app/review/review-edit/review-edit.component.html","./src/app/review/review-edit/review-edit-ask.component.html","./src/app/review/review-list/review-list.component.ts","./src/app/review/review-list/review-list.component.html","./src/app/review/review-ranking/review-ranking.component.ts","./src/app/review/review-ranking/review-ranking.component.html","./src/app/routing/routing.module.ts","./src/app/service/Escola.ts","./src/app/service/Map.ts","./src/app/service/NivelEnsino.ts","./src/app/service/Tag.ts","./src/app/service/analytics.service.ts","./src/app/service/cellep.ts","./src/app/service/chat.service.ts","./src/app/service/escola.service.ts","./src/app/service/mailing-builderall.service.ts","./src/app/service/page.service.ts","./src/app/service/pagseguro.service.ts","./src/app/service/parceiro.service.ts","./src/app/service/redirectGuard.ts","./src/app/service/safe.pipe.ts","./src/app/service/script-loader.service.ts","./src/app/service/user.service.ts","./src/app/templates/template-edit/template-edit.component.ts","./src/app/templates/template-edit/template-edit.component.html","./src/app/templates/template-new/template-new.component.ts","./src/app/templates/template-new/template-new.component.html","./src/app/templates/template-old/template-old.component.ts","./src/app/templates/template-old/template-old.component.html","./src/app/user/compras/compras.component.ts","./src/app/user/compras/compras.component.html","./src/app/user/escolas/user-escolas.component.ts","./src/app/user/escolas/user-escolas.component.html","./src/app/user/reviews/reviews.component.ts","./src/app/user/reviews/reviews.component.html","./src/environments/environment.ts","./src/main.ts","./node_modules/moment/locale/ sync ^\\.\\/.*$"],"sourcesContent":["import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core';\r\nimport {Observable, of, Subject} from 'rxjs';\r\nimport {MatPaginator, PageEvent} from '@angular/material/paginator';\r\nimport {UserService} from '../../service/user.service';\r\nimport {Parceiro} from '../../service/Parceiro';\r\nimport {tap} from 'rxjs/operators';\r\nimport firebase from 'firebase/app';\r\nimport {UploadFileData} from '../../navigation/upload-task/upload-task.component';\r\n\r\n@Component({\r\n selector: 'app-lista-parceiro',\r\n templateUrl: './lista-parceiro.component.html',\r\n styleUrls: ['./lista-parceiro.component.scss']\r\n})\r\nexport class ListaParceiroComponent implements OnInit, AfterViewInit {\r\n\r\n parceiroArray: Array = [];\r\n canEdit = false;\r\n saving = false;\r\n editing = false;\r\n @Input() itemCount = 0;\r\n @Input() pageSize = 20;\r\n @Input() filterMessage: string;\r\n @Output() paginatorPage = new EventEmitter();\r\n @Output() afterViewInit = new EventEmitter();\r\n @ViewChild('matPaginator', {static: true}) matPaginator: MatPaginator;\r\n @ViewChild('matPaginatorFooter', {static: true}) matPaginatorFooter: MatPaginator;\r\n\r\n constructor(public userService: UserService) {\r\n this.canEdit = userService.master;\r\n userService.userDataEvent.subscribe(value => {\r\n this.canEdit = (userService.master === true);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.matPaginator._intl.itemsPerPageLabel = 'Parceiros por página:';\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n firebase.functions().httpsCallable('parceiro')({}).then(value => {\r\n if (value == null) {\r\n this.parceiroArray = null;\r\n } else {\r\n this.parceiroArray = value.data;\r\n }\r\n });\r\n }\r\n\r\n updatePaginator(pageEvent: PageEvent): void {\r\n this.matPaginator.pageIndex = pageEvent.pageIndex;\r\n this.matPaginatorFooter.pageIndex = pageEvent.pageIndex;\r\n // console.log(`pageEvent.pageIndex: ${pageEvent.pageIndex}`);\r\n this.paginatorPage.emit(pageEvent);\r\n }\r\n\r\n addParceiro(): void {\r\n // console.log('addParceiro');\r\n const parceiro: Parceiro = {\r\n codigo: null,\r\n nome: null,\r\n logo_path: null,\r\n editing: true\r\n };\r\n this.parceiroArray.unshift(parceiro);\r\n // console.log(`lista: ${JSON.stringify(this.parceiroArray)}`);\r\n }\r\n\r\n parceiroRemove(parceiro: Parceiro): void {\r\n if (parceiro == null || parceiro.codigo == null) {\r\n const i = this.parceiroArray.indexOf(parceiro);\r\n this.parceiroArray.splice(i, 1);\r\n }\r\n firebase.functions().httpsCallable('parceiro_remove')(parceiro).then(value => {\r\n this.saving = false;\r\n if (value.data != null) {\r\n if (parceiro.codigo === value.data[0].codigo) {\r\n const i = this.parceiroArray.indexOf(parceiro);\r\n this.parceiroArray.splice(i, 1);\r\n }\r\n }\r\n }).catch(reason => {\r\n this.saving = false;\r\n });\r\n }\r\n\r\n parceiroImage(parceiro: Parceiro): void {\r\n\r\n }\r\n\r\n editParceiro(parceiro: Parceiro): void {\r\n parceiro.editing = true;\r\n }\r\n\r\n saveParceiro(parceiro: Parceiro): void {\r\n parceiro.editing = false;\r\n this.saving = true;\r\n firebase.functions().httpsCallable('parceiro_set')(parceiro).then(value => {\r\n if (value.data != null) {\r\n if (parceiro.codigo === value.data[0].codigo) {\r\n this.saving = false;\r\n const par = value.data[0];\r\n const i = this.parceiroArray.indexOf(parceiro);\r\n this.parceiroArray[i] = par;\r\n }\r\n }\r\n }).catch(reason => {\r\n console.error('Error: ' + JSON.stringify(reason));\r\n this.saving = false;\r\n });\r\n }\r\n\r\n uploadDone(parceiro: Parceiro, $event: UploadFileData): void {\r\n parceiro.logo_path = $event.thumb;\r\n }\r\n}\r\n","\r\n \r\n
\r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \"Logo\r\n
\r\n

{{parceiro.nome}}

\r\n \r\n \r\n \r\n \r\n Nome do Parceiro\r\n \r\n \r\n \r\n Site do Parceiro\r\n \r\n \r\n \r\n Exibir na página da Escola\r\n \r\n \r\n Exibir na página de Parceiros\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n {{this.filterMessage}}\r\n \r\n \r\n
\r\n
\r\n
\r\n","import {Component, OnInit} from '@angular/core';\r\nimport firebase from 'firebase/app';\r\nimport {MatSnackBar} from '@angular/material/snack-bar';\r\nimport {Observable, of} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-lista-proprietario',\r\n templateUrl: './lista-proprietario.component.html',\r\n styleUrls: ['./lista-proprietario.component.css']\r\n})\r\nexport class ListaProprietarioComponent implements OnInit {\r\n\r\n loading = true;\r\n filteredData: any[];\r\n displayedColumns = [\r\n 'codigo', 'usuario_nome', 'email', 'escola_nome', 'inep', 'permissao', 'creation_date', 'actions'\r\n ];\r\n\r\n constructor(private snackBar: MatSnackBar) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.loading = true;\r\n firebase.functions().httpsCallable('usuario_escola')().then(value1 => {\r\n this.filteredData = value1.data;\r\n this.loading = false;\r\n });\r\n }\r\n\r\n setPermission(row: any, permissao: string): void {\r\n firebase.functions().httpsCallable('usuario_escola_update')({codigo: row.codigo, permissao}).then(value1 => {\r\n // this.filteredData = value1.data;\r\n // (window as any)._prop = value1.data;\r\n\r\n row.permissao = value1.data.permissao;\r\n\r\n // this.filteredData.pipe(map((value) => {\r\n // for (const item of value) {\r\n // if (item.codigo === value1.data.codigo) {\r\n // item.permissao = value1.data.permissao;\r\n // }\r\n // }\r\n // }));\r\n this.snackBar.open(value1.data.message, 'Ok', {duration: 2000});\r\n });\r\n }\r\n\r\n removePermission(row: any): void {\r\n\r\n firebase.functions().httpsCallable('usuario_escola_remove')({codigo: row.codigo}).then(value1 => {\r\n this.snackBar.open(value1.data.message, 'Ok', {duration: 2000});\r\n if (value1.data?.codigo) {\r\n // console.log('value1.data?.codigo: ' + value1.data?.codigo);\r\n // this.filteredData.pipe(map(value => {\r\n // console.log('here');\r\n // const c = value.indexOf(row);\r\n // console.log('c: ' + c);\r\n // value.splice(c, 1);\r\n // console.log('value: ' + JSON.stringify(value));\r\n // this.filteredData = of(value);\r\n // })).subscribe();\r\n console.log('filteredData: ' + JSON.stringify(this.filteredData));\r\n\r\n const index = this.filteredData.indexOf(row);\r\n this.filteredData.splice(index, 1);\r\n this.filteredData = [...this.filteredData];\r\n\r\n // console.log(JSON.stringify(this.filteredData));\r\n // console.log(JSON.stringify(this.filteredData.splice(index, 1)));\r\n // const data = this.filteredData;\r\n // this.filteredData = null;\r\n // console.log(JSON.stringify(this.filteredData));\r\n // this.filteredData = data;\r\n }\r\n });\r\n }\r\n}\r\n\r\n// export interface UsuarioEscola {\r\n// codigo: number;\r\n// cod_escola: number;\r\n// usuario_nome?: string;\r\n// escola_nome?: string;\r\n// uid: string;\r\n// permissao: string;\r\n// creation_date: any;\r\n// }\r\n","
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
Cód.{{row.codigo}}Usuario{{row.usuario_nome}}e-mail{{row.email}}Escola\r\n {{row.escola_nome}}\r\n INEP\r\n {{row.inep}}\r\n Permissão{{row.permissao}}Criado{{row.creation_date | date:'short'}}Ações\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { UserService } from '../../service/user.service';\r\nimport { Router } from '@angular/router';\r\nimport firebase from 'firebase/app';\r\n\r\n@Component({\r\n selector: 'app-nova-escola',\r\n templateUrl: './nova-escola.component.html'\r\n})\r\nexport class NovaEscolaComponent implements OnInit {\r\n\r\n canEdit = false;\r\n\r\n constructor(public userService: UserService, private _router: Router) {\r\n this.canEdit = userService.master;\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n if (this.canEdit)\r\n this.createSchool();\r\n else\r\n this._router.navigate(['/']);\r\n }\r\n\r\n async createSchool() {\r\n const schoolResp = await firebase.functions().httpsCallable('escola_add')({})\r\n console.log('schoolId', schoolResp)\r\n\r\n this._router.navigate(['/escolas', schoolResp.data, 'Nova-Escola']);\r\n }\r\n\r\n}\r\n","
\r\n Espere...\r\n
","import {CollectionViewer, SelectionChange, DataSource} from '@angular/cdk/collections';\r\nimport {FlatTreeControl} from '@angular/cdk/tree';\r\nimport {Component, Injectable} from '@angular/core';\r\nimport {BehaviorSubject, merge, Observable, timer} from 'rxjs';\r\nimport {debounceTime, finalize, map, switchMap, tap} from 'rxjs/operators';\r\nimport {Colecao} from '../../service/Colecao';\r\nimport {Diretorio} from '../../service/Diretorio';\r\nimport firebase from 'firebase';\r\nimport {Escola} from '../../service/Escola';\r\nimport {FormControl} from '@angular/forms';\r\nimport {AngularFireStorage, AngularFireUploadTask} from '@angular/fire/storage';\r\n\r\ninterface Summary {\r\n type: 'Summary' | 'Coleção' | 'Diretório' | 'Escola';\r\n group?: 'Coleção' | 'Diretório' | 'Escola';\r\n cod_colecao?: number;\r\n cod_diretorio?: number;\r\n prioridade?: number;\r\n codigo?: number;\r\n count?: number;\r\n}\r\n\r\n/** Flat node with expandable and level information */\r\nexport class DynamicFlatNode {\r\n old_value?: any;\r\n hideImage?: any;\r\n\r\n constructor(\r\n public item: Summary,\r\n public expandable = false,\r\n public status: 'removing' | 'editing' | 'loading' = null) {\r\n }\r\n}\r\n\r\n/**\r\n * Database for dynamic data. When expanding a node in the tree, the data source will need to fetch\r\n * the descendants data from the database.\r\n */\r\n@Injectable({providedIn: 'root'})\r\nexport class DynamicDatabase {\r\n // dataMap = new Map([\r\n // ['Fruits', ['Apple', 'Orange', 'Banana']],\r\n // ['Vegetables', ['Tomato', 'Potato', 'Onion']],\r\n // ['Apple', ['Fuji', 'Macintosh']],\r\n // ['Onion', ['Yellow', 'White', 'Purple']]\r\n // ]);\r\n\r\n // rootLevelNodes: string[] = ['Fruits', 'Vegetables'];\r\n rootLevelNodes: Array = null;\r\n\r\n /** Initial data from database */\r\n async initialData(): Promise {\r\n\r\n let ret: DynamicFlatNode[];\r\n\r\n await firebase.functions().httpsCallable('colecao')().then(value => {\r\n this.rootLevelNodes = value.data;\r\n // this.loading = false;\r\n ret = this.rootLevelNodes.map(item => {\r\n item.type = 'Coleção';\r\n return new DynamicFlatNode(item, true);\r\n });\r\n });\r\n return ret;\r\n }\r\n\r\n getChildren(node: Colecao | Diretorio | Escola): Colecao[] | Diretorio[] | Escola[] {\r\n switch (node.type) {\r\n case 'Coleção':\r\n return node.diretorio;\r\n case 'Diretório':\r\n return node.escola;\r\n case 'Escola':\r\n return null;\r\n }\r\n }\r\n\r\n isExpandable(node: Colecao | Diretorio | Escola): boolean {\r\n switch (node.type) {\r\n case 'Coleção':\r\n return node.diretorio !== [];\r\n case 'Diretório':\r\n return node.escola !== [];\r\n }\r\n return false;\r\n }\r\n}\r\n\r\n/**\r\n * File database, it can build a tree structured Json object from string.\r\n * Each node in Json object represents a file or a directory. For a file, it has filename and type.\r\n * For a directory, it has filename and children (a list of files or directories).\r\n * The input will be a json object string, and the output is a list of `FileNode` with nested\r\n * structure.\r\n */\r\nexport class DynamicDataSource implements DataSource {\r\n\r\n dataChange = new BehaviorSubject([]);\r\n\r\n get data(): DynamicFlatNode[] {\r\n return this.dataChange.value;\r\n }\r\n\r\n set data(value: DynamicFlatNode[]) {\r\n this._treeControl.dataNodes = value;\r\n this.dataChange.next(value);\r\n }\r\n\r\n constructor(private _treeControl: FlatTreeControl,\r\n private _database: DynamicDatabase) {\r\n }\r\n\r\n connect(collectionViewer: CollectionViewer): Observable {\r\n this._treeControl.expansionModel.changed.subscribe(change => {\r\n if ((change as SelectionChange).added ||\r\n (change as SelectionChange).removed) {\r\n this.handleTreeControl(change as SelectionChange);\r\n }\r\n });\r\n\r\n return merge(collectionViewer.viewChange, this.dataChange).pipe(map(() => this.data));\r\n }\r\n\r\n disconnect(collectionViewer: CollectionViewer): void {\r\n }\r\n\r\n /** Handle expand/collapse behaviors */\r\n handleTreeControl(change: SelectionChange): void {\r\n if (change.added) {\r\n change.added.forEach(node => this.toggleNode(node, true));\r\n }\r\n if (change.removed) {\r\n change.removed.slice().reverse().forEach(node => this.toggleNode(node, false));\r\n }\r\n }\r\n\r\n /**\r\n * Toggle the node, remove from display list\r\n */\r\n toggleNode(node: DynamicFlatNode, expand: boolean): void {\r\n // const children = this._database.getChildren(node.item);\r\n const index = this.data.indexOf(node);\r\n\r\n if (expand) {\r\n node.status = 'loading';\r\n switch (node.item.type) {\r\n case 'Coleção':\r\n const cod_colecao = node.item.codigo;\r\n firebase.functions().httpsCallable('diretorio')({cod_colecao}).then(value => {\r\n const nodes = value.data.map(item => {\r\n item.type = 'Diretório';\r\n item.cod_colecao = cod_colecao;\r\n return new DynamicFlatNode(item, true);\r\n }\r\n );\r\n const summary: Summary = {\r\n type: 'Summary',\r\n group: 'Coleção',\r\n cod_colecao,\r\n count: nodes.length,\r\n };\r\n nodes.push(new DynamicFlatNode(summary));\r\n this.data.splice(index + 1, 0, ...nodes);\r\n // notify the change\r\n this.dataChange.next(this.data);\r\n node.status = null;\r\n });\r\n break;\r\n case 'Diretório':\r\n const cod_diretorio = node.item.codigo;\r\n firebase.functions().httpsCallable('diretorio_escola')({cod_diretorio}).then(value => {\r\n const nodes = value.data.map(item => {\r\n item.type = 'Escola';\r\n item.cod_diretorio = cod_diretorio;\r\n console.log(`escola ${item.nome} - cod_diretorio: ${item.cod_diretorio}`);\r\n return new DynamicFlatNode(item, false);\r\n });\r\n const summary: Summary = {\r\n type: 'Summary',\r\n group: 'Diretório',\r\n cod_diretorio,\r\n count: nodes.length,\r\n };\r\n nodes.push(new DynamicFlatNode(summary));\r\n this.data.splice(index + 1, 0, ...nodes);\r\n // notify the change\r\n this.dataChange.next(this.data);\r\n node.status = null;\r\n });\r\n break;\r\n }\r\n\r\n } else {\r\n let count = 0;\r\n const nodeLevel = TreeColecaoComponent.getLevel(node);\r\n\r\n for (let i = index + 1;\r\n i < this.data.length && (TreeColecaoComponent.getLevel(this.data[i]) > nodeLevel);\r\n i++, count++) {\r\n // console.log(i + '. ' + this.data[i].item.type);\r\n }\r\n this.data.splice(index + 1, count);\r\n // notify the change\r\n this.dataChange.next(this.data);\r\n node.status = null;\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * @title Tree with dynamic data\r\n */\r\n@Component({\r\n selector: 'app-tree-colecao',\r\n templateUrl: './tree-colecao.component.html',\r\n styleUrls: ['tree-colecao.component.scss']\r\n})\r\nexport class TreeColecaoComponent {\r\n // Coleção\r\n isLoadingColecao = false;\r\n isAddingColecao = false;\r\n // Diretório\r\n isLoadingDiretorio = false;\r\n diretorioControl = new FormControl();\r\n loadingDiretorioMessage: string = null;\r\n diretorios: Diretorio[];\r\n // Escola\r\n isLoadingEscola = false;\r\n escolaControl = new FormControl();\r\n loadingEscolaMessage: string = null;\r\n escolas: Escola[];\r\n\r\n constructor(dynamicDatabase: DynamicDatabase, private storage: AngularFireStorage) {\r\n this.treeControl = new FlatTreeControl(TreeColecaoComponent.getLevel, this.isExpandable);\r\n this.dataSource = new DynamicDataSource(this.treeControl, dynamicDatabase);\r\n\r\n this.isLoadingColecao = true;\r\n\r\n dynamicDatabase.initialData().then(value => {\r\n this.dataSource.data = value;\r\n this.isLoadingColecao = false;\r\n });\r\n\r\n this.diretorioControl.valueChanges.pipe(\r\n debounceTime(1000),\r\n switchMap(value => {\r\n // the value can be a string or a Escola type\r\n if (value.length < 3) {\r\n this.loadingDiretorioMessage = `Digite ao menos 3 letras para pesquisar.`;\r\n } else {\r\n this.isLoadingDiretorio = true;\r\n this.loadingDiretorioMessage = `Procurando diretórios com nome '${value}'`;\r\n let nome: string;\r\n if (typeof value === 'string') {\r\n nome = value;\r\n } else {\r\n nome = value.nome;\r\n }\r\n firebase.functions().httpsCallable('diretorio')({nome}).then(result => {\r\n this.isLoadingDiretorio = false;\r\n const diretorioFiltered: Diretorio[] = result.data;\r\n this.diretorios = [];\r\n if (diretorioFiltered?.length > 0) {\r\n diretorioFiltered.forEach(resultItem => {\r\n const duplicate = false;\r\n // this.colecao.diretorio.forEach(currentDiretorioList => {\r\n // if (resultItem.codigo === currentDiretorioList.codigo) {\r\n // duplicate = true;\r\n // }\r\n // });\r\n if (!duplicate) {\r\n this.diretorios.push(resultItem);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n return [];\r\n })\r\n ).subscribe();\r\n\r\n this.escolaControl.valueChanges.pipe(\r\n debounceTime(1000),\r\n switchMap(value => {\r\n // the value can be a string or a Escola type\r\n if (value.length < 3) {\r\n this.loadingEscolaMessage = `Digite ao menos 3 letras para pesquisar.`;\r\n } else {\r\n this.isLoadingEscola = true;\r\n this.loadingEscolaMessage = `Procurando escolas com nome '${value}'`;\r\n let nome: string;\r\n if (typeof value === 'string') {\r\n nome = value;\r\n } else {\r\n nome = value.nome;\r\n }\r\n firebase.functions().httpsCallable('nome_escola')({nome}).then(result => {\r\n this.isLoadingEscola = false;\r\n const escolaFiltered: Escola[] = result.data;\r\n this.escolas = [];\r\n if (escolaFiltered?.length > 0) {\r\n escolaFiltered.forEach(resultItem => {\r\n const duplicate = false;\r\n // this.colecao.escola.forEach(currentEscolaList => {\r\n // if (resultItem.codigo === currentEscolaList.codigo) {\r\n // duplicate = true;\r\n // }\r\n // });\r\n if (!duplicate) {\r\n this.escolas.push(resultItem);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n return [];\r\n })\r\n ).subscribe();\r\n }\r\n\r\n treeControl: FlatTreeControl;\r\n\r\n dataSource: DynamicDataSource;\r\n\r\n public static getLevel(node: DynamicFlatNode): number {\r\n switch (node.item.type) {\r\n case 'Coleção':\r\n return 0;\r\n case 'Diretório':\r\n return 1;\r\n case 'Escola':\r\n return 2;\r\n case 'Summary':\r\n switch (node.item.group) {\r\n case 'Coleção':\r\n return 1;\r\n case 'Diretório':\r\n return 2;\r\n case 'Escola':\r\n return 3;\r\n }\r\n return 1;\r\n }\r\n return 0;\r\n }\r\n\r\n isExpandable = (node: DynamicFlatNode) => node.expandable;\r\n\r\n hasChild = (index: number, nodeData: DynamicFlatNode) => nodeData.expandable;\r\n\r\n displayDiretorio(item: any): string {\r\n if (item == null) {\r\n return null;\r\n } else if (item.nome) {\r\n return item.nome;\r\n } else {\r\n return item;\r\n }\r\n }\r\n\r\n addDiretorio(node: DynamicFlatNode, diretorio: Diretorio = null): void {\r\n // this.menuAddDiretorio.closeMenu();\r\n\r\n if (diretorio == null) {\r\n diretorio = {\r\n type: 'Diretório',\r\n codigo: null,\r\n nome: 'Novo Diretório',\r\n escola: [],\r\n ativo: true,\r\n randomico: true,\r\n cod_colecao: node.item.cod_colecao,\r\n // prioridade: (node.diretorio.length + 1);\r\n };\r\n } else {\r\n diretorio.cod_colecao = node.item.cod_colecao;\r\n // diretorio.prioridade = (node.diretorio.length + 1);\r\n }\r\n\r\n firebase.functions().httpsCallable('diretorio_set')(diretorio).then(value => {\r\n let index: number;\r\n for (index = 0; index <= this.dataSource.data.length && this.dataSource.data[index] !== node; index++) {\r\n // Find \"this\" node index\r\n // console.log('finding... ' + index + '\\t' + this.dataSource.data[index].item.type +\r\n // ' (cod: ' + this.dataSource.data[index].item.codigo + ')');\r\n }\r\n const nodes = value.data.map(item => {\r\n item.type = 'Diretório';\r\n item.cod_colecao = node.item.cod_colecao;\r\n return new DynamicFlatNode(item, true);\r\n }\r\n );\r\n this.dataSource.data.splice(index, 0, ...nodes);\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n });\r\n }\r\n\r\n displayEscola(item: any): string {\r\n if (item == null) {\r\n return null;\r\n } else if (item.nome) {\r\n return item.nome;\r\n } else {\r\n return item;\r\n }\r\n }\r\n\r\n addEscola(node: DynamicFlatNode, escola: Escola = null): void {\r\n firebase.functions().httpsCallable('diretorio_escola_set')\r\n ({cod_diretorio: node.item.cod_diretorio, cod_escola: escola.codigo}).then(value => {\r\n let index: number;\r\n for (index = 0; index <= this.dataSource.data.length && this.dataSource.data[index] !== node; index++) {\r\n // Find \"this\" node index\r\n // console.log('finding... ' + index + '\\t' + this.dataSource.data[index].item.type +\r\n // ' (cod: ' + this.dataSource.data[index].item.codigo + ')');\r\n }\r\n const nodes = value.data.map(item => {\r\n item = {...escola};\r\n item.type = 'Escola';\r\n item.cod_colecao = node.item.codigo;\r\n return new DynamicFlatNode(item, false);\r\n }\r\n );\r\n this.dataSource.data.splice(index, 0, ...nodes);\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n });\r\n }\r\n\r\n addColecao(): void {\r\n this.isAddingColecao = true;\r\n firebase.functions().httpsCallable('colecao_add')().then(value => {\r\n const nodes = value.data.map(item => {\r\n item.type = 'Coleção';\r\n return new DynamicFlatNode(item, true);\r\n }\r\n );\r\n this.dataSource.data.splice(0, 0, ...nodes);\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n this.isAddingColecao = false;\r\n });\r\n }\r\n\r\n remove(node: DynamicFlatNode): void {\r\n node.status = 'removing';\r\n switch (node.item.type) {\r\n case 'Coleção':\r\n node.status = null;\r\n firebase.functions().httpsCallable('colecao_remove')(node.item).then(value => {\r\n if (value.data?.length > 0) {\r\n this.dataSource.data.splice(this.dataSource.data.indexOf(node), 1);\r\n this.removeChildren(node);\r\n node.status = null;\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n }\r\n });\r\n break;\r\n case 'Diretório':\r\n node.status = null;\r\n firebase.functions().httpsCallable('colecao_diretorio_remove')\r\n ({cod_colecao: node.item.cod_colecao, cod_diretorio: node.item.codigo}).then(value => {\r\n if (value.data?.length > 0) {\r\n this.dataSource.data.splice(this.dataSource.data.indexOf(node), 1);\r\n this.removeChildren(node);\r\n node.status = null;\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n }\r\n });\r\n break;\r\n case 'Escola':\r\n node.status = null;\r\n firebase.functions().httpsCallable('diretorio_escola_remove')({\r\n cod_diretorio: node.item.cod_diretorio,\r\n cod_escola: node.item.codigo\r\n }).then(value => {\r\n if (value.data?.length > 0) {\r\n this.dataSource.data.splice(this.dataSource.data.indexOf(node), 1);\r\n this.removeChildren(node);\r\n node.status = null;\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n }\r\n });\r\n break;\r\n }\r\n }\r\n\r\n delete(node: DynamicFlatNode): void {\r\n switch (node.item.type) {\r\n case 'Coleção':\r\n node.status = null;\r\n firebase.functions().httpsCallable('colecao_remove')(node.item).then(value => {\r\n if (value.data?.length > 0) {\r\n this.dataSource.data.splice(this.dataSource.data.indexOf(node), 1);\r\n this.removeChildren(node);\r\n node.status = null;\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n }\r\n });\r\n break;\r\n case 'Diretório':\r\n node.status = null;\r\n firebase.functions().httpsCallable('colecao_diretorio_remove')\r\n ({cod_colecao: node.item.cod_colecao, cod_diretorio: node.item.codigo}).then(value => {\r\n if (value.data?.length > 0) {\r\n this.dataSource.data.splice(this.dataSource.data.indexOf(node), 1);\r\n this.removeChildren(node);\r\n node.status = null;\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n }\r\n });\r\n break;\r\n case 'Escola':\r\n node.status = null;\r\n firebase.functions().httpsCallable('diretorio_escola_remove')({\r\n cod_diretorio: node.item.cod_diretorio,\r\n cod_escola: node.item.codigo\r\n }).then(value => {\r\n if (value.data?.length > 0) {\r\n this.dataSource.data.splice(this.dataSource.data.indexOf(node), 1);\r\n this.removeChildren(node);\r\n node.status = null;\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n }\r\n });\r\n break;\r\n }\r\n }\r\n\r\n private removeChildren(node: DynamicFlatNode): void {\r\n const data = this.dataSource.data;\r\n let count = 0;\r\n const nodeLevel = TreeColecaoComponent.getLevel(node);\r\n\r\n const index = data.indexOf(node);\r\n for (let i = index + 1;\r\n i < data.length && (TreeColecaoComponent.getLevel(data[i]) > nodeLevel);\r\n i++, count++) {\r\n }\r\n data.splice(index + 1, count);\r\n }\r\n\r\n edit(node: DynamicFlatNode): void {\r\n node.status = 'editing';\r\n node.old_value = {...node.item};\r\n }\r\n\r\n save(node: DynamicFlatNode): void {\r\n switch (node.item.type) {\r\n case 'Coleção':\r\n node.status = 'loading';\r\n firebase.functions().httpsCallable('colecao_set')(node.item).then(value => {\r\n const nodes = value.data.map(item => {\r\n item.type = 'Coleção';\r\n return new DynamicFlatNode(item, true);\r\n }\r\n );\r\n this.removeChildren(node);\r\n this.dataSource.data.splice(this.dataSource.data.indexOf(node), 1, ...nodes);\r\n node.status = null;\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n });\r\n break;\r\n case 'Diretório':\r\n node.status = 'loading';\r\n firebase.functions().httpsCallable('diretorio_set')(node.item).then(value => {\r\n const nodes = value.data.map(item => {\r\n item.type = 'Diretório';\r\n return new DynamicFlatNode(item, true);\r\n }\r\n );\r\n this.removeChildren(node);\r\n this.dataSource.data.splice(this.dataSource.data.indexOf(node), 1, ...nodes);\r\n node.status = null;\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n });\r\n break;\r\n break;\r\n case 'Escola':\r\n node.status = 'loading';\r\n firebase.functions().httpsCallable('diretorio_escola_set')\r\n ({cod_diretorio: node.item.cod_diretorio, cod_escola: node.item.codigo, prioridade: node.item.prioridade}).then(value => {\r\n node.status = null;\r\n node.status = null;\r\n // notify the change\r\n this.dataSource.dataChange.next(this.dataSource.data);\r\n });\r\n break;\r\n }\r\n }\r\n\r\n cancel(node: DynamicFlatNode): void {\r\n\r\n // CANCEL\r\n node.item = node.old_value;\r\n node.status = null;\r\n\r\n // Refresh\r\n // switch (node.item.type) {\r\n // case 'Coleção':\r\n // node.status = 'loading';\r\n // firebase.functions().httpsCallable('colecao')({codigo: node.item.codigo}).then(value => {\r\n // const nodes = value.data.map(item => {\r\n // item.type = 'Coleção';\r\n // return new DynamicFlatNode(item, true);\r\n // }\r\n // );\r\n // this.removeChildren(node);\r\n // this.dataSource.data.splice(this.dataSource.data.indexOf(node), 1, ...nodes);\r\n // node.status = null;\r\n // // notify the change\r\n // this.dataSource.dataChange.next(this.dataSource.data);\r\n // });\r\n // case 'Diretório':\r\n // node.status = 'loading';\r\n // firebase.functions().httpsCallable('diretorio')(node.item).then(value => {\r\n // const nodes = value.data.map(item => {\r\n // item.type = 'Diretório';\r\n // return new DynamicFlatNode(item, true);\r\n // }\r\n // );\r\n // this.removeChildren(node);\r\n // this.dataSource.data.splice(this.dataSource.data.indexOf(node), 1, ...nodes);\r\n // node.status = null;\r\n // // notify the change\r\n // this.dataSource.dataChange.next(this.dataSource.data);\r\n // });\r\n // break;\r\n // case 'Escola':\r\n // node.status = 'loading';\r\n // firebase.functions().httpsCallable('diretorio_escola')\r\n // ({cod_diretorio: node.item.cod_diretorio, cod_escola: node.item.codigo, prioridade: node.item.prioridade}).then(value => {\r\n // node.status = null;\r\n // // notify the change\r\n // this.dataSource.dataChange.next(this.dataSource.data);\r\n // });\r\n // break;\r\n // }\r\n }\r\n\r\n getLevel(node: DynamicFlatNode): number {\r\n if (node.item.type === 'Summary') {\r\n return 0;\r\n }\r\n return TreeColecaoComponent.getLevel(node);\r\n }\r\n\r\n removeTooltip(node): string {\r\n if (node.item.type === 'Coleção') {\r\n }\r\n switch (node.item.type) {\r\n case 'Coleção':\r\n return 'Coleções são removidas permanentemente';\r\n case 'Diretório':\r\n return 'Retirar esse diretório da Coleção';\r\n case 'Escola':\r\n return 'Retirar essa escola do Diretório';\r\n }\r\n }\r\n\r\n imageUpload(node: DynamicFlatNode, target: any): void {\r\n const file: File = target.files[0];\r\n // The storage path\r\n const fileName = file.name;\r\n const extention = fileName.substr(fileName.lastIndexOf('.'));\r\n const path = `colecao/thumb_${node.item.codigo}${extention}`;\r\n\r\n // Reference to storage bucket\r\n const ref = this.storage.ref(path);\r\n\r\n // The main task\r\n const task: AngularFireUploadTask = this.storage.upload(path, file);\r\n\r\n task.then(a => {\r\n node.hideImage = true;\r\n const t = timer(5000);\r\n t.subscribe(value => {\r\n console.log('reloadImage');\r\n node.hideImage = new Date().getDate();\r\n });\r\n });\r\n }\r\n\r\n imageError(node: DynamicFlatNode): void {\r\n // console.log('image error for:' + node.item.codigo);\r\n node.hideImage = true;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {{node.item.type}}\r\n \r\n \r\n \r\n
\r\n \r\n Descrição\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n Prioridade\r\n \r\n \r\n \r\n Destaque\r\n \r\n \r\n Randômico\r\n \r\n INEP: {{node.item.inep}}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n \r\n \r\n Diretório\r\n \r\n \r\n \r\n \r\n \r\n {{loadingDiretorioMessage}}\r\n \r\n \r\n \r\n {{diretorio.nome}}\r\n Cód: {{diretorio.codigo}}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Escola\r\n \r\n \r\n \r\n \r\n \r\n {{loadingEscolaMessage}}\r\n \r\n \r\n \r\n {{escola.nome}}\r\n INEP: {{escola.codigo}}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n","import { AfterViewInit, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css'],\r\n})\r\nexport class AppComponent implements OnInit, AfterViewInit {\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n ngAfterViewInit(): void {}\r\n onActivate(): void {\r\n window.scroll(0, 0);\r\n }\r\n}\r\n","\r\n","import { BrowserModule, DomSanitizer } from '@angular/platform-browser';\r\nimport { ShareButtonsModule } from 'ngx-sharebuttons/buttons';\r\nimport { ShareIconsModule } from 'ngx-sharebuttons/icons';\r\nimport { LOCALE_ID, NgModule } from '@angular/core';\r\nimport { environment } from '../environments/environment';\r\nimport { AppComponent } from './app.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatSidenavModule } from '@angular/material/sidenav';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule, MatIconRegistry } from '@angular/material/icon';\r\nimport { RoutingModule } from './routing/routing.module';\r\nimport { HeaderComponent } from './navigation/header/header.component';\r\nimport { LayoutComponent } from './layout/layout.component';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { SidenavComponent } from './navigation/sidenav/sidenav.component';\r\nimport { PageAboutComponent } from './page/page-about/page-about.component';\r\nimport { PageHomeComponent } from './page/page-home/page-home.component';\r\nimport { PageContatoComponent } from './page/page-contato/page-contato.component';\r\nimport { PageEscolaComponent } from './page/page-escola/page-escola.component';\r\nimport { PageDuvidasComponent } from './page/page-duvidas/page-duvidas.component';\r\nimport { PagePoliticaComponent } from './page/RM-page-politica/page-politica.component';\r\nimport { PageRegrasComponent } from './page/RM-page-regras/page-regras.component';\r\nimport { PageTermosComponent } from './page/RM-page-termos/page-termos.component';\r\nimport { MapaComponent, MapaCriarDiretorioPopup, MapaLoading } from './mapa/mapa.component';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { EscolaCardComponent } from './layout/escola-card/escola-card.component';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { EscolaListHorizontalComponent } from './layout/escola-list-horizontal/escola-list-horizontal.component';\r\nimport { FooterComponent } from './navigation/footer/footer.component';\r\nimport { EscolaDetailComponent, DialogMotivo, DialogRequestInfo, DialogRequestInfoResponse, BottomSheetInfo } from './layout/RM-escola-detail/escola-detail.component';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { MatDividerModule } from '@angular/material/divider';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { EscolaResultComponent } from './layout/escola-result/escola-result.component';\r\nimport { EscolaFilterTagsComponent } from './layout/escola-filter-tags/escola-filter-tags.component';\r\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { NgxSliderModule } from '@angular-slider/ngx-slider';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { RatingModule } from 'ngx-bootstrap/rating';\r\nimport { EscolaFilterRateComponent } from './layout/escola-filter-rate/escola-filter-rate.component';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\r\nimport { ReviewDetailComponent } from './review/review-detail/review-detail.component';\r\nimport { EscolaMapComponent } from './layout/escola-map/escola-map.component';\r\nimport { ReviewEditComponent, ReviewEditAskComponent } from './review/review-edit/review-edit.component';\r\nimport { ReviewListComponent } from './review/review-list/review-list.component';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatBadgeModule } from '@angular/material/badge';\r\nimport { EscolaFilterListasComponent } from './layout/escola-filter-listas/escola-filter-listas.component';\r\nimport { PagePerfilComponent } from './page/RM-page-perfil/page-perfil.component';\r\nimport { PageEscolasComponent } from './page/page-escolas/page-escolas.component';\r\nimport { PageReviewsComponent } from './page/RM-page-reviews/page-reviews.component';\r\nimport { AngularFireModule } from '@angular/fire';\r\nimport { NgxMaskModule, IConfig } from 'ngx-mask';\r\nimport { USE_EMULATOR as USE_AUTH_EMULATOR } from '@angular/fire/auth';\r\nimport { USE_EMULATOR as USE_DATABASE_EMULATOR } from '@angular/fire/database';\r\nimport { USE_EMULATOR as USE_FIRESTORE_EMULATOR } from '@angular/fire/firestore';\r\nimport { USE_EMULATOR as USE_FUNCTIONS_EMULATOR } from '@angular/fire/functions';\r\nimport { DropzoneDirective } from './dropzone.directive';\r\nimport { UploaderComponent } from './navigation/uploader/uploader.component';\r\nimport { UploadTaskComponent } from './navigation/upload-task/upload-task.component';\r\nimport { GalleryModule } from 'ng-gallery';\r\nimport { LightboxModule } from 'ng-gallery/lightbox';\r\nimport { EscolaGalleryComponent } from './layout/escola-gallery/escola-gallery.component';\r\nimport { EscolaCompetitorsComponent } from './layout/escola-competitors/escola-competitors.component';\r\nimport { ComprasComponent } from './user/compras/compras.component';\r\nimport { UserEscolasComponent } from './user/escolas/user-escolas.component';\r\nimport { ReviewsComponent } from './user/reviews/reviews.component';\r\nimport { EscolaListVerticalComponent } from './layout/escola-list-vertical/escola-list-vertical.component';\r\nimport { PageFuncionaComponent } from './page/RM-page-funciona/page-funciona.component';\r\nimport { PagePlanosComponent } from './page/RM-page-planos/page-planos.component';\r\nimport { SlickCarouselModule } from 'ngx-slick-carousel';\r\nimport { ButtonToTopComponent } from './navigation/button-to-top/button-to-top.component';\r\nimport { EscolaFilterAllComponent } from './layout/escola-filter-all/escola-filter-all.component';\r\nimport { MatSliderModule } from '@angular/material/slider';\r\nimport { CommonModule, registerLocaleData, DatePipe } from '@angular/common';\r\nimport localeBr from '@angular/common/locales/pt';\r\nimport { SafePipe } from './service/safe.pipe';\r\nimport { RouterModule } from '@angular/router';\r\nimport { TextBoundComponent } from './navigation/text-bound/text-bound.component';\r\nimport { ReviewRankingComponent } from './review/review-ranking/review-ranking.component';\r\nimport { ButtonFavoriteComponent } from './navigation/button-favorite/button-favorite.component';\r\nimport { EscolaProductsComponent } from './layout/escola-products/escola-products.component';\r\nimport { AngularFireAnalyticsModule } from '@angular/fire/analytics';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { ListaProprietarioComponent } from './admin/lista-proprietario/lista-proprietario.component';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatTreeModule } from '@angular/material/tree';\r\nimport { NgxMaterialTimepickerModule } from 'ngx-material-timepicker';\r\nimport { NgcCookieConsentConfig, NgcCookieConsentModule } from 'ngx-cookieconsent';\r\nimport { PageCellepComponent } from './page/RM-page-cellep/page-cellep.component';\r\nimport { PageBlogComponent } from './page/page-blog/page-blog.component';\r\nimport { BannerParceiroComponent } from './layout/banner-parceiro/banner-parceiro.component';\r\nimport { ListaParceiroComponent } from './admin/lista-parceiro/lista-parceiro.component';\r\nimport { UrlNormalizerPipe } from './pipe/url-normalizer.pipe';\r\nimport { BottomBannerComponent } from './navigation/bottom-banner/bottom-banner.component';\r\nimport { UrlFixerPipe } from './pipe/url-fixer.pipe';\r\nimport { PageParceirosComponent } from './page/RM-page-parceiros/page-parceiros.component';\r\nimport { PageListaComponent } from './page/RM-page-lista/page-lista.component';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { CalculadoraComponent } from './calculadora/calculadora.component';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { NgxChartsModule } from '@swimlane/ngx-charts';\r\nimport { ClipboardModule } from '@angular/cdk/clipboard';\r\nimport { TriStateCheckboxComponent } from './navigation/tri-state-checkbox/tri-state-checkbox.component';\r\nimport { ColecaoComponent } from './layout/colecao/colecao.component';\r\nimport { DiretorioComponent } from './layout/diretorio/diretorio.component';\r\nimport { ButtonRatingComponent } from './navigation/button-rating/button-rating.component';\r\nimport { SwiperModule } from 'swiper/angular';\r\nimport { ButtonParceiroComponent } from './navigation/button-parceiro/button-parceiro.component';\r\nimport { PageDiretorioComponent } from './page/page-diretorio/page-diretorio.component';\r\nimport { PageColecaoComponent } from './page/page-colecao/page-colecao.component';\r\nimport { TreeColecaoComponent } from './admin/tree-colecao/tree-colecao.component';\r\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\r\nimport { BlurDisplayComponent } from './navigation/blur-display/blur-display.component';\r\nimport { MAT_DATE_LOCALE, MatNativeDateModule, MatOptionModule } from '@angular/material/core';\r\nimport { HttpClientJsonpModule, HttpClientModule } from '@angular/common/http';\r\nimport { SignUpComponent } from './navigation/auth/sign-up/sign-up.component';\r\nimport { ForgotPasswordComponent } from './navigation/auth/forgot-password/forgot-password.component';\r\nimport { VerifyEmailComponent } from './navigation/auth/verify-email/verify-email.component';\r\nimport { LoginDialogComponent, DialogOptIn, DialogYesNo } from './navigation/auth/login-dialog/login-dialog.component';\r\nimport { DialogConfirmData } from './navigation/auth/login-dialog/dialog-confirm-data';\r\nimport { SignInComponent } from './navigation/auth/sign-in/sign-in.component';\r\nimport { AvatarComponent } from './navigation/auth/avatar/avatar.component';\r\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\r\nimport { EscolaVideoComponent } from './layout/escola-video/escola-video.component';\r\nimport { OneTapComponent } from './navigation/auth/one-tap/one-tap.component';\r\nimport { GoogleMapsModule } from '@angular/google-maps';\r\nimport { EscolaFilterHeaderComponent } from './layout/escola-filter-header/escola-filter-header.component';\r\nimport { PaginatorComponent } from './navigation/paginator/paginator.component';\r\nimport { ChatComponent } from './chat/chat.component';\r\nimport { AddroomComponent } from './chat/addroom/addroom.component';\r\nimport { AdminComponent } from './chat/admin/admin.component';\r\nimport { ChatroomComponent } from './chat/chatroom/chatroom.component';\r\nimport { RoomlistComponent } from './chat/roomlist/roomlist.component';\r\nimport { OverlayModule } from '@angular/cdk/overlay';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { ParceiroComponent } from './layout/parceiro/parceiro.component';\r\nimport { PerfilAfinidadeComponent } from './layout/perfil-afinidade/perfil-afinidade.component';\r\nimport { EscolaScoreComponent } from './layout/escola-score/escola-score.component';\r\nimport { SchoolDetailMoreInfoComponent } from './layout/RM-escola-detail/more-info/school-detail-more-info';\r\nimport { SchoolQualificationsComponent } from './layout/RM-escola-detail/qualifications/school-qualifications';\r\nimport { Ng5SliderModule } from 'ng5-slider';\r\nimport { TemplateOldComponent } from './templates/template-old/template-old.component';\r\nimport { TemplateNewComponent } from './templates/template-new/template-new.component';\r\nimport { TemplateEditComponent } from './templates/template-edit/template-edit.component';\r\nimport { HeaderNewComponent } from './component/header-new/header-new.component';\r\nimport { AsideMenuNewComponent } from './component/aside-menu-new/aside-menu-new.component';\r\nimport { ButtonGoTopNewComponent } from './component/button-go-top-new/button-go-top-new.component';\r\nimport { EscolaDetailNewComponent } from './layout/escola-detail-new/escola-detail-new.component';\r\nimport { BuscarEscolaComponent } from './component/buscar-escola/buscar-escola.component';\r\nimport { EscolaGalleryNewComponent } from './component/escola-gallery-new/escola-gallery-new.component';\r\nimport { EscolaInfoComponent } from './component/escola-info/escola-info.component';\r\nimport { EscolaSobreComponent } from './component/escola-sobre/escola-sobre.component';\r\nimport { EscolaCaracteristicasComponent } from './component/escola-caracteristicas/escola-caracteristicas.component';\r\nimport { EscolaDepoimentosComponent } from './component/escola-depoimentos/escola-depoimentos.component';\r\nimport { EscolaVisaoEspecialistaComponent } from './component/escola-visao-especialista/escola-visao-especialista.component';\r\nimport { EscolaPerfilComponent } from './component/escola-perfil/escola-perfil.component';\r\nimport { EscolaQualificacoesComponent } from './component/escola-qualificacoes/escola-qualificacoes.component';\r\nimport { EscolaMaisSobreComponent } from './component/escola-mais-sobre/escola-mais-sobre.component';\r\nimport { EscolaNiveisOferecidosComponent } from './component/escola-niveis-oferecidos/escola-niveis-oferecidos.component';\r\nimport { EscolaEventosComponent } from './component/escola-eventos/escola-eventos.component';\r\nimport { EscolaVideosComponent } from './component/escola-videos/escola-videos.component';\r\nimport { EscolaInfraAcessibilidadeComponent } from './component/escola-infra-acessibilidade/escola-infra-acessibilidade.component';\r\nimport { EscolaProfessoresTimePedagogicoComponent } from './component/escola-professores-time-pedagogico/escola-professores-time-pedagogico.component';\r\nimport { EscolaIdiomasComponent } from './component/escola-idiomas/escola-idiomas.component';\r\nimport { EscolaEsportesCulturaComponent } from './component/escola-esportes-cultura/escola-esportes-cultura.component';\r\nimport { EscolaAsideComponent } from './component/escola-aside/escola-aside.component';\r\nimport { EscolaArtigosComponent } from './component/escola-artigos/escola-artigos.component';\r\nimport { EscolaParceriasECertificacoesComponent } from './component/escola-parcerias-e-certificacoes/escola-parcerias-e-certificacoes.component';\r\nimport { EscolaPublicidadeComponent } from './component/escola-publicidade/escola-publicidade.component';\r\nimport { EscolaSobreRegiaoComponent } from './component/escola-sobre-regiao/escola-sobre-regiao.component';\r\nimport { EscolaAdsSlideComponent } from './component/escola-ads-slide/escola-ads-slide.component';\r\nimport { EscolaRecomendadasComponent } from './component/escola-recomendadas/escola-recomendadas.component';\r\nimport { EscolaModalAvaliarComponent } from './component/escola-modal-avaliar/escola-modal-avaliar.component';\r\nimport { EscolaDetailEditComponent } from './component/escola-detail-edit/escola-detail-edit.component';\r\nimport { EscolaEventosEditComponent } from './component/escola-eventos-edit/escola-eventos-edit.component';\r\nimport { EscolaModalShareComponent } from './component/escola-modal-share/escola-modal-share.component';\r\nimport { SeloEscolaComponent } from './component/selo-escola/selo-escola.component';\r\nimport { AsideMenuEditComponent } from './component/aside-menu-edit/aside-menu-edit.component';\r\nimport { FooterEditComponent } from './component/footer-edit/footer-edit.component';\r\nimport { GeralComponent } from './layout/edit/geral/geral.component';\r\nimport { RedirectGuard } from './service/redirectGuard';\r\n\r\nregisterLocaleData(localeBr, 'pt-BR');\r\n\r\nexport const options: Partial | (() => Partial) = null;\r\nexport const cookieConfig: NgcCookieConsentConfig = {\r\n cookie: {\r\n domain: 'schooladvisor.com.br',\r\n },\r\n palette: {\r\n popup: {\r\n background: '#edeff5',\r\n text: '#838391',\r\n },\r\n button: {\r\n background: '#ff4081',\r\n text: '#ffffff',\r\n },\r\n },\r\n theme: 'classic',\r\n position: 'bottom-right',\r\n content: {\r\n message: 'Usamos cookies e outras tecnologias para melhorar sua experiência com nossos serviços e personalizar publicidade de acordo com seus interesses.' + '
Ao continuar navegando, você concorda com a nossa: ',\r\n dismiss: 'Ok',\r\n link: 'Política de Privacidade',\r\n href: 'https://www.blog.schooladvisor.com.br/privacidade',\r\n },\r\n};\r\n\r\n@NgModule({\r\n declarations: [AppComponent, SafePipe, HeaderComponent, LayoutComponent, SidenavComponent, \r\n PageAboutComponent, PageHomeComponent, PageContatoComponent, PageEscolaComponent, \r\n PageDuvidasComponent, PagePoliticaComponent, PageRegrasComponent, PageTermosComponent, \r\n MapaComponent, MapaLoading, MapaCriarDiretorioPopup, EscolaCardComponent, \r\n EscolaListHorizontalComponent, FooterComponent, EscolaDetailComponent, EscolaResultComponent, \r\n EscolaFilterTagsComponent, DialogOptIn, DialogConfirmData, DialogYesNo, EscolaFilterRateComponent, \r\n ReviewDetailComponent, EscolaMapComponent, ReviewEditComponent, ReviewListComponent, \r\n EscolaFilterListasComponent, PagePerfilComponent, PageEscolasComponent, PageReviewsComponent, \r\n DropzoneDirective, UploaderComponent, UploadTaskComponent, EscolaGalleryComponent, \r\n EscolaCompetitorsComponent, ComprasComponent, UserEscolasComponent, ReviewsComponent, \r\n EscolaListVerticalComponent, PageFuncionaComponent, PagePlanosComponent, ButtonToTopComponent, \r\n EscolaFilterAllComponent, TextBoundComponent, ReviewRankingComponent, ButtonFavoriteComponent, \r\n ReviewEditAskComponent, EscolaProductsComponent, ListaProprietarioComponent, PageCellepComponent, \r\n PageBlogComponent, BannerParceiroComponent, ListaParceiroComponent, UrlNormalizerPipe, \r\n BottomBannerComponent, UrlFixerPipe, PageParceirosComponent, PageListaComponent, \r\n CalculadoraComponent, DialogMotivo, BottomSheetInfo, DialogRequestInfo, DialogRequestInfoResponse, \r\n TriStateCheckboxComponent, ColecaoComponent, DiretorioComponent, ButtonRatingComponent, \r\n ButtonParceiroComponent, PageDiretorioComponent, PageColecaoComponent, TreeColecaoComponent, \r\n BlurDisplayComponent, SignUpComponent, ForgotPasswordComponent, VerifyEmailComponent, \r\n LoginDialogComponent, SignInComponent, AvatarComponent, EscolaVideoComponent, OneTapComponent, \r\n EscolaFilterHeaderComponent, PaginatorComponent, ChatComponent, AddroomComponent, AdminComponent, \r\n ChatroomComponent, RoomlistComponent, ParceiroComponent, PerfilAfinidadeComponent, \r\n EscolaScoreComponent, SchoolDetailMoreInfoComponent, SchoolQualificationsComponent, TemplateOldComponent, TemplateNewComponent, TemplateEditComponent, HeaderNewComponent, AsideMenuNewComponent, ButtonGoTopNewComponent, EscolaDetailNewComponent, BuscarEscolaComponent, EscolaGalleryNewComponent, EscolaInfoComponent, EscolaSobreComponent, EscolaCaracteristicasComponent, EscolaDepoimentosComponent, EscolaVisaoEspecialistaComponent, EscolaPerfilComponent, EscolaQualificacoesComponent, EscolaMaisSobreComponent, EscolaNiveisOferecidosComponent, EscolaEventosComponent, EscolaVideosComponent, EscolaInfraAcessibilidadeComponent, EscolaProfessoresTimePedagogicoComponent, EscolaIdiomasComponent, EscolaEsportesCulturaComponent, EscolaAsideComponent, EscolaArtigosComponent, EscolaParceriasECertificacoesComponent, EscolaPublicidadeComponent, EscolaSobreRegiaoComponent, EscolaAdsSlideComponent, EscolaRecomendadasComponent, EscolaModalAvaliarComponent, EscolaDetailEditComponent, EscolaEventosEditComponent, EscolaModalShareComponent, SeloEscolaComponent, AsideMenuEditComponent, FooterEditComponent, GeralComponent],\r\n imports: [\r\n BrowserModule,\r\n CommonModule,\r\n RouterModule,\r\n BrowserAnimationsModule,\r\n RoutingModule,\r\n FlexLayoutModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatInputModule,\r\n MatSelectModule,\r\n MatToolbarModule,\r\n MatSidenavModule,\r\n MatListModule,\r\n MatCardModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatExpansionModule,\r\n MatChipsModule,\r\n MatSlideToggleModule,\r\n MatDividerModule,\r\n MatCheckboxModule,\r\n MatBottomSheetModule,\r\n MatTooltipModule,\r\n MatDialogModule,\r\n MatMenuModule,\r\n MatTabsModule,\r\n MatPaginatorModule,\r\n MatAutocompleteModule,\r\n MatProgressBarModule,\r\n MatProgressSpinnerModule,\r\n MatBadgeModule,\r\n MatSliderModule,\r\n MatGridListModule,\r\n MatTableModule,\r\n MatTreeModule,\r\n MatRadioModule,\r\n MatBottomSheetModule,\r\n MatSnackBarModule,\r\n HttpClientModule,\r\n HttpClientJsonpModule,\r\n NgxSliderModule,\r\n SlickCarouselModule,\r\n SwiperModule,\r\n RatingModule.forRoot(),\r\n NgcCookieConsentModule.forRoot(cookieConfig),\r\n AngularFireModule.initializeApp({\r\n apiKey: environment.firebaseConfig.apiKey,\r\n authDomain: environment.firebaseConfig.authDomain,\r\n databaseURL: environment.firebaseConfig.databaseURL,\r\n projectId: environment.firebaseConfig.projectId,\r\n storageBucket: environment.firebaseConfig.storageBucket,\r\n messagingSenderId: environment.firebaseConfig.messagingSenderId,\r\n appId: environment.firebaseConfig.appId,\r\n measurementId: environment.firebaseConfig.measurementId,\r\n }),\r\n AngularFireAnalyticsModule,\r\n NgbModule,\r\n GalleryModule,\r\n LightboxModule.withConfig({}),\r\n NgxMaskModule.forRoot(),\r\n NgxMaterialTimepickerModule.setLocale('pt-BR'),\r\n MatStepperModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n NgxChartsModule,\r\n ClipboardModule,\r\n MatButtonToggleModule,\r\n MatOptionModule,\r\n CommonModule,\r\n CommonModule,\r\n GoogleMapsModule,\r\n OverlayModule,\r\n DragDropModule,\r\n Ng5SliderModule,\r\n ShareButtonsModule,\r\n ShareIconsModule,\r\n ],\r\n exports: [],\r\n providers: [\r\n UrlNormalizerPipe,\r\n UrlFixerPipe,\r\n DatePipe,\r\n RedirectGuard,\r\n { provide: MAT_DATE_LOCALE, useValue: 'pt-BR' },\r\n // {provide: MatPaginatorIntl, useValue: getEscolaPaginatorIntl()},\r\n { provide: USE_AUTH_EMULATOR, useValue: environment.useEmulators ? ['localhost', 9099] : undefined },\r\n { provide: USE_DATABASE_EMULATOR, useValue: environment.useEmulators ? ['localhost', 9000] : undefined },\r\n { provide: USE_FIRESTORE_EMULATOR, useValue: environment.useEmulators ? ['localhost', 8080] : undefined },\r\n { provide: USE_FUNCTIONS_EMULATOR, useValue: environment.useEmulators ? ['localhost', 5001] : undefined },\r\n { provide: LOCALE_ID, useValue: 'pt-BR' },\r\n // {\r\n // provide: CONFIG, useValue: {\r\n // // send_page_view: true,\r\n // // allow_ad_personalization_signals: false,\r\n // // anonymize_ip: true\r\n // }\r\n // }\r\n ],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule {\r\n constructor(private iconRegistry: MatIconRegistry, private sanitizer: DomSanitizer) {\r\n this.loadIcons();\r\n }\r\n\r\n loadIcons(): void {\r\n this.iconRegistry.addSvgIcon('apple', this.sanitizer.bypassSecurityTrustResourceUrl('/assets/social-network/apple.svg')).addSvgIcon('azure', this.sanitizer.bypassSecurityTrustResourceUrl('/assets/social-network/azure.svg')).addSvgIcon('bitbucket', this.sanitizer.bypassSecurityTrustResourceUrl('/assets/social-network/bitbucket.svg')).addSvgIcon('discord', this.sanitizer.bypassSecurityTrustResourceUrl('/assets/social-network/discord.svg')).addSvgIcon('facebook', this.sanitizer.bypassSecurityTrustResourceUrl('/assets/social-network/facebook.svg')).addSvgIcon('github', this.sanitizer.bypassSecurityTrustResourceUrl('/assets/social-network/github.svg')).addSvgIcon('google', this.sanitizer.bypassSecurityTrustResourceUrl('/assets/social-network/google.svg')).addSvgIcon('microsoft', this.sanitizer.bypassSecurityTrustResourceUrl('/assets/social-network/microsoft.svg')).addSvgIcon('phone', this.sanitizer.bypassSecurityTrustResourceUrl('/assets/social-network/phone.svg')).addSvgIcon('twitch', this.sanitizer.bypassSecurityTrustResourceUrl('/assets/social-network/twitch.svg')).addSvgIcon('twitter', this.sanitizer.bypassSecurityTrustResourceUrl('/assets/social-network/twitter.svg'));\r\n }\r\n}\r\n","import {Component, ElementRef, OnInit, ViewChild} from '@angular/core';\r\nimport {FormBuilder, FormControl, FormGroup, Validators} from '@angular/forms';\r\n// Depending on whether rollup is used, moment needs to be imported differently.\r\n// Since Moment.js doesn't have a default export, we normally need to import using the `* as`\r\n// syntax. However, rollup creates a synthetic default module and we thus need to import it using\r\n// the `default as` syntax.\r\nimport * as _moment from 'moment';\r\nimport {Moment} from 'moment';\r\nimport {MatDatepicker} from '@angular/material/datepicker';\r\nimport {MAT_MOMENT_DATE_ADAPTER_OPTIONS, MomentDateAdapter} from '@angular/material-moment-adapter';\r\nimport {DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE} from '@angular/material/core';\r\nimport {animate, keyframes, state, style, transition, trigger} from '@angular/animations';\r\nimport {UserService} from '../service/user.service';\r\nimport {MatDialog} from '@angular/material/dialog';\r\nimport {NivelEnsinoAttributes, NivelEnsinoData, NivelEnsinoEnum} from '../service/NivelEnsino';\r\nimport {Observable} from 'rxjs';\r\nimport {map, startWith} from 'rxjs/operators';\r\nimport firebase from 'firebase/app';\r\nimport {Router} from '@angular/router';\r\nimport {Meta, Title} from '@angular/platform-browser';\r\nimport {AnalyticsService} from '../service/analytics.service';\r\nimport {ID_LISTA_CALCULADORA, ID_LISTA_TESTE, MailingBuilderallService} from '../service/mailing-builderall.service';\r\nimport {LoginDialogComponent} from '../navigation/auth/login-dialog/login-dialog.component';\r\n\r\nconst moment = _moment;\r\n\r\n// See the Moment.js docs for the meaning of these formats:\r\n// https://momentjs.com/docs/#/displaying/format/\r\nexport const MY_FORMATS = {\r\n parse: {\r\n dateInput: 'MM/YYYY',\r\n },\r\n display: {\r\n dateInput: 'MM/YYYY',\r\n monthYearLabel: 'MMM YYYY',\r\n dateA11yLabel: 'LL',\r\n monthYearA11yLabel: 'MMMM YYYY',\r\n },\r\n};\r\n\r\ninterface NivelData {\r\n nivel_ensino: NivelEnsinoEnum;\r\n nome: string;\r\n index: number;\r\n serie: number;\r\n}\r\n\r\ninterface CustoAno {\r\n nivel_ensino: NivelEnsinoEnum;\r\n nome: string;\r\n serie: number;\r\n mensalidade: number;\r\n material: number;\r\n transporte: number;\r\n idioma: number;\r\n uniforme: number;\r\n extra: number;\r\n}\r\n\r\nexport const _filter = (opt: string[], value: string): string[] => {\r\n const filterValue = value.toLowerCase();\r\n // console.log('value:' + filterValue);\r\n // console.log('opt: ' + JSON.stringify(opt));\r\n // console.log('ret: ' + JSON.stringify(opt.filter(item => item.toLowerCase().includes(filterValue))));\r\n return opt.filter(item => item.toLowerCase().includes(filterValue));\r\n};\r\n\r\n@Component({\r\n selector: 'app-calculadora',\r\n templateUrl: './calculadora.component.html',\r\n styleUrls: ['./calculadora.component.scss'],\r\n providers: [\r\n // `MomentDateAdapter` can be automatically provided by importing `MomentDateModule` in your\r\n // application's root module. We provide it at the component level here, due to limitations of\r\n // our example generation script.\r\n {\r\n provide: DateAdapter,\r\n useClass: MomentDateAdapter,\r\n deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS]\r\n },\r\n\r\n {provide: MAT_DATE_FORMATS, useValue: MY_FORMATS},\r\n ],\r\n animations: [\r\n trigger('bounce', [transition('false <=> true',\r\n [\r\n animate('1000ms ease-in', keyframes([\r\n style({color: 'red', offset: 0.1}),\r\n style({transform: 'translate3d(-3px, 0, 0)', offset: 0.1}),\r\n style({transform: 'translate3d(3px, 0, 0)', offset: 0.2}),\r\n style({transform: 'translate3d(-6px, 0, 0)', offset: 0.3}),\r\n style({transform: 'translate3d(6px, 0, 0)', offset: 0.4}),\r\n style({transform: 'translate3d(-6px, 0, 0)', offset: 0.5}),\r\n style({transform: 'translate3d(6px, 0, 0)', offset: 0.6}),\r\n style({transform: 'translate3d(-6px, 0, 0)', offset: 0.7}),\r\n style({transform: 'translate3d(3px, 0, 0)', offset: 0.8}),\r\n style({transform: 'translate3d(-3px, 0, 0)', offset: 0.9}),\r\n ])),\r\n ]\r\n )]),\r\n trigger('Fading', [\r\n state('false', style({opacity: 0, display: 'none'})),\r\n state('true', style({opacity: 1, display: ''})),\r\n transition(':enter', animate('800ms ease-out')),\r\n transition(':leave', animate('100ms ease-in')),\r\n ])\r\n ]\r\n})\r\nexport class CalculadoraComponent implements OnInit {\r\n\r\n materialIncluso: boolean = null;\r\n transporteIncluso: boolean = null;\r\n idiomaIncluso: 'incluso mensalidade' | 'não incluso' | 'adicionar' = null;\r\n uniformeIncluso: boolean = null;\r\n extraIncluso: 'incluso mensalidade' | 'não incluso' | 'adicionar' = null;\r\n nascimentoBounce = false;\r\n serieBounce = false;\r\n mensalidadeBounce = false;\r\n materialBounce = false;\r\n transporteBounce = false;\r\n idiomaBounce = false;\r\n extraBounce = false;\r\n @ViewChild('nascimentoItem', {static: true}) nascimentoItem: ElementRef;\r\n @ViewChild('serieItem', {static: true}) serieItem: ElementRef;\r\n @ViewChild('mensalidadeItem', {static: true}) mensalidadeItem: ElementRef;\r\n @ViewChild('materialItem', {static: true}) materialItem: ElementRef;\r\n @ViewChild('transporteItem', {static: true}) transporteItem: ElementRef;\r\n @ViewChild('idiomaItem', {static: true}) idiomaItem: ElementRef;\r\n @ViewChild('extraItem', {static: true}) extraItem: ElementRef;\r\n @ViewChild('serieInput', {static: true}) serieInput: ElementRef;\r\n\r\n dataNascimentoForm = new FormControl(null, [Validators.required]);\r\n nivelEnsinoList: NivelData[] = [];\r\n nivelEnsinoOptions: Observable;\r\n serieForm: FormGroup = this._formBuilder.group({\r\n serieGroup: null,\r\n });\r\n\r\n anosTotal = (\r\n NivelEnsinoData[NivelEnsinoEnum.bercario].anos\r\n + NivelEnsinoData[NivelEnsinoEnum.infantil].anos\r\n + NivelEnsinoData[NivelEnsinoEnum.fundamental_1].anos\r\n + NivelEnsinoData[NivelEnsinoEnum.fundamental_2].anos\r\n + NivelEnsinoData[NivelEnsinoEnum.ensino_medio].anos\r\n ); // probably 18\r\n series_data: CustoAno[] = [];\r\n graph_nivel_data: { name: string, value: number }[];\r\n graph_item_data: { name: string, value: number }[];\r\n selected_serie_index: NivelData;\r\n ipca = 0.08;\r\n ano_passado: number;\r\n valor_total_passado: number;\r\n valor_total_futuro: number;\r\n este_ano: number;\r\n ano_formatura: number;\r\n valor_mensalidade_input: number;\r\n hash_item_passado = {\r\n Mensalidade: 0,\r\n Material: 0,\r\n Transporte: 0,\r\n Idioma: 0,\r\n Uniforme: 0,\r\n Cursos: 0\r\n };\r\n hash_item_futuro = {\r\n Mensalidade: 0,\r\n Material: 0,\r\n Transporte: 0,\r\n Idioma: 0,\r\n Uniforme: 0,\r\n Cursos: 0\r\n };\r\n\r\n single = [];\r\n multi: any[];\r\n\r\n // options\r\n gradient = true;\r\n showLegend = false;\r\n showLabels = true;\r\n isDoughnut = false;\r\n legendPosition = 'below';\r\n\r\n colorScheme = {\r\n domain: ['#ef3f5d', '#009294',\r\n '#F7A359', '#3A373C',\r\n '#F2F7F2']\r\n };\r\n showCalc = false;\r\n\r\n constructor(\r\n private userService: UserService,\r\n private matDialog: MatDialog,\r\n private _formBuilder: FormBuilder,\r\n private router: Router,\r\n private title: Title,\r\n private meta: Meta,\r\n public analytics: AnalyticsService,\r\n private mailing: MailingBuilderallService,\r\n ) {\r\n Object.assign(this, {single: this.single});\r\n this.title.setTitle('SchoolAdvisor | Calculadora de Gastos Escolares');\r\n this.meta.updateTag({\r\n name: 'description',\r\n content: 'Calcule o valor aproximado que irá investir na educação do seu filho até o final do Ensino Médio'\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n let index = 1;\r\n for (const nivel of Object.values(NivelEnsinoEnum)) {\r\n this.nivelEnsinoList.push(\r\n ...Array.from({length: NivelEnsinoData[nivel].anos},\r\n (_, i) => {\r\n const item: NivelData = {\r\n nivel_ensino: nivel, nome: null, index, serie: (i + 1)\r\n };\r\n index++;\r\n if (NivelEnsinoData[nivel].anos > 1) {\r\n const offset = NivelEnsinoData[nivel].offset_nivel ?? 0;\r\n item.nome = String(nivel + ': ' + (i + 1 + offset) + 'º ano');\r\n } else {\r\n item.nome = nivel;\r\n }\r\n return item;\r\n })\r\n );\r\n }\r\n\r\n this.nivelEnsinoOptions = this.serieForm.get('serieGroup').valueChanges.pipe(\r\n startWith(''),\r\n map(() => this._filter(this.serieInput.nativeElement.value))\r\n );\r\n }\r\n\r\n private _filter(value: NivelData | string): NivelData[] {\r\n // console.log('value: ' + JSON.stringify(value));\r\n let filterValue: string;\r\n if (typeof value === 'string') {\r\n filterValue = value.toLowerCase();\r\n } else if (value == null) {\r\n filterValue = '';\r\n } else {\r\n filterValue = value.nome.toLowerCase().normalize('NFD').replace(/\\p{Diacritic}/gu, '');\r\n }\r\n const filters = filterValue.split(/\\s/);\r\n let ret = this.nivelEnsinoList;\r\n // console.log('ret: ' + JSON.stringify(ret));\r\n for (const i of filters) {\r\n ret = ret.filter(option => {\r\n if (option.nome.toLowerCase().normalize('NFD').replace(/\\p{Diacritic}/gu, '').includes(i)) {\r\n return option.nome;\r\n }\r\n });\r\n }\r\n return ret;\r\n }\r\n\r\n calc(): void {\r\n const data: any = {};\r\n if (this.userService.getCurrentUser()) {\r\n let scroll = Number.MAX_VALUE;\r\n\r\n if (this.dataNascimentoForm.value == null) {\r\n this.nascimentoBounce = !this.nascimentoBounce;\r\n scroll = Math.min(this.nascimentoItem.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n\r\n // console.log('Serie: ' + JSON.stringify(this.serieForm.value));\r\n if (this.serieForm.value == null) {\r\n this.serieBounce = !this.serieBounce;\r\n scroll = Math.min(this.serieItem.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n\r\n if (this.valor_mensalidade_input == null) {\r\n this.mensalidadeBounce = !this.mensalidadeBounce;\r\n scroll = Math.min(this.mensalidadeItem.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n\r\n if (this.materialIncluso == null) {\r\n this.materialBounce = !this.materialBounce;\r\n scroll = Math.min(this.materialItem.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n\r\n if (this.transporteIncluso == null) {\r\n this.transporteBounce = !this.transporteBounce;\r\n scroll = Math.min(this.transporteItem.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n if (this.idiomaIncluso == null) {\r\n this.idiomaBounce = !this.idiomaBounce;\r\n scroll = Math.min(this.idiomaItem.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n if (this.extraIncluso == null) {\r\n this.extraBounce = !this.extraBounce;\r\n scroll = Math.min(this.extraItem.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n\r\n // console.log('scroll: ' + scroll);\r\n if (scroll < Number.MAX_VALUE) {\r\n window.scrollBy({behavior: 'smooth', top: scroll - 150});\r\n return;\r\n }\r\n\r\n const valor_mensalidades_ano = (this.valor_mensalidade_input ?? 0) * 13;\r\n\r\n this.series_data = [];\r\n this.graph_nivel_data = [];\r\n this.graph_item_data = [];\r\n const hash_nivel = {};\r\n const hash_item_total = {\r\n Mensalidade: 0,\r\n Material: 0,\r\n Transporte: 0,\r\n Idioma: 0,\r\n Uniforme: 0,\r\n Cursos: 0\r\n };\r\n // Clone hash_item_values\r\n this.hash_item_passado = {...hash_item_total};\r\n this.hash_item_futuro = {...hash_item_total};\r\n this.valor_total_passado = 0;\r\n this.valor_total_futuro = 0;\r\n for (const item of this.nivelEnsinoList) {\r\n\r\n const nivel_ensino = item.nivel_ensino;\r\n const ano_diff = item.index - this.selected_serie_index.index;\r\n let depreciacao: number;\r\n if (ano_diff < 0) {\r\n depreciacao = Math.pow(1 - this.ipca, Math.abs(ano_diff));\r\n } else {\r\n depreciacao = Math.pow(1 + this.ipca, Math.abs(ano_diff));\r\n }\r\n const nivelAttributes: NivelEnsinoAttributes = NivelEnsinoData[nivel_ensino];\r\n const ca: CustoAno = {\r\n nivel_ensino,\r\n nome: item.nome,\r\n serie: item.index,\r\n mensalidade: valor_mensalidades_ano * depreciacao,\r\n material: this.materialIncluso ? 0 : nivelAttributes.material * depreciacao,\r\n transporte: this.transporteIncluso ? 0 : nivelAttributes.transporte * depreciacao * 12,\r\n idioma: this.idiomaIncluso !== 'adicionar' ? 0 : nivelAttributes.idiomas * depreciacao * 13,\r\n uniforme: this.uniformeIncluso ? 0 : nivelAttributes.uniforme * depreciacao,\r\n extra: this.extraIncluso !== 'adicionar' ? 0 : nivelAttributes.extracurriculares * depreciacao * 12,\r\n };\r\n // console.log('Debug: ' + JSON.stringify(ca));\r\n const nivel_total = ca.mensalidade + ca.material + ca.transporte + ca.idioma + ca.uniforme + ca.extra;\r\n hash_nivel[nivel_ensino] = (hash_nivel[nivel_ensino] ?? 0) + nivel_total;\r\n hash_item_total.Mensalidade += ca.mensalidade;\r\n hash_item_total.Material += ca.material;\r\n hash_item_total.Transporte += ca.transporte;\r\n hash_item_total.Idioma += ca.idioma;\r\n hash_item_total.Uniforme += ca.uniforme;\r\n hash_item_total.Cursos += ca.extra;\r\n\r\n if (ano_diff < 0) {\r\n this.hash_item_passado.Mensalidade += ca.mensalidade;\r\n this.hash_item_passado.Material += ca.material;\r\n this.hash_item_passado.Transporte += ca.transporte;\r\n this.hash_item_passado.Idioma += ca.idioma;\r\n this.hash_item_passado.Uniforme += ca.uniforme;\r\n this.hash_item_passado.Cursos += ca.extra;\r\n this.valor_total_passado += ca.mensalidade + ca.material +\r\n ca.transporte + ca.idioma + ca.uniforme + ca.extra;\r\n } else {\r\n this.hash_item_futuro.Mensalidade += ca.mensalidade;\r\n this.hash_item_futuro.Material += ca.material;\r\n this.hash_item_futuro.Transporte += ca.transporte;\r\n this.hash_item_futuro.Idioma += ca.idioma;\r\n this.hash_item_futuro.Uniforme += ca.uniforme;\r\n this.hash_item_futuro.Cursos += ca.extra;\r\n this.valor_total_futuro += ca.mensalidade + ca.material +\r\n ca.transporte + ca.idioma + ca.uniforme + ca.extra;\r\n }\r\n\r\n this.series_data.push(ca);\r\n }\r\n\r\n // const data_instance = hash_item_total;\r\n const data_instance = this.hash_item_futuro;\r\n for (const item of Object.keys(data_instance)) {\r\n const value = data_instance[item];\r\n if (value != null) {\r\n this.graph_item_data.push({name: item, value});\r\n }\r\n }\r\n\r\n for (const item of Object.keys(hash_nivel)) {\r\n const value = hash_nivel[item];\r\n if (value != null) {\r\n this.graph_nivel_data.push({name: item, value});\r\n }\r\n }\r\n\r\n this.este_ano = moment().year();\r\n this.ano_passado = this.este_ano - 1;\r\n const anos_passado = this.serieForm.value.serieGroup.index;\r\n const anos_futuro = this.anosTotal - anos_passado;\r\n this.ano_formatura = this.este_ano + anos_futuro;\r\n\r\n\r\n if (this.serieForm.value == null) {\r\n this.serieBounce = !this.serieBounce;\r\n scroll = Math.min(this.serieItem.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n\r\n const data_nascimento_moment = this.dataNascimentoForm.value;\r\n data.data_nascimento = data_nascimento_moment.toISOString();\r\n data.serie = this.serieForm.value;\r\n data.mensalidade = this.valor_mensalidade_input;\r\n data.materialIncluso = this.materialIncluso;\r\n data.transporteIncluso = this.transporteIncluso;\r\n data.idiomaIncluso = this.idiomaIncluso;\r\n data.extraIncluso = this.extraIncluso;\r\n data.resultado = {};\r\n data.resultado.series = this.series_data;\r\n\r\n firebase.functions().httpsCallable('calculadora_gasto_escolar')(data);\r\n\r\n window.scrollTo({top: 0});\r\n this.showCalc = true;\r\n\r\n } else {\r\n this.matDialog.open(LoginDialogComponent, {id: 'loginDialog'});\r\n }\r\n this.analytics.clickCalculadoraCalcular();\r\n // this.mailing.getLista();\r\n if (this.userService.getCurrentUser()?.email) {\r\n this.mailing.sendMail(this.userService.getCurrentUser()?.email, ID_LISTA_CALCULADORA, 'calculadora');\r\n }\r\n }\r\n\r\n // public test(): void {\r\n // this.dataNascimentoForm.setValue(moment(), {emitEvent: true});\r\n // this.serieForm.setValue({serieGroup: 5}, {emitEvent: true});\r\n // this.selected_serie_index = {serie: 2, index: 2, nivel_ensino: NivelEnsinoEnum.infantil, nome: 'Teste'};\r\n // this.valor_mensalidade_input = 100;\r\n // this.materialIncluso = true;\r\n // this.transporteIncluso = true;\r\n // this.idiomaIncluso = 'adicionar';\r\n // this.extraIncluso = 'adicionar';\r\n // this.calc();\r\n // }\r\n\r\n chosenYearHandler(normalizedYear: Moment): void {\r\n let ctrlValue = this.dataNascimentoForm.value;\r\n if (ctrlValue == null) {\r\n ctrlValue = moment();\r\n }\r\n ctrlValue.year(normalizedYear.year());\r\n this.dataNascimentoForm.setValue(ctrlValue);\r\n }\r\n\r\n chosenMonthHandler(normalizedMonth: Moment, datepicker: MatDatepicker): void {\r\n const ctrlValue = this.dataNascimentoForm.value;\r\n ctrlValue.month(normalizedMonth.month());\r\n this.dataNascimentoForm.setValue(ctrlValue);\r\n datepicker.close();\r\n }\r\n\r\n decimalParser(event: any): number {\r\n if (event !== null) {\r\n const c = event.toString().replace(/[^\\d,]/g, '').replace(',', '.');\r\n if (c.length > 0) {\r\n return c;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n selectNivel(item: NivelData): void {\r\n this.selected_serie_index = item;\r\n }\r\n\r\n displayNivelOptionItem(item: NivelData): string {\r\n return item.nome;\r\n }\r\n\r\n recalc(): void {\r\n this.showCalc = false;\r\n window.scrollTo({top: 0});\r\n this.analytics.clickCalculadoraCalcularDeNovo();\r\n }\r\n\r\n goHome(): void {\r\n this.router.navigate(['/']);\r\n }\r\n\r\n goMap(): void {\r\n this.router.navigate(['/mapa']);\r\n this.analytics.clickCalculadoraEncontreEscola();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

Calculadora de Gastos Escolares

\r\n

Calcule o valor aproximado que irá investir na educação do seu filho até o final do Ensino Médio

\r\n
\r\n\r\n
\r\n
\r\n

Data de nascimento do filho

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n

Qual série ele está?

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{item.nome}}\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n

Qual o valor da mensalidade?

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Sobre o material escolar

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n

Sobre o transporte escolar

\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n

Sobre cursos de idiomas

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n

Sobre cursos extracurriculares

\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

\r\n A estimativa é que você invista\r\n R$ {{valor_total_futuro| number:'1.2-2':'pt-BR'}}\r\n de\r\n {{este_ano}} até o final do Ensino Médio (em {{ano_formatura}}) distribuídos da seguinte forma:\r\n
\r\n

\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

Mensalidade

\r\n R$ {{hash_item_futuro.Mensalidade| number:'1.2-2':'pt-BR'}}\r\n
\r\n Referência: R$ {{valor_mensalidade_input| number:'1.2-2':'pt-BR'}}/mês\r\n
\r\n
\r\n
\r\n
\r\n \r\n

Material

\r\n R$ {{hash_item_futuro.Material| number:'1.2-2':'pt-BR'}}\r\n
\r\n Referência: R$ 350,00 a 850,00/semestre \r\n
\r\n
\r\n
\r\n
\r\n \r\n

Transporte

\r\n R$ {{hash_item_futuro.Transporte| number:'1.2-2':'pt-BR'}}\r\n
\r\n Referência: R$ 450,00/mês\r\n
\r\n
\r\n
\r\n
\r\n \r\n

Idioma

\r\n R$ {{hash_item_futuro.Idioma| number:'1.2-2':'pt-BR'}}\r\n
\r\n Referência: R$ 400,00/mês\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n

Uniforme

\r\n R$ {{hash_item_futuro.Uniforme| number:'1.2-2':'pt-BR'}}\r\n
\r\n Referência: R$ 500,00/ano \r\n
\r\n
\r\n
\r\n
\r\n \r\n

Cursos

\r\n R$ {{hash_item_futuro.Cursos| number:'1.2-2':'pt-BR'}}\r\n
\r\n Referência: R$ 150,00/mês \r\n
\r\n
\r\n
\r\n
\r\n Calcular de Novo\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

\r\n {{model.name}}\r\n

\r\n

\r\n R$ {{model.value| number:'1.2-2':'pt-BR'}}\r\n

\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n\r\n\r\n\r\n
\r\n
\r\n
    \r\n
  • Os valores de referência podem variar conforme nível de ensino.O cálculo de transporte considera uso 5x por semana e distância escola ↔︎ casa de até 10km.O cálculo de Idiomas considera somente 1 curso.O cálculo de Cursos Extracurriculares considera somente 1 curso.O cálculo utiliza alguns valores médios reportados por outras famílias.É considerada correção média de 8% a.a.O corte etário segue as diretrizes do MEC (junho para ingressantes até 2018 e março para ingressantes a partir de 2019)
  • \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {Router, ActivatedRoute} from '@angular/router';\r\nimport {FormControl, FormGroupDirective, FormBuilder, FormGroup, NgForm, Validators} from '@angular/forms';\r\nimport {ErrorStateMatcher} from '@angular/material/core';\r\nimport {MatSnackBar} from '@angular/material/snack-bar';\r\nimport {AngularFireDatabase} from \"@angular/fire/database\";\r\nimport {DatePipe} from \"@angular/common\";\r\n\r\nexport class MyErrorStateMatcher implements ErrorStateMatcher {\r\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\r\n const isSubmitted = form && form.submitted;\r\n return !!(control && control.invalid && (control.dirty || control.touched || isSubmitted));\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'app-addroom',\r\n templateUrl: './addroom.component.html',\r\n styleUrls: ['./addroom.component.css']\r\n})\r\nexport class AddroomComponent implements OnInit {\r\n\r\n roomForm: FormGroup;\r\n nickname = '';\r\n roomname = '';\r\n ref = this.db.database.ref('rooms/');\r\n matcher = new MyErrorStateMatcher();\r\n\r\n constructor(private router: Router,\r\n private route: ActivatedRoute,\r\n private formBuilder: FormBuilder,\r\n private snackBar: MatSnackBar,\r\n public datepipe: DatePipe,\r\n private db: AngularFireDatabase,\r\n ) {\r\n this.roomForm = this.formBuilder.group({\r\n 'roomname': [null, Validators.required]\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n onFormSubmit(form: any) {\r\n const room = form;\r\n this.ref.orderByChild('roomname').equalTo(room.roomname).once('value', (snapshot: any) => {\r\n if (snapshot.exists()) {\r\n this.snackBar.open('Room name already exist!');\r\n } else {\r\n const newRoom = this.db.database.ref('rooms/').push();\r\n newRoom.set(room);\r\n this.router.navigate(['/roomlist', room.roomname]);\r\n }\r\n });\r\n }\r\n\r\n // checkRoom(): boolean{\r\n // return !this.roomForm.get('roomname')?.valid && this.roomForm.get('roomname').touched\r\n // }\r\n}\r\n","
\r\n
\r\n

Please enter new Room

\r\n \r\n Room Name\r\n \r\n \r\n Enter room name\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {UserService} from '../../service/user.service';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {FormBuilder} from '@angular/forms';\r\nimport {AngularFireDatabase} from '@angular/fire/database';\r\n\r\nexport const snapshotToArray = (snapshot: any) => {\r\n const returnArr: any[] = [];\r\n\r\n\r\n return returnArr;\r\n};\r\n\r\n@Component({\r\n selector: 'app-admin',\r\n templateUrl: './admin.component.html',\r\n styleUrls: ['./admin.component.css']\r\n})\r\nexport class AdminComponent implements OnInit {\r\n\r\n chats: any[] = [];\r\n\r\n constructor(public userService: UserService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private formBuilder: FormBuilder,\r\n private db: AngularFireDatabase,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.db.database.ref('chats')\r\n .on('value', resp => {\r\n const chats: any[] = [];\r\n resp.forEach((childSnapshot: any) => {\r\n const item = childSnapshot.val();\r\n item.key = childSnapshot.key;\r\n chats.push(\r\n {\r\n email: item.email,\r\n name: item.name,\r\n uid: item.uid\r\n }\r\n );\r\n });\r\n\r\n if (chats.length !== this.chats.length) {\r\n this.chats = chats;\r\n }\r\n }\r\n );\r\n }\r\n\r\n chatEvent(uid: string) {\r\n const c = document.getElementById(uid);\r\n if (c) {\r\n c.scrollTop = 5000;\r\n }\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n \r\n \r\n {{chat.email}}\r\n \r\n \r\n
\r\n {{chat.name}}\r\n info\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {ChatService} from '../service/chat.service';\r\nimport {ActivatedRoute} from '@angular/router';\r\nimport {interval, Observable} from 'rxjs';\r\nimport {UserService} from '../service/user.service';\r\n\r\n@Component({\r\n selector: 'app-chat',\r\n templateUrl: './chat.component.html',\r\n styleUrls: ['./chat.component.scss']\r\n})\r\nexport class ChatComponent implements OnInit {\r\n chat$: Observable | undefined;\r\n chatId: string;\r\n newMsg: string;\r\n\r\n constructor(\r\n public chatService: ChatService,\r\n private route: ActivatedRoute,\r\n public userService: UserService,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n const id = this.route.snapshot.paramMap.get('id');\r\n if (id) {\r\n this.chatId = id;\r\n // const source = this.chatService.get(this.chatId);\r\n // this.chat$ = this.chatService.joinUsers(source);\r\n\r\n this.chat$.subscribe(value => {\r\n interval(2000).subscribe(() => {\r\n this.scrollDown();\r\n });\r\n });\r\n\r\n }\r\n }\r\n\r\n submit(chatId: string): void {\r\n const name: string = '' + this.userService.getCurrentUser().displayName;\r\n this.chatService.sendMessage(chatId, {message: this.newMsg, name}).then(() => {\r\n this.scrollDown();\r\n }\r\n );\r\n this.newMsg = '';\r\n }\r\n\r\n trackByCreated(i: number, msg: any): any {\r\n return msg.createdAt;\r\n }\r\n\r\n private scrollDown(): void {\r\n const el = document.getElementsByClassName('mat-tab-body-content')[0];\r\n if (el) {\r\n el.scrollTo({top: el.scrollHeight, behavior: 'smooth'});\r\n } else {\r\n console.log('scroll not initialized');\r\n }\r\n }\r\n\r\n exitChat(): void {\r\n\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n \r\n \r\n
\r\n

{{chat.id}}

\r\n
\r\n
\r\n
    \r\n
  • \r\n {{ msg.content }}\r\n
    \r\n {{ msg.user?.name}}\r\n {{i}}\r\n \r\n
    \r\n
  • \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n","import {\r\n Component,\r\n OnInit,\r\n ElementRef,\r\n ViewChild,\r\n Input,\r\n EventEmitter,\r\n Output,\r\n ViewChildren,\r\n QueryList, AfterViewInit, AfterViewChecked, ChangeDetectorRef\r\n} from '@angular/core';\r\nimport {Router, ActivatedRoute} from '@angular/router';\r\nimport {FormControl, FormGroupDirective, FormBuilder, FormGroup, NgForm, Validators} from '@angular/forms';\r\nimport {ErrorStateMatcher} from '@angular/material/core';\r\nimport {AngularFireDatabase} from '@angular/fire/database';\r\nimport {UserService} from '../../service/user.service';\r\nimport {Escola} from '../../service/Escola';\r\nimport {MatSnackBar} from '@angular/material/snack-bar';\r\nimport {ChatService, snapshotToArray} from '../../service/chat.service';\r\n\r\nexport class MyErrorStateMatcher implements ErrorStateMatcher {\r\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\r\n const isSubmitted = form && form.submitted;\r\n return !!(control && control.invalid && (control.dirty || control.touched || isSubmitted));\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'app-chatroom',\r\n templateUrl: './chatroom.component.html',\r\n styleUrls: ['./chatroom.component.scss']\r\n})\r\nexport class ChatroomComponent implements OnInit {\r\n\r\n @Output() newMessage: EventEmitter = new EventEmitter();\r\n @ViewChild('chatcontent') chatcontent?: ElementRef;\r\n @ViewChildren('messageBox') messageBox?: QueryList;\r\n scrolltop: number | null = null;\r\n chatForm: FormGroup;\r\n @Input() escola: Escola;\r\n @Input() roomname = 'public';\r\n @Input() admin = false;\r\n message = '';\r\n disableInput = false;\r\n users: any[] = [];\r\n chats: any[] = [];\r\n messages: any[] = [];\r\n matcher = new MyErrorStateMatcher();\r\n checkIfExists = true;\r\n inputPlaceholder = 'Digite sua mensagem aqui';\r\n messageRef;\r\n\r\n constructor(\r\n public userService: UserService,\r\n private chatService: ChatService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private formBuilder: FormBuilder,\r\n private _snackBar: MatSnackBar,\r\n private db: AngularFireDatabase,\r\n private changeDetectorRef: ChangeDetectorRef,\r\n ) {\r\n // this.roomname = this.route.snapshot.params.roomId;\r\n this.chatForm = this.formBuilder.group({\r\n message: [null, Validators.required]\r\n });\r\n }\r\n\r\n async ngOnInit(): Promise {\r\n this.messageRef = this.db.database.ref(`chats/messages/${this.roomname}`);\r\n this.messageRef.on('value', resp => {\r\n this.messages = [];\r\n this.messages = snapshotToArray(resp);\r\n this.newMessage.emit(this.messages);\r\n this.changeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n async onFormSubmit(form: any): Promise {\r\n try {\r\n if (this.checkIfExists) {\r\n const room_title = 'Conversa com ' + this.userService.getCurrentUser().displayName;\r\n const isNew = await this.chatService.createRoomIfNotExists(this.roomname, {\r\n cod_escola: this.escola.codigo,\r\n room_title\r\n });\r\n // if (isNew) {\r\n // this.messageRef.off();\r\n // this.messageRef.on('value', resp => {\r\n // this.messages = [];\r\n // this.messages = snapshotToArray(resp);\r\n // this.newMessage.emit(this.messages);\r\n // });\r\n // }\r\n this.checkIfExists = false;\r\n }\r\n const message = form.message;\r\n const name = this.userService.getCurrentUser().displayName;\r\n // console.log('sending message...');\r\n await this.chatService.sendMessage(this.roomname, {message, name});\r\n\r\n // const message = form;\r\n // const uid = await this.userService.getCurrentUser()?.uid;\r\n // const ref = this.db.database.ref(`chats/${this.roomname}`);\r\n // // message.roomname = this.roomname;\r\n // message.nickname = await this.getNick();\r\n // message.date = this.datepipe.transform(new Date(), 'dd/MM/yyyy HH:mm:ss');\r\n // message.uid = uid || '';\r\n // message.type = 'message';\r\n // ref.update({\r\n // uid,\r\n // name: this.currentUser?.name || null,\r\n // email: this.currentUser?.email || null,\r\n // });\r\n\r\n } catch (e) {\r\n if (e.message === 'Permission denied') {\r\n const message = 'Esse chat está bloqueado.';\r\n this._snackBar.open(message, 'Ok');\r\n this.disableInput = true;\r\n this.inputPlaceholder = message;\r\n } else {\r\n console.log(e.message);\r\n }\r\n }\r\n this.chatForm = this.formBuilder.group({\r\n message: [null, Validators.required]\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n {{message.date}}\r\n {{message.message}}\r\n
\r\n \r\n
\r\n
\r\n \r\n {{message.name}}\r\n {{message.uid == null? 'enviando...' : message.date | date:'short' }}\r\n

{{message.message}}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n","import {Component, OnInit} from '@angular/core';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {DatePipe} from '@angular/common';\r\nimport {AngularFireDatabase} from '@angular/fire/database';\r\nimport {MatSnackBar} from '@angular/material/snack-bar';\r\n\r\ninterface Room {\r\n cod_escola: number;\r\n room_title: string;\r\n uid: string;\r\n roomname: string;\r\n}\r\n\r\n@Component({\r\n selector: 'app-roomlist',\r\n templateUrl: './roomlist.component.html',\r\n styleUrls: ['./roomlist.component.css']\r\n})\r\nexport class RoomlistComponent implements OnInit {\r\n\r\n nickname = '';\r\n displayedColumns: string[] = ['room_title'];\r\n rooms: Room[] = [];\r\n roomname: string | null;\r\n isLoadingResults = true;\r\n cod_escola: number;\r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private router: Router,\r\n private activatedRoute: ActivatedRoute,\r\n private db: AngularFireDatabase,\r\n private _snackBar: MatSnackBar,\r\n public datepipe: DatePipe) {\r\n // this.nickname = localStorage.getItem('nickname') || '';\r\n this.cod_escola = +this.activatedRoute.snapshot.paramMap.get('cod_escola');\r\n }\r\n\r\n ngOnInit(): void {\r\n try {\r\n this.db.database.ref(`/escolas/${this.cod_escola}/rooms/`).get().then(value => {\r\n // console.log('get done: ' + JSON.stringify(value));\r\n this.rooms = [];\r\n value.forEach(a => {\r\n const room = a.val();\r\n room.roomname = a.key;\r\n this.rooms.push(room);\r\n });\r\n this.isLoadingResults = false;\r\n });\r\n } catch (e) {\r\n if (e.message === 'Permission denied') {\r\n const message = 'Esse usuário não tem permissao para responder pela escola.';\r\n this._snackBar.open(message, 'Ok');\r\n }\r\n }\r\n }\r\n\r\n logout(): void {\r\n localStorage.removeItem('nickname');\r\n this.router.navigate(['/login']);\r\n }\r\n\r\n toggleChat(roomname: string, cod_escola: number): void {\r\n if (this.roomname === roomname) {\r\n this.roomname = null;\r\n } else {\r\n this.roomname = roomname;\r\n this.cod_escola = cod_escola;\r\n }\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
Conversas\r\n \r\n {{element.room_title}}\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport * as $ from 'jquery';\r\n\r\n@Component({\r\n selector: 'app-aside-menu-edit',\r\n templateUrl: './aside-menu-edit.component.html',\r\n styleUrls: ['./aside-menu-edit.component.css'],\r\n})\r\nexport class AsideMenuEditComponent implements OnInit {\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n let that = this;\r\n\r\n $(document).ready(() => {\r\n // ASIDE MENU\r\n $('.btn-aside-menu .btn-menu').on('click', function () {\r\n that.openMenu();\r\n });\r\n\r\n // CLOSE ASIDE MENU\r\n $('.close-menu').on('click', function () {\r\n that.closeMenu();\r\n });\r\n });\r\n }\r\n\r\n openMenu() {\r\n $('.aside-menu').addClass('active');\r\n }\r\n\r\n closeMenu() {\r\n $('.aside-menu').removeClass('active');\r\n }\r\n}\r\n","
\r\n \r\n \"Menu\"\r\n \r\n
\r\n\r\n\r\n\r\n\r\n","import { EscolaService } from '../../service/escola.service';\r\nimport { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { Escola } from 'src/app/service/Escola';\r\nimport { Router } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport * as $ from 'jquery';\r\n\r\n\r\n@Component({\r\n selector: 'app-aside-menu-new',\r\n templateUrl: './aside-menu-new.component.html',\r\n styleUrls: ['./aside-menu-new.component.css'],\r\n})\r\nexport class AsideMenuNewComponent implements OnInit, OnDestroy {\r\n\r\n public escola: Escola;\r\n private escolaAtualSubscription: Subscription;\r\n\r\n constructor(private router: Router,\r\n private escolaService: EscolaService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n let that = this;\r\n\r\n\r\n $(document).ready(() => {\r\n // ASIDE MENU\r\n $('.btn-aside-menu .btn-menu').on('click', function () {\r\n that.openMenu();\r\n });\r\n\r\n // CLOSE ASIDE MENU\r\n $('.close-menu').on('click', function () {\r\n that.closeMenu();\r\n });\r\n });\r\n\r\n this.escolaAtualSubscription = this.escolaService.getEscolaAtualObservable().subscribe(\r\n (e: Escola) => {\r\n this.escola = e;\r\n }\r\n );\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.escolaAtualSubscription) {\r\n this.escolaAtualSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n openMenu() {\r\n $('.aside-menu').addClass('active');\r\n }\r\n\r\n closeMenu() {\r\n $('.aside-menu').removeClass('active');\r\n }\r\n\r\n async scrollToSection(event: Event, sectionId: string) {\r\n event.preventDefault();\r\n await this.router.navigate([], { fragment: sectionId });\r\n this.closeMenu();\r\n \r\n \r\n \r\n /*.then(() => {\r\n const element: HTMLElement = document.getElementById(sectionId);\r\n console.log(element);\r\n\r\n if (element) {\r\n window.scrollBy({ \r\n behavior: 'smooth', \r\n top: element.getBoundingClientRect().top - 100 \r\n });\r\n //element.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n }\r\n });*/\r\n }\r\n}\r\n","\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport firebase from 'firebase';\r\nimport { debounceTime, startWith, switchMap, tap, map } from 'rxjs/operators';\r\nimport { EscolaService, filterEventType } from '../../service/escola.service';\r\nimport { Escola } from '../../service/Escola';\r\nimport { UrlNormalizerPipe } from '../../pipe/url-normalizer.pipe';\r\n\r\n@Component({\r\n selector: 'app-buscar-escola',\r\n templateUrl: './buscar-escola.component.html',\r\n styleUrls: ['./buscar-escola.component.css'],\r\n})\r\nexport class BuscarEscolaComponent implements OnInit {\r\n placeholderEscola = true;\r\n selectedEscola: Escola = null;\r\n loadingMessage: string = null;\r\n isLoadingEscola = false;\r\n escolaNome: Escola[] | string[] = [];\r\n\r\n constructor(public escolaService: EscolaService, public router: Router, private urlNormalizerPipe: UrlNormalizerPipe) {}\r\n\r\n ngOnInit(): void {\r\n this.escolaService.place.valueChanges\r\n .pipe(\r\n tap((value) => {\r\n this.escolaService.nome.setValue(value);\r\n }),\r\n debounceTime(1500),\r\n switchMap((value) => {\r\n // the value can be a string or a Escola type\r\n if (typeof value === 'string') {\r\n this.selectedEscola = null;\r\n if (value.length < 3) {\r\n this.loadingMessage = `Digite ao menos 3 letras para pesquisar.`;\r\n } else {\r\n this.isLoadingEscola = true;\r\n const criteria = {\r\n nome: value,\r\n };\r\n this.loadingMessage = `Procurando escolas com nome '${value}'`;\r\n firebase\r\n .functions()\r\n .httpsCallable('nome_escola')(criteria)\r\n .then((value1) => {\r\n if (value1.data?.length > 0) {\r\n this.escolaNome = value1.data;\r\n this.escolaNome.forEach((value2) => {\r\n if (typeof value2 !== 'string') {\r\n value2.endereco_json = EscolaService.parseEndereco(value2);\r\n }\r\n });\r\n } else {\r\n this.escolaNome = [];\r\n }\r\n this.isLoadingEscola = false;\r\n });\r\n }\r\n } else {\r\n this.isLoadingEscola = false;\r\n this.selectedEscola = value;\r\n // Traga somente a escola marcada\r\n this.escolaNome = [value];\r\n }\r\n return [];\r\n })\r\n )\r\n .subscribe();\r\n }\r\n\r\n displayEscola(item: any): string {\r\n if (item == null) {\r\n return null;\r\n } else if (item.nome) {\r\n return item.nome;\r\n } else {\r\n return item;\r\n }\r\n }\r\n\r\n searchTrigger(type: filterEventType): void {\r\n this.escolaService.filterEvent.next({ type, reset: true });\r\n }\r\n\r\n public detail(escola: Escola): void {\r\n this.escolaService.nome.setValue(escola.nome);\r\n this.router.navigate(['escolas', escola.codigo, this.urlNormalizerPipe.transform(escola.nome)]).then(() => {\r\n // this.searchTrigger();\r\n });\r\n }\r\n\r\n searchEscola(type: filterEventType = 'map'): void {\r\n const goTo = '/busca-escolas';\r\n if (this.router.url === goTo) {\r\n this.searchTrigger('list');\r\n } else {\r\n this.router.navigate([goTo]);\r\n }\r\n }\r\n}\r\n","
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {{ loadingMessage }}\r\n \r\n \r\n \r\n
\r\n search\r\n {{ escola }}\r\n
\r\n
\r\n \r\n
\r\n {{ escola.nome }}\r\n {{ escola.endereco }}\r\n
\r\n {{ escola.endereco_json.cidade + \" - \" + escola.endereco_json.estado }}\r\n {{ escola.endereco_json.bairro }}\r\n
\r\n {{ escola.endereco_json.logradouro + \", \" + escola.endereco_json.numero }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-button-go-top-new',\r\n templateUrl: './button-go-top-new.component.html',\r\n styleUrls: ['./button-go-top-new.component.css'],\r\n})\r\nexport class ButtonGoTopNewComponent implements OnInit {\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n goTop(event: Event): void {\r\n event.preventDefault();\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n }\r\n}\r\n","
\r\n \"Topo\"\r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-ads-slide',\r\n templateUrl: './escola-ads-slide.component.html',\r\n styleUrls: ['./escola-ads-slide.component.css'],\r\n})\r\nexport class EscolaAdsSlideComponent implements OnInit {\r\n @Input() escola: Escola;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Publicidade\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Publicidade\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Publicidade\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Publicidade\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Publicidade\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Publicidade\"\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-artigos',\r\n templateUrl: './escola-artigos.component.html',\r\n styleUrls: ['./escola-artigos.component.css'],\r\n})\r\nexport class EscolaArtigosComponent implements OnInit {\r\n @Input() escola: Escola;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
\r\n
\r\n \r\n
\r\n

Confira os últimos artigos enviados pela escola

\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n

Lorem ipsum dolor sit

\r\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Semper eget cras ipsunm

\r\n
\r\n
\r\n
\r\n
\r\n

Lorem ipsum dolor sit

\r\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam nulla euismod sapien donec bibendum duis quis euismod. Orci, tortor dictumst scelerisque malesuada volutpat amet, massa. In risus arcu nunc, integer at iaculis sed. Cras ultrices sem malesuada enim eu donec. Nullam nulla euismod sapien donec bibendum duis quis euismod.

\r\n
\r\n
\r\n
\r\n
\r\n

Lorem ipsum dolor sit

\r\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Semper eget cras ipsunm

\r\n
\r\n
\r\n
\r\n
\r\n

Lorem ipsum dolor sit

\r\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Semper eget cras ipsunm

\r\n
\r\n
\r\n
\r\n
\r\n

Lorem ipsum dolor sit

\r\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Semper eget cras ipsunm

\r\n
\r\n
\r\n
\r\n
\r\n

Lorem ipsum dolor sit

\r\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Semper eget cras ipsunm

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n","import { AfterViewInit, Component, Input, Output, OnInit, EventEmitter } from '@angular/core';\r\nimport { Escola, EscolaBeneficio } from '../../service/Escola';\r\nimport { UserService } from '../../service/user.service';\r\nimport { AnalyticsService } from '../../service/analytics.service';\r\nimport { EscolaService } from '../../service/escola.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport firebase from 'firebase/app';\r\nimport { UrlFixerPipe } from '../../pipe/url-fixer.pipe';\r\nimport { LoginDialogComponent } from '../../navigation/auth/login-dialog/login-dialog.component';\r\nimport { EscolaModalShareComponent } from '../escola-modal-share/escola-modal-share.component';\r\nimport { timer } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-escola-aside',\r\n templateUrl: './escola-aside.component.html',\r\n styleUrls: ['./escola-aside.component.css'],\r\n})\r\nexport class EscolaAsideComponent implements OnInit, AfterViewInit {\r\n @Input() editing: boolean;\r\n @Input() escola: Escola;\r\n @Input() escolaBeneficio: EscolaBeneficio;\r\n @Input() requestInfo: (fieldName: string, responseDialog: boolean) => void;\r\n @Output() editAction = new EventEmitter();\r\n\r\n schoolContactSending = false;\r\n schoolContactSented = false;\r\n\r\n escolaBeneficioSaving = false;\r\n escolaBeneficioSented = false;\r\n\r\n requestTuitionLoading = false;\r\n requestTuitionSented = false;\r\n\r\n showInfo = false;\r\n showBeneficios = false;\r\n\r\n constructor(public userService: UserService, \r\n private analytics: AnalyticsService, \r\n private urlFixer: UrlFixerPipe, \r\n private matDialog: MatDialog,\r\n private escolaService: EscolaService\r\n ) {}\r\n\r\n get rate() {\r\n if (!this.score || this.score.total == 0) {\r\n return -1;\r\n }\r\n\r\n return this.score.score / this.score.total;\r\n }\r\n\r\n get score() {\r\n if (!this.escola.score_info) {\r\n return {\r\n score: 0,\r\n total: 0,\r\n };\r\n }\r\n\r\n return this.escola.score_info;\r\n }\r\n\r\n get linkTelefone(): string {\r\n return `tel:${this.formatPhone(this.escola.fone).replace(/\\D/g, '')}`;\r\n }\r\n\r\n get linkWhatsapp(): string {\r\n const fone = this.formatPhone(this.escola.social['whatsapp'], true);\r\n const nomeUrl = this.escola.nome.replace(/ /g, '%20');\r\n return `https://api.whatsapp.com/send?phone=${fone}&text=Oi,%20encontrei%20${nomeUrl}%20no%20site%20da%20SchoolAdvisor`;\r\n }\r\n\r\n get textoCalculadora(): string {\r\n if (EscolaService.premiumOuVerificadaPaga(this.escola)) {\r\n return 'é a afinidade desta escola com seu perfil familiar.';\r\n }\r\n else {\r\n return 'Esta escola não forneceu informações suficientes para calcularmos a afinidade com seu perfil familiar.';\r\n }\r\n }\r\n\r\n formatPhone(telefone: string, toLink: boolean = false): string {\r\n //let telefone = this.escola.fone;\r\n\r\n //if (this.escola.social['whatsapp']) telefone = this.escola.social['whatsapp'];\r\n\r\n telefone = telefone.replace(/\\D/g, '');\r\n\r\n if (!telefone) {\r\n return '';\r\n }\r\n\r\n if (toLink && telefone.length >= 14) {\r\n return telefone.replace(/(\\d{2})(\\d{2})(\\d{5})(\\d{4})/, '+$1 ($2) $3-$4');\r\n } else if (toLink && telefone.length === 13) {\r\n return telefone.replace(/(\\d{2})(\\d{2})(\\d{4})(\\d{4})/, '+$1 ($2) $3-$4');\r\n } else if (toLink && telefone.length === 12) {\r\n return telefone.replace(/(\\d{2})(\\d{2})(\\d{2})(\\d{5})(\\d{4})/, '+$1 ($2) $3 $4-$5');\r\n }\r\n else if (telefone.length === 12) {\r\n const telefoneSemDDI = telefone.substring(telefone.length - 10);\r\n return telefoneSemDDI.replace(/(\\d{2})(\\d{4})(\\d{4})/, '($1) $2-$3');\r\n }\r\n else if (telefone.length > 11) {\r\n const telefoneSemDDI = telefone.substring(telefone.length - 11);\r\n return telefoneSemDDI.replace(/(\\d{2})(\\d{5})(\\d{4})/, '($1) $2-$3');\r\n }\r\n else if (telefone.length === 11) {\r\n return telefone.replace(/(\\d{2})(\\d{5})(\\d{4})/, '($1) $2-$3');\r\n }\r\n // Verifica se o telefone tem DDD e 8 dígitos\r\n else if (telefone.length === 10) {\r\n return telefone.replace(/(\\d{2})(\\d{4})(\\d{4})/, '($1) $2-$3');\r\n } else {\r\n return telefone;\r\n }\r\n }\r\n\r\n\r\n ngOnInit(): void {}\r\n\r\n ngAfterViewInit(): void {}\r\n\r\n sendPhoneAnalytics(isWhatsapp: boolean): void {\r\n const fieldName = isWhatsapp ? 'whatsapp' : 'fone';\r\n\r\n this.analytics.linkEscolaField(this.escola, fieldName, this.userService.getCurrentUser());\r\n }\r\n\r\n calcMesalidadeMedia(): void {\r\n let c = 0;\r\n let sum = 0;\r\n if (this.escola.bercario_mensalidade_media) {\r\n c++;\r\n sum += +this.escola.bercario_mensalidade_media;\r\n }\r\n if (this.escola.infantil_mensalidade_media) {\r\n c++;\r\n sum += +this.escola.infantil_mensalidade_media;\r\n }\r\n if (this.escola.fundamental1_mensalidade_media) {\r\n c++;\r\n sum += +this.escola.fundamental1_mensalidade_media;\r\n }\r\n if (this.escola.fundamental2_mensalidade_media) {\r\n c++;\r\n sum += +this.escola.fundamental2_mensalidade_media;\r\n }\r\n if (this.escola.ensino_medio_mensalidade_media) {\r\n c++;\r\n sum += +this.escola.ensino_medio_mensalidade_media;\r\n }\r\n this.escola.mensalidade = Math.round((sum * 100) / c) / 100;\r\n }\r\n\r\n hasSocialMedia(): boolean {\r\n if (!this.escola.social) return false;\r\n\r\n for (const key in this.escola.social) {\r\n if (this.escola.social[key]) {\r\n return true;\r\n }\r\n }\r\n\r\n return false;\r\n }\r\n\r\n async sendContact(): Promise {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.schoolContactSending = true;\r\n\r\n const currentUser = firebase.auth().currentUser;\r\n const data = {\r\n nome: currentUser.displayName,\r\n emailUser: currentUser.email,\r\n schoolName: this.escola.nome,\r\n emailTo: this.escola.email,\r\n tipo: 0,\r\n premium: this.escola.premium,\r\n };\r\n\r\n try {\r\n await firebase.functions().httpsCallable('escola_send_beneficios')(data);\r\n this.analytics.linkEscolaField(this.escola, 'contato', this.userService.getCurrentUser());\r\n\r\n this.schoolContactSending = false;\r\n this.schoolContactSented = true;\r\n } catch (error) {\r\n this.schoolContactSending = false;\r\n this.schoolContactSented = false;\r\n }\r\n\r\n if (this.escola.social['whatsapp']) {\r\n window.open(this.linkWhatsapp, '_blank');\r\n }\r\n }\r\n\r\n share() {\r\n const currentUrl = window.location.href;\r\n\r\n this.analytics.linkEscolaField(this.escola, 'compartilhar', this.userService.getCurrentUser());\r\n\r\n this.matDialog.open(EscolaModalShareComponent, {\r\n id: 'reviewDialog',\r\n data: {\r\n title: this.escola.nome,\r\n text: this.escola.sobre_escola,\r\n url: currentUrl,\r\n },\r\n });\r\n }\r\n\r\n proprietario(event: Event): void {\r\n event.preventDefault();\r\n this.userService.proprietario(this.escola);\r\n this.analytics.clickSolicitarProprietario(this.escola);\r\n }\r\n\r\n getFinalScore(): number {\r\n let score = this.rate * 100;\r\n\r\n if (score > 100) {\r\n score = 100;\r\n }\r\n\r\n return Math.round(score);\r\n }\r\n\r\n goToSite(): void {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.analytics.linkEscolaField(this.escola, 'site', this.userService.getCurrentUser());\r\n const url = this.urlFixer.transform(this.escola.site) + '?utm_source=schooladvisor';\r\n window.open(url, '_blank');\r\n // href=\"{{escola.site | urlFixer}}?utm_source=schooladvisor\" title=\"Site\" target=\"_blank\"\r\n }\r\n\r\n async showAllInfo(): Promise {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.analytics.viewEscolaField(this.escola, 'contato', user);\r\n this.analytics.sendEventMail(this.escola, user);\r\n\r\n this.showInfo = true;\r\n }\r\n\r\n async mostrarBeneficios(): Promise {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.analytics.viewEscolaField(this.escola, 'benefício', user);\r\n this.analytics.sendEventMail(this.escola, user);\r\n\r\n this.showBeneficios = true;\r\n }\r\n\r\n async sendBenefits(): Promise {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.escolaBeneficioSaving = true;\r\n\r\n const currentUser = firebase.auth().currentUser;\r\n const data = {\r\n uid: currentUser.uid,\r\n nome: currentUser.displayName,\r\n emailUser: currentUser.email,\r\n schoolName: this.escola.nome,\r\n emailTo: this.escola.email,\r\n tipo: this.escolaBeneficio.tipo,\r\n premium: this.escola.premium,\r\n };\r\n\r\n try {\r\n await firebase.functions().httpsCallable('escola_send_beneficios')(data);\r\n\r\n switch (this.escolaBeneficio.tipo) {\r\n case 0:\r\n this.analytics.interesseEscolaField(this.escola, 'escola', this.userService.getCurrentUser());\r\n break;\r\n case 1:\r\n this.analytics.interesseEscolaField(this.escola, 'bolsa', this.userService.getCurrentUser());\r\n break;\r\n\r\n case 2:\r\n this.analytics.interesseEscolaField(this.escola, 'benefício', this.userService.getCurrentUser());\r\n break;\r\n }\r\n\r\n this.escolaBeneficioSaving = false;\r\n this.escolaBeneficioSented = true;\r\n } catch (error) {\r\n this.escolaBeneficioSaving = false;\r\n this.escolaBeneficioSented = false;\r\n }\r\n }\r\n\r\n async sendRequestTuition(): Promise {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.requestTuitionLoading = true;\r\n\r\n const currentUser = firebase.auth().currentUser;\r\n\r\n const data = {\r\n nome: currentUser.displayName,\r\n emailUser: currentUser.email,\r\n schoolName: this.escola.nome,\r\n emailTo: this.escola.email,\r\n premium: this.escola.premium,\r\n };\r\n\r\n try {\r\n await firebase.functions().httpsCallable('escola_request_tuition')(data);\r\n this.requestInfo('mensalidade', false);\r\n\r\n this.requestTuitionLoading = false;\r\n this.requestTuitionSented = true;\r\n } catch (error) {\r\n this.requestTuitionLoading = false;\r\n this.requestTuitionSented = false;\r\n }\r\n }\r\n\r\n sendToEdit(): void {\r\n this.editAction.emit();\r\n }\r\n}\r\n","\r\n","import { Review } from '../../review/review-edit/review-edit.component';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola, tags } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-caracteristicas',\r\n templateUrl: './escola-caracteristicas.component.html',\r\n styleUrls: ['./escola-caracteristicas.component.css'],\r\n})\r\nexport class EscolaCaracteristicasComponent implements OnInit {\r\n @Input() escola: Escola;\r\n @Input() reviews: Review[] = []\r\n\r\n\r\n allTags = []\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n this.loadTags()\r\n }\r\n\r\n async loadTags() {\r\n const data: any = {\r\n cod_escola: this.escola.codigo\r\n }\r\n\r\n const tagsReview = this.reviews.filter(t => t.aprovado).map(r => r.tags)\r\n this.allTags = tagsReview.filter(t => t.length > 0)\r\n\r\n if (this.escola.tags) {\r\n if (Array.isArray(this.escola.tags)) {\r\n this.allTags = this.allTags.concat(this.escola.tags)\r\n }\r\n else {\r\n for (const key in this.escola.tags) {\r\n if (Object.prototype.hasOwnProperty.call(this.escola.tags, key)) {\r\n const element = this.escola.tags[key];\r\n\r\n this.allTags.push(element)\r\n }\r\n }\r\n }\r\n }\r\n\r\n this.allTags = this.allTags.filter(tagArray => tagArray.length > 0);\r\n }\r\n\r\n getHasTags(): boolean {\r\n return this.allTags.length > 0\r\n }\r\n\r\n\r\n getTagsPercents(tag: string) : number {\r\n const tagsCount = this.allTags.filter(t => t.includes(tag))\r\n\r\n if (tagsCount.length == 0) {\r\n return 0\r\n }\r\n\r\n const total = this.allTags.length\r\n\r\n const percent = (tagsCount.length / total) * 100\r\n return percent\r\n }\r\n\r\n getTagsOrdered(): any[] {\r\n const tagsToOrder = tags\r\n\r\n const tagsOrdered = []\r\n\r\n tagsToOrder.forEach(tag => {\r\n const percent = Math.trunc(this.getTagsPercents(tag))\r\n\r\n if (percent > 0) {\r\n tagsOrdered.push({tag, percent})\r\n }\r\n })\r\n\r\n tagsOrdered.sort((a, b) => {\r\n return b.percent - a.percent\r\n })\r\n\r\n return tagsOrdered\r\n }\r\n}\r\n","
\r\n
\r\n

Principais características da escola

\r\n
\r\n\r\n
\r\n
\r\n
    \r\n \r\n \r\n
  • \r\n {{ t.percent}}% {{ t.tag }}\r\n
  • \r\n
    \r\n\r\n \r\n
    \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit, AfterViewInit, AfterViewChecked, QueryList, ElementRef, ViewChildren } from '@angular/core';\r\nimport firebase from 'firebase/app';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { Escola } from '../../service/Escola';\r\nimport { Review } from '../../review/review-edit/review-edit.component';\r\nimport { UserService } from '../../service/user.service';\r\nimport { LoginDialogComponent } from '../../navigation/auth/login-dialog/login-dialog.component';\r\nimport { EscolaModalAvaliarComponent } from '../escola-modal-avaliar/escola-modal-avaliar.component';\r\nimport { isArray } from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-escola-depoimentos',\r\n templateUrl: './escola-depoimentos.component.html',\r\n styleUrls: ['./escola-depoimentos.component.css'],\r\n})\r\nexport class EscolaDepoimentosComponent implements OnInit, AfterViewInit, AfterViewChecked {\r\n @Input() escola: Escola;\r\n @Input() reviews: Review[] = [];\r\n reviewsFiltered: Review[] = [];\r\n @ViewChildren('reviewContent') reviewContents: QueryList;\r\n reviewCount = 0;\r\n currentPage = 0;\r\n pageSize = 4;\r\n isShowAll = false;\r\n calculateShowAll = false;\r\n initialSize = 2;\r\n incrementSize = 4;\r\n currentSize = this.initialSize;\r\n private isContentChecked = false;\r\n\r\n constructor(public userService: UserService, private matDialog: MatDialog) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n ngAfterViewInit(): void {\r\n this.loadReviews();\r\n }\r\n\r\n ngAfterViewChecked(): void {\r\n if (!this.isContentChecked) {\r\n this.isContentChecked = true;\r\n this.checkReviewContentHeight();\r\n }\r\n\r\n if (this.isShowAll && !this.calculateShowAll) {\r\n this.calculateShowAll = true;\r\n this.checkReviewContentHeight();\r\n }\r\n }\r\n\r\n loadReviews(): void {\r\n this.reviewsFiltered = isArray(this.reviews) ? this.reviews.filter((review) => review.descricao || (review.descricao && review.rate_geral)) : [];\r\n this.reviewsFiltered = this.reviewsFiltered.map((review) => {\r\n review.isExpanded = false;\r\n review.showResposta = false;\r\n review.showMore = false;\r\n review.edit = false;\r\n review.respostaNew = review.resposta;\r\n review.respostaLoading = false;\r\n return review;\r\n });\r\n this.reviewCount = this.reviewsFiltered.length;\r\n this.isContentChecked = false;\r\n }\r\n\r\n carregarMais(event: Event): void {\r\n event.preventDefault();\r\n const nextSize = this.currentSize + this.incrementSize;\r\n\r\n this.currentSize = Math.min(nextSize, this.reviewsFiltered.length);\r\n this.checkReviewContentHeight();\r\n }\r\n\r\n getCarregarMaisTexto(): string {\r\n const remaining = Math.min(this.incrementSize, this.reviewsFiltered.length - this.currentSize);\r\n return `Carregar mais ${remaining} depoimento${remaining > 1 ? 's' : ''}`;\r\n }\r\n\r\n reviewHasTag(review: Review): boolean {\r\n return false;\r\n // return review.tags && review.tags.length > 0;\r\n }\r\n\r\n reviewShowRate(review: Review): boolean {\r\n return review.rate_geral !== null;\r\n }\r\n\r\n getReviewTags(review: Review): string {\r\n return review.tags.join(', ');\r\n }\r\n\r\n renderPerfil(review): string {\r\n if (review.responsavel_crianca) return 'Família';\r\n\r\n if (review.gestor_funcionario_escola) return 'Funcionário';\r\n\r\n if (review.fornecedor_escola) return 'Fornecedor';\r\n\r\n return null;\r\n }\r\n\r\n getVisibleReviews(): Review[] {\r\n return this.reviewsFiltered.slice(0, this.currentSize);\r\n }\r\n\r\n checkReviewContentHeight(): void {\r\n if (this.reviewContents.length === 0 && this.reviewsFiltered.length !== 0) {\r\n this.isContentChecked = false;\r\n return;\r\n }\r\n\r\n this.reviewContents.forEach((reviewContent, index) => {\r\n const pElement = reviewContent.nativeElement.querySelector('p.descricao');\r\n const lineHeight = parseInt(window.getComputedStyle(pElement).lineHeight, 10);\r\n\r\n const maxLines = 3;\r\n const maxHeight = lineHeight * maxLines;\r\n this.reviewsFiltered[index].showMore = pElement.scrollHeight > maxHeight;\r\n });\r\n\r\n }\r\n\r\n shouldShowToggle(text: string): boolean {\r\n const lineHeight = 1.5; // Assumindo que a altura da linha é 1.5em\r\n const maxLines = 3;\r\n const maxHeight = lineHeight * maxLines;\r\n const element = document.createElement('p');\r\n element.style.visibility = 'hidden';\r\n element.style.position = 'absolute';\r\n element.style.lineHeight = `${lineHeight}em`;\r\n element.style.width = '100%';\r\n element.innerText = text;\r\n document.body.appendChild(element);\r\n const height = element.clientHeight;\r\n document.body.removeChild(element);\r\n return height > maxHeight;\r\n }\r\n\r\n toggleReview(review: Review): void {\r\n review.isExpanded = !review.isExpanded;\r\n }\r\n\r\n verResposta(event: Event, review: Review): void {\r\n event.preventDefault();\r\n review.showResposta = !review.showResposta;\r\n }\r\n\r\n newReview(event: Event): void {\r\n event.preventDefault();\r\n if (this.userService.getCurrentUser()) {\r\n this.matDialog\r\n .open(EscolaModalAvaliarComponent, {\r\n id: 'reviewDialog',\r\n data: {\r\n cod_escola: this.escola.codigo,\r\n },\r\n })\r\n .afterClosed()\r\n .subscribe((result) => {\r\n if (result) {\r\n this.onSaveReview(result);\r\n }\r\n this.onCloseModal();\r\n });\r\n } else {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n }\r\n }\r\n\r\n onCloseModal() {\r\n console.log('Modal foi fechado.');\r\n }\r\n\r\n onSaveReview(review: any) {\r\n const loggedUser = this.userService.getCurrentUser();\r\n review.data_hora_criada = new Date();\r\n review.isExpanded = false;\r\n review.showResposta = false;\r\n review.edit = false;\r\n review.respostaLoading = false;\r\n review.respostaNew = review.resposta;\r\n\r\n review.nome_usuario = loggedUser.displayName ?? 'S';\r\n\r\n this.reviewCount = this.reviewCount + 1;\r\n\r\n this.reviewsFiltered.unshift(review);\r\n }\r\n\r\n sendResposta(review: Review) {\r\n review.respostaLoading = true;\r\n firebase\r\n .functions()\r\n .httpsCallable('review_resposta')({ codigo: review.codigo, resposta: review.respostaNew })\r\n .then((value) => {\r\n review.resposta = value.data.resposta;\r\n review.edit = false;\r\n review.respostaLoading = false;\r\n });\r\n }\r\n closeResposta(review: Review) {\r\n review.respostaNew = review.resposta;\r\n review.edit = false;\r\n }\r\n openResposta(review: Review) {\r\n review.respostaNew = review.resposta;\r\n review.edit = true;\r\n }\r\n}\r\n","
\r\n
\r\n \"Média\"{{ this.escola.rate_geral | number : \"1.1-1\" }}\r\n

\r\n Avaliações ({{ this.reviewCount }})\r\n

\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \"Infraestrutura\"\r\n

Infraestrutura

\r\n

0\" class=\"text-black font-size-featured bold mb-0\">{{ this.escola.rate_infraestrutura | number : \"1.1-1\" }}

\r\n

-

\r\n
\r\n
\r\n \"Segurança\"\r\n

Segurança

\r\n

0\" class=\"text-black font-size-featured bold mb-0\">{{ this.escola.rate_seguranca | number : \"1.1-1\" }}

\r\n

-

\r\n
\r\n
\r\n \"Pedagógico\"\r\n

Pedagógico

\r\n

0\" class=\"text-black font-size-featured bold mb-0\">{{ this.escola.rate_pedagogico | number : \"1.1-1\" }}

\r\n

-

\r\n
\r\n
\r\n \"Acolhimento\"\r\n

Acolhimento

\r\n

0\" class=\"text-black font-size-featured bold mb-0\">{{ this.escola.rate_acolhimento | number : \"1.1-1\" }}

\r\n

-

\r\n
\r\n
\r\n \"Cursos\r\n

Cursos extras

\r\n

0\" class=\"text-black font-size-featured bold mb-0\">{{ this.escola.rate_extracurriculares | number : \"1.1-1\" }}

\r\n

-

\r\n
\r\n
\r\n \"Diversidade\"\r\n

Diversidade

\r\n

0\" class=\"text-black font-size-featured bold mb-0\">{{ this.escola.rate_diversidade | number : \"1.1-1\" }}

\r\n

-

\r\n
\r\n
\r\n \"Inclusão\"\r\n

Inclusão

\r\n

0\" class=\"text-black font-size-featured bold mb-0\">{{ this.escola.rate_inclusao | number : \"1.1-1\" }}

\r\n

-

\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"Usuário\"\r\n
\r\n {{ renderPerfil(review) }}\r\n
\r\n
\r\n

{{ review.nome_usuario?.charAt(0) }}

\r\n {{ renderPerfil(review) }}\r\n
\r\n
\r\n

{{ review.nome_usuario }}

\r\n
\r\n
\r\n \"Nota\"\r\n {{ review.rate_geral | number : \"1.1-1\" : \"pt-BR\" }}\r\n
\r\n
\r\n \"Comentários\"\r\n {{ review.data_hora_criada?.toLocaleString(\"pt-BR\", { month: \"long\", year: \"numeric\" }) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

aguardando aprovação

\r\n

{{ review.descricao }}

\r\n
\r\n \r\n \r\n
  • \r\n {{ tag }}\r\n
  • \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Resposta da escola

    \r\n

    {{ review.resposta }}

    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n","import { AfterContentChecked, AfterViewInit, Component, ElementRef, EventEmitter, Inject, Input, OnInit, Output, Renderer2, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { EscolaService } from '../../service/escola.service';\r\nimport { Endereco, Escola, EscolaBeneficio, Social, Unidades, EscolaLista, tags, educacaoBilingue } from '../../service/Escola';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport firebase from 'firebase/app';\r\nimport { PagseguroService } from '../../service/pagseguro.service';\r\nimport { MatSnackBar } from '@angular/material/snack-bar';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { fromEvent, Observable, timer } from 'rxjs';\r\nimport { debounceTime, map, startWith } from 'rxjs/operators';\r\nimport { document } from 'ngx-bootstrap/utils';\r\nimport { ReviewRankingComponent } from '../../review/review-ranking/review-ranking.component';\r\nimport { UserService } from '../../service/user.service';\r\nimport { EscolaProductsComponent } from '../../layout/escola-products/escola-products.component';\r\nimport { diff as jdiff } from 'jsondiffpatch';\r\nimport { UploadFileData } from '../../navigation/upload-task/upload-task.component';\r\nimport { MatChipInputEvent } from '@angular/material/chips';\r\nimport { COMMA, ENTER } from '@angular/cdk/keycodes';\r\nimport { FormControl, Validators } from '@angular/forms';\r\nimport { EscolaGalleryComponent } from '../../layout/escola-gallery/escola-gallery.component';\r\nimport { SchoolDetailMoreInfoComponent } from '../../layout/RM-escola-detail/more-info/school-detail-more-info';\r\nimport { SchoolQualificationsComponent } from '../../layout/RM-escola-detail/qualifications/school-qualifications';\r\nimport * as clone from 'clone';\r\nimport { DefaultSliderConfig } from '../../navigation/Slider';\r\nimport { Meta, Title } from '@angular/platform-browser';\r\nimport { AnalyticsService } from '../../service/analytics.service';\r\nimport { MatSlideToggleChange } from '@angular/material/slide-toggle';\r\nimport * as _moment from 'moment';\r\nimport { MatBottomSheet, MatBottomSheetRef } from '@angular/material/bottom-sheet';\r\nimport { MAT_BOTTOM_SHEET_DATA } from '@angular/material/bottom-sheet';\r\nimport { AbordagemPedagogica, AbordagemPedagogicaText } from '../../service/Tag';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { LoginDialogComponent } from '../../navigation/auth/login-dialog/login-dialog.component';\r\nimport { UrlFixerPipe } from '../../pipe/url-fixer.pipe';\r\nimport { BottomSheetInfo, DialogMotivo, DialogRequestInfoResponse } from 'src/app/layout/RM-escola-detail/escola-detail.component';\r\nimport { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\n\r\nexport const Bookmarks = [\r\n 'dados',\r\n 'indices',\r\n 'sobre',\r\n 'videos',\r\n 'nivel_ensino',\r\n 'infraestrutura',\r\n 'video360',\r\n 'acessibilidade',\r\n 'recursos',\r\n 'tecnologia',\r\n 'docentes',\r\n 'idiomas',\r\n 'cursos',\r\n 'disciplinas',\r\n 'material',\r\n 'alimentacao',\r\n // 'parcerias',\r\n // 'certificados',\r\n 'avaliacao',\r\n];\r\n\r\n@Component({\r\n selector: 'app-escola-detail-edit',\r\n templateUrl: './escola-detail-edit.component.html',\r\n styleUrls: ['../../../custom-theme.scss', '../../../../node_modules/bootstrap/dist/css/bootstrap.min.css', '../../../../node_modules/ngx-bootstrap/datepicker/bs-datepicker.css', '../../../styles.scss', '../../../../node_modules/swiper/swiper-bundle.css', '../../../../node_modules/font-awesome/css/font-awesome.css', '../../../../node_modules/@loadingio/loading.css/dist/loading.css', '../../../../node_modules/@loadingio/loading.css/dist/loading.utils.css', '../../../../node_modules/slick-carousel/slick/slick.scss', '../../../../node_modules/slick-carousel/slick/slick-theme.scss', '../../../css/bootstrap-grid.css', '../../../css/bootstrap-reboot.css', '../../../css/mdb.min.css', '../../../../node_modules/cookieconsent/build/cookieconsent.min.css', '../../../css/custom.css', './escola-detail-edit.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class EscolaDetailEditComponent implements OnInit, AfterContentChecked, AfterViewInit {\r\n @Output() callbackEvent = new EventEmitter();\r\n escola: Escola;\r\n moment = _moment;\r\n escolaService = EscolaService;\r\n escolaOld: Escola;\r\n socialOld: Social;\r\n codEscolaGallery: number;\r\n escolaBeneficio: EscolaBeneficio;\r\n escolaBeneficioOld: EscolaBeneficio;\r\n familyChoice = false;\r\n endereco: Endereco;\r\n fragment: any;\r\n textAbout = false;\r\n escolaListaArray: EscolaLista;\r\n outrasUnidades: Unidades[];\r\n mapSizeWidth = 300;\r\n mapSizeHeight = 160;\r\n sliderUnidades = DefaultSliderConfig;\r\n iconFile: File;\r\n separatorKeysCodes: number[] = [ENTER, COMMA];\r\n tagControl = new FormControl();\r\n urlValidatePattern = '(https?://)([\\\\da-z.-]+)\\\\.([a-z.]{2,6})[/\\\\w .-]*/?';\r\n urlValidatePatternYoutube = /^(https?:\\/\\/)?(www\\.)?(youtube\\.com|youtu\\.?be)\\/.+$/;\r\n // videosControl = new FormControl(null, Validators.pattern('(https://www.youtube.com/embed/)|(https://player.vimeo.com/).*'));\r\n videosControl = new FormControl(null, Validators.pattern(this.urlValidatePatternYoutube));\r\n videos360Control = new FormControl(null, Validators.pattern(this.urlValidatePattern));\r\n\r\n errorMessageGenero: boolean = false;\r\n errorMessageDiversidadesEstudantes: boolean = false;\r\n errorMessageNacionalidadeEstudantes: boolean = false;\r\n errorMessageUniversidadesEstudantes: boolean = false;\r\n\r\n errorMessageGeneroProfessores: boolean = false;\r\n errorMessageDiversidadesProfessores: boolean = false;\r\n errorMessageNacionalidadeProfessores: boolean = false;\r\n\r\n @ViewChild('buyButton', { static: true }) buyButton: HTMLButtonElement;\r\n saving = false;\r\n\r\n @ViewChild('escolaGallery', { static: false }) escolaGalleryComponent: EscolaGalleryComponent;\r\n @ViewChild('schoolDetailMoreInfo', { static: false }) schoolDetailMoreInfo: SchoolDetailMoreInfoComponent;\r\n @ViewChild('schoolQualifications', { static: false }) schoolQualifications: SchoolQualificationsComponent;\r\n\r\n filteredTags: Observable;\r\n @Input() editing = false;\r\n recursosPedagogicosGroup: string[] = [];\r\n recursosRecreativosGroup: string[] = [];\r\n tecnologiaInternetGroup: string[] = [];\r\n tecnologiaRecursoGroup: string[] = [];\r\n messagePremium = 'Solicitar Informação';\r\n abordagemPedagogica = AbordagemPedagogicaText;\r\n alimentacao = ['Incluso na mensalidade', 'Incluso na mensalidade somente para integral', 'Pago à parte', 'Não oferece'];\r\n\r\n turnos = ['Regular', 'Semi-Integral', 'Integral', 'Estendido', 'Curso de férias'];\r\n processoSeletivo = ['Vagas imediatas', 'Lista de espera', 'Processo seletivo', 'Sondagem pedagógica'];\r\n meses = ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'];\r\n idiomas = ['Português', 'Alemão', 'Espanhol', 'Francês', 'Inglês', 'Italiano', 'Japonês', 'Madarim'];\r\n competicoes = ['Atletismo', 'Arquearia', 'Artes Marciais', 'Badminton', 'Ballet', 'Basquete', 'Circo', 'Danças', 'Esgrima', 'Futebol', 'Ginástica', 'Handebol', 'Hip Hop', 'Hoquei', 'Ioga', 'Judô', 'Natação', 'Patinação', 'Rugby', 'Skate', 'Tênis', 'Tênis de Mesa', 'Voleibol', 'Catequese', 'Culinária', 'Educação Ambiental', 'Educação Financeira', 'Empreendedorismo', 'Horticultura', 'Idiomas', 'Libras', 'Maker', 'Orient. Vocacional', 'Prep. Vestibular', 'Prep. ENEM', 'Robótica', 'Desenho', 'Literatura', 'Música', 'Prod. Artística', 'Teatro', 'SuperCérebro'];\r\n modalidadeEnsino = ['', 'Não bilíngue', 'Bilíngue', 'Programa bilíngue opcional', 'Internacional', 'Programa internacional opcional'];\r\n parceira_cellep = ['Intracurricular', 'Extracurricular'];\r\n showPremiumFields = true;\r\n maxAttributos = 3;\r\n private indexItemId: string;\r\n private signalScrollTo = false;\r\n single = [];\r\n graph_indices_data: { name: string; series: { name: string; value: number }[] }[] = [];\r\n colorScheme = {\r\n domain: ['#ef3f5d', '#ef3fd8', '#8b3fef', '#3f82ef', '#3fc9ef', '#3fef88', '#80ef3f', '#efb73f', '#ef593f'],\r\n };\r\n indicesInfo: { title: string; description: string; items: string[] }[] = [\r\n {\r\n title: 'ICDSA',\r\n description: 'O indicador classifica o corpo docente da escola segundo os seguintes critérios:',\r\n items: ['Adequação de Formação Docente (INEP) - Adequação de formação de docentes à disciplina que leciona', 'Indicador de Regularidade Docente (INEP) - Permanência do docente na escola nos últimos cinco anos (2016 a 2020)', 'Docentes com Curso Superior (INEP) - Percentual de docentes com curso superior completo', 'Avaliações quantitativas (SA) - Avaliações realizadas no site SchoolAdvisor'],\r\n },\r\n {\r\n title: 'IIESA',\r\n description: 'O indicador classifica a infra estrutura da escola segundo os seguintes critérios:',\r\n items: ['Salas disponíveis (SIMCAQ) - Quantidade de salas disponíveis em relação ao tamanho das turmas', 'Padrão de qualidade referência (SIMCAQ) - Infraestrutura mínima para atendimento das turmas', 'Infraestrutura (SA) - Infraestrutura esperada para atendimento das turmas', 'Avaliações quantitativas (SA) - Avaliações realizadas no site SchoolAdvisor'],\r\n },\r\n ];\r\n chatVisible = false;\r\n chatBadge: string;\r\n\r\n constructor(private activatedRoute: ActivatedRoute, private router: Router, public userService: UserService, private pagseguroService: PagseguroService, private snackBar: MatSnackBar, private matDialog: MatDialog, private _bottomSheet: MatBottomSheet, private render: Renderer2, private title: Title, private meta: Meta, private analytics: AnalyticsService, private httpClient: HttpClient, private urlFixer: UrlFixerPipe) {\r\n fromEvent(window, 'scroll')\r\n .pipe(debounceTime(100))\r\n .subscribe(() => {\r\n let lastItem: HTMLElement = null;\r\n let minTop: number = null;\r\n for (const item of Bookmarks) {\r\n const el: HTMLElement = document.getElementById(item);\r\n if (el) {\r\n const top = el.getBoundingClientRect().top;\r\n const itemId = item + 'Item';\r\n const elItem: HTMLElement = document.getElementById(itemId);\r\n this.render.removeClass(elItem, 'active');\r\n if (top > 0) {\r\n minTop = minTop ?? top;\r\n if (top <= minTop) {\r\n minTop = top;\r\n lastItem = elItem;\r\n this.indexItemId = itemId;\r\n }\r\n }\r\n } else {\r\n }\r\n }\r\n\r\n if (lastItem) {\r\n this.render.addClass(lastItem, 'active');\r\n }\r\n });\r\n\r\n /*this.filteredTags = this.tagControl.valueChanges.pipe(\r\n startWith(null),\r\n map((item: string | null) => this._filter(item))\r\n );*/\r\n\r\n Object.assign(this, { single: this.single });\r\n }\r\n\r\n validateTotal(): void {\r\n const masculino = this.convertToNumber(this.escola.matriculas_masculino);\r\n const feminino = this.convertToNumber(this.escola.matriculas_feminino);\r\n const outros = this.convertToNumber(this.escola.matriculas_outros);\r\n\r\n const total = masculino + feminino + outros;\r\n\r\n this.errorMessageGenero = total > 100;\r\n }\r\n\r\n validateTotalDiversidadesEstudantes(): void {\r\n const total = this.escola.matriculas_racas.reduce((acc, item) => acc + this.convertToNumber(item.quantidade?.toString()), 0);\r\n\r\n this.errorMessageDiversidadesEstudantes = total > 100;\r\n }\r\n\r\n validateTotalNacionalidadeEstudantes(): void {\r\n const total = this.escola.matriculas_nacionalidades.reduce((acc, item) => acc + this.convertToNumber(item.quantidade?.toString()), 0);\r\n\r\n this.errorMessageNacionalidadeEstudantes = total > 100;\r\n }\r\n\r\n validateTotalUniversidadesEstudantes(): void {\r\n return;\r\n\r\n const total = this.escola.matriculas_universidades.reduce((acc, item) => acc + this.convertToNumber(item.quantidade?.toString()), 0);\r\n\r\n this.errorMessageUniversidadesEstudantes = total > 100;\r\n }\r\n\r\n validateTotalProfessores(): void {\r\n const masculino = this.convertToNumber(this.escola.professores_feminino);\r\n const feminino = this.convertToNumber(this.escola.professores_masculino);\r\n const outros = this.convertToNumber(this.escola.professores_outros);\r\n\r\n const total = masculino + feminino + outros;\r\n\r\n this.errorMessageGeneroProfessores = total > 100;\r\n }\r\n\r\n validateTotalDiversidadesProfessores(): void {\r\n const total = this.escola.professores_racas.reduce((acc, item) => acc + this.convertToNumber(item.quantidade?.toString()), 0);\r\n\r\n this.errorMessageDiversidadesProfessores = total > 100;\r\n }\r\n\r\n validateTotalNacionalidadeProfessores(): void {\r\n const total = this.escola.professores_nacionalidades.reduce((acc, item) => acc + this.convertToNumber(item.quantidade?.toString()), 0);\r\n\r\n this.errorMessageNacionalidadeProfessores = total > 100;\r\n }\r\n\r\n convertToNumber(value: string | null | undefined): number {\r\n if (!value || isNaN(Number(value.replace('%', '').trim()))) {\r\n return 0;\r\n }\r\n return Number(value.replace('%', '').trim());\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n if (this.signalScrollTo && this.fragment != null) {\r\n this.scrollTo(this.fragment);\r\n }\r\n }\r\n\r\n /*private _filter(value: string): string[] {\r\n const possibleValues = clone(tags);\r\n if (this.escola?.tags) {\r\n for (const selectedItem of this.escola.tags) {\r\n const index = possibleValues.indexOf(selectedItem);\r\n if (index >= 0) {\r\n possibleValues.splice(index, 1);\r\n }\r\n }\r\n }\r\n\r\n if (value == null) {\r\n return possibleValues;\r\n }\r\n\r\n const filterValue = value.toLowerCase();\r\n\r\n return possibleValues.filter(item => item.toLowerCase().indexOf(filterValue) === 0);\r\n }*/\r\n\r\n ngOnInit(): void {\r\n this.activatedRoute.params.subscribe((routeParams) => {\r\n this.escola = null;\r\n this.editing = false;\r\n this.mapSizeWidth = innerWidth / 2;\r\n const codEscola = this.activatedRoute.snapshot.paramMap.get('codigo');\r\n const nomeEscola = this.activatedRoute.snapshot.paramMap.get('nome');\r\n\r\n this.updateTags(nomeEscola);\r\n this.loadEscolas(codEscola);\r\n\r\n // firebase.functions().httpsCallable('view_lista_escola_ativa')\r\n // ({nome_lista: 'Escolas Novas'}) // TODO: change to specific school nome_lista\r\n // .then(value => {\r\n // this.escolaListaArray = value.data;\r\n // });\r\n\r\n firebase\r\n .functions()\r\n .httpsCallable('escola_unidades')(\r\n // TODO: include this array in escolas funciton\r\n { cod_escola: codEscola }\r\n )\r\n .then((value) => {\r\n this.outrasUnidades = value.data;\r\n });\r\n\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n });\r\n\r\n this.activatedRoute.fragment.subscribe((fragment) => {\r\n this.fragment = fragment;\r\n });\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.editingClick();\r\n }, 3000);\r\n }\r\n\r\n private updateTags(nomeEscola: string = null): void {\r\n if (this.escola == null) {\r\n if (nomeEscola) {\r\n this.meta.updateTag({ name: 'description', content: `${nomeEscola}` });\r\n }\r\n } else {\r\n this.title.setTitle(`SchoolAdvisor | ${this.escola.nome}`);\r\n const description = `description: Confira todas as informações de ${this.escola.nome}. Buscador com Informações Completas de todas as Escolas Particulares.`;\r\n const keyword = `schooladvisor, ${this.escola.nome}, ${this.escola.endereco}, ${JSON.stringify(this.escola.nivel_ensino)}`;\r\n this.meta.updateTag({ name: 'description', content: description });\r\n this.meta.updateTag({ name: 'keyword', content: keyword });\r\n }\r\n }\r\n\r\n private updateGraph(): void {\r\n const indices = this.escola.indices;\r\n this.graph_indices_data = [{ name: 'Índices', series: [] }];\r\n for (const item of Object.keys(indices)) {\r\n const value = indices[item];\r\n if (value != null) {\r\n this.graph_indices_data[0].series.push({ name: item, value });\r\n }\r\n }\r\n // this.graph_indices_data = [\r\n // {\r\n // name: 'Indicadores',\r\n // series: [\r\n // {\r\n // name: '2010',\r\n // value: 7300000\r\n // },\r\n // {\r\n // name: '2011',\r\n // value: 8940000\r\n // }\r\n // ]\r\n // },\r\n // ];\r\n }\r\n\r\n private loadEscolas(codEscola: any): void {\r\n const perfil = this.userService.userData?.perfil;\r\n const data: any = { codigo: codEscola };\r\n if (perfil) {\r\n data.perfil = perfil;\r\n }\r\n\r\n firebase\r\n .functions()\r\n .httpsCallable('escola')(data)\r\n .then((value) => {\r\n if (value.data.rows.length > 0) {\r\n this.escola = value.data.rows[0];\r\n\r\n if (!this.escola.matriculas_universidades) {\r\n this.escola.matriculas_universidades = [];\r\n }\r\n if (!this.escola.matriculas_racas) {\r\n this.escola.matriculas_racas = [];\r\n }\r\n if (!this.escola.professores_racas) {\r\n this.escola.professores_racas = [];\r\n }\r\n if (!this.escola.competicoes) {\r\n this.escola.competicoes = [];\r\n }\r\n let inep: any = this.escola.inep;\r\n try {\r\n inep = parseInt(inep);\r\n } catch (e) {\r\n inep = this.escola.codigo;\r\n }\r\n\r\n if (this.escola.codigo !== inep) {\r\n const escolaUrl = this.escola.nome.replace(/ /g, '-');\r\n const domain = window.location.origin;\r\n let url = `${domain}/escolas/${this.escola.inep}/${escolaUrl}`;\r\n url = this.urlFixer.transform(url);\r\n url = url.replace(/\\(/g, '').replace(/\\)/g, '');\r\n const meta = document.createElement('meta');\r\n meta.httpEquiv = 'refresh';\r\n meta.content = `0;url=${url}`;\r\n\r\n document.getElementsByTagName('head')[0].appendChild(meta);\r\n return;\r\n }\r\n\r\n this.codEscolaGallery = this.escola.codigo;\r\n this.updateTags();\r\n this.updateGraph();\r\n // this.endereco = this.escolaService.parseEndereco(this.escola);\r\n this.recursosPedagogicosGroup = this.escolaService.getGrupo('recursos_pedagogico', true, this.escola);\r\n this.recursosRecreativosGroup = this.escolaService.getGrupo('recursos_recreativo', true, this.escola);\r\n this.tecnologiaInternetGroup = this.escolaService.getGrupo('tecnologia_internet', true, this.escola);\r\n this.tecnologiaRecursoGroup = this.escolaService.getGrupo('tecnologia_recurso', true, this.escola);\r\n (window as any)._escola = this.escola;\r\n if (this.escola.lista_escolas != null && !this.escola.premium) {\r\n this.escolaListaArray = {\r\n nome_lista: 'Outras escolas na região',\r\n cod_escola: this.escola.codigo,\r\n };\r\n }\r\n this.signalScrollTo = true;\r\n }\r\n\r\n this.escolaBeneficio = value.data.rows[0].beneficios;\r\n\r\n if (this.escolaBeneficio == null) {\r\n this.escolaBeneficio = {\r\n codigo: this.escola.codigo,\r\n tipo: 0,\r\n };\r\n }\r\n\r\n if (this.escolaBeneficio.tipo === null || this.escolaBeneficio.tipo === undefined) this.escolaBeneficio.tipo = 0;\r\n\r\n if (this.escolaBeneficio.codigo === null || this.escolaBeneficio.codigo === undefined) {\r\n this.escolaBeneficio.codigo = this.escola.codigo;\r\n }\r\n\r\n });\r\n\r\n firebase\r\n .functions()\r\n .httpsCallable('escola_familys_choice')({ codigo: codEscola })\r\n .then((value) => {\r\n this.familyChoice = value.data;\r\n });\r\n }\r\n\r\n addMatriculasUniversidades(): void {\r\n this.escola.matriculas_universidades.push({\r\n title: '',\r\n quantidade: null,\r\n ano_referencia: '',\r\n });\r\n }\r\n\r\n removeMatriculasUniversidades(index: number): void {\r\n this.escola.matriculas_universidades.splice(index, 1);\r\n }\r\n\r\n addDiversidadesEstudantes(): void {\r\n this.escola.matriculas_racas.push({\r\n raca: '',\r\n quantidade: null,\r\n });\r\n }\r\n\r\n removeDiversidadesEstudantes(index: number): void {\r\n this.escola.matriculas_racas.splice(index, 1);\r\n }\r\n\r\n addDiversidadesProfessores(): void {\r\n this.escola.professores_racas.push({\r\n raca: '',\r\n quantidade: null,\r\n });\r\n }\r\n\r\n removeDiversidadesProfessores(index: number): void {\r\n this.escola.professores_racas.splice(index, 1);\r\n }\r\n\r\n addNacionalidadeEstudantes(): void {\r\n this.escola.matriculas_nacionalidades.push({\r\n nacionalidade: '',\r\n quantidade: null,\r\n });\r\n }\r\n\r\n removeNacionalidadeEstudantes(index: number): void {\r\n this.escola.matriculas_nacionalidades.splice(index, 1);\r\n }\r\n\r\n addNacionalidadeProfessores(): void {\r\n this.escola.professores_nacionalidades.push({\r\n nacionalidade: '',\r\n quantidade: null,\r\n });\r\n }\r\n\r\n removeNacionalidadeProfessores(index: number): void {\r\n this.escola.professores_nacionalidades.splice(index, 1);\r\n }\r\n\r\n addCompeticoes(): void {\r\n this.escola.competicoes.push('');\r\n }\r\n\r\n removeCompeticoes(index: number): void {\r\n this.escola.competicoes.splice(index, 1);\r\n }\r\n\r\n trackByIndex(index: number, item: any): any {\r\n return index;\r\n }\r\n\r\n get educacaoBilingue() {\r\n return educacaoBilingue;\r\n }\r\n\r\n scrollTo(elementId: string): void {\r\n const el: HTMLElement = document.getElementById(elementId);\r\n if (el) {\r\n window.scrollBy({ behavior: 'smooth', top: el.getBoundingClientRect().top - 100 });\r\n this.signalScrollTo = false;\r\n }\r\n }\r\n\r\n showRankingCompleto(): void {\r\n this.matDialog.open(ReviewRankingComponent, {\r\n id: 'rankingCompletoDialog',\r\n data: {\r\n escola: this.escola,\r\n readonly: true,\r\n },\r\n });\r\n }\r\n\r\n /**\r\n * Botão 1: Você receberá informações completas sobre essa escola, são até 110 itens de avaliação objetiva!\r\n * Prazo de entrega: até 10 dias úteis. (COMPRAR)\r\n *\r\n * Botão 2: Quero comprar uma curadoria para me ajudar a escolher 5 escolas e o comparativo das 5 escolas.\r\n * Você receberá os próximos-passos por e-mail. Prazo de entrega: até 15 dias úteis. (COMPRAR)\r\n *\r\n * Botão 3: Ainda tenho dúvidas. Quero falar com vocês. (FALE CONOSCO)\r\n */\r\n checkout(event: any): void {\r\n this.matDialog.open(EscolaProductsComponent, { id: 'escola-products', data: this.escola });\r\n }\r\n\r\n editingClick(): void {\r\n // this.escolaOld = {...this.escola};\r\n // this.escolaOld.social = {...this.escola.social};\r\n // this.escolaOld.tags = {...this.escola.tags};\r\n // this.escolaOld.videos = {...this.escola.videos};\r\n\r\n this.schoolDetailMoreInfo.detectChanges();\r\n //this.schoolQualifications.detectChanges();\r\n this.escolaOld = clone(this.escola);\r\n this.escolaBeneficioOld = clone(this.escolaBeneficio);\r\n this.editing = true;\r\n }\r\n\r\n async saveEdit(): Promise {\r\n const e = document.getElementsByTagName('mat-error');\r\n\r\n if (e.length > 0) {\r\n window.scrollBy({ behavior: 'smooth', top: e[0].getBoundingClientRect().top - 150 });\r\n this.snackBar.open('Existem campos inválidos.', 'Ok', { duration: 5000 });\r\n return;\r\n }\r\n\r\n this.editing = false;\r\n this.saving = true;\r\n\r\n // ReCreate escola.nivel_ensino array based on its subvalues\r\n this.escolaService.updateNivelEnsino(this.escola);\r\n\r\n const newData: any = {}; // this.diff(this.escolaAux, this.escola);\r\n const deltaEscola = jdiff(this.escolaOld, this.escola);\r\n const deltaBeneficio = jdiff(this.escolaBeneficioOld, this.escolaBeneficio);\r\n\r\n if (deltaEscola) {\r\n const deltaKeys: string[] = Object.keys(deltaEscola);\r\n for (const key of deltaKeys) {\r\n newData[key] = this.escola[key];\r\n }\r\n if (Object.keys(newData).length > 0) {\r\n newData.codigo = this.escolaOld.codigo;\r\n\r\n let value = await firebase.functions().httpsCallable('escola_update')(newData);\r\n\r\n try {\r\n if (value.data.length > 0) {\r\n this.escola = value.data[0];\r\n this.loadEscolas(this.escola.codigo);\r\n } else {\r\n this.snackBar.open('Ocorreu um erro ao salvar os dados da Escola.', 'Ok', { duration: 5000 });\r\n this.escola = clone(this.escolaOld);\r\n }\r\n } catch (e) {\r\n if (!deltaBeneficio) {\r\n this.snackBar.open('Ocorreu um erro ao salvar os dados da Escola.', 'Ok', { duration: 5000 });\r\n this.escola = clone(this.escolaOld);\r\n }\r\n }\r\n\r\n this.saving = false;\r\n } else {\r\n this.saving = false;\r\n }\r\n }\r\n\r\n if (deltaBeneficio) {\r\n\r\n let value = await firebase.functions().httpsCallable('escola_benefits_update')(this.escolaBeneficio);\r\n\r\n this.escolaBeneficioOld = clone(this.escolaBeneficio);\r\n }\r\n\r\n if (!deltaEscola && !deltaBeneficio) {\r\n this.snackBar.open('Nenhuma informação foi alterada.', 'Ok', { duration: 2000 });\r\n this.saving = false;\r\n }\r\n\r\n this.callbackEvent.emit();\r\n }\r\n\r\n cancelEdit(): void {\r\n this.escola = this.escolaOld;\r\n this.escolaBeneficio = this.escolaBeneficioOld;\r\n this.editing = false;\r\n\r\n this.callbackEvent.emit();\r\n }\r\n\r\n /*addTag(event: MatChipInputEvent): void {\r\n const input = event.input;\r\n const value = event.value;\r\n\r\n for (const item of this.escola.tags) {\r\n \r\n if (item === value) {\r\n return;\r\n }\r\n }\r\n\r\n // Add our tag\r\n if ((value || '').trim()) {\r\n this.escola.tags.push(value.trim());\r\n }\r\n\r\n // Reset the input value\r\n if (input) {\r\n input.value = '';\r\n }\r\n\r\n this.tagControl.setValue(null);\r\n }*/\r\n\r\n /*removeTag(tag: string): void {\r\n const index = this.escola.tags.indexOf(tag);\r\n\r\n if (index >= 0) {\r\n this.escola.tags.splice(index, 1);\r\n }\r\n } */\r\n\r\n /*selectedTag(event: MatAutocompleteSelectedEvent): void {\r\n if (!this.escola.tags) {\r\n this.escola.tags = [];\r\n }\r\n\r\n this.escola.tags.push(event.option.viewValue);\r\n this.tagsInput.nativeElement.value = null;\r\n this.tagControl.setValue('');\r\n\r\n requestAnimationFrame(() => {\r\n this.autoTrigger.openPanel();\r\n });\r\n }\r\n\r\n selectedOption(event: MatSelectChange): void {\r\n if (!this.escola.tags) {\r\n this.escola.tags = [];\r\n }\r\n\r\n if (this.escola.tags.indexOf(event.value) >= 0) {\r\n return;\r\n }\r\n\r\n this.escola.tags.push(event.value);\r\n this.tagsInput.nativeElement.value = null;\r\n this.tagControl.setValue('');\r\n }*/\r\n\r\n chooseIconFile(event: any): void {\r\n this.iconFile = event.target.files[0];\r\n }\r\n\r\n uploadIcon($event: UploadFileData): void {\r\n this.escola.icon_path = $event.thumb;\r\n this.iconFile = null;\r\n }\r\n\r\n removeVideo(item: string): void {\r\n const index = this.escola.videos.indexOf(item);\r\n\r\n if (index >= 0) {\r\n this.escola.videos.splice(index, 1);\r\n }\r\n }\r\n\r\n addVideo(event: MatChipInputEvent): void {\r\n if (this.videosControl.valid) {\r\n if (!this.videosControl.value) {\r\n return;\r\n }\r\n\r\n const input = event.input;\r\n const value = event.value;\r\n\r\n //verifica se é um vídeo do youtube normal e converte em url de embed\r\n if (value.indexOf('youtube') !== -1) {\r\n const videoId = value.split('v=')[1];\r\n this.escola.videos.unshift('https://www.youtube.com/embed/' + videoId);\r\n } else {\r\n //verifica se é um vídeo do youtube encurtado e converte em url de embed\r\n if (value.indexOf('youtu.be') !== -1) {\r\n const videoId = value.split('.be/')[1];\r\n this.escola.videos.unshift('https://www.youtube.com/embed/' + videoId);\r\n } else {\r\n //verifica se é um vídeo do vimeo e converte em url de embed\r\n if (value.indexOf('vimeo') !== -1) {\r\n const videoId = value.split('vimeo.com/')[1];\r\n this.escola.videos.unshift('https://player.vimeo.com/video/' + videoId);\r\n } else {\r\n //verifica se é um vídeo do vimeo encurtado e converte em url de embed\r\n if (value.indexOf('vimeo') !== -1) {\r\n const videoId = value.split('.com/')[1];\r\n this.escola.videos.push('https://player.vimeo.com/video/' + videoId);\r\n } else if ((value || '').trim()) {\r\n this.escola.videos.unshift(value);\r\n }\r\n }\r\n }\r\n }\r\n\r\n // Add our tag\r\n /*if ((value || '').trim()) {\r\n this.escola.videos.push(value.trim());\r\n }*/\r\n\r\n // Reset the input value\r\n if (input) {\r\n input.value = '';\r\n }\r\n\r\n this.tagControl.setValue(null);\r\n }\r\n }\r\n\r\n drop(event: CdkDragDrop): void {\r\n moveItemInArray(this.escola.videos, event.previousIndex, event.currentIndex);\r\n }\r\n\r\n vchange(event: google.maps.places.PlaceResult | string): void {\r\n \r\n }\r\n\r\n proprietario(): void {\r\n this.saving = true;\r\n this.userService.proprietario(this.escola);\r\n // TODO: return a promisse instead of a timer\r\n timer(5000).subscribe((value) => {\r\n this.saving = false;\r\n });\r\n this.analytics.clickSolicitarProprietario(this.escola);\r\n }\r\n\r\n horarioFuncionamento(type: 'min' | 'max', value: string): void {\r\n switch (type) {\r\n case 'min':\r\n this.escola.horario_funcionamento_min = value;\r\n break;\r\n case 'max':\r\n this.escola.horario_funcionamento_max = value;\r\n break;\r\n }\r\n }\r\n\r\n decimalParser(event: any): number {\r\n if (event !== null) {\r\n const c = event\r\n .toString()\r\n .replace(/[^\\d,]/g, '')\r\n .replace(',', '.');\r\n if (c.length > 0) {\r\n return c;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n // TODO: add a debounce ou timeout to make one single call\r\n markForReload(): void {\r\n // this.escolaGalleryComponent.loadImages();\r\n }\r\n\r\n buySchool(): void {\r\n this.saving = true;\r\n this.pagseguroService.buy(this.pagseguroService.plano.perfil_escola.nome, this.escola.codigo).then(() => (this.saving = false));\r\n }\r\n\r\n ativaToggle(event: MatSlideToggleChange): void {\r\n if (event.checked) {\r\n this.escola.data_desativada = null;\r\n this.escola.motivo_desativada = null;\r\n } else {\r\n const dialogRef = this.matDialog.open(DialogMotivo, {\r\n data: this.escola,\r\n });\r\n dialogRef.afterClosed().subscribe((result) => {\r\n if (result != null) {\r\n this.escola = result;\r\n }\r\n });\r\n }\r\n }\r\n\r\n requestInfo(fieldName: string, responseDialog: boolean = true): void {\r\n const user = this.userService.getCurrentUser();\r\n this.analytics.requestEscolaField(this.escola, fieldName, user);\r\n // firebase.functions().httpsCallable('event_request_info')({field_name: fieldName, cod_escola: this.escola.codigo});\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent);\r\n\r\n // Include this event to run after user login\r\n const subscription = this.userService.userDataEvent.subscribe((value) => {\r\n if (value !== null) {\r\n const loggedUser = this.userService.getCurrentUser();\r\n if (loggedUser !== null && this.userService.userData?.data_aceite) {\r\n this.analytics.requestEscolaField(this.escola, fieldName, user);\r\n // firebase.functions().httpsCallable('event_request_info')({field_name: fieldName, cod_escola: this.escola.codigo});\r\n this.matDialog.closeAll();\r\n }\r\n }\r\n\r\n if (responseDialog) this.matDialog.open(DialogRequestInfoResponse);\r\n\r\n subscription.unsubscribe();\r\n });\r\n } else {\r\n this.analytics.sendEventMail(this.escola, user);\r\n\r\n if (responseDialog) this.matDialog.open(DialogRequestInfoResponse);\r\n }\r\n }\r\n\r\n infoBottom(indiceTitle: string): void {\r\n for (const item of this.indicesInfo) {\r\n if (item.title === indiceTitle) {\r\n this._bottomSheet.open(BottomSheetInfo, { data: item });\r\n }\r\n }\r\n }\r\n\r\n raiox(): void {\r\n // TODO: move this connetion to a service of it's on\r\n const raioxURL = 'https://us-central1-firesample-7bd56.cloudfunctions.net/raiox';\r\n firebase\r\n .auth()\r\n .currentUser.getIdToken()\r\n .then((token) => {\r\n // const headers = new HttpHeaders().set('authorization', 'Bearer ' + token);\r\n // this.httpClient.get(raioxURL, {responseType: 'arraybuffer', headers}).subscribe((data) => {\r\n // const blob = new Blob([data], {});\r\n // const url = window.URL.createObjectURL(blob);\r\n // const pwa = window.open(url);\r\n // if (!pwa || pwa.closed || typeof pwa.closed === 'undefined') {\r\n // alert( 'Please disable your Pop-up blocker and try again.');\r\n // }\r\n // });\r\n\r\n // const req = new XMLHttpRequest();\r\n // req.addEventListener('load', () => {\r\n // });\r\n // req.addEventListener('error', () => {\r\n // });\r\n // req.open('GET', raioxURL, true);\r\n // req.setRequestHeader('Authorization', 'Bearer ' + token);\r\n // req.send();\r\n\r\n const headers = new HttpHeaders().set('authorization', 'Bearer ' + token);\r\n this.httpClient\r\n .get(raioxURL, {\r\n headers,\r\n responseType: 'blob' as 'json',\r\n observe: 'body' as 'body',\r\n params: { codigo: this.escola.codigo },\r\n })\r\n .subscribe((response: any) => {\r\n const dataType = response.type;\r\n const binaryData = [];\r\n binaryData.push(response);\r\n const downloadLink = document.createElement('a');\r\n downloadLink.href = window.URL.createObjectURL(new Blob(binaryData, { type: dataType }));\r\n let fileName = `Raio-X_Escola_${this.escola.codigo}.xlsx`;\r\n if (response.headers?.get('content-disposition')) {\r\n const fileNameRegex = /filename[^;=\\n]*=((['\"]).*?\\2|[^;\\n]*)/;\r\n const matches = fileNameRegex.exec(response.headers.get('content-disposition'));\r\n if (matches != null && matches[1]) {\r\n fileName = matches[1].replace(/['\"]/g, '');\r\n }\r\n }\r\n downloadLink.setAttribute('download', fileName);\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n });\r\n });\r\n }\r\n\r\n newMessage($event: any) {\r\n if (!this.chatVisible) {\r\n this.chatBadge = '!';\r\n }\r\n }\r\n\r\n toggleChat(): void {\r\n this.chatVisible = !this.chatVisible;\r\n if (this.chatVisible) {\r\n this.chatBadge = null;\r\n }\r\n }\r\n\r\n calculeAfinidade() {\r\n this.router.navigate(['perfil-afinidade']);\r\n }\r\n}\r\n","
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    {{ this.escola.nome }}

    \r\n {{ \"Escola desativada \" + moment(escola.data_desativada).format(\"DD/MM/YYYY\") }}\r\n
    \r\n \r\n \r\n \r\n O nome é obrigatório.\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Logo\"\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    Escola Parceira
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n\r\n \r\n
    \r\n

    Visão do especialista

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Dados Principais

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Abordagem Pedagógica

    \r\n

    \r\n \r\n {{ escola.abordagem_pedagogica }}\r\n \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    País de Origem

    \r\n \r\n

    {{ escola.pais }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Ano de Fundação

    \r\n \r\n

    {{ escola.ano_fundacao }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Grupo

    \r\n \r\n

    {{ escola.grupo_educacional }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Total de alunos

    \r\n \r\n

    {{ escola.indices_total_alunos | number : \"1.0-0\" : \"pt-BR\" }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Total de salas

    \r\n \r\n

    {{ escola.indices_quantidade_salas }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    0 && (escola?.premium || escola?.compra)\">\r\n

    Outras unidades

    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n

    Perfil dos Estudantes

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Gênero

    \r\n
    \r\n
    \r\n
    \r\n

    Masculino (%)

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Feminino (%)

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Outros (%)

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Erro - A soma de Gêneros não pode ultrapassar 100%

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    Diversidade e inclusão

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n

    Erro - A soma de Diversidade e inclusão não pode ultrapassar 100%

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    Nacionalidade

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n

    Erro - A soma de Nacionalidade não pode ultrapassar 100%

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    Universidades/escolas onde aprova

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n

    Erro - A soma de Universidades/escolas não pode ultrapassar 100%

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    Ano de referência

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    Perfil dos Professores

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Gênero

    \r\n
    \r\n
    \r\n
    \r\n

    Masculino (%)

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Feminino (%)

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Outros (%)

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Erro - A soma de Gêneros não pode ultrapassar 100%

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    Diversidade e inclusão

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n

    Erro - A soma de Diversidade e inclusão não pode ultrapassar 100%

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    Nacionalidade

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n

    Erro - A soma de Nacionalidade não pode ultrapassar 100%

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Sobre

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n {{ this.messagePremium }}\r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n

    Selos Ensino

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Materiais didáticos e plataformas de ensino utilizados

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Material\r\n

    Material apostilado

    \r\n \r\n

    {{ escola.material_didatico_apostilado == true ? \"Sim\" : \"Não\" }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n Não\r\n Sim\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Sistema\r\n

    Sistema de ensino

    \r\n \r\n

    \r\n {{ escola.qual_sistema_ensino }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Incluso\r\n

    Incluso na mensalidade

    \r\n \r\n

    {{ escola.material_didatico_incluso_mensalidade == true ? \"Sim\" : \"Não\" }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n Não\r\n Sim\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \"Geekie\"\r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n\r\n
    \r\n
    \r\n \"Google\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n

    Segmento de ensino

    \r\n
    \r\n \r\n
    \r\n
    0 || editing\">\r\n
    \r\n \"Berçário\"\r\n Berçário\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Períodos disponíveis

    \r\n \r\n

    {{ escola.bercario_periodos_disponiveis?.join(\", \") }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n 0\">\r\n
    \r\n

    Início do ano letivo

    \r\n \r\n

    {{ escola.bercario_processo_admissao }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Máx. de Alunos por turma

    \r\n \r\n

    \r\n {{ escola.bercario_alunos_por_turma }}\r\n

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Profissionais em sala

    \r\n \r\n

    \r\n {{ escola.bercario_profissionais_em_sala }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Mensalidade

    \r\n \r\n

    \r\n \r\n {{ escola.bercario_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n O nome é obrigatório.\r\n \r\n
    \r\n \r\n
    \r\n

    Quantidade de professores total

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    0 || editing\">\r\n
    \r\n \"Infantil\"\r\n Infantil\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Períodos disponíveis

    \r\n \r\n

    {{ escola.infantil_periodos_disponiveis?.join(\", \") }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n 0\">\r\n
    \r\n

    Início do ano letivo

    \r\n \r\n

    \r\n {{ escola.infantil_processo_admissao }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Máx. de Alunos por turma

    \r\n \r\n

    \r\n {{ escola.infantil_alunos_por_turma }}\r\n

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Profissionais em sala

    \r\n \r\n

    \r\n {{ escola.infantil_profissionais_em_sala }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Mensalidade

    \r\n \r\n \r\n {{ escola.infantil_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n O nome é obrigatório.\r\n \r\n
    \r\n \r\n
    \r\n

    Quantidade de professores total

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    0 || editing\">\r\n
    \r\n \"Fundamental\r\n Fundamental Anos Iniciais\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Períodos disponíveis

    \r\n \r\n

    {{ escola.fundamental1_periodos_disponiveis?.join(\", \") }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n 0\">\r\n
    \r\n

    Início do ano letivo

    \r\n \r\n

    \r\n {{ escola.fundamental1_processo_admissao }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Máx. de Alunos por turma

    \r\n \r\n

    \r\n {{ escola.fundamental1_alunos_por_turma }}\r\n

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Profissionais em sala

    \r\n \r\n

    \r\n {{ escola.fundamental1_profissionais_em_sala }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Mensalidade

    \r\n \r\n \r\n {{ escola.fundamental1_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n O nome é obrigatório.\r\n \r\n
    \r\n \r\n
    \r\n

    Quantidade de professores total

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    0 || editing\">\r\n
    \r\n \"Fundamental\r\n Fundamental Anos Finais\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Períodos disponíveis

    \r\n \r\n

    {{ escola.fundamental2_periodos_disponiveis?.join(\", \") }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n 0\">\r\n
    \r\n

    Início do ano letivo

    \r\n \r\n

    \r\n {{ escola.fundamental2_processo_admissao }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Máx. de Alunos por turma

    \r\n \r\n

    \r\n {{ escola.fundamental2_alunos_por_turma }}\r\n

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Profissionais em sala

    \r\n \r\n

    \r\n {{ escola.fundamental2_profissionais_em_sala }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Mensalidade

    \r\n \r\n \r\n {{ escola.fundamental2_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n O nome é obrigatório.\r\n \r\n
    \r\n \r\n
    \r\n

    Quantidade de professores total

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    0 || editing\">\r\n
    \r\n \"Médio\"\r\n Médio\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Períodos disponíveis

    \r\n \r\n

    {{ escola.ensino_medio_periodos_disponiveis?.join(\", \") }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n 0\">\r\n
    \r\n

    Início do ano letivo

    \r\n \r\n

    \r\n {{ escola.ensino_medio_processo_admissao }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Máx. de Alunos por turma

    \r\n \r\n

    \r\n {{ escola.ensino_medio_alunos_por_turma }}\r\n

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Profissionais em sala

    \r\n \r\n

    \r\n {{ escola.ensino_medio_profissionais_em_sala }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Mensalidade

    \r\n \r\n \r\n {{ escola.ensino_medio_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n O nome é obrigatório.\r\n \r\n
    \r\n \r\n
    \r\n

    Quantidade de professores total

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    Eventos

    \r\n
    \r\n \r\n
    \r\n\r\n \r\n
    0 || this.editing\">\r\n
    \r\n

    Intro sobre os vídeos da escola

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Vídeos

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n {{ this.messagePremium }}\r\n

    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n cancel\r\n \r\n \r\n \r\n \r\n Site/URL inválido (apenas url do YouTube) \r\n \r\n\r\n 0\">\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n

    Infraestrutura e Segurança

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Espaços coletivos

    \r\n \r\n

    Área Verde

    \r\n

    Auditório

    \r\n

    Banheiro Infantil

    \r\n

    Berços ou Camas Individuais

    \r\n

    Biblioteca

    \r\n

    Câmeras de Segurança

    \r\n

    Cantina

    \r\n

    Enfermaria

    \r\n

    Estacionamento

    \r\n

    Lactário

    \r\n

    Parque

    \r\n

    Pátio Coberto

    \r\n

    Pátio Descoberto

    \r\n

    Piscina

    \r\n

    Quadra Coberta

    \r\n

    Quadra Descoberta

    \r\n

    Refeitório

    \r\n

    Transporte Escolar

    \r\n

    Viveiro de Animais

    \r\n
    \r\n \r\n

    \r\n Área Verde\r\n

    \r\n

    \r\n Auditório\r\n

    \r\n

    \r\n Banheiro Infantil\r\n

    \r\n

    \r\n Berços ou Camas Individuais\r\n

    \r\n

    \r\n Biblioteca\r\n

    \r\n

    \r\n Câmeras de Segurança\r\n

    \r\n

    \r\n Cantina\r\n

    \r\n

    \r\n Enfermaria\r\n

    \r\n

    \r\n Estacionamento\r\n

    \r\n

    \r\n Lactário\r\n

    \r\n

    \r\n Parque\r\n

    \r\n \r\n \r\n

    \r\n Pátio Coberto\r\n

    \r\n

    \r\n Pátio Descoberto\r\n

    \r\n

    \r\n Piscina\r\n

    \r\n

    \r\n Quadra Coberta\r\n

    \r\n

    \r\n Quadra Descoberta\r\n

    \r\n

    \r\n Refeitório\r\n

    \r\n

    \r\n Transporte Escolar\r\n

    \r\n

    \r\n Viveiro de Animais\r\n

    \r\n
    \r\n
    \r\n
    \r\n

    Laboratório e Salas

    \r\n \r\n

    Laboratório de Ciências

    \r\n

    Laboratório de Robótica/Maker

    \r\n

    Sala de Amamentação

    \r\n

    Sala de Artes

    \r\n

    Salas Climatizadas

    \r\n

    Sala de Esportes

    \r\n

    Sala de Leitura

    \r\n

    Sala de Música

    \r\n
    \r\n \r\n

    \r\n Laboratório de Ciências\r\n

    \r\n

    \r\n Laboratório de Robótica/Maker\r\n

    \r\n

    \r\n Sala de Amamentação\r\n

    \r\n

    \r\n Sala de Artes\r\n

    \r\n

    \r\n Salas Climatizadas\r\n

    \r\n

    \r\n Sala de Esportes\r\n

    \r\n

    \r\n Sala de Leitura\r\n

    \r\n

    \r\n Sala de Música\r\n

    \r\n
    \r\n
    \r\n
    \r\n

    Acessibilidade

    \r\n \r\n

    Vão Livre

    \r\n

    Corrimão

    \r\n

    Rampa

    \r\n

    Elevador

    \r\n

    Banheiro PCD

    \r\n

    Piso Tátil

    \r\n

    Sinalização Sonora

    \r\n

    Sinalização Tátil

    \r\n

    Sinalização Visual

    \r\n
    \r\n \r\n

    \r\n Vão Livre\r\n

    \r\n

    \r\n Corrimão\r\n

    \r\n

    \r\n Rampa\r\n

    \r\n

    \r\n Elevador\r\n

    \r\n

    \r\n Banheiro PCD\r\n

    \r\n

    \r\n Piso Tátil\r\n

    \r\n

    \r\n Sinalização Sonora\r\n

    \r\n

    \r\n Sinalização Tátil\r\n

    \r\n

    \r\n Sinalização Visual\r\n

    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Tour Virtual

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n Tour Virtual\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

    \r\n {{ this.messagePremium }}\r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Acessibilidade

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    0 || editing\">\r\n

    Quantidade de Salas com Acessibilidade

    \r\n \r\n

    {{ escola.acessibilidade_qtde_salas }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Recursos de Aprendizagem

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Recreativos

    \r\n \r\n 0\">\r\n

    Brinquedo Infantil

    \r\n

    Instrumentos

    \r\n

    Material Desportivo

    \r\n
    \r\n \r\n

    Não possui recurso

    \r\n
    \r\n
    \r\n \r\n

    \r\n Brinquedo Infantil\r\n

    \r\n

    \r\n Instrumentos\r\n

    \r\n

    \r\n Material Desportivo\r\n

    \r\n
    \r\n
    \r\n
    \r\n

    Pedagógicos

    \r\n \r\n 0\">\r\n

    Jogos Educativos

    \r\n

    Material Científico

    \r\n

    Material Cultural

    \r\n
    \r\n \r\n

    Não possui recurso

    \r\n
    \r\n
    \r\n \r\n

    \r\n Jogos Educativos\r\n

    \r\n

    \r\n Material Científico\r\n

    \r\n

    \r\n Material Cultural\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Tecnologia e Recursos Digitais

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Recursos Digitais

    \r\n \r\n 0\">\r\n

    Lousa Digital

    \r\n

    Sala Multimídia

    \r\n

    Desktop Aluno

    \r\n

    Notebook Aluno

    \r\n

    Tablet Aluno

    \r\n
    \r\n \r\n

    Não possui recurso

    \r\n
    \r\n
    \r\n \r\n

    \r\n Lousa Digital\r\n

    \r\n

    \r\n Sala Multimídia\r\n

    \r\n

    \r\n Desktop Aluno\r\n

    \r\n

    \r\n Notebook Aluno\r\n

    \r\n

    \r\n Tablet Aluno\r\n

    \r\n
    \r\n
    \r\n
    \r\n

    Acesso à Internet

    \r\n \r\n 0\">\r\n

    Acesso à Internet para processos de ensino e aprendizagem

    \r\n

    Acesso à Internet para alunos

    \r\n
    \r\n \r\n

    Não possui recurso

    \r\n
    \r\n
    \r\n \r\n

    \r\n Acesso à Internet para processos de ensino e aprendizagem\r\n

    \r\n

    \r\n Acesso à Internet para alunos\r\n

    \r\n
    \r\n
    \r\n
    \r\n

    Sistema de aula online

    \r\n \r\n

    {{ escola.tecnologia_aula_online == true ? \"Sim\" : \"Não\" }}

    \r\n
    \r\n \r\n \r\n \r\n Não\r\n Sim\r\n \r\n \r\n
    \r\n
    \r\n \"Google\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Google\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Corpo Docente

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    % de docentes Graduados?

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    % de docentes Pós-graduados?

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Total de professores

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Profissionais\r\n

    Profissionais especializados

    \r\n \r\n

    Fonoaudióloga

    \r\n

    Psicóloga

    \r\n

    Nutricionista

    \r\n
    \r\n \r\n Nutricionista \r\n Fonoaudiologia \r\n Psicóloga \r\n Equipe de Enfermagem / Bombeiro \r\n Conselheiro Vocacional \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Idiomas

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Ensino

    \r\n \r\n

    {{ escola.modalidade_ensino }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \"Idioma\r\n

    Idioma Principal

    \r\n \r\n

    {{ escola.idioma_principal?.join(\", \") }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    0 || this.editing\">\r\n
    \r\n \"Outros\"\r\n

    Outros

    \r\n \r\n

    {{ escola.outros_idiomas?.join(\", \") }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \"Bilíngue\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Cursos Extracurriculares

    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Esportes\"\r\n

    Esportes

    \r\n \r\n
    \r\n

    Atletismo

    \r\n

    Arquearia

    \r\n

    Artes Marciais

    \r\n

    Badminton

    \r\n

    Ballet

    \r\n

    Basquete

    \r\n

    Circo

    \r\n

    Danças

    \r\n

    Esgrima

    \r\n

    Futebol

    \r\n

    Ginástica

    \r\n

    Handebol

    \r\n

    Hip Hop

    \r\n

    Hoquei

    \r\n

    Ioga

    \r\n

    Judô

    \r\n

    Natação

    \r\n

    Patinação

    \r\n

    Rugby

    \r\n

    Skate

    \r\n \r\n

    Tênis

    \r\n

    Tênis de Mesa

    \r\n

    Voleibol

    \r\n
    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n

    \r\n Atletismo\r\n

    \r\n

    \r\n Arquearia\r\n

    \r\n

    \r\n Artes Marciais\r\n

    \r\n

    \r\n Badminton\r\n

    \r\n

    \r\n Ballet\r\n

    \r\n

    \r\n Basquete\r\n

    \r\n

    \r\n Circo\r\n

    \r\n

    \r\n Danças\r\n

    \r\n

    \r\n Esgrima\r\n

    \r\n

    \r\n Futebol\r\n

    \r\n

    \r\n Ginástica\r\n

    \r\n

    \r\n Handebol\r\n

    \r\n

    \r\n Hip Hop\r\n

    \r\n

    \r\n Hoquei\r\n

    \r\n

    \r\n Ioga\r\n

    \r\n

    \r\n Judô\r\n

    \r\n

    \r\n Natação\r\n

    \r\n

    \r\n Patinação\r\n

    \r\n

    \r\n Rugby\r\n

    \r\n

    \r\n Skate\r\n

    \r\n \r\n \r\n \r\n

    \r\n Tênis\r\n

    \r\n

    \r\n Tenis de Mesa\r\n

    \r\n

    \r\n Voleibol\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Habilidades\r\n

    Habilidades Lógicas

    \r\n \r\n
    \r\n

    Catequese

    \r\n

    Culinária

    \r\n

    Educação Ambiental

    \r\n

    Educação Financeira

    \r\n

    Empreendedorismo

    \r\n

    Horticultura

    \r\n

    Idiomas

    \r\n

    Libras

    \r\n

    Maker

    \r\n

    Orient. Vocacional

    \r\n

    Prep. Vestibular

    \r\n

    Prep. ENEM

    \r\n

    Robótica

    \r\n
    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n

    \r\n Catequese\r\n

    \r\n

    \r\n Culinária\r\n

    \r\n

    \r\n Educação Ambiental\r\n

    \r\n

    \r\n Educação Financeira\r\n

    \r\n

    \r\n Empreendedorismo\r\n

    \r\n

    \r\n Horticultura\r\n

    \r\n

    \r\n Idiomas\r\n

    \r\n

    \r\n Libras\r\n

    \r\n

    \r\n Maker\r\n

    \r\n

    \r\n Orient. Vocacional\r\n

    \r\n

    \r\n Prep. Vestibular\r\n

    \r\n

    \r\n Prep. ENEM\r\n

    \r\n

    \r\n Robótica\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Artes\"\r\n

    Artes

    \r\n \r\n
    \r\n

    Desenho

    \r\n

    Literatura

    \r\n

    Música

    \r\n

    Prod. Artística

    \r\n

    Teatro

    \r\n
    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n

    \r\n Desenho\r\n

    \r\n

    \r\n Literatura\r\n

    \r\n

    \r\n Música\r\n

    \r\n

    \r\n Prod. Artística\r\n

    \r\n

    \r\n Teatro\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n

    Competições que a escola participa (olimpíadas científicas e do conhecimento)

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Disciplinas da Grade Curricular

    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \"Aulas\r\n

    Aulas de Programação / Coding

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Duplo\r\n

    Duplo Diploma

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Educação\r\n

    Educação Empreendedora

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Educação\r\n

    Ensino Religioso

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Convênio\r\n

    Convênio com Escolas no Exterior

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Oportunidades\r\n

    Oportunidades de Voluntariado

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Intercâmbio\"\r\n

    Intercâmbio

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \"Aulas\r\n Aulas de Programação / Coding \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Duplo\r\n Duplo Diploma \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Educação\r\n Educação Empreendedora \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Educação\r\n Ensino Religioso \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Aulas\r\n Convênio com Escolas no Exterior \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Oportunidades\r\n Oportunidades de Voluntariado \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Intercâmbio\"\r\n Intercâmbio \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Competições\r\n Competições internacionais \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Certificação\r\n Certificação em outro idioma \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n

    Alimentação

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Almoço\"\r\n

    Almoço

    \r\n \r\n

    \r\n {{ escola.alimentacao_oferece_almoco }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Jantar\"\r\n

    Jantar

    \r\n \r\n

    \r\n {{ escola.alimentacao_oferece_jantar }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Lanche\"\r\n

    Lanche

    \r\n \r\n

    \r\n {{ escola.alimentacao_oferece_lanche }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n

    Concorrentes

    \r\n
    \r\n\r\n \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n

    Avaliações

    \r\n
    \r\n \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n Escola Parceira Premium\r\n \r\n
    \r\n
    \r\n Escola Parceira Básica\r\n \r\n
    \r\n
    \r\n Escola Ativa\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-esportes-cultura',\r\n templateUrl: './escola-esportes-cultura.component.html',\r\n styleUrls: ['./escola-esportes-cultura.component.css'],\r\n})\r\nexport class EscolaEsportesCulturaComponent implements OnInit {\r\n @Input() escola: Escola;\r\n isExpanded = false;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n toggleExpanded(): void {\r\n this.isExpanded = !this.isExpanded;\r\n }\r\n\r\n get hasSobre(): boolean {\r\n return this.escola.extracurricular_sobre && this.escola.extracurricular_sobre.trim() !== '';\r\n }\r\n\r\n get hasModalidades(): boolean {\r\n return this.escola.extracurricular_esporte_atletismo ||\r\n this.escola.extracurricular_esporte_arquearia ||\r\n this.escola.extracurricular_esporte_artes_marciais ||\r\n this.escola.extracurricular_esporte_badminton ||\r\n this.escola.extracurricular_esporte_ballet ||\r\n this.escola.extracurricular_esporte_basquete ||\r\n this.escola.extracurricular_esporte_circo ||\r\n this.escola.extracurricular_esporte_dancas ||\r\n this.escola.extracurricular_esporte_esgrima ||\r\n this.escola.extracurricular_esporte_futebol ||\r\n this.escola.extracurricular_esporte_ginastica ||\r\n this.escola.extracurricular_esporte_handebol ||\r\n this.escola.extracurricular_esporte_hiphop ||\r\n this.escola.extracurricular_esporte_hoquei ||\r\n this.escola.extracurricular_esporte_ioga ||\r\n this.escola.extracurricular_esporte_judo ||\r\n this.escola.extracurricular_esporte_natacao ||\r\n this.escola.extracurricular_esporte_patinacao ||\r\n this.escola.extracurricular_esporte_rugby ||\r\n this.escola.extracurricular_esporte_skate ||\r\n this.escola.extracurricular_esporte_tenis ||\r\n this.escola.extracurricular_esporte_tenis_mesa ||\r\n this.escola.extracurricular_esporte_voleibol ||\r\n this.escola.extracurricular_habilidade_logica_catequese ||\r\n this.escola.extracurricular_habilidade_logica_culinaria ||\r\n this.escola.extracurricular_habilidade_logica_educ_ambiental ||\r\n this.escola.extracurricular_habilidade_logica_educ_financeira ||\r\n this.escola.extracurricular_habilidade_logica_empreendedorismo ||\r\n this.escola.extracurricular_habilidade_logica_horticultura ||\r\n this.escola.extracurricular_habilidade_logica_idiomas ||\r\n this.escola.extracurricular_habilidade_logica_libras ||\r\n this.escola.extracurricular_habilidade_logica_maker ||\r\n this.escola.extracurricular_habilidade_logica_orint_vocacional ||\r\n this.escola.extracurricular_habilidade_logica_perp_vestibular ||\r\n this.escola.extracurricular_habilidade_logica_prep_enem ||\r\n this.escola.extracurricular_habilidade_logica_robotica ||\r\n this.escola.extracurricular_artes_desenho ||\r\n this.escola.extracurricular_artes_literatura ||\r\n this.escola.extracurricular_artes_musica ||\r\n this.escola.extracurricular_artes_prod_artistica ||\r\n this.escola.extracurricular_artes_teatro;\r\n }\r\n\r\n get hasCompeticoes(): boolean {\r\n return this.escola.competicoes && this.escola.competicoes.length > 0;\r\n }\r\n\r\n get hasData(): boolean {\r\n return this.hasSobre || this.hasModalidades || this.hasCompeticoes;\r\n } \r\n\r\n renderModalidades(): string {\r\n let modalidades = [];\r\n if (this.escola.extracurricular_esporte_atletismo == true) {\r\n modalidades.push('Atletismo');\r\n } else {\r\n //modalidades.push('Atletismo');\r\n }\r\n if (this.escola.extracurricular_esporte_arquearia == true) {\r\n modalidades.push('Arquearia');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_artes_marciais == true) {\r\n modalidades.push('Artes Marciais');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_badminton == true) {\r\n modalidades.push('Badminton');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_ballet == true) {\r\n modalidades.push('Ballet');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_basquete == true) {\r\n modalidades.push('Basquete');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_circo == true) {\r\n modalidades.push('Circo');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_dancas == true) {\r\n modalidades.push('Danças');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_esgrima == true) {\r\n modalidades.push('Esgrima');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_futebol == true) {\r\n modalidades.push('Futebol');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_ginastica == true) {\r\n modalidades.push('Ginástica');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_handebol == true) {\r\n modalidades.push('Handebol');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_hiphop == true) {\r\n modalidades.push('Hip Hop');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_hoquei == true) {\r\n modalidades.push('Hoquei');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_ioga == true) {\r\n modalidades.push('Ioga');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_judo == true) {\r\n modalidades.push('Judô');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_natacao == true) {\r\n modalidades.push('Natação');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_patinacao == true) {\r\n modalidades.push('Patinação');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_rugby == true) {\r\n modalidades.push('Rugby');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_skate == true) {\r\n modalidades.push('Skate');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_tenis == true) {\r\n modalidades.push('Tênis');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_tenis_mesa == true) {\r\n modalidades.push('Tênis de Mesa');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n if (this.escola.extracurricular_esporte_voleibol == true) {\r\n modalidades.push('Voleibol');\r\n } else {\r\n //modalidades.push('Arquearia');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_catequese == true) {\r\n modalidades.push('Catequese');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_culinaria == true) {\r\n modalidades.push('Culinária');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_educ_ambiental == true) {\r\n modalidades.push('Educação Ambiental');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_educ_financeira == true) {\r\n modalidades.push('Educação Financeira');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_empreendedorismo == true) {\r\n modalidades.push('Empreendedorismo');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_horticultura == true) {\r\n modalidades.push('Horticultura');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_idiomas == true) {\r\n modalidades.push('Idiomas');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_libras == true) {\r\n modalidades.push('Libras');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_maker == true) {\r\n modalidades.push('Maker');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_orint_vocacional) {\r\n modalidades.push('Orientação Vocacional');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_perp_vestibular == true) {\r\n modalidades.push('Preparatório Vestibular');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_prep_enem == true) {\r\n modalidades.push('Preparatório Enem');\r\n }\r\n\r\n if (this.escola.extracurricular_habilidade_logica_robotica == true) {\r\n modalidades.push('Robótica');\r\n }\r\n\r\n if (this.escola.extracurricular_artes_desenho == true) {\r\n modalidades.push('Desenho');\r\n }\r\n\r\n if (this.escola.extracurricular_artes_literatura == true) {\r\n modalidades.push('Literatura');\r\n }\r\n\r\n if (this.escola.extracurricular_artes_musica == true) {\r\n modalidades.push('Música');\r\n }\r\n\r\n if (this.escola.extracurricular_artes_prod_artistica == true) {\r\n modalidades.push('Produção Artística');\r\n }\r\n\r\n if (this.escola.extracurricular_artes_teatro == true) {\r\n modalidades.push('Teatro');\r\n }\r\n\r\n\r\n modalidades = modalidades.sort();\r\n\r\n return modalidades.join(' - ');\r\n }\r\n\r\n renderCompeticoes(): string {\r\n return this.escola.competicoes ? this.escola.competicoes.toString().replace(/,/g, ' - ') : '-';\r\n }\r\n}\r\n","
    \r\n
    \r\n

    Esportes, Cultura e Competições acadêmicas

    \r\n
    \r\n
    \r\n
    \r\n

    {{ this.escola.extracurricular_sobre }}

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \"NBA\"\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Modalidades

    \r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Competições que a escola participa

    \r\n

    {{ renderCompeticoes() }}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n Não Informado\r\n

    \r\n
    \r\n
    \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\nimport { AngularFireStorage, AngularFireUploadTask } from '@angular/fire/storage';\r\n\r\n@Component({\r\n selector: 'app-escola-eventos-edit',\r\n templateUrl: './escola-eventos-edit.component.html',\r\n styleUrls: ['./escola-eventos-edit.component.css'],\r\n})\r\nexport class EscolaEventosEditComponent implements OnInit {\r\n @Input() escola?: Escola;\r\n @Input() editing: boolean = false;\r\n\r\n constructor(private storage: AngularFireStorage) {}\r\n\r\n ngOnInit(): void {\r\n if (!this.escola.eventos) {\r\n this.escola.eventos = [];\r\n }\r\n }\r\n\r\n addItem(): void {\r\n this.escola.eventos.push({\r\n data: '',\r\n link: '',\r\n thumb: '',\r\n titulo: '',\r\n });\r\n }\r\n\r\n removeItem(index: number): void {\r\n this.escola.eventos.splice(index, 1);\r\n }\r\n\r\n saveItems(): void {\r\n console.log(this.escola);\r\n }\r\n\r\n previewThumb(event: any, index: number): void {\r\n const file = event.target.files[0];\r\n\r\n if (file) {\r\n const filePath = `thumbs/${new Date().getTime()}_${file.name}`;\r\n const fileRef = this.storage.ref(filePath);\r\n\r\n const task: AngularFireUploadTask = this.storage.upload(filePath, file);\r\n\r\n task.then((a) => {\r\n fileRef.getDownloadURL().subscribe((url) => {\r\n console.log('url', url);\r\n if (this.escola.eventos) {\r\n this.escola.eventos[index].thumb = url;\r\n this.escola.eventos[index].thumb_file = file;\r\n }\r\n });\r\n });\r\n }\r\n }\r\n}\r\n","
    \r\n

    Eventos e processo de ingresso

    \r\n\r\n
    \r\n \r\n
      \r\n
    • \r\n
      \r\n
      \r\n \r\n \r\n
      \r\n
      \r\n \r\n \r\n
      \r\n
      \r\n \r\n \r\n
      \r\n
      \r\n \r\n \r\n
      \r\n \"Thumb\"\r\n
      \r\n
      \r\n
      \r\n
    • \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-eventos',\r\n templateUrl: './escola-eventos.component.html',\r\n styleUrls: ['./escola-eventos.component.css'],\r\n})\r\nexport class EscolaEventosComponent implements OnInit {\r\n @Input() escola: Escola;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n get nextsEvents(): any[] {\r\n return this.escola.eventos.filter((evento) => new Date(evento.data) >= new Date());\r\n }\r\n\r\n get hasEvents(): boolean {\r\n return this.nextsEvents.length > 0;\r\n }\r\n\r\n getDia(data: string): string {\r\n return new Date(data).getUTCDate().toString().padStart(2, '0');\r\n }\r\n\r\n getMes(data: string): string {\r\n return new Date(data).toLocaleString('default', { month: 'short' });\r\n }\r\n}\r\n","
    \r\n
    \r\n

    Inscreva-se em eventos e processo de ingresso

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Evento\"\r\n
    \r\n
    \r\n
    \r\n

    {{ getDia(evento.data) }}

    \r\n

    {{ getMes(evento.data) }}

    \r\n
    \r\n
    \r\n

    {{ evento.titulo }}

    \r\n
    \r\n
    \r\n
    \r\n Inscreva-se\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n","import { AfterViewInit, Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { Gallery, GalleryRef, ImageItemData, ImageSize, ThumbnailsPosition } from 'ng-gallery';\r\nimport firebase from 'firebase/app';\r\nimport { Observable, of } from 'rxjs';\r\nimport { Escola } from '../../service/Escola';\r\nimport { UserService } from '../../service/user.service';\r\nimport { AnalyticsService } from '../../service/analytics.service';\r\nimport { tap } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-escola-gallery-new',\r\n templateUrl: './escola-gallery-new.component.html',\r\n styleUrls: ['./escola-gallery-new.component.css'],\r\n})\r\nexport class EscolaGalleryNewComponent implements OnInit, AfterViewInit {\r\n _escola: Escola;\r\n @Input() editing = false;\r\n galleryId = 'image-gallery';\r\n hasImage = true;\r\n imageCount = -1;\r\n warning: string = null;\r\n items: Observable;\r\n @Output() clickMessageLink = new EventEmitter();\r\n @ViewChild('itemTemplate') itemTemplate;\r\n\r\n constructor(\r\n public gallery: Gallery,\r\n // public lightbox: Lightbox,\r\n public userService: UserService,\r\n private analytics: AnalyticsService\r\n ) {\r\n const galleryRef: GalleryRef = this.gallery.ref(this.galleryId);\r\n galleryRef.indexChanged\r\n .pipe(\r\n tap((galleryState) => {\r\n const user = userService.getCurrentUser();\r\n this.analytics.clickEscolaMidia(this.escola, 'image', galleryState.currIndex, user);\r\n })\r\n )\r\n .subscribe();\r\n const lightboxRef = this.gallery.ref('lightbox');\r\n\r\n lightboxRef.setConfig({\r\n imageSize: ImageSize.Cover,\r\n thumbPosition: ThumbnailsPosition.Top,\r\n itemTemplate: this.itemTemplate,\r\n });\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n get escola(): Escola {\r\n return this._escola;\r\n }\r\n\r\n @Input() set escola(value: Escola) {\r\n this._escola = value;\r\n this.loadImages();\r\n }\r\n\r\n ngAfterViewInit(): void {}\r\n\r\n public loadImages(): void {\r\n this.imageCount = -1;\r\n const galleryRef: GalleryRef = this.gallery.ref(this.galleryId);\r\n galleryRef.reset();\r\n firebase\r\n .functions()\r\n .httpsCallable('escola_gallery')({ cod_escola: this.escola.codigo })\r\n .then((value) => {\r\n this.imageCount = value.data?.images?.length;\r\n\r\n if (!this.escola.premium\r\n && !this.escola.verificada_paga\r\n && this.imageCount > 1) {\r\n console.log('limiting images to 1');\r\n this.imageCount = 1;\r\n }\r\n\r\n console.log('imageCount', this.imageCount);\r\n\r\n this.warning = value.data?.message;\r\n let imagesData: ImageItemData[] = [];\r\n value.data.images.map((fileItem) => {\r\n const imageItemData: ImageItemData = { \r\n title: fileItem.title,\r\n src: fileItem.src, \r\n thumb: fileItem.thumb \r\n };\r\n\r\n let index = value.data.images.indexOf(fileItem);\r\n\r\n if (!imageItemData.title) {\r\n imageItemData.title = `${String(index + 1).padStart(3, '0')}`\r\n }\r\n\r\n if (this.escola.premium \r\n || this.escola.verificada_paga\r\n || imagesData.length === 0) {\r\n imagesData.push(imageItemData);\r\n }\r\n //galleryRef.addImage(fileItem);\r\n });\r\n\r\n const first = imagesData[0]\r\n first.title = ''\r\n\r\n imagesData = imagesData.sort((a, b) => {\r\n if (a.title === b.title) {\r\n return 0;\r\n }\r\n\r\n if (a.title === null) {\r\n return -1;\r\n }\r\n\r\n if (b.title === null) {\r\n return 1;\r\n }\r\n\r\n return a.title.localeCompare(b.title);\r\n })\r\n\r\n imagesData.map((fileItem) => {\r\n galleryRef.addImage(fileItem);\r\n });\r\n\r\n this.items = of(imagesData);\r\n });\r\n }\r\n\r\n removeImage(src: string, index: number): void {\r\n firebase\r\n .functions()\r\n .httpsCallable('escola_gallery_remove')({ cod_escola: this.escola.codigo, src })\r\n .then(() => {\r\n this.loadImages();\r\n });\r\n }\r\n\r\n setMainImage(src: string, index: number): void {\r\n firebase\r\n .functions()\r\n .httpsCallable('escola_gallery_main')({ cod_escola: this.escola.codigo, src })\r\n .then(() => {\r\n this.loadImages();\r\n });\r\n }\r\n\r\n openGallery(): void {\r\n const user = this.userService.getCurrentUser();\r\n this.analytics.clickEscolaMidia(this.escola, 'image', 0, user);\r\n }\r\n}\r\n","\r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n \"Imagem\r\n
    \r\n
    \r\n\r\n 0\">\r\n \r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-idiomas',\r\n templateUrl: './escola-idiomas.component.html',\r\n styleUrls: ['./escola-idiomas.component.css'],\r\n})\r\nexport class EscolaIdiomasComponent implements OnInit {\r\n @Input() escola: Escola;\r\n isExpanded = false;\r\n\r\n constructor() {}\r\n\r\n get hasSobre(): boolean {\r\n return this.escola.idioma_sobre && this.escola.idioma_sobre.trim() !== '';\r\n }\r\n\r\n get hasSelos(): boolean {\r\n return this.escola.oebi;\r\n }\r\n\r\n get hasIdiomas(): boolean {\r\n const idiomas = this.todosIdiomas();\r\n\r\n return idiomas.length > 0;\r\n }\r\n\r\n get hasInternacional(): boolean {\r\n return this.escola?.modalidade_ensino && this.escola.modalidade_ensino.trim() !== '';\r\n }\r\n\r\n get hasItensOferecidos(): boolean {\r\n return this.escola.disciplinas_adicionais_duplo_diploma\r\n || this.escola.intercambio\r\n || this.escola.competicoes_internacionais\r\n || this.escola.certificao_outro_idioma\r\n || this.escola.disciplinas_adicionais_convenio_com_escolas_no_exterior;\r\n }\r\n\r\n get hasData(): boolean {\r\n return this.hasSobre\r\n || this.hasSelos\r\n || this.hasIdiomas\r\n || this.hasInternacional\r\n || this.hasItensOferecidos;\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n toggleExpanded(): void {\r\n this.isExpanded = !this.isExpanded;\r\n }\r\n\r\n todosIdiomas(): string[] {\r\n let idiomas = this.escola.idioma_principal;\r\n\r\n if (!Array.isArray(idiomas)) {\r\n idiomas = [];\r\n }\r\n\r\n if (Array.isArray(this.escola.outros_idiomas)) {\r\n idiomas.push(...this.escola.outros_idiomas);\r\n }\r\n \r\n idiomas = idiomas.filter((idioma, index) => idiomas.indexOf(idioma) === index);\r\n\r\n return idiomas;\r\n }\r\n\r\n get escolaInternacionalLabel(): string {\r\n const modalidade = this.escola?.modalidade_ensino;\r\n\r\n switch (modalidade) {\r\n case 'Não bilíngue':\r\n return 'Esta escola não é bilíngue';\r\n\r\n case 'Bilíngue':\r\n return 'Esta escola é bilíngue';\r\n\r\n case 'Programa bilíngue opcional':\r\n return 'Esta escola oferece programa bilíngue opcional';\r\n\r\n case 'Internacional':\r\n return 'Esta escola é internacional';\r\n\r\n case 'Programa internacional opcional':\r\n return 'Esta escola oferece programa internacional opcional.';\r\n \r\n default:\r\n return '';\r\n }\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n

    Idiomas, bilinguismo e educação internacional

    \r\n
    \r\n
    \r\n
    \r\n

    {{ this.escola.idioma_sobre }}

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \"Bilíngue\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Idiomas oferecidos

    \r\n

    \r\n {{ this.todosIdiomas().join(\", \") }}\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    {{ escolaInternacionalLabel }}

    \r\n

    Origem: {{ this.escola.pais }}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    A escola também oferece

    \r\n
    \r\n
      \r\n
    • Duplo diploma
    • \r\n
    • Intercâmbio
    • \r\n
    • Competições internacionais
    • \r\n
    • Certificação em outro idioma
    • \r\n
    • Parcerias com universidades no exterior
    • \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Não Informado

    \r\n
    \r\n
    \r\n
    \r\n","import firebase from 'firebase/app';\r\nimport { Escola } from '../../service/Escola';\r\nimport { EscolaService } from '../../service/escola.service';\r\nimport { Review } from '../../review/review-edit/review-edit.component';\r\nimport { Component, Input, OnInit, AfterViewInit } from '@angular/core';\r\nimport { isArray } from 'lodash';\r\n\r\n@Component({\r\n selector: 'app-escola-info',\r\n templateUrl: './escola-info.component.html',\r\n styleUrls: ['./escola-info.component.css'],\r\n})\r\nexport class EscolaInfoComponent implements OnInit, AfterViewInit {\r\n @Input() isMobile: boolean = false;\r\n @Input() escola: Escola;\r\n @Input() familyChoice: boolean = false;\r\n @Input() reviews: Review[] = []\r\n @Input() selos: number[] = []\r\n reviewCount = 0;\r\n destaque = \"\";\r\n destaqueCount = 0;\r\n totalDestaque = 0;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.loadReviews();\r\n }\r\n\r\n loadReviews(): void {\r\n /*const value = await firebase\r\n .functions()\r\n .httpsCallable('destaques_escola')({ cod_escola: this.escola.codigo })\r\n \r\n this.reviewCount = value.data.total_reviews\r\n this.destaque = value.data.destaque\r\n this.destaqueCount = value.data.destaque_qtd\r\n this.totalDestaque = value.data.destaque_total*/\r\n\r\n let tagsReview = this.reviews.filter(t => t.aprovado).map(r => r.tags)\r\n\r\n if (this.escola.tags) {\r\n if (Array.isArray(this.escola.tags)) {\r\n tagsReview = tagsReview.concat([this.escola.tags])\r\n }\r\n else {\r\n for (const key in this.escola.tags) {\r\n if (Object.prototype.hasOwnProperty.call(this.escola.tags, key)) {\r\n const element = this.escola.tags[key];\r\n\r\n tagsReview.push(element)\r\n }\r\n }\r\n }\r\n }\r\n\r\n const reviewsFiltered = isArray(this.reviews) ? this.reviews.filter((review) => review.descricao || (review.descricao && review.rate_geral)) : [];\r\n this.reviewCount = reviewsFiltered.length;\r\n\r\n const withTagsReview = tagsReview.filter(t => t.length > 0)\r\n this.totalDestaque = withTagsReview.length\r\n\r\n const mostFrequentText = this.findMostFrequentText(withTagsReview)\r\n this.destaque = mostFrequentText.text\r\n this.destaqueCount = mostFrequentText.count\r\n }\r\n\r\n findMostFrequentText(withTagsReview: string[][]): { text: string, count: number } {\r\n\r\n const textCount: { [key: string]: number } = {};\r\n\r\n // Iterate over each list in withTagsReview\r\n for (const list of withTagsReview) {\r\n for (const text of list) {\r\n if (textCount[text]) {\r\n textCount[text]++;\r\n } else {\r\n textCount[text] = 1;\r\n }\r\n }\r\n }\r\n\r\n // Find the text with the highest count\r\n let mostFrequentText = '';\r\n let maxCount = 0;\r\n\r\n for (const text in textCount) {\r\n if (textCount[text] > maxCount) {\r\n maxCount = textCount[text];\r\n mostFrequentText = text;\r\n }\r\n }\r\n\r\n return { text: mostFrequentText, count: maxCount };\r\n }\r\n\r\n\r\n scrollTo(event: Event, divId: string): void {\r\n event.preventDefault();\r\n const element = document.querySelector(divId);\r\n if (element) {\r\n const elementPosition = element.getBoundingClientRect().top + window.pageYOffset;\r\n const offsetPosition = elementPosition - 100;\r\n\r\n window.scrollTo({\r\n top: offsetPosition,\r\n behavior: 'smooth',\r\n });\r\n }\r\n }\r\n\r\n destaquePorcentagem(): number {\r\n const porcentagem = Math.round((this.destaqueCount / this.totalDestaque) * 100);\r\n return porcentagem;\r\n }\r\n\r\n obterDestaqueTitulo(): string {\r\n switch (this.destaque) {\r\n case \"Artes e cultura\":\r\n return \"Vivência em Artes e Cultura\";\r\n\r\n case \"Valores religiosos e espirituais\":\r\n return \"Formação Religiosa e Espiritual\";\r\n\r\n case \"Esportes\":\r\n return \"Escola Esportiva\";\r\n\r\n case \"Envolvimento familiar\":\r\n return \"Escola parceira da família\";\r\n\r\n case \"Socioemocional\":\r\n return \"Programa de Habilidades Socioemocionais\";\r\n\r\n case \"Personalização do ensino\":\r\n return \"Trajetórias de Aprendizagem Personalizadas\";\r\n\r\n case \"Educação ambiental e sustentabilidade\":\r\n return \"Escola Consciente\";\r\n\r\n case \"Aprendizagem experiencial e prática\":\r\n return \"Fazer para Aprender\";\r\n\r\n case \"Educação tecnológica e fluência digital\":\r\n return \"Habilidades Digitais para o Futuro\";\r\n\r\n case \"Cidadania e globalização\":\r\n return \"Cidadãos do Mundo\";\r\n\r\n case \"Exigência acadêmica\":\r\n return \"Exigência acadêmica\";\r\n\r\n case \"Preparação universitária\":\r\n return \"Preparação para o Ensino Superior\";\r\n\r\n default:\r\n return this.destaque;\r\n }\r\n }\r\n\r\n obterDestaqueDescricao(): string {\r\n switch (this.destaque) {\r\n case \"Artes e cultura\":\r\n return \"das famílias afirmam que a escola tem ênfase em artes e cultura\";\r\n\r\n case \"Valores religiosos e espirituais\":\r\n return \"das famílias afirmam que a escola possui valores religiosos e espirituais\";\r\n\r\n case \"Esportes\":\r\n return \"das famílias afirmam que a escola tem ênfase em esportes\";\r\n\r\n case \"Envolvimento familiar\":\r\n return \"das famílias afirmam que a escola promove envolvimento e participação familiar\";\r\n\r\n case \"Socioemocional\":\r\n return \"das famílias afirmam que a escola tem ênfase socioemocional\";\r\n\r\n case \"Personalização do ensino\":\r\n return \"das famílias afirmam que a escola tem personalização do ensino\";\r\n\r\n case \"Educação ambiental e sustentabilidade\":\r\n return \"das famílias afirmam que a escola oferece educação ambiental e sustentabilidade\";\r\n\r\n case \"Aprendizagem experiencial e prática\":\r\n return \"das famílias afirmam que a escola trabalha com aprendizagem experiencial e prática\";\r\n\r\n case \"Educação tecnológica e fluência digital\":\r\n return \"das famílias afirmam que a escola oferece educação tecnológica e fluência digital\";\r\n\r\n case \"Cidadania e globalização\":\r\n return \"das famílias afirmam que a escola tem foco em cidadania e globalização\";\r\n\r\n case \"Exigência acadêmica\":\r\n return \"das famílias afirmam que a escola tem exigência acadêmica\";\r\n\r\n case \"Preparação universitária\":\r\n return \"das famílias afirmam que a escola tem preparação universitária\";\r\n\r\n default:\r\n return this.destaque;\r\n }\r\n }\r\n\r\n obterMelhorNota(): number {\r\n const infraestrutura = this.escola.rate_infraestrutura ?? 0;\r\n const seguranca = this.escola.rate_seguranca ?? 0;\r\n const pedagogico = this.escola.rate_pedagogico ?? 0;\r\n const acolhimento = this.escola.rate_acolhimento ?? 0;\r\n const cursos = this.escola.rate_extracurriculares ?? 0;\r\n const diversidade = this.escola.rate_diversidade ?? 0;\r\n const inclusao = this.escola.rate_inclusao ?? 0;\r\n\r\n return Math.max(infraestrutura, seguranca, pedagogico, acolhimento, cursos, diversidade, inclusao);\r\n }\r\n\r\n obterTituloMelhorNota(): string {\r\n const infraestrutura = this.escola.rate_infraestrutura ?? 0;\r\n const seguranca = this.escola.rate_seguranca ?? 0;\r\n const pedagogico = this.escola.rate_pedagogico ?? 0;\r\n const acolhimento = this.escola.rate_acolhimento ?? 0;\r\n const cursos = this.escola.rate_extracurriculares ?? 0;\r\n const diversidade = this.escola.rate_diversidade ?? 0;\r\n const inclusao = this.escola.rate_inclusao ?? 0;\r\n\r\n const melhorNota = Math.max(infraestrutura, seguranca, pedagogico, acolhimento, cursos, diversidade, inclusao);\r\n\r\n if (melhorNota === parseFloat(infraestrutura.toString())) {\r\n return \"Infraestrutura de qualidade\";\r\n } else if (melhorNota === parseFloat(seguranca.toString())) {\r\n return \"Escola segura\";\r\n } else if (melhorNota === parseFloat(pedagogico.toString())) {\r\n return \"Ensino de Qualidade\";\r\n } else if (melhorNota === parseFloat(acolhimento.toString())) {\r\n return \"Escola Acolhedora\";\r\n } else if (melhorNota === parseFloat(cursos.toString())) {\r\n return \"Cursos extracurriculares são um diferencial\";\r\n } else if (melhorNota === parseFloat(diversidade.toString())) {\r\n return \"Escola diversa\";\r\n } else if (melhorNota === parseFloat(inclusao.toString())) {\r\n return \"Respeito e Inclusão\";\r\n } else {\r\n return \"Nota\";\r\n }\r\n }\r\n\r\n obterDescricaoMelhorNota(): string {\r\n const infraestrutura = this.escola.rate_infraestrutura ?? 0;\r\n const seguranca = this.escola.rate_seguranca ?? 0;\r\n const pedagogico = this.escola.rate_pedagogico ?? 0;\r\n const acolhimento = this.escola.rate_acolhimento ?? 0;\r\n const cursos = this.escola.rate_extracurriculares ?? 0;\r\n const diversidade = this.escola.rate_diversidade ?? 0;\r\n const inclusao = this.escola.rate_inclusao ?? 0;\r\n\r\n const melhorNota = Math.max(infraestrutura, seguranca, pedagogico, acolhimento, cursos, diversidade, inclusao);\r\n\r\n if (melhorNota === parseFloat(infraestrutura.toString())) {\r\n return \"As famílias avaliaram a infraestrutura desta escola com nota\";\r\n } else if (melhorNota === parseFloat(seguranca.toString())) {\r\n return \"As famílias avaliaram a segurança desta escola com nota\";\r\n } else if (melhorNota === parseFloat(pedagogico.toString())) {\r\n return \"As famílias avaliaram o projeto pedagógico desta escola com nota\";\r\n } else if (melhorNota === parseFloat(acolhimento.toString())) {\r\n return \"As famílias avaliaram o acolhimento desta escola com nota\";\r\n } else if (melhorNota === parseFloat(cursos.toString())) {\r\n return \"As famílias avaliaram a oferta de atividades extracurriculares desta escola com nota\";\r\n } else if (melhorNota === parseFloat(diversidade.toString())) {\r\n return \"As famílias avaliaram a diversidade desta escola com nota\";\r\n } else if (melhorNota === parseFloat(inclusao.toString())) {\r\n return \"As famílias avaliaram o trabalho de inclusão desta escola com nota\";\r\n } else {\r\n return \"Nota\";\r\n }\r\n }\r\n\r\n showIIESA(): boolean {\r\n return this.selos.includes(2);\r\n }\r\n}\r\n","\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
      \r\n
    • = 0\">Berçário
    • \r\n
    • = 0\">Infantil
    • \r\n
    • = 0\">Fundamental Anos Iniciais
    • \r\n
    • = 0\">Fundamental Anos Finais
    • \r\n
    • = 0\">Ensino Médio
    • \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    = 60\" class=\"item-info mb-3\">\r\n \"{{\r\n

    {{ this.obterDestaqueTitulo() }}

    \r\n

    {{ this.destaquePorcentagem() }}% {{ this.obterDestaqueDescricao() }}.

    \r\n
    \r\n
    = 4\" class=\"item-info mb-3\">\r\n \"{{\r\n

    {{ this.obterTituloMelhorNota() }}

    \r\n

    {{ this.obterDescricaoMelhorNota() }} {{ this.obterMelhorNota() }}.

    \r\n
    \r\n
    \r\n \"Escolha\r\n

    Escolha das famílias

    \r\n

    Esta escola recebeu o selo Family's Choice 2024 da SchoolAdvisor.

    \r\n
    \r\n
    \r\n \"Ótima\r\n

    Ótima Infraestrutura

    \r\n

    Esta escola recebeu o selo Destaque Infraestrutura 2024 da SchoolAdvisor.

    \r\n
    \r\n
    \r\n \r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\nimport { EscolaService } from '../../service/escola.service';\r\n\r\n@Component({\r\n selector: 'app-escola-infra-acessibilidade',\r\n templateUrl: './escola-infra-acessibilidade.component.html',\r\n styleUrls: ['./escola-infra-acessibilidade.component.css'],\r\n})\r\nexport class EscolaInfraAcessibilidadeComponent implements OnInit {\r\n @Input() escola: Escola;\r\n blur = true;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n unlockInformation(): void {\r\n this.blur = !this.blur;\r\n }\r\n\r\n showIIESA(): boolean {\r\n return EscolaService.showIIESA(this.escola);\r\n }\r\n\r\n get hasSobre(): boolean {\r\n return this.escola.infra_sobre && this.escola.infra_sobre.trim() !== '';\r\n }\r\n\r\n get hasEspacosColetivos(): boolean {\r\n return this.escola.infra_area_verde\r\n || this.escola.infra_auditorio\r\n || this.escola.infra_banheiro_adaptado\r\n || this.escola.infra_berco\r\n || this.escola.infra_biblioteca\r\n || this.escola.infra_camera\r\n || this.escola.infra_cantina\r\n || this.escola.infra_enfermaria\r\n || this.escola.infra_estacionamento\r\n || this.escola.infra_parque\r\n || this.escola.infra_patio_coberto\r\n || this.escola.infra_patio_descoberto\r\n || this.escola.infra_piscina\r\n || this.escola.infra_quadra_coberta\r\n || this.escola.infra_quadra_descoberta\r\n || this.escola.infra_refeitorio\r\n || this.escola.infra_transporte\r\n || this.escola.infra_viveiro;\r\n }\r\n\r\n get hasLaboratorios(): boolean {\r\n return this.escola.infra_laboratorio_ciencias\r\n || this.escola.infra_laboratorio_robotica\r\n || this.escola.infra_sala_artes\r\n || this.escola.infra_sala_climatizada\r\n || this.escola.infra_sala_esportes\r\n || this.escola.infra_sala_musica;\r\n }\r\n\r\n get hasAcessibilidade(): boolean {\r\n return this.escola.acessibilidade_infra_corrimao\r\n || this.escola.acessibilidade_infra_rampa\r\n || this.escola.acessibilidade_infra_elevador\r\n || this.escola.acessibilidade_infra_banheiro_deficiente\r\n || this.escola.acessibilidade_sinalizacao_sonora\r\n || this.escola.acessibilidade_sinalizacao_tatil\r\n || this.escola.acessibilidade_sinalizacao_visual;\r\n }\r\n\r\n get hasData(): boolean {\r\n return this.hasSobre\r\n || this.showIIESA()\r\n || this.hasEspacosColetivos\r\n || this.hasLaboratorios\r\n || this.hasAcessibilidade;\r\n }\r\n}\r\n","
    \r\n
    \r\n

    Infraestrutura e Acessibilidade

    \r\n
    \r\n
    \r\n
    \r\n

    {{ this.escola.infra_sobre }}

    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    Espaços Coletivos

    \r\n

    Área verde

    \r\n

    Auditório

    \r\n

    Banheiro infantil

    \r\n

    Berços ou camas individuais

    \r\n

    Biblioteca

    \r\n

    Câmeras de Segurança

    \r\n

    Cantina

    \r\n

    Enfermaria

    \r\n

    Estacionamento

    \r\n

    Parque Infantil

    \r\n

    Pátio Coberto

    \r\n

    Pátio Descoberto

    \r\n

    Piscina

    \r\n

    Quadra Coberta

    \r\n

    Quadra Descoberta

    \r\n

    Refeitório

    \r\n

    Transporte Escolar

    \r\n

    Viveiro de Animais

    \r\n
    \r\n
    \r\n

    Laboratórios e Salas

    \r\n

    Laboratório de Ciências

    \r\n

    Laboratório de Robótica/Maker

    \r\n

    Sala de Artes

    \r\n

    Salas Climatizadas

    \r\n

    Sala Multiuso

    \r\n

    Sala de Música

    \r\n
    \r\n
    \r\n

    Acessibilidade

    \r\n

    Corrimão

    \r\n

    Rampa

    \r\n

    Elevador

    \r\n

    Banheiro PCD

    \r\n

    Sinalização Sonora

    \r\n

    Sinalização Tátil

    \r\n

    Sinalização Visual

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    Não Informado

    \r\n
    \r\n
    \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-mais-sobre',\r\n templateUrl: './escola-mais-sobre.component.html',\r\n styleUrls: ['./escola-mais-sobre.component.css'],\r\n})\r\nexport class EscolaMaisSobreComponent implements OnInit {\r\n @Input() escola: Escola;\r\n isExpanded = false;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n toggleExpanded(): void {\r\n this.isExpanded = !this.isExpanded;\r\n }\r\n\r\n hasData(): boolean {\r\n return (this.escola.abordagem_pedagogica && this.escola.abordagem_pedagogica.trim() !== '') \r\n || (this.escola.indices_total_alunos > 0) \r\n || (this.escola.grupo_educacional && this.escola.grupo_educacional.trim() !== '') \r\n || (this.escola.ano_fundacao> 0);\r\n }\r\n}\r\n","
    \r\n
    \r\n

    Saiba mais sobre a escola

    \r\n
    \r\n
    \r\n
    \r\n
      \r\n
    • {{ this.escola.abordagem_pedagogica }}
    • \r\n
    • {{ this.escola.indices_total_alunos }} alunos
    • \r\n
    • {{ this.escola.grupo_educacional }}
    • \r\n
    • Fundada em {{ this.escola.ano_fundacao }}
    • \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n Não Informado\r\n
    \r\n\r\n
    \r\n
    \r\n

    {{ this.escola.sobre_escola }}

    \r\n
    \r\n \r\n
    \r\n
    \r\n","import { AfterViewInit, Component, EventEmitter, Inject, OnInit, Output } from '@angular/core';\r\nimport { AbstractControl, FormControl, FormGroup, ValidatorFn, Validators } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport firebase from 'firebase/app';\r\nimport { MatSnackBar } from '@angular/material/snack-bar';\r\nimport { Review } from '../../review/review-edit/review-edit.component';\r\nimport { UserService } from '../../service/user.service';\r\nimport { tags } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-modal-avaliar',\r\n templateUrl: './escola-modal-avaliar.component.html',\r\n styleUrls: ['./escola-modal-avaliar.component.css'],\r\n})\r\nexport class EscolaModalAvaliarComponent implements OnInit, AfterViewInit {\r\n saving = false;\r\n maxLength = 1000;\r\n anonimoFormControl = new FormControl(false, null);\r\n nomeDeclaradoFormControl = new FormControl(null, [this.customNomeValidator()]);\r\n emailDeclaradoFormControl = new FormControl(null, [this.customEmailValidator()]);\r\n descricaoFormControl = new FormControl(null, [\r\n // Validators.required\r\n // Validators.minLength(100),\r\n Validators.maxLength(1000),\r\n ]);\r\n tagsFormControl = new FormControl([], null);\r\n review: Review = new Review();\r\n\r\n reviewControl: FormGroup = new FormGroup({\r\n nome_declarado: this.nomeDeclaradoFormControl,\r\n email_declarado: this.emailDeclaradoFormControl,\r\n descricao: this.descricaoFormControl,\r\n cod_escola: new FormControl(this.data.cod_escola),\r\n anonimo: this.anonimoFormControl,\r\n tags: this.tagsFormControl,\r\n });\r\n maxTags = 3;\r\n warnMax = false;\r\n\r\n get tags(): Array {\r\n return tags;\r\n }\r\n\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: any, private userService: UserService, private matDialog: MatDialog, private snackbar: MatSnackBar, public dialogRef: MatDialogRef) {\r\n this.review.rate_geral = null;\r\n this.review.rate_pedagogico = null;\r\n this.review.rate_infraestrutura = null;\r\n this.review.rate_higiene_limpeza = null;\r\n this.review.rate_alimentacao = null;\r\n this.review.rate_seguranca = null;\r\n this.review.rate_extracurriculares = null;\r\n this.review.rate_acolhimento = null;\r\n this.review.rate_diversidade = null;\r\n this.review.rate_inclusao = null;\r\n }\r\n\r\n ngOnInit(): void {\r\n const user = this.userService.getCurrentUser();\r\n if (user) {\r\n this.nomeDeclaradoFormControl.setValue(user.displayName);\r\n this.nomeDeclaradoFormControl.disable();\r\n this.emailDeclaradoFormControl.setValue(user.email);\r\n this.emailDeclaradoFormControl.disable();\r\n } else {\r\n this.nomeDeclaradoFormControl.enable();\r\n this.emailDeclaradoFormControl.enable();\r\n }\r\n\r\n this.anonimoFormControl.valueChanges.subscribe((value) => {\r\n this.resetNomeEmail(value);\r\n });\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.resetNomeEmail(this.anonimoFormControl.value);\r\n }\r\n\r\n resetNomeEmail(anonimo: boolean): void {\r\n if (anonimo) {\r\n this.nomeDeclaradoFormControl.setValue(null);\r\n this.emailDeclaradoFormControl.setValue(null);\r\n this.nomeDeclaradoFormControl.disable();\r\n this.emailDeclaradoFormControl.disable();\r\n } else {\r\n const user = this.userService.getCurrentUser();\r\n if (user != null) {\r\n this.nomeDeclaradoFormControl.setValue(user.displayName);\r\n this.nomeDeclaradoFormControl.disable();\r\n this.emailDeclaradoFormControl.setValue(user.email);\r\n this.emailDeclaradoFormControl.disable();\r\n } else {\r\n this.nomeDeclaradoFormControl.enable();\r\n this.emailDeclaradoFormControl.enable();\r\n }\r\n }\r\n }\r\n\r\n customEmailValidator(): ValidatorFn {\r\n return (control: AbstractControl): { [key: string]: any } => {\r\n if (this.anonimoFormControl.value) {\r\n return {};\r\n } else {\r\n return Validators.email(control) || Validators.required(control);\r\n }\r\n };\r\n }\r\n\r\n customNomeValidator(): ValidatorFn {\r\n return (control: AbstractControl): { [key: string]: any } => {\r\n if (this.anonimoFormControl.value) {\r\n return {};\r\n } else {\r\n return Validators.required(control);\r\n }\r\n };\r\n }\r\n\r\n selectTag(tag: string): void {\r\n this.tagsFormControl.value.push(tag);\r\n }\r\n\r\n toggleSelect(tag: string): void {\r\n const selectedTags: Array = this.tagsFormControl.value;\r\n const index = selectedTags.indexOf(tag);\r\n this.warnMax = false;\r\n\r\n if (index >= 0) {\r\n selectedTags.splice(index, 1);\r\n } else {\r\n if (selectedTags.length < this.maxTags) {\r\n selectedTags.push(tag);\r\n } else {\r\n this.warnMax = true;\r\n }\r\n }\r\n }\r\n\r\n rate(category: string, value: number) {\r\n this.review[category] = value;\r\n\r\n this.setRateGeral();\r\n }\r\n\r\n setRateGeral() {\r\n const count = 0 + (this.review.rate_pedagogico? 1 : 0) \r\n + (this.review.rate_infraestrutura? 1 : 0) \r\n // + (this.review.rate_higiene_limpeza? 1 : 0) \r\n // + (this.review.rate_alimentacao? 1 : 0) \r\n + (this.review.rate_seguranca? 1 : 0)\r\n + (this.review.rate_extracurriculares? 1 : 0) \r\n + (this.review.rate_acolhimento? 1 : 0) \r\n + (this.review.rate_diversidade? 1 : 0) \r\n + (this.review.rate_inclusao? 1 : 0);\r\n\r\n //const v = Math.round((((isNaN(this.review.rate_pedagogico) ? 0 : this.review.rate_pedagogico) + (isNaN(this.review.rate_infraestrutura) ? 0 : this.review.rate_infraestrutura) + (isNaN(this.review.rate_higiene_limpeza) ? 0 : this.review.rate_higiene_limpeza) + (isNaN(this.review.rate_alimentacao) ? 0 : this.review.rate_alimentacao) + (isNaN(this.review.rate_seguranca) ? 0 : this.review.rate_seguranca) + (isNaN(this.review.rate_extracurriculares) ? 0 : this.review.rate_extracurriculares) + (isNaN(this.review.rate_acolhimento) ? 0 : this.review.rate_acolhimento) + (isNaN(this.review.rate_diversidade) ? 0 : this.review.rate_diversidade) + (isNaN(this.review.rate_inclusao) ? 0 : this.review.rate_inclusao)) / count + Number.EPSILON) * 100) / 100;\r\n const v = Math.round((((isNaN(this.review.rate_pedagogico) ? 0 : this.review.rate_pedagogico) + (isNaN(this.review.rate_infraestrutura) ? 0 : this.review.rate_infraestrutura) + (isNaN(this.review.rate_seguranca) ? 0 : this.review.rate_seguranca) + (isNaN(this.review.rate_extracurriculares) ? 0 : this.review.rate_extracurriculares) + (isNaN(this.review.rate_acolhimento) ? 0 : this.review.rate_acolhimento) + (isNaN(this.review.rate_diversidade) ? 0 : this.review.rate_diversidade) + (isNaN(this.review.rate_inclusao) ? 0 : this.review.rate_inclusao)) / count + Number.EPSILON) * 100) / 100;\r\n\r\n this.review.rate_geral = v;\r\n }\r\n\r\n saveReview(): void {\r\n if (this.reviewControl.value.descricao == null && this.reviewControl.value.tags?.length == 0 && !this.review.rate_geral) {\r\n this.closeModal();\r\n return;\r\n }\r\n\r\n this.descricaoFormControl.markAsTouched({ onlySelf: true });\r\n this.nomeDeclaradoFormControl.markAsTouched({ onlySelf: true });\r\n this.emailDeclaradoFormControl.markAsTouched({ onlySelf: true });\r\n const data = { ...this.review, ...this.reviewControl.value };\r\n\r\n Object.keys(data).forEach((k) => {\r\n const c = data[k];\r\n if (c === null || c === undefined || Number.isNaN(c)) {\r\n delete data[k];\r\n }\r\n });\r\n\r\n this.saving = true;\r\n firebase\r\n .functions()\r\n .httpsCallable('review_add')(data)\r\n .then((value) => {\r\n this.saving = false;\r\n this.dialogRef.close(data);\r\n if (value.data?.message) {\r\n this.snackbar.open(value.data.message, 'Ok', {\r\n duration: 10000,\r\n });\r\n }\r\n });\r\n }\r\n\r\n closeModal(): void {\r\n this.dialogRef.close();\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n

    Qual nota você dá para cada um dos critérios abaixo?

    \r\n
    \r\n\r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Infraestrutura\"\r\n

    Infraestrutura

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \"Segurança\"\r\n

    Segurança

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \"Pedagógico\"\r\n

    Pedagógico

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \"Acolhimento\"\r\n

    Acolhimento

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \"Cursos\r\n

    Cursos extras

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \"Diversidade\"\r\n

    Diversidade

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \"Inclusão\"\r\n

    Inclusão

    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n

    Quais são os 3 principais diferenciais da escola?

    \r\n Escolha até 3 Atributos\r\n
    \r\n \r\n\r\n \r\n
    \r\n
      \r\n
    • = 0 }\">\r\n \r\n
    • \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n

    Conte um pouco mais sobre sua experiência.

    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n Máximo: {{ this.maxLength }} caracteres\r\n {{ descricao.value.length }}/1000\r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n Loading...\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit, Inject } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-escola-modal-share',\r\n templateUrl: './escola-modal-share.component.html',\r\n styleUrls: ['./escola-modal-share.component.css'],\r\n})\r\nexport class EscolaModalShareComponent implements OnInit {\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: any, private matDialog: MatDialog) {}\r\n\r\n ngOnInit(): void {\r\n console.log('NETO: ', this.data);\r\n }\r\n\r\n closeModal(): void {\r\n this.matDialog.closeAll();\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n

    Compartilhar

    \r\n
    \r\n\r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport firebase from 'firebase/app';\r\nimport { Escola } from '../../service/Escola';\r\nimport { UserService } from '../../service/user.service';\r\nimport { LoginDialogComponent } from '../../navigation/auth/login-dialog/login-dialog.component';\r\nimport { AnalyticsService } from '../../service/analytics.service';\r\n\r\n@Component({\r\n selector: 'app-escola-niveis-oferecidos',\r\n templateUrl: './escola-niveis-oferecidos.component.html',\r\n styleUrls: ['./escola-niveis-oferecidos.component.css'],\r\n})\r\nexport class EscolaNiveisOferecidosComponent implements OnInit {\r\n @Input() escola: Escola;\r\n isExpanded = false;\r\n isBlur = true;\r\n schoolContactSending = false;\r\n schoolContactSented = false;\r\n\r\n constructor(private analytics: AnalyticsService, private matDialog: MatDialog, public userService: UserService) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n toggleExpanded(): void {\r\n this.isExpanded = !this.isExpanded;\r\n }\r\n\r\n showData(): void {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.analytics.viewEscolaField(this.escola, 'regiao', user);\r\n\r\n this.isBlur = false;\r\n }\r\n\r\n get hasAbout(): boolean {\r\n return (this.escola.nivel_ensino_sobre && this.escola.nivel_ensino_sobre.trim() !== '')\r\n }\r\n\r\n get hasSelos(): boolean {\r\n return (this.escola.geekie)\r\n || (this.escola.poliedro)\r\n || (this.escola.google_education)\r\n }\r\n\r\n get hasNiveis(): boolean {\r\n return this.escola.nivel_ensino && this.escola.nivel_ensino.length > 0\r\n }\r\n\r\n get hasProcessoIngresso(): boolean {\r\n return this.escola.bercario_processo_admissao && this.escola.bercario_processo_admissao.trim() !== ''\r\n || this.escola.infantil_processo_admissao && this.escola.infantil_processo_admissao.trim() !== ''\r\n || this.escola.fundamental1_processo_admissao && this.escola.fundamental1_processo_admissao.trim() !== ''\r\n || this.escola.fundamental2_processo_admissao && this.escola.fundamental2_processo_admissao.trim() !== ''\r\n || this.escola.ensino_medio_processo_admissao && this.escola.ensino_medio_processo_admissao.trim() !== ''\r\n }\r\n\r\n get hasSistemaEnsino(): boolean {\r\n return this.escola.qual_sistema_ensino && this.escola.qual_sistema_ensino.trim() !== ''\r\n }\r\n\r\n get hasData(): boolean {\r\n return this.hasAbout\r\n || this.hasSelos\r\n || this.hasNiveis\r\n || this.hasProcessoIngresso\r\n || this.hasSistemaEnsino\r\n }\r\n\r\n async sendContact(event: Event): Promise {\r\n event.preventDefault();\r\n\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.schoolContactSending = true;\r\n\r\n const currentUser = firebase.auth().currentUser;\r\n const data = {\r\n nome: currentUser.displayName,\r\n emailUser: currentUser.email,\r\n schoolName: this.escola.nome,\r\n emailTo: this.escola.email,\r\n tipo: 0,\r\n premium: this.escola.premium,\r\n };\r\n\r\n try {\r\n await firebase.functions().httpsCallable('escola_send_beneficios')(data);\r\n this.analytics.interesseEscolaField(this.escola, 'escola', this.userService.getCurrentUser());\r\n\r\n this.schoolContactSending = false;\r\n this.schoolContactSented = true;\r\n } catch (error) {\r\n this.schoolContactSending = false;\r\n this.schoolContactSented = false;\r\n }\r\n }\r\n\r\n // this.escola.nivel_ensino.toString()\r\n renderNiveisDeEnsino(): string {\r\n let niveis = [];\r\n this.escola.nivel_ensino.forEach((nivel) => {\r\n if (nivel === 'Fundamental I') {\r\n niveis.push('Fundamental Anos Iniciais');\r\n } else if (nivel === 'Fundamental II') {\r\n niveis.push('Fundamental Anos Finais');\r\n } else {\r\n niveis.push(nivel);\r\n }\r\n });\r\n return niveis.join(', ');\r\n }\r\n}\r\n","
    \r\n
    \r\n

    Segmento de ensino

    \r\n
    \r\n
    \r\n
    \r\n

    {{ this.escola.nivel_ensino_sobre }}

    \r\n
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \"Geekie\"\r\n
    \r\n
    \r\n \"Poliedro\"\r\n
    \r\n
    \r\n \"Google\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Níveis de ensino

    \r\n

    {{ renderNiveisDeEnsino() }}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Mensalidade média

    \r\n

    Berçário: {{ this.escola.bercario_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}

    \r\n

    Infantil: {{ this.escola.infantil_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}

    \r\n

    Fundamental 1: {{ this.escola.fundamental1_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}

    \r\n

    Fundamental 2: {{ this.escola.fundamental2_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}

    \r\n

    Ensino Médio: {{ this.escola.ensino_medio_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}

    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Início do ano letivo

    \r\n

    Berçário: O ano letivo começa em {{ this.escola.bercario_processo_admissao }}.

    \r\n

    Infantil: O ano letivo começa em {{ this.escola.infantil_processo_admissao }}.

    \r\n

    Fundamental Anos Iniciais: O ano letivo começa em {{ this.escola.fundamental1_processo_admissao }}.

    \r\n

    Fundamental Anos Finais: O ano letivo começa em {{ this.escola.fundamental2_processo_admissao }}.

    \r\n

    Ensino Médio: O ano letivo começa em {{ this.escola.ensino_medio_processo_admissao }}.

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Materiais didáticos e plataformas de ensino utilizados

    \r\n

    {{ this.escola.qual_sistema_ensino }}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    Não Informado

    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n
    \r\n
    \r\n","import * as moment from 'moment';\r\nimport {SwiperOptions} from 'swiper';\r\nimport { Escola } from '../../service/Escola';\r\nimport {SwiperComponent} from 'swiper/angular';\r\nimport { AfterViewInit, Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { ScriptLoaderService } from '../../service/script-loader.service';\r\n\r\n@Component({\r\n selector: 'app-escola-parcerias-e-certificacoes',\r\n templateUrl: './escola-parcerias-e-certificacoes.component.html',\r\n styleUrls: ['./escola-parcerias-e-certificacoes.component.css'],\r\n})\r\nexport class EscolaParceriasECertificacoesComponent implements OnInit, AfterViewInit {\r\n @Input() escola: Escola;\r\n @ViewChild('swiperLogoComponent', {static: false}) swiperComponent: SwiperComponent;\r\n galerryImages: { src: string; alt: string }[] = [];\r\n config: SwiperOptions = {\r\n breakpoints: {\r\n 1600: {\r\n slidesPerView: 6,\r\n slidesPerGroup: 6,\r\n spaceBetween: 10,\r\n },\r\n 1280: {\r\n slidesPerView: 3,\r\n slidesPerGroup: 3,\r\n spaceBetween: 10,\r\n },\r\n 960: {\r\n slidesPerView: 2,\r\n slidesPerGroup: 2,\r\n spaceBetween: 5,\r\n },\r\n 600: {\r\n slidesPerView: 1,\r\n slidesPerGroup: 1,\r\n spaceBetween: 5,\r\n pagination: false\r\n },\r\n 1: {\r\n slidesPerView: 1,\r\n slidesPerGroup: 1,\r\n spaceBetween: 5,\r\n pagination: false\r\n }\r\n },\r\n autoHeight: true,\r\n lazy: true,\r\n navigation: false,\r\n slidesPerView: 6,\r\n spaceBetween: 10,\r\n pagination: false\r\n };\r\n\r\n constructor(private scriptLoader: ScriptLoaderService) {}\r\n\r\n ngOnInit(): void {\r\n if (this.showSelo(this.escola.prevencao_acidentes, this.escola.prevencao_acidentes_validade)) {\r\n this.galerryImages.push({ src: 'images/selos/logo-prevencao_acidentes.png', alt: 'Selo escolas pela prevenção de acidentes' });\r\n }\r\n\r\n if (this.showSelo(this.escola.diversidade, this.escola.diversidade_validade)) {\r\n this.galerryImages.push({ src: 'images/selos/logo-diversidade.png', alt: 'Selo escolas pela diversidade' });\r\n }\r\n\r\n if (this.escola.clima) {\r\n this.galerryImages.push({ src: 'images/selos/logo-clima.png', alt: 'Selo escolas pelo clima' });\r\n }\r\n\r\n if (this.escola.google_education) {\r\n this.galerryImages.push({ src: 'images/selos/google_education.png', alt: 'Google Education' });\r\n }\r\n\r\n if (this.escola.oebi) {\r\n this.galerryImages.push({ src: 'images/oebi/logo-oebi.png', alt: 'Bilíngue OEBI' });\r\n }\r\n\r\n /*if (this.escola.supercerebro) {\r\n this.galerryImages.push({ src: 'images/supercerebro/logo-supercerebro.png', alt: 'Super Cérebro' });\r\n }*/\r\n\r\n if (this.escola.geekie) {\r\n this.galerryImages.push({ src: 'images/geekie/logo-geekie.png', alt: 'Geekie' });\r\n }\r\n\r\n if (this.escola.poliedro) {\r\n this.galerryImages.push({ src: 'images/selos/poliedro.png', alt: 'Poliedro' });\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n /*this.scriptLoader\r\n .loadScript('fotorama', '../../../js/new/bootstrap.bundle.min.js')\r\n .then(() => {\r\n let itemsLogos = document.querySelectorAll('.carousel.logos .carousel-item');\r\n\r\n itemsLogos.forEach((el) => {\r\n const minPerSlide = 6;\r\n let next = el.nextElementSibling;\r\n for (var i = 1; i < minPerSlide; i++) {\r\n if (!next) {\r\n // wrap carousel by using first child\r\n next = itemsLogos[0];\r\n }\r\n let cloneChild = next.cloneNode(true);\r\n el.appendChild((cloneChild as Element).children[0]);\r\n next = next.nextElementSibling;\r\n }\r\n });\r\n })\r\n .catch((error) => console.error('Erro ao carregar o script Fotorama:', error));*/\r\n }\r\n\r\n previousClick(): void {\r\n this.swiperComponent.swiperRef.slidePrev();\r\n }\r\n\r\n nextClick(): void {\r\n this.swiperComponent.swiperRef.slideNext();\r\n }\r\n\r\n showSelo(value: boolean, date: string) {\r\n return value && (!date || moment(date).isAfter(moment()));\r\n }\r\n}\r\n","\r\n\r\n
    0\">\r\n
    \r\n\r\n
    \r\n

    Parcerias, Associações, Certificações e Acreditações da escola

    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    ","import { Component, Input, OnInit } from '@angular/core';\r\nimport { DiversidadeInclusaoQtd, Escola, NacionalidadeQtd } from '../../service/Escola';\r\nimport { I } from '@angular/cdk/keycodes';\r\n\r\n@Component({\r\n selector: 'app-escola-perfil',\r\n templateUrl: './escola-perfil.component.html',\r\n styleUrls: ['./escola-perfil.component.css'],\r\n})\r\nexport class EscolaPerfilComponent implements OnInit {\r\n @Input() escola: Escola;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n get hasStudentsGenderData(): boolean {\r\n if (this.escola.matriculas_masculino || this.escola.matriculas_feminino) return true;\r\n\r\n return false;\r\n }\r\n\r\n get hasStudentsRaceData(): boolean {\r\n // if (this.escola.matriculas_raca_branca\r\n // || this.escola.matriculas_raca_preta\r\n // || this.escola.matriculas_raca_indigena\r\n // || this.escola.matriculas_neurodivergentes)\r\n // return true;\r\n if (this.escola.matriculas_racas && Object.keys(this.escola.matriculas_racas).length > 0) return true;\r\n\r\n return false;\r\n }\r\n\r\n get hasStudentsNationalityData(): boolean {\r\n if (this.escola.matriculas_nacionalidades && Object.keys(this.escola.matriculas_nacionalidades).length > 0) return true;\r\n\r\n return false;\r\n }\r\n\r\n get hasStudentsUniversityData(): boolean {\r\n if (this.escola.matriculas_universidades && this.escola.matriculas_universidades.length > 0) return true;\r\n\r\n return false;\r\n }\r\n\r\n get hasStudentsData(): boolean {\r\n return this.hasStudentsGenderData || this.hasStudentsRaceData || this.hasStudentsNationalityData || this.hasStudentsUniversityData;\r\n }\r\n\r\n getStudentsPercentage(value: number): string {\r\n return ((value * 100) / this.escola.indices_total_alunos).toFixed(0);\r\n }\r\n\r\n get hasTeachersGenderData(): boolean {\r\n if (this.escola.professores_masculino || this.escola.professores_feminino) return true;\r\n\r\n return false;\r\n }\r\n\r\n get hasTeachersRaceData(): boolean {\r\n // if (this.escola.professores_raca_branca || this.escola.professores_raca_preta || this.escola.professores_raca_indigena || this.escola.professores_raca_nd) return true;\r\n\r\n if (this.escola.professores_racas && Object.keys(this.escola.professores_racas).length > 0) return true;\r\n\r\n return false;\r\n }\r\n\r\n get hasTeachersNationalityData(): boolean {\r\n if (this.escola.professores_nacionalidades && Object.keys(this.escola.professores_nacionalidades).length > 0) return true;\r\n\r\n return false;\r\n }\r\n\r\n get hasTeachersData(): boolean {\r\n return this.hasTeachersGenderData || this.hasTeachersRaceData;\r\n }\r\n\r\n getTeachersPercentage(value: number): string {\r\n /*const bercario: number = this.escola.bercario_professores_total ? parseInt(this.escola.bercario_professores_total) : 0;\r\n const infantil: number = this.escola.infantil_professores_total ? parseInt(this.escola.infantil_professores_total) : 0;\r\n const fundamental_ai: number = this.escola.fundamental_ai_professores_total ? parseInt(this.escola.fundamental_ai_professores_total) : 0;\r\n const fundamental_af: number = this.escola.fundamental_af_professores_total ? parseInt(this.escola.fundamental_af_professores_total) : 0;\r\n const ensino_medio: number = this.escola.ensino_medio_professores_total ? parseInt(this.escola.ensino_medio_professores_total) : 0;\r\n\r\n const total: number = (bercario + infantil + fundamental_ai + fundamental_af + ensino_medio);\r\n\r\n return ((value * 100) / total).toFixed(0);*/\r\n return ((value * 100) / (this.escola.professores_total ?? 1)).toFixed(0);\r\n }\r\n\r\n getTopThreeRaceValues(list: DiversidadeInclusaoQtd[]): DiversidadeInclusaoQtd[] {\r\n list.sort((a, b) => b.quantidade - a.quantidade);\r\n\r\n let topThree: DiversidadeInclusaoQtd[];\r\n\r\n if (list.length > 3) {\r\n topThree = list.slice(0, 3);\r\n } else {\r\n topThree = list;\r\n }\r\n\r\n return topThree;\r\n }\r\n\r\n getTopThreeValues(list: NacionalidadeQtd[]): NacionalidadeQtd[] {\r\n list.sort((a, b) => b.quantidade - a.quantidade);\r\n\r\n let topThree: NacionalidadeQtd[];\r\n\r\n if (list.length > 3) {\r\n topThree = list.slice(0, 3);\r\n } else {\r\n topThree = list;\r\n }\r\n\r\n return topThree;\r\n }\r\n\r\n getOthersCount(list: NacionalidadeQtd, quantity: number): number {\r\n const countList = Object.entries(list).length;\r\n\r\n if (countList > quantity) {\r\n return countList - quantity;\r\n }\r\n\r\n return 0;\r\n }\r\n}\r\n","
    \r\n
    \r\n

    Perfil da escola

    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Estudantes

    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Gênero\r\n \r\n

    \r\n
    \r\n
    \r\n
      \r\n
    • {{ this.escola.matriculas_masculino }}% masculino
    • \r\n
    • {{ this.escola.matriculas_feminino }}% feminino
    • \r\n
    • {{ this.escola.matriculas_outros }}% outros
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Diversidade e inclusão

    \r\n
    \r\n
    \r\n
      \r\n
    • {{ item.quantidade }}% {{ item.raca }}
    • \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Nacionalidade

    \r\n
    \r\n
    \r\n
      \r\n
    • {{ item.quantidade }}% {{ item.nacionalidade }}
    • \r\n
    • 0\" class=\"font-size-regular text-black\">+ {{ this.getOthersCount(this.escola.matriculas_nacionalidades, 3) }} nacionalidades
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Universidades/escolas onde aprova

    \r\n Ano de referência {{ this.escola.matriculas_ano_referencia }}\r\n
    \r\n
    \r\n
      \r\n \r\n
    • {{ universidade.title }}
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Professores

    \r\n
    \r\n
    \r\n
    \r\n

    \r\n Gênero\r\n \r\n

    \r\n
    \r\n
    \r\n
      \r\n
    • {{ this.escola.professores_masculino }}% masculino
    • \r\n
    • {{ this.escola.professores_feminino }}% feminino
    • \r\n
    • {{ this.escola.professores_outros }}% outros
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Diversidade e inclusão

    \r\n
    \r\n
    \r\n
      \r\n
    • {{ item.quantidade }}% {{ item.raca }}
    • \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Nacionalidade

    \r\n
    \r\n
    \r\n
      \r\n
    • {{ item.quantidade }}% {{ item.nacionalidade }}
    • \r\n
    • 0\" class=\"font-size-regular text-black\">+ {{ this.getOthersCount(this.escola.professores_nacionalidades, 3) }} nacionalidades
    • \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\nimport { EscolaService } from '../../service/escola.service';\r\n\r\n@Component({\r\n selector: 'app-escola-professores-time-pedagogico',\r\n templateUrl: './escola-professores-time-pedagogico.component.html',\r\n styleUrls: ['./escola-professores-time-pedagogico.component.css'],\r\n})\r\nexport class EscolaProfessoresTimePedagogicoComponent implements OnInit {\r\n @Input() escola: Escola;\r\n isExpanded = false;\r\n blur = true;\r\n\r\n constructor() {}\r\n\r\n get hasSobre(): boolean {\r\n return this.escola.corpo_docente_sobre && this.escola.corpo_docente_sobre.trim() !== '';\r\n }\r\n\r\n get hasProporcao(): boolean {\r\n return this.escola.professores_total > 0\r\n && this.escola.indices_total_alunos > 0;\r\n }\r\n\r\n get hasProfissionaisEspecializados(): boolean {\r\n return this.escola.profissional_nutricao\r\n || this.escola.profissional_fonoaudiologia\r\n || this.escola.profissional_psicologia\r\n || this.escola.profissional_saude\r\n || this.escola.conselheiro_vocacional;\r\n }\r\n\r\n get hasFormacaoDocente(): boolean {\r\n return this.escola.docentes_graduados && this.escola.docentes_graduados.trim() !== ''\r\n || this.escola.docentes_pos_graduados && this.escola.docentes_pos_graduados.trim() !== '';\r\n }\r\n\r\n get hasData(): boolean {\r\n return this.hasProfissionaisEspecializados \r\n || this.hasFormacaoDocente\r\n || this.hasProporcao\r\n || this.hasSobre;\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n toggleExpanded(): void {\r\n this.isExpanded = !this.isExpanded;\r\n }\r\n\r\n unlockInformation(): void {\r\n this.blur = !this.blur;\r\n }\r\n\r\n proporcaoAlunosProfessor(): string {\r\n let total_professores = this.escola.professores_total;\r\n\r\n /*if (this.escola.bercario_professores_total) {\r\n total_professores += parseInt(this.escola.bercario_professores_total);\r\n }\r\n\r\n if (this.escola.infantil_professores_total) {\r\n total_professores += parseInt(this.escola.infantil_professores_total);\r\n }\r\n\r\n if (this.escola.fundamental_ai_professores_total) {\r\n total_professores += parseInt(this.escola.fundamental_ai_professores_total);\r\n }\r\n\r\n if (this.escola.fundamental_af_professores_total) {\r\n total_professores += parseInt(this.escola.fundamental_af_professores_total);\r\n }\r\n\r\n if (this.escola.ensino_medio_professores_total) {\r\n total_professores += parseInt(this.escola.ensino_medio_professores_total);\r\n }*/\r\n\r\n let proporcao = Math.ceil(this.escola.indices_total_alunos / total_professores);\r\n return `${proporcao}:1`;\r\n }\r\n\r\n showICDSA(): boolean {\r\n return EscolaService.showICDSA(this.escola);\r\n }\r\n\r\n\r\n}\r\n","
    \r\n
    \r\n

    Sobre os professores e time pedagógico

    \r\n
    \r\n
    \r\n
    \r\n

    {{ this.escola.corpo_docente_sobre }}

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \"SchoolAdvisor\r\n
    \r\n \r\n
    \r\n

    Esta escola se destaca pelo Corpo Docente

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Compare com outras escolas

    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n

    Porcentagem das escolas que possuem o selo no bairro

    \r\n
      \r\n
    • \r\n
      \r\n
      \r\n
      \r\n 8%\r\n
    • \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n

    Porcentagem das escolas que possuem o selo na cidade

    \r\n
      \r\n
    • \r\n
      \r\n
      \r\n
      \r\n 8%\r\n
    • \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n

    {{ proporcaoAlunosProfessor() }}

    \r\n

    proporção de alunos por professor

    \r\n
    \r\n
    \r\n

    Profissionais especialistas

    \r\n

    Nutricionista

    \r\n

    Fonoaudiólogo

    \r\n

    Psicólogo

    \r\n

    Equipe de Enfermagem / Bombeiro

    \r\n

    Conselheiro Vocacional

    \r\n
    \r\n
    \r\n

    Formação docente

    \r\n

    {{ this.escola.docentes_graduados }}% Graduado

    \r\n

    {{ this.escola.docentes_pos_graduados }}% Pós-graduados

    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    Não Informado

    \r\n
    \r\n
    \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-publicidade',\r\n templateUrl: './escola-publicidade.component.html',\r\n styleUrls: ['./escola-publicidade.component.css'],\r\n})\r\nexport class EscolaPublicidadeComponent implements OnInit {\r\n @Input() escola: Escola;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
    \r\n
    \r\n
    \r\n \r\n Publicidade\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Publicidade\"\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Publicidade\"\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Publicidade\"\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Publicidade\"\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport * as moment from 'moment';\r\nimport { Escola } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-qualificacoes',\r\n templateUrl: './escola-qualificacoes.component.html',\r\n styleUrls: ['./escola-qualificacoes.component.css'],\r\n})\r\nexport class EscolaQualificacoesComponent implements OnInit {\r\n @Input() escola: Escola;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n showSelo(value: boolean, date: string) {\r\n return value && (!date || moment(date).isAfter(moment()));\r\n }\r\n}\r\n","
    \r\n
    \r\n

    Confira outras qualificações da escola

    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \"Segura\"
    \r\n
    \r\n \r\n
    \"Segura\"
    \r\n
    \r\n \r\n
    \"Escolas
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import { Component, Input, OnInit, AfterViewInit, ChangeDetectorRef } from '@angular/core';\r\nimport firebase from 'firebase/app';\r\nimport { Escola } from '../../service/Escola';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { UserService } from '../../service/user.service';\r\nimport { AnalyticsService } from '../../service/analytics.service';\r\nimport { ScriptLoaderService } from '../../service/script-loader.service';\r\nimport { LoginDialogComponent } from '../../navigation/auth/login-dialog/login-dialog.component';\r\n\r\n@Component({\r\n selector: 'app-escola-recomendadas',\r\n templateUrl: './escola-recomendadas.component.html',\r\n styleUrls: ['./escola-recomendadas.component.css'],\r\n})\r\nexport class EscolaRecomendadasComponent implements OnInit, AfterViewInit {\r\n @Input() escola: Escola;\r\n escolasRecomendadas: Escola[] = [];\r\n blocked = true;\r\n\r\n\r\n constructor(private matDialog: MatDialog, private cdr: ChangeDetectorRef, public userService: UserService, private analytics: AnalyticsService, private scriptLoader: ScriptLoaderService) {}\r\n\r\n ngOnInit(): void {\r\n\r\n if (this.escola.lista_escolas === undefined \r\n || this.escola.lista_escolas === null)\r\n this.escola.lista_escolas = [];\r\n\r\n if (this.escola.lista_concorrentes === undefined\r\n || this.escola.lista_concorrentes === null)\r\n this.escola.lista_concorrentes = [];\r\n\r\n let listaIds = [...this.escola.lista_escolas, this.escola.lista_concorrentes];\r\n\r\n if (listaIds.length === 0) return;\r\n\r\n listaIds = listaIds.filter((id) => id !== undefined && id !== null);\r\n listaIds = listaIds.filter((id) => id !== undefined && id !== null);\r\n listaIds = listaIds.filter((id, index) => id && listaIds.indexOf(id) === index);\r\n\r\n const data: any = { lista_codigo: listaIds, fields: 'recommended' };\r\n\r\n firebase\r\n .functions()\r\n .httpsCallable('escola')(data)\r\n .then((value) => {\r\n if (value.data.rows.length > 0) {\r\n value.data.rows.forEach((row: any) => {\r\n if (row.codigo === this.escola.codigo) return;\r\n const index = this.escolasRecomendadas.findIndex((escola) => escola.codigo === row.codigo);\r\n\r\n if (index === -1)\r\n this.escolasRecomendadas.push(row);\r\n });\r\n\r\n this.cdr.detectChanges();\r\n this.loadCarousel();\r\n }\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n const a = document.querySelectorAll('.more-school-info');\r\n this.loadCarousel();\r\n }\r\n\r\n loadCarousel(): void {\r\n this.scriptLoader\r\n .loadScript('fotorama', '../../../js/new/bootstrap.bundle.min.js')\r\n .then(() => {\r\n let itemsLogos = document.querySelectorAll('.carousel.content-school .carousel-item');\r\n\r\n if (this.escolasRecomendadas.length <= 4) return;\r\n\r\n itemsLogos.forEach((el) => {\r\n const minPerSlide = 4;\r\n let next = el.nextElementSibling;\r\n for (var i = 1; i < minPerSlide; i++) {\r\n if (!next) {\r\n // wrap carousel by using first child\r\n next = itemsLogos[0];\r\n }\r\n let cloneChild = next.cloneNode(true);\r\n el.appendChild((cloneChild as Element).children[0]);\r\n next = next.nextElementSibling;\r\n }\r\n });\r\n })\r\n .catch((error) => console.error('Erro ao carregar o script Fotorama:', error));\r\n }\r\n\r\n unlockInformation(): void {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.analytics.viewEscolaField(this.escola, 'recomendadas', user);\r\n\r\n this.blocked = false;\r\n }\r\n}\r\n","
    0\" class=\"mb-5 more-school-info\" [class.blocked]=\"blocked\">\r\n \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\r\nimport { Escola } from '../../service/Escola';\r\nimport { environment } from '../../../environments/environment';\r\n\r\n@Component({\r\n selector: 'app-escola-sobre-regiao',\r\n templateUrl: './escola-sobre-regiao.component.html',\r\n styleUrls: ['./escola-sobre-regiao.component.css'],\r\n})\r\nexport class EscolaSobreRegiaoComponent implements OnInit {\r\n @Input() escola: Escola;\r\n GOOGLE_MAPS_API_KEY = environment.GOOGLE_MAPS_API_KEY;\r\n iframeSrc?: SafeResourceUrl = null;\r\n isExpanded = false;\r\n\r\n constructor(private sanitizer: DomSanitizer) {}\r\n\r\n ngOnInit(): void {\r\n const url = `https://www.google.com/maps/embed/v1/place?key=${this.GOOGLE_MAPS_API_KEY}&q=${this.escola.latitude},${this.escola.longitude}`;\r\n this.iframeSrc = this.sanitizer.bypassSecurityTrustResourceUrl(url);\r\n }\r\n\r\n toggleExpanded(): void {\r\n this.isExpanded = !this.isExpanded;\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n

    Sobre a região

    \r\n
    \r\n
    \r\n

    {{ this.escola.sobre_regiao }}

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Mensalidade média da região

    \r\n

    As mensalidades nessa região variam entre R$ 900,00 e R$ 7.000,00 para o período regular.

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-sobre',\r\n templateUrl: './escola-sobre.component.html',\r\n styleUrls: ['./escola-sobre.component.css'],\r\n})\r\nexport class EscolaSobreComponent implements OnInit {\r\n @Input() escola: Escola;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
    \r\n \r\n
    \r\n","import { AfterViewInit, Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\nimport { ScriptLoaderService } from '../../service/script-loader.service'; // ajuste o caminho conforme necessário\r\nimport * as $ from 'jquery';\r\n\r\n@Component({\r\n selector: 'app-escola-videos',\r\n templateUrl: './escola-videos.component.html',\r\n styleUrls: ['./escola-videos.component.css'],\r\n})\r\nexport class EscolaVideosComponent implements OnInit, AfterViewInit {\r\n @Input() escola: Escola;\r\n isExpanded = false;\r\n\r\n constructor(private scriptLoader: ScriptLoaderService) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n ngAfterViewInit() {\r\n this.scriptLoader\r\n .loadScript('fotorama', '../../../js/new/fotorama.js')\r\n .then(() => {\r\n $('.fotorama').fotorama();\r\n })\r\n .catch((error) => console.error('Erro ao carregar o script Fotorama:', error));\r\n }\r\n\r\n getYouTubeVideoId(url: string): string | null {\r\n const regex = /(?:youtube\\.com\\/(?:[^\\/\\n\\s]+\\/\\S+\\/|(?:v|e(?:mbed)?)\\/|.*[?&]v=)|youtu\\.be\\/)([a-zA-Z0-9_-]{11})/;\r\n const match = url.match(regex);\r\n return match ? match[1] : null;\r\n }\r\n\r\n getYouTubeThumbnailUrl(videoUrl: string): string | null {\r\n const videoId = this.getYouTubeVideoId(videoUrl);\r\n return videoId ? `https://img.youtube.com/vi/${videoId}/maxresdefault.jpg` : null;\r\n }\r\n\r\n toggleExpanded(): void {\r\n this.isExpanded = !this.isExpanded;\r\n }\r\n}\r\n","
    0\" class=\"row tour content-more mb-5\" [class.active]=\"isExpanded\">\r\n
    \r\n

    Assista aos vídeos da escola

    \r\n
    \r\n
    \r\n

    {{ this.escola.video_intro }}

    \r\n
    \r\n \r\n\r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Escola } from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-visao-especialista',\r\n templateUrl: './escola-visao-especialista.component.html',\r\n styleUrls: ['./escola-visao-especialista.component.css'],\r\n})\r\nexport class EscolaVisaoEspecialistaComponent implements OnInit {\r\n @Input() escola: Escola;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
    \r\n
    \r\n

    Visão do especialista

    \r\n
    \r\n
    \r\n

    {{ this.escola.visao_especialista }}

    \r\n
    \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-footer-edit',\r\n templateUrl: './footer-edit.component.html',\r\n styleUrls: ['./footer-edit.component.css']\r\n})\r\nexport class FooterEditComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n © 2024 Copyright - SchoolAdvisor.com.br\r\n
    \r\n
    \r\n","import { Component, OnInit, EventEmitter, Output } from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { AngularFireAuth } from '@angular/fire/auth';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { UserService } from '../../service/user.service';\r\nimport { LoginDialogComponent } from '../../navigation/auth/login-dialog/login-dialog.component';\r\n\r\n@Component({\r\n selector: 'app-header-new',\r\n templateUrl: './header-new.component.html',\r\n styleUrls: ['./header-new.component.css'],\r\n})\r\nexport class HeaderNewComponent implements OnInit {\r\n \r\n @Output() onSignOut: EventEmitter = new EventEmitter();\r\n\r\n linksStatic: Array<{ icon: string; text: string; callback: any }> = [\r\n // {icon: 'home', text: 'Minhas Escolas', callback: () => this.minhasCompras()},\r\n { icon: 'favorite', text: 'Escolas que sigo', callback: () => this.minhasEscolas() },\r\n // {icon: 'add', text: 'Avaliações', callback: () => this.avaliacoes()},\r\n // {icon: 'add', text: 'Cadastrar Escola', callback: () => this.cadastroEscola()},\r\n { icon: 'question_answer', text: 'Fale com a SchoolAdvisor', callback: () => this.faleConosco() },\r\n { icon: 'badge', text: 'Perfil de Afinidade', callback: () => this.perfilAfinidade() },\r\n ];\r\n links = Object.create(this.linksStatic);\r\n showSearchButton = true;\r\n showFilters = false;\r\n\r\n constructor(public userService: UserService, \r\n public router: Router, \r\n private matDialog: MatDialog, \r\n private http: HttpClient,\r\n public auth: AngularFireAuth) {\r\n userService.userDataEvent.subscribe((value) => {\r\n this.refreshMenu();\r\n });\r\n }\r\n\r\n private refreshMenu(): void {\r\n this.links = [];\r\n if (this.userService.master) {\r\n this.links.push({ icon: 'person_pin', text: 'Proprietários', callback: () => this.listaProprietario() });\r\n this.links.push({ icon: 'description', text: 'Relatório Matrículas', callback: () => this.reportMatriculas() });\r\n this.links.push({ icon: 'collections', text: 'Coleções', callback: () => this.treeColecao() });\r\n } else {\r\n for (const item of this.linksStatic) {\r\n this.links.push(item);\r\n }\r\n }\r\n if (this.userService.userData?.escola && this.userService.beta) {\r\n const cod_escola_array: number[] = this.userService.userData.escola;\r\n if (cod_escola_array.length === 1) {\r\n this.links.push({ icon: 'message', text: 'Chat', callback: () => this.chatLista(cod_escola_array[0]) });\r\n } else if (cod_escola_array.length > 1) {\r\n for (const cod_escola of cod_escola_array) {\r\n this.links.push({\r\n icon: 'message',\r\n text: `Chat (INEP ${cod_escola})`,\r\n callback: () => this.chatLista(cod_escola),\r\n });\r\n }\r\n }\r\n }\r\n if (this.userService.userData?.escola || this.userService.master) {\r\n this.links.push({ icon: 'group', text: 'Parceiros', callback: () => this.listaParceiro() });\r\n /*this.chatService.getChatRooms(this.userService.userData.escola).then(value => {\r\n console.log('value: ' + JSON.stringify(value));\r\n this.links.push({icon: 'message', text: 'Chats', callback: () => this.})\r\n });*/\r\n } else {\r\n this.links.forEach((value1, index) => {\r\n if (value1.text === 'Parceiros') {\r\n this.links.splice(index, 1);\r\n }\r\n });\r\n }\r\n this.matDialog.getDialogById('loginDialog')?.close();\r\n }\r\n\r\n minhasEscolas(): Promise {\r\n return this.router.navigate(['minhas_escolas']);\r\n }\r\n\r\n perfilAfinidade(): Promise {\r\n return this.router.navigate(['perfil-afinidade']);\r\n }\r\n\r\n listaProprietario(): Promise {\r\n return this.router.navigate(['lista_proprietario']);\r\n }\r\n\r\n treeColecao(): Promise {\r\n return this.router.navigate(['tree_colecao']);\r\n }\r\n\r\n listaParceiro(): Promise {\r\n return this.router.navigate(['lista_parceiro']);\r\n }\r\n\r\n faleConosco(): Promise {\r\n return this.router.navigate(['contato']);\r\n }\r\n\r\n chatLista(cod_escola: number): Promise {\r\n return this.router.navigate(['chats', cod_escola, 'chat']);\r\n }\r\n\r\n toggleSearch() {\r\n this.showSearchButton = !this.showSearchButton;\r\n this.showFilters = !this.showFilters;\r\n // console.log('showSearchButton: ' + this.showSearchButton);\r\n //this.isSearchAnimation = true;\r\n }\r\n\r\n showSearch() {\r\n this.showFilters = !this.showFilters;\r\n }\r\n\r\n private reportMatriculas(): Promise {\r\n // const url = 'https://us-central1-firesample-7bd56.cloudfunctions.net/report_escola_matricula';\r\n const url = 'http://localhost:5001/firesample-7bd56/us-central1/report_escola_matricula';\r\n\r\n this.userService\r\n .getCurrentUser()\r\n .getIdToken()\r\n .then((authToken) => {\r\n const headers = new HttpHeaders({ Authorization: 'Bearer ' + authToken });\r\n return this.http.post(url, {}, { responseType: 'arraybuffer', headers }).subscribe((response) => {\r\n const blob = new Blob([response as BlobPart], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n const urlResponse = window.URL.createObjectURL(blob);\r\n const pwa = window.open(urlResponse);\r\n if (!pwa || pwa.closed || typeof pwa.closed === 'undefined') {\r\n alert('Please disable your Pop-up blocker and try again.');\r\n }\r\n });\r\n });\r\n\r\n return null;\r\n }\r\n\r\n public login(event: Event): void {\r\n event.preventDefault();\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n }\r\n\r\n async signOut(): Promise {\r\n try {\r\n console.log('Saindo do sistema...');\r\n await this.auth.signOut();\r\n // Sign-out successful.\r\n this.onSignOut.emit();\r\n window.location.reload();\r\n } catch (e) {\r\n // An error happened.\r\n console.error('Ocorreu um erro ao sair do sistema!', e);\r\n }\r\n }\r\n\r\n ngOnInit(): void {}\r\n}\r\n","\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \"Menu\"\r\n \r\n
    \r\n \r\n\r\n \r\n \r\n \r\n
    \r\n\r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n","import { LoginDialogComponent } from '../../navigation/auth/login-dialog/login-dialog.component';\r\nimport { AnalyticsService } from '../../service/analytics.service';\r\nimport { UserService } from '../../service/user.service';\r\nimport { Component, Input, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { Escola } from '../../service/Escola';\r\nimport firebase from 'firebase/app';\r\n\r\n@Component({\r\n selector: 'app-selo-escola',\r\n templateUrl: './selo-escola.component.html',\r\n styleUrls: ['./selo-escola.component.css'],\r\n})\r\nexport class SeloEscolaComponent implements OnInit {\r\n @Input() escola: Escola;\r\n @Input() seloId: number;\r\n @Input() seloNome: string;\r\n seloData: any;\r\n showInfo = false;\r\n\r\n constructor(public userService: UserService, private matDialog: MatDialog, private analytics: AnalyticsService) {}\r\n\r\n get porcentagemRegiao() {\r\n return this.calcularPorcentagemSelo(this.seloData.selosRegiao);\r\n }\r\n\r\n get porcentagemCidade() {\r\n return this.calcularPorcentagemSelo(this.seloData.selosCidade);\r\n }\r\n\r\n async ngOnInit() {\r\n const request = {\r\n cod_escola: this.escola.codigo,\r\n cod_regiao: this.escola.cod_regiao,\r\n cod_selo: this.seloId,\r\n }\r\n\r\n const response = await firebase.functions().httpsCallable('escola_selo_grafico')(request);\r\n this.seloData = response.data;\r\n }\r\n\r\n\r\n\r\n calcularPorcentagemSelo(selos: any[]) {\r\n if (!selos || selos.length === 0) {\r\n return 0;\r\n }\r\n\r\n let total = 0;\r\n let regiao = 0;\r\n\r\n selos.forEach((data) => {\r\n if (data.selo) {\r\n regiao += data.qtd\r\n }\r\n else {\r\n total += data.qtd\r\n }\r\n });\r\n\r\n let porcentagem = Math.round((regiao / total) * 100);\r\n\r\n if (porcentagem <= 0) {\r\n porcentagem = 1;\r\n }\r\n\r\n return porcentagem;\r\n }\r\n\r\n async showAllInfo(): Promise {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n if (this.seloNome) {\r\n this.analytics.viewEscolaField(this.escola, this.seloNome, user);\r\n //this.analytics.sendEventMail(this.escola, user);\r\n }\r\n\r\n this.showInfo = true;\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n

    {{seloData.selo.descricao}}

    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    Compare com outras escolas

    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n

    Porcentagem das escolas que possuem o selo no bairro

    \r\n
      \r\n
    • \r\n
      \r\n
      \r\n
      \r\n {{porcentagemRegiao}}%\r\n
    • \r\n
    • \r\n
      \r\n
      \r\n
      \r\n 50%\r\n
    • \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n

    Porcentagem das escolas que possuem o selo na cidade

    \r\n
      \r\n
    • \r\n
      \r\n
      \r\n
      \r\n {{porcentagemCidade}}%\r\n
    • \r\n
    • \r\n
      \r\n
      \r\n
      \r\n 50%\r\n
    • \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    ","import {Directive, HostListener, Output, EventEmitter} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appDropzone]'\r\n})\r\nexport class DropzoneDirective {\r\n\r\n @Output() dropped = new EventEmitter();\r\n @Output() hovered = new EventEmitter();\r\n\r\n @HostListener('drop', ['$event'])\r\n onDrop($event): void {\r\n $event.preventDefault();\r\n this.dropped.emit($event.dataTransfer.files);\r\n this.hovered.emit(false);\r\n }\r\n\r\n @HostListener('dragover', ['$event'])\r\n onDragOver($event): void {\r\n $event.preventDefault();\r\n this.hovered.emit(true);\r\n }\r\n\r\n @HostListener('dragleave', ['$event'])\r\n onDragLeave($event): void {\r\n $event.preventDefault();\r\n this.hovered.emit(false);\r\n }\r\n}\r\n","import {AfterContentChecked, Component, ElementRef, Inject, Input, OnInit, Renderer2, ViewChild} from '@angular/core';\r\nimport {EscolaService} from '../../service/escola.service';\r\nimport {Endereco, Escola, EscolaBeneficio, Social, Unidades, EscolaLista, tags, educacaoBilingue} from '../../service/Escola';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport firebase from 'firebase/app';\r\nimport {PagseguroService} from '../../service/pagseguro.service';\r\nimport {MatSnackBar} from '@angular/material/snack-bar';\r\nimport {MAT_DIALOG_DATA, MatDialog, MatDialogRef} from '@angular/material/dialog';\r\nimport {fromEvent, Observable, timer} from 'rxjs';\r\nimport {debounceTime, map, startWith} from 'rxjs/operators';\r\nimport {document} from 'ngx-bootstrap/utils';\r\nimport {ReviewRankingComponent} from '../../review/review-ranking/review-ranking.component';\r\nimport {UserService} from '../../service/user.service';\r\nimport {EscolaProductsComponent} from '../escola-products/escola-products.component';\r\nimport {diff as jdiff} from 'jsondiffpatch';\r\nimport {UploadFileData} from '../../navigation/upload-task/upload-task.component';\r\nimport {MatChipInputEvent} from '@angular/material/chips';\r\nimport {COMMA, ENTER} from '@angular/cdk/keycodes';\r\nimport {FormControl, Validators} from '@angular/forms';\r\nimport {EscolaGalleryComponent} from '../escola-gallery/escola-gallery.component';\r\nimport {SchoolDetailMoreInfoComponent} from './more-info/school-detail-more-info';\r\nimport { SchoolQualificationsComponent } from './qualifications/school-qualifications';\r\nimport * as clone from 'clone';\r\nimport {DefaultSliderConfig} from '../../navigation/Slider';\r\nimport {Meta, Title} from '@angular/platform-browser';\r\nimport {AnalyticsService} from '../../service/analytics.service';\r\nimport {MatSlideToggleChange} from '@angular/material/slide-toggle';\r\nimport * as _moment from 'moment';\r\nimport {MatBottomSheet, MatBottomSheetRef} from '@angular/material/bottom-sheet';\r\nimport {MAT_BOTTOM_SHEET_DATA} from '@angular/material/bottom-sheet';\r\nimport {AbordagemPedagogica, AbordagemPedagogicaText} from '../../service/Tag';\r\nimport {HttpClient, HttpHeaders} from '@angular/common/http';\r\nimport {LoginDialogComponent} from '../../navigation/auth/login-dialog/login-dialog.component';\r\nimport {UrlFixerPipe} from '../../pipe/url-fixer.pipe';\r\n\r\nexport const Bookmarks = [\r\n 'dados',\r\n 'indices',\r\n 'sobre',\r\n 'videos',\r\n 'nivel_ensino',\r\n 'infraestrutura',\r\n 'video360',\r\n 'acessibilidade',\r\n 'recursos',\r\n 'tecnologia',\r\n 'docentes',\r\n 'idiomas',\r\n 'cursos',\r\n 'disciplinas',\r\n 'material',\r\n 'alimentacao',\r\n // 'parcerias',\r\n // 'certificados',\r\n 'avaliacao',\r\n];\r\n\r\n@Component({\r\n selector: 'app-escola-detail',\r\n templateUrl: './escola-detail.component.html',\r\n styleUrls: ['./escola-detail.component.scss'],\r\n})\r\nexport class EscolaDetailComponent implements OnInit, AfterContentChecked {\r\n\r\n moment = _moment;\r\n escolaService = EscolaService;\r\n escola: Escola;\r\n escolaOld: Escola;\r\n socialOld: Social;\r\n codEscolaGallery: number;\r\n escolaBeneficio: EscolaBeneficio;\r\n escolaBeneficioOld: EscolaBeneficio;\r\n familyChoice = false;\r\n endereco: Endereco;\r\n fragment: any;\r\n textAbout = false;\r\n escolaListaArray: EscolaLista;\r\n outrasUnidades: Unidades[];\r\n mapSizeWidth = 300;\r\n mapSizeHeight = 160;\r\n sliderUnidades = DefaultSliderConfig;\r\n iconFile: File;\r\n separatorKeysCodes: number[] = [ENTER, COMMA];\r\n tagControl = new FormControl()\r\n urlValidatePattern = '(https?://)([\\\\da-z.-]+)\\\\.([a-z.]{2,6})[/\\\\w .-]*/?';\r\n videosControl = new FormControl(null, Validators.pattern('(https://www\\.youtube\\.com/embed/)|(https://player.vimeo.com/).*'));\r\n videos360Control = new FormControl(null, Validators.pattern(this.urlValidatePattern));\r\n \r\n \r\n @ViewChild('buyButton', {static: true}) buyButton: HTMLButtonElement;\r\n saving = false;\r\n \r\n @ViewChild('escolaGallery', {static: false}) escolaGalleryComponent: EscolaGalleryComponent;\r\n @ViewChild('schoolDetailMoreInfo', {static: false}) schoolDetailMoreInfo: SchoolDetailMoreInfoComponent;\r\n @ViewChild('schoolQualifications', {static: false}) schoolQualifications: SchoolQualificationsComponent;\r\n \r\n filteredTags: Observable;\r\n @Input() editing = false;\r\n recursosPedagogicosGroup: string[] = [];\r\n recursosRecreativosGroup: string[] = [];\r\n tecnologiaInternetGroup: string[] = [];\r\n tecnologiaRecursoGroup: string[] = [];\r\n messagePremium = 'Solicitar Informação';\r\n abordagemPedagogica = AbordagemPedagogicaText;\r\n alimentacao = ['Incluso na mensalidade', 'Incluso na mensalidade somente para integral', 'Pago à parte', 'Não oferece'];\r\n \r\n turnos = ['Regular', 'Semi-Integral', 'Integral', 'Estendido', 'Curso de férias'];\r\n processoSeletivo = ['Vagas imediatas', 'Lista de espera', 'Processo seletivo', 'Sondagem pedagógica'];\r\n idiomas = ['Português', 'Alemão', 'Espanhol', 'Francês', 'Inglês', 'Italiano', 'Japonês', 'Madarim'];\r\n modalidadeEnsino = ['', 'Confessional', 'Internacional', 'Especializada (AEE)'];\r\n parceira_cellep = ['Intracurricular', 'Extracurricular'];\r\n showPremiumFields = true;\r\n maxAttributos = 3;\r\n private indexItemId: string;\r\n private signalScrollTo = false;\r\n single = [];\r\n graph_indices_data: { name: string, series: { name: string, value: number }[] }[] = [];\r\n colorScheme = {\r\n domain: ['#ef3f5d', '#ef3fd8',\r\n '#8b3fef', '#3f82ef',\r\n '#3fc9ef', '#3fef88',\r\n '#80ef3f', '#efb73f',\r\n '#ef593f']\r\n };\r\n indicesInfo: { title: string, description: string, items: string[] }[] = [\r\n {\r\n title: 'ICDSA', description: 'O indicador classifica o corpo docente da escola segundo os seguintes critérios:',\r\n items: [\r\n 'Adequação de Formação Docente (INEP) - Adequação de formação de docentes à disciplina que leciona',\r\n 'Indicador de Regularidade Docente (INEP) - Permanência do docente na escola nos últimos cinco anos (2016 a 2020)',\r\n 'Docentes com Curso Superior (INEP) - Percentual de docentes com curso superior completo',\r\n 'Avaliações quantitativas (SA) - Avaliações realizadas no site SchoolAdvisor',\r\n ]\r\n },\r\n {\r\n title: 'IIESA', description: 'O indicador classifica a infra estrutura da escola segundo os seguintes critérios:',\r\n items: [\r\n 'Salas disponíveis (SIMCAQ) - Quantidade de salas disponíveis em relação ao tamanho das turmas',\r\n 'Padrão de qualidade referência (SIMCAQ) - Infraestrutura mínima para atendimento das turmas',\r\n 'Infraestrutura (SA) - Infraestrutura esperada para atendimento das turmas',\r\n 'Avaliações quantitativas (SA) - Avaliações realizadas no site SchoolAdvisor',\r\n ]\r\n },\r\n ];\r\n chatVisible = false;\r\n chatBadge: string;\r\n\r\n constructor(\r\n private activatedRoute: ActivatedRoute,\r\n private router: Router,\r\n public userService: UserService,\r\n private pagseguroService: PagseguroService,\r\n private snackBar: MatSnackBar,\r\n private matDialog: MatDialog,\r\n private _bottomSheet: MatBottomSheet,\r\n private render: Renderer2,\r\n private title: Title,\r\n private meta: Meta,\r\n private analytics: AnalyticsService,\r\n private httpClient: HttpClient,\r\n private urlFixer: UrlFixerPipe,\r\n ) {\r\n fromEvent(window, 'scroll').pipe(\r\n debounceTime(100)\r\n ).subscribe(() => {\r\n let lastItem: HTMLElement = null;\r\n let minTop: number = null;\r\n for (const item of Bookmarks) {\r\n const el: HTMLElement = document.getElementById(item);\r\n if (el) {\r\n const top = el.getBoundingClientRect().top;\r\n // console.log(`${item}: ${top}`);\r\n const itemId = item + 'Item';\r\n const elItem: HTMLElement = document.getElementById(itemId);\r\n this.render.removeClass(elItem, 'active');\r\n if (top > 0) {\r\n minTop = minTop ?? top;\r\n if (top <= minTop) {\r\n minTop = top;\r\n lastItem = elItem;\r\n this.indexItemId = itemId;\r\n }\r\n }\r\n } else {\r\n // console.log(`unused item for bookmark: ${item}`);\r\n }\r\n }\r\n\r\n if (lastItem) {\r\n this.render.addClass(lastItem, 'active');\r\n }\r\n });\r\n\r\n\r\n /*this.filteredTags = this.tagControl.valueChanges.pipe(\r\n startWith(null),\r\n map((item: string | null) => this._filter(item))\r\n );*/\r\n\r\n \r\n\r\n\r\n Object.assign(this, {single: this.single});\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n if (this.signalScrollTo && (this.fragment != null)) {\r\n this.scrollTo(this.fragment);\r\n }\r\n }\r\n\r\n /*private _filter(value: string): string[] {\r\n const possibleValues = clone(tags);\r\n if (this.escola?.tags) {\r\n for (const selectedItem of this.escola.tags) {\r\n const index = possibleValues.indexOf(selectedItem);\r\n // console.log(`check for: ${selectedItem} = ${index}`);\r\n if (index >= 0) {\r\n possibleValues.splice(index, 1);\r\n }\r\n }\r\n }\r\n\r\n if (value == null) {\r\n return possibleValues;\r\n }\r\n\r\n const filterValue = value.toLowerCase();\r\n\r\n return possibleValues.filter(item => item.toLowerCase().indexOf(filterValue) === 0);\r\n }*/\r\n\r\n ngOnInit(): void {\r\n this.activatedRoute.params.subscribe(routeParams => {\r\n this.escola = null;\r\n this.editing = false;\r\n this.mapSizeWidth = innerWidth / 2;\r\n const codEscola = this.activatedRoute.snapshot.paramMap.get('codigo');\r\n const nomeEscola = this.activatedRoute.snapshot.paramMap.get('nome');\r\n\r\n this.updateTags(nomeEscola);\r\n this.loadEscolas(codEscola);\r\n\r\n // firebase.functions().httpsCallable('view_lista_escola_ativa')\r\n // ({nome_lista: 'Escolas Novas'}) // TODO: change to specific school nome_lista\r\n // .then(value => {\r\n // this.escolaListaArray = value.data;\r\n // });\r\n\r\n firebase.functions().httpsCallable('escola_unidades') // TODO: include this array in escolas funciton\r\n ({cod_escola: codEscola})\r\n .then(value => {\r\n this.outrasUnidades = value.data;\r\n });\r\n\r\n window.scrollTo({top: 0, behavior: 'smooth'});\r\n });\r\n\r\n this.activatedRoute.fragment.subscribe(fragment => {\r\n this.fragment = fragment;\r\n });\r\n }\r\n\r\n private updateTags(nomeEscola: string = null): void {\r\n if (this.escola == null) {\r\n if (nomeEscola) {\r\n this.meta.updateTag({name: 'description', content: `${nomeEscola}`});\r\n }\r\n } else {\r\n this.title.setTitle(`SchoolAdvisor | ${this.escola.nome}`);\r\n const description = `description: Confira todas as informações de ${this.escola.nome}. Buscador com Informações Completas de todas as Escolas Particulares.`;\r\n const keyword = `schooladvisor, ${this.escola.nome}, ${this.escola.endereco}, ${JSON.stringify(this.escola.nivel_ensino)}`;\r\n this.meta.updateTag({name: 'description', content: description});\r\n this.meta.updateTag({name: 'keyword', content: keyword});\r\n }\r\n }\r\n\r\n private updateGraph(): void {\r\n const indices = this.escola.indices;\r\n this.graph_indices_data = [{name: 'Índices', series: []}];\r\n for (const item of Object.keys(indices)) {\r\n const value = indices[item];\r\n // console.log(`${item}: ${value}`);\r\n if (value != null) {\r\n this.graph_indices_data[0].series.push({name: item, value});\r\n }\r\n }\r\n // this.graph_indices_data = [\r\n // {\r\n // name: 'Indicadores',\r\n // series: [\r\n // {\r\n // name: '2010',\r\n // value: 7300000\r\n // },\r\n // {\r\n // name: '2011',\r\n // value: 8940000\r\n // }\r\n // ]\r\n // },\r\n // ];\r\n }\r\n\r\n private loadEscolas(codEscola: any): void {\r\n const perfil = this.userService.userData?.perfil;\r\n const data: any = {codigo: codEscola};\r\n if (perfil) {\r\n data.perfil = perfil;\r\n }\r\n\r\n firebase.functions().httpsCallable('escola')(data)\r\n .then(value => {\r\n if (value.data.rows.length > 0) {\r\n this.escola = value.data.rows[0];\r\n console.log(\"escola\", this.escola)\r\n let inep: any = this.escola.inep\r\n try {\r\n inep = parseInt(inep)\r\n }\r\n catch (e) {\r\n inep = this.escola.codigo\r\n }\r\n\r\n if (this.escola.codigo !== inep) {\r\n const escolaUrl = this.escola.nome.replace(/ /g, '-')\r\n const domain = window.location.origin\r\n let url = `${domain}/escolas/${this.escola.inep}/${escolaUrl}`\r\n url = this.urlFixer.transform(url)\r\n url = url.replace(/\\(/g, '').replace(/\\)/g, '')\r\n const meta = document.createElement('meta')\r\n meta.httpEquiv = 'refresh'\r\n meta.content = `0;url=${url}`\r\n //console.log(\"url\", url)\r\n \r\n document.getElementsByTagName('head')[0].appendChild(meta)\r\n return\r\n }\r\n\r\n this.codEscolaGallery = this.escola.codigo;\r\n this.updateTags();\r\n this.updateGraph();\r\n // this.endereco = this.escolaService.parseEndereco(this.escola);\r\n this.recursosPedagogicosGroup = this.escolaService.getGrupo('recursos_pedagogico', true, this.escola);\r\n this.recursosRecreativosGroup = this.escolaService.getGrupo('recursos_recreativo', true, this.escola);\r\n this.tecnologiaInternetGroup = this.escolaService.getGrupo('tecnologia_internet', true, this.escola);\r\n this.tecnologiaRecursoGroup = this.escolaService.getGrupo('tecnologia_recurso', true, this.escola);\r\n (window as any)._escola = this.escola;\r\n if (this.escola.lista_escolas != null && !this.escola.premium) {\r\n this.escolaListaArray = {\r\n nome_lista: 'Outras escolas na região',\r\n cod_escola: this.escola.codigo,\r\n };\r\n }\r\n this.signalScrollTo = true;\r\n }\r\n\r\n this.escolaBeneficio = value.data.rows[0].beneficios;\r\n\r\n if (this.escolaBeneficio == null) {\r\n this.escolaBeneficio = {\r\n codigo: this.escola.codigo,\r\n tipo: 0,\r\n }\r\n }\r\n \r\n if (this.escolaBeneficio.tipo === null || this.escolaBeneficio.tipo === undefined)\r\n this.escolaBeneficio.tipo = 0;\r\n\r\n if (this.escolaBeneficio.codigo === null || this.escolaBeneficio.codigo === undefined) {\r\n this.escolaBeneficio.codigo = this.escola.codigo;\r\n }\r\n\r\n console.log(\"escolaBeneficio\", this.escolaBeneficio);\r\n });\r\n\r\n firebase.functions().httpsCallable('escola_familys_choice')({codigo: codEscola})\r\n .then(value => {\r\n console.log(\"familyChoice\", value.data);\r\n this.familyChoice = value.data;\r\n });\r\n }\r\n\r\n get educacaoBilingue() {\r\n return educacaoBilingue;\r\n }\r\n\r\n scrollTo(elementId: string): void {\r\n const el: HTMLElement = document.getElementById(elementId);\r\n // console.log(`ElementId: ${elementId} el: ${el}`);\r\n if (el) {\r\n window.scrollBy({behavior: 'smooth', top: el.getBoundingClientRect().top - 100});\r\n this.signalScrollTo = false;\r\n }\r\n }\r\n\r\n showRankingCompleto(): void {\r\n this.matDialog.open(ReviewRankingComponent,\r\n {\r\n id: 'rankingCompletoDialog',\r\n data: {\r\n escola: this.escola,\r\n readonly: true,\r\n }\r\n }\r\n );\r\n }\r\n\r\n /**\r\n * Botão 1: Você receberá informações completas sobre essa escola, são até 110 itens de avaliação objetiva!\r\n * Prazo de entrega: até 10 dias úteis. (COMPRAR)\r\n *\r\n * Botão 2: Quero comprar uma curadoria para me ajudar a escolher 5 escolas e o comparativo das 5 escolas.\r\n * Você receberá os próximos-passos por e-mail. Prazo de entrega: até 15 dias úteis. (COMPRAR)\r\n *\r\n * Botão 3: Ainda tenho dúvidas. Quero falar com vocês. (FALE CONOSCO)\r\n */\r\n checkout(event: any): void {\r\n this.matDialog.open(EscolaProductsComponent, {id: 'escola-products', data: this.escola});\r\n }\r\n\r\n editingClick(): void {\r\n // this.escolaOld = {...this.escola};\r\n // this.escolaOld.social = {...this.escola.social};\r\n // this.escolaOld.tags = {...this.escola.tags};\r\n // this.escolaOld.videos = {...this.escola.videos};\r\n \r\n this.schoolDetailMoreInfo.detectChanges();\r\n //this.schoolQualifications.detectChanges();\r\n this.escolaOld = clone(this.escola);\r\n this.escolaBeneficioOld = clone(this.escolaBeneficio);\r\n this.editing = true;\r\n }\r\n\r\n saveEdit(): void {\r\n console.log(\"escolaBeneficio\", this.escolaBeneficio);\r\n const e = document.getElementsByTagName('mat-error');\r\n // console.log('error? ' + e.length);\r\n\r\n if (e.length > 0) {\r\n window.scrollBy({behavior: 'smooth', top: e[0].getBoundingClientRect().top - 150});\r\n this.snackBar.open('Existem campos inválidos.', 'Ok', {duration: 5000});\r\n return;\r\n }\r\n\r\n this.editing = false;\r\n this.saving = true;\r\n\r\n // ReCreate escola.nivel_ensino array based on its subvalues\r\n this.escolaService.updateNivelEnsino(this.escola);\r\n\r\n const newData: any = {}; // this.diff(this.escolaAux, this.escola);\r\n const deltaEscola = jdiff(this.escolaOld, this.escola);\r\n const deltaBeneficio = jdiff(this.escolaBeneficioOld, this.escolaBeneficio);\r\n // console.log('Old: ' + JSON.stringify(this.escolaOld.social));\r\n // console.log('New: ' + JSON.stringify(this.escola.social));\r\n\r\n if (deltaEscola) {\r\n const deltaKeys: string[] = Object.keys(deltaEscola);\r\n for (const key of deltaKeys) {\r\n newData[key] = this.escola[key];\r\n }\r\n if (Object.keys(newData).length > 0) {\r\n newData.codigo = this.escolaOld.codigo;\r\n // console.log(JSON.stringify(newData));\r\n\r\n firebase.functions().httpsCallable('escola_update')(newData).then(value => {\r\n // (window as any)._v = value;\r\n try {\r\n if (value.data.length > 0) {\r\n this.escola = value.data[0];\r\n this.loadEscolas(this.escola.codigo);\r\n } else {\r\n this.snackBar.open('Ocorreu um erro ao salvar os dados da Escola.', 'Ok', {duration: 5000});\r\n this.escola = clone(this.escolaOld);\r\n }\r\n } catch (e) {\r\n if (!deltaBeneficio) {\r\n this.snackBar.open('Ocorreu um erro ao salvar os dados da Escola.', 'Ok', {duration: 5000});\r\n this.escola = clone(this.escolaOld);\r\n }\r\n }\r\n this.saving = false;\r\n });\r\n } else {\r\n this.saving = false;\r\n }\r\n }\r\n \r\n if (deltaBeneficio) {\r\n console.log(\"deltaBeneficio\", deltaBeneficio);\r\n\r\n firebase.functions().httpsCallable('escola_benefits_update')(this.escolaBeneficio).then(value => {\r\n this.escolaBeneficioOld = clone(this.escolaBeneficio);\r\n });\r\n }\r\n \r\n if (!deltaEscola && !deltaBeneficio) {\r\n this.snackBar.open('Nenhuma informação foi alterada.', 'Ok', {duration: 2000});\r\n this.saving = false;\r\n }\r\n }\r\n\r\n cancelEdit(): void {\r\n this.escola = this.escolaOld;\r\n this.escolaBeneficio = this.escolaBeneficioOld;\r\n this.editing = false;\r\n }\r\n\r\n /*addTag(event: MatChipInputEvent): void {\r\n const input = event.input;\r\n const value = event.value;\r\n\r\n for (const item of this.escola.tags) {\r\n // console.log(`check for: ${value} = ${item}`);\r\n if (item === value) {\r\n return;\r\n }\r\n }\r\n\r\n // Add our tag\r\n if ((value || '').trim()) {\r\n this.escola.tags.push(value.trim());\r\n }\r\n\r\n // Reset the input value\r\n if (input) {\r\n input.value = '';\r\n }\r\n\r\n this.tagControl.setValue(null);\r\n }*/\r\n\r\n \r\n /*removeTag(tag: string): void {\r\n const index = this.escola.tags.indexOf(tag);\r\n\r\n if (index >= 0) {\r\n this.escola.tags.splice(index, 1);\r\n }\r\n } */\r\n\r\n /*selectedTag(event: MatAutocompleteSelectedEvent): void {\r\n if (!this.escola.tags) {\r\n this.escola.tags = [];\r\n }\r\n\r\n this.escola.tags.push(event.option.viewValue);\r\n this.tagsInput.nativeElement.value = null;\r\n this.tagControl.setValue('');\r\n\r\n requestAnimationFrame(() => {\r\n this.autoTrigger.openPanel();\r\n });\r\n }\r\n\r\n selectedOption(event: MatSelectChange): void {\r\n if (!this.escola.tags) {\r\n this.escola.tags = [];\r\n }\r\n\r\n if (this.escola.tags.indexOf(event.value) >= 0) {\r\n return;\r\n }\r\n\r\n this.escola.tags.push(event.value);\r\n this.tagsInput.nativeElement.value = null;\r\n this.tagControl.setValue('');\r\n }*/\r\n\r\n \r\n\r\n chooseIconFile(event: any): void {\r\n this.iconFile = event.target.files[0];\r\n }\r\n\r\n uploadIcon($event: UploadFileData): void {\r\n this.escola.icon_path = $event.thumb;\r\n this.iconFile = null;\r\n }\r\n\r\n removeVideo(item: string): void {\r\n const index = this.escola.videos.indexOf(item);\r\n\r\n if (index >= 0) {\r\n this.escola.videos.splice(index, 1);\r\n }\r\n }\r\n\r\n addVideo(event: MatChipInputEvent): void {\r\n if (this.videosControl.valid) {\r\n if (!this.videosControl.value) {\r\n return;\r\n }\r\n\r\n const input = event.input;\r\n const value = event.value;\r\n\r\n // Add our tag\r\n if ((value || '').trim()) {\r\n this.escola.videos.push(value.trim());\r\n }\r\n\r\n // Reset the input value\r\n if (input) {\r\n input.value = '';\r\n }\r\n\r\n this.tagControl.setValue(null);\r\n }\r\n }\r\n\r\n \r\n\r\n \r\n\r\n vchange(event: google.maps.places.PlaceResult | string): void {\r\n console.log(event);\r\n }\r\n\r\n proprietario(): void {\r\n this.saving = true;\r\n this.userService.proprietario(this.escola);\r\n // TODO: return a promisse instead of a timer\r\n timer(5000).subscribe(value => {\r\n this.saving = false;\r\n });\r\n this.analytics.clickSolicitarProprietario(this.escola);\r\n }\r\n\r\n horarioFuncionamento(type: 'min' | 'max', value: string): void {\r\n switch (type) {\r\n case 'min':\r\n this.escola.horario_funcionamento_min = value;\r\n break;\r\n case 'max':\r\n this.escola.horario_funcionamento_max = value;\r\n break;\r\n }\r\n }\r\n\r\n decimalParser(event: any): number {\r\n if (event !== null) {\r\n const c = event.toString().replace(/[^\\d,]/g, '').replace(',', '.');\r\n if (c.length > 0) {\r\n return c;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n // TODO: add a debounce ou timeout to make one single call\r\n markForReload(): void {\r\n this.escolaGalleryComponent.loadImages();\r\n }\r\n\r\n buySchool(): void {\r\n this.saving = true;\r\n this.pagseguroService.buy(this.pagseguroService.plano.perfil_escola.nome, this.escola.codigo)\r\n .then(() => this.saving = false);\r\n }\r\n\r\n ativaToggle(event: MatSlideToggleChange): void {\r\n if (event.checked) {\r\n this.escola.data_desativada = null;\r\n this.escola.motivo_desativada = null;\r\n } else {\r\n const dialogRef = this.matDialog.open(DialogMotivo, {\r\n data: this.escola\r\n });\r\n dialogRef.afterClosed().subscribe(result => {\r\n if (result != null) {\r\n // console.log('result:' + JSON.stringify(result));\r\n this.escola = result;\r\n }\r\n });\r\n }\r\n }\r\n\r\n requestInfo(fieldName: string, responseDialog: boolean = true): void {\r\n const user = this.userService.getCurrentUser();\r\n this.analytics.requestEscolaField(this.escola, fieldName, user);\r\n // firebase.functions().httpsCallable('event_request_info')({field_name: fieldName, cod_escola: this.escola.codigo});\r\n \r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent);\r\n\r\n // Include this event to run after user login\r\n const subscription = this.userService.userDataEvent.subscribe(value => {\r\n if (value !== null) {\r\n const loggedUser = this.userService.getCurrentUser();\r\n if ((loggedUser !== null) && (this.userService.userData?.data_aceite)) {\r\n this.analytics.requestEscolaField(this.escola, fieldName, user);\r\n // firebase.functions().httpsCallable('event_request_info')({field_name: fieldName, cod_escola: this.escola.codigo});\r\n this.matDialog.closeAll();\r\n }\r\n }\r\n\r\n if (responseDialog)\r\n this.matDialog.open(DialogRequestInfoResponse);\r\n\r\n subscription.unsubscribe();\r\n });\r\n } else {\r\n this.analytics.sendEventMail(this.escola, user)\r\n\r\n if (responseDialog)\r\n this.matDialog.open(DialogRequestInfoResponse);\r\n }\r\n }\r\n\r\n infoBottom(indiceTitle: string): void {\r\n for (const item of this.indicesInfo) {\r\n if (item.title === indiceTitle) {\r\n this._bottomSheet.open(BottomSheetInfo, {data: item});\r\n }\r\n }\r\n }\r\n\r\n raiox(): void {\r\n // TODO: move this connetion to a service of it's on\r\n const raioxURL = 'https://us-central1-firesample-7bd56.cloudfunctions.net/raiox';\r\n firebase.auth().currentUser.getIdToken().then((token) => {\r\n\r\n // const headers = new HttpHeaders().set('authorization', 'Bearer ' + token);\r\n // this.httpClient.get(raioxURL, {responseType: 'arraybuffer', headers}).subscribe((data) => {\r\n // const blob = new Blob([data], {});\r\n // const url = window.URL.createObjectURL(blob);\r\n // const pwa = window.open(url);\r\n // if (!pwa || pwa.closed || typeof pwa.closed === 'undefined') {\r\n // alert( 'Please disable your Pop-up blocker and try again.');\r\n // }\r\n // });\r\n\r\n // console.log('Sending request to', raioxURL, 'with ID token in Authorization header.');\r\n // const req = new XMLHttpRequest();\r\n // req.addEventListener('load', () => {\r\n // console.log(req.responseText);\r\n // });\r\n // req.addEventListener('error', () => {\r\n // console.log('There was an error');\r\n // });\r\n // req.open('GET', raioxURL, true);\r\n // req.setRequestHeader('Authorization', 'Bearer ' + token);\r\n // req.send();\r\n\r\n const headers = new HttpHeaders().set('authorization', 'Bearer ' + token);\r\n this.httpClient.get(raioxURL, {\r\n headers,\r\n responseType: 'blob' as 'json',\r\n observe: 'body' as 'body',\r\n params: {codigo: this.escola.codigo}\r\n }).subscribe(\r\n (response: any) => {\r\n // console.log(JSON.stringify(response));\r\n // console.log(JSON.stringify(response.body));\r\n const dataType = response.type;\r\n const binaryData = [];\r\n binaryData.push(response);\r\n const downloadLink = document.createElement('a');\r\n downloadLink.href = window.URL.createObjectURL(new Blob(binaryData, {type: dataType}));\r\n let fileName = `Raio-X_Escola_${this.escola.codigo}.xlsx`;\r\n if (response.headers?.get('content-disposition')) {\r\n const fileNameRegex = /filename[^;=\\n]*=((['\"]).*?\\2|[^;\\n]*)/;\r\n const matches = fileNameRegex.exec(response.headers.get('content-disposition'));\r\n if (matches != null && matches[1]) {\r\n fileName = matches[1].replace(/['\"]/g, '');\r\n }\r\n }\r\n downloadLink.setAttribute('download', fileName);\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n }\r\n );\r\n\r\n }\r\n );\r\n }\r\n\r\n newMessage($event: any) {\r\n if (!this.chatVisible) {\r\n this.chatBadge = '!';\r\n }\r\n }\r\n\r\n toggleChat(): void {\r\n this.chatVisible = !this.chatVisible;\r\n if (this.chatVisible) {\r\n this.chatBadge = null;\r\n }\r\n }\r\n\r\n calculeAfinidade() {\r\n this.router.navigate(['perfil-afinidade']);\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'dialog-motivo',\r\n templateUrl: 'dialog-motivo.html',\r\n})\r\nexport class DialogMotivo {\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public escola: Escola) {\r\n }\r\n\r\n cancelar(): void {\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n\r\n@Component({\r\n selector: 'dialog-request-info',\r\n templateUrl: 'dialog-request-info.html',\r\n})\r\nexport class DialogRequestInfo {\r\n\r\n constructor(\r\n private matDialog: MatDialog,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public escola: Escola) {\r\n }\r\n\r\n requestLogin(): void {\r\n this.dialogRef.close();\r\n this.matDialog.open(LoginDialogComponent, {id: 'loginDialog'});\r\n }\r\n\r\n}\r\n\r\n@Component({\r\n selector: 'dialog-request-info-response',\r\n templateUrl: 'dialog-request-info-response.html',\r\n})\r\nexport class DialogRequestInfoResponse {\r\n\r\n constructor(\r\n private matDialog: MatDialog,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public escola: Escola) {\r\n }\r\n\r\n}\r\n\r\n@Component({\r\n selector: 'bottom-sheet-info',\r\n templateUrl: 'bottom-sheet-info.html',\r\n})\r\nexport class BottomSheetInfo {\r\n constructor(\r\n @Inject(MAT_BOTTOM_SHEET_DATA) public data: { title: string, description: string, items: string[] },\r\n private _bottomSheetRef: MatBottomSheetRef,\r\n ) {\r\n }\r\n\r\n openLink(event: MouseEvent): void {\r\n this._bottomSheetRef.dismiss();\r\n event.preventDefault();\r\n }\r\n\r\n close(): void {\r\n this._bottomSheetRef.dismiss();\r\n }\r\n}\r\n","
    \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    {{ this.escola.nome }}

    \r\n {{ \"Escola desativada \" + moment(escola.data_desativada).format(\"DD/MM/YYYY\") }}\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Logo\"\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    Escola Parceira
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Níveis de ensino

    \r\n
    \r\n
    \r\n
    = 0\">\"Berçário\"Berçário
    \r\n
    = 0\">\"Infantil\"Infantil
    \r\n
    = 0\">\"FundamentalFundamental Anos Iniciais
    \r\n
    = 0\">\"FundamentalFundamental Anos Finais
    \r\n
    = 0\">\"Médio\"Médio
    \r\n
    \r\n \r\n
  • Editar Níveis de Ensino
  • \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n

    Dados Principais

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Abordagem Pedagógica

    \r\n

    \r\n \r\n {{ escola.abordagem_pedagogica }}\r\n \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Horário de Abertura / Fechamento

    \r\n \r\n

    {{ escola.horario_funcionamento_min == null || escola.horario_funcionamento_max == null ? \"\" : escola.horario_funcionamento_min.substring(0, 5) + \" / \" + escola.horario_funcionamento_max.substring(0, 5) }}

    \r\n
    \r\n \r\n
    \r\n \r\n  / \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    País de Origem

    \r\n \r\n

    {{ escola.pais }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Ano de Fundação

    \r\n \r\n

    {{ escola.ano_fundacao }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    0 || editing\">\r\n
    \r\n

    Modalidade de Ensino

    \r\n \r\n

    {{ escola.modalidade_ensino }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Grupo

    \r\n \r\n

    {{ escola.grupo_educacional }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Total de alunos

    \r\n \r\n

    {{ escola.indices_total_alunos | number : \"1.0-0\" : \"pt-BR\" }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Total de salas

    \r\n \r\n

    {{ escola.indices_quantidade_salas }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Média de horas/aula por dia

    \r\n \r\n

    {{ escola.indices_media_horas_por_dia ? escola.indices_media_horas_por_dia + \"h\" : \"\" }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Foco Vestibular

    \r\n \r\n

    \r\n {{ escola.indices_preparatorio_vestibular == true ? \"Sim\" : \"Não\" }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n Não\r\n Sim\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    0 && (escola?.premium || escola?.compra)\">\r\n

    Outras unidades

    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Sobre

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n {{ this.messagePremium }}\r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    0 || this.editing\">\r\n
    \r\n

    Vídeos

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n {{ this.messagePremium }}\r\n

    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n cancel\r\n \r\n \r\n \r\n \r\n Site/URL inválido (formato https://www.youtube.com/embed/... ou https://player.vimeo.com/video/...) \r\n \r\n 0\">\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Níveis de Ensino

    \r\n
    \r\n \r\n
    \r\n
    0 || editing\">\r\n
    \r\n \"Berçário\"\r\n Berçário\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Períodos disponíveis

    \r\n \r\n

    {{ escola.bercario_periodos_disponiveis?.join(\", \") }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n 0\">\r\n
    \r\n

    Processo seletivo

    \r\n \r\n

    {{ escola.bercario_processo_admissao }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Máx. de Alunos por turma

    \r\n \r\n

    \r\n {{ escola.bercario_alunos_por_turma }}\r\n

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Profissionais em sala

    \r\n \r\n

    \r\n {{ escola.bercario_profissionais_em_sala }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Mensalidade

    \r\n \r\n

    \r\n \r\n {{ escola.bercario_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Matrícula

    \r\n \r\n \r\n {{ escola.bercario_matricula_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Quantidade de professores total

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    0 || editing\">\r\n
    \r\n \"Infantil\"\r\n Infantil\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Períodos disponíveis

    \r\n \r\n

    {{ escola.infantil_periodos_disponiveis?.join(\", \") }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n 0\">\r\n
    \r\n

    Processo seletivo

    \r\n \r\n

    \r\n {{ escola.infantil_processo_admissao }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Máx. de Alunos por turma

    \r\n \r\n

    \r\n {{ escola.infantil_alunos_por_turma }}\r\n

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Profissionais em sala

    \r\n \r\n

    \r\n {{ escola.infantil_profissionais_em_sala }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Mensalidade

    \r\n \r\n \r\n {{ escola.infantil_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Matrícula

    \r\n \r\n \r\n {{ escola.infantil_matricula_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Quantidade de professores total

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    0 || editing\">\r\n
    \r\n \"Fundamental\r\n Fundamental Anos Iniciais\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Períodos disponíveis

    \r\n \r\n

    {{ escola.fundamental1_periodos_disponiveis?.join(\", \") }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n 0\">\r\n
    \r\n

    Processo seletivo

    \r\n \r\n

    \r\n {{ escola.fundamental1_processo_admissao }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Máx. de Alunos por turma

    \r\n \r\n

    \r\n {{ escola.fundamental1_alunos_por_turma }}\r\n

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Profissionais em sala

    \r\n \r\n

    \r\n {{ escola.fundamental1_profissionais_em_sala }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Mensalidade

    \r\n \r\n \r\n {{ escola.fundamental1_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Matrícula

    \r\n \r\n \r\n {{ escola.fundamental1_matricula_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Quantidade de professores total

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    0 || editing\">\r\n
    \r\n \"Fundamental\r\n Fundamental Anos Finais\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Períodos disponíveis

    \r\n \r\n

    {{ escola.fundamental2_periodos_disponiveis?.join(\", \") }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n 0\">\r\n
    \r\n

    Processo seletivo

    \r\n \r\n

    \r\n {{ escola.fundamental2_processo_admissao }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Máx. de Alunos por turma

    \r\n \r\n

    \r\n {{ escola.fundamental2_alunos_por_turma }}\r\n

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Profissionais em sala

    \r\n \r\n

    \r\n {{ escola.fundamental2_profissionais_em_sala }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Mensalidade

    \r\n \r\n \r\n {{ escola.fundamental2_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Matrícula

    \r\n \r\n \r\n {{ escola.fundamental2_matricula_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Quantidade de professores total

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    0 || editing\">\r\n
    \r\n \"Médio\"\r\n Médio\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Períodos disponíveis

    \r\n \r\n

    {{ escola.ensino_medio_periodos_disponiveis?.join(\", \") }}

    \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n 0\">\r\n
    \r\n

    Processo seletivo

    \r\n \r\n

    \r\n {{ escola.ensino_medio_processo_admissao }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Máx. de Alunos por turma

    \r\n \r\n

    \r\n {{ escola.ensino_medio_alunos_por_turma }}\r\n

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Profissionais em sala

    \r\n \r\n

    \r\n {{ escola.ensino_medio_profissionais_em_sala }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Mensalidade

    \r\n \r\n \r\n {{ escola.ensino_medio_mensalidade_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Matrícula

    \r\n \r\n \r\n {{ escola.ensino_medio_matricula_media | currency : \"BRL\" : \"symbol\" : \"1.2-2\" : \"pt-BR\" }}\r\n \r\n \r\n {{ this.messagePremium }}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n

    Quantidade de professores total

    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Infraestrutura e Segurança

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Espaços coletivos

    \r\n \r\n

    Área Verde

    \r\n

    Auditório

    \r\n

    Banheiro Infantil

    \r\n

    Berços ou Camas Individuais

    \r\n

    Biblioteca

    \r\n

    Câmeras de Segurança

    \r\n

    Cantina

    \r\n

    Enfermaria

    \r\n

    Estacionamento

    \r\n

    Lactário

    \r\n

    Parque

    \r\n

    Pátio Coberto

    \r\n

    Pátio Descoberto

    \r\n

    Piscina

    \r\n

    Quadra Coberta

    \r\n

    Quadra Descoberta

    \r\n

    Refeitório

    \r\n

    Transporte Escolar

    \r\n

    Viveiro de Animais

    \r\n
    \r\n \r\n

    \r\n Área Verde\r\n

    \r\n

    \r\n Auditório\r\n

    \r\n

    \r\n Banheiro Infantil\r\n

    \r\n

    \r\n Berços ou Camas Individuais\r\n

    \r\n

    \r\n Biblioteca\r\n

    \r\n

    \r\n Câmeras de Segurança\r\n

    \r\n

    \r\n Cantina\r\n

    \r\n

    \r\n Enfermaria\r\n

    \r\n

    \r\n Estacionamento\r\n

    \r\n

    \r\n Lactário\r\n

    \r\n

    \r\n Parque\r\n

    \r\n \r\n \r\n

    \r\n Pátio Coberto\r\n

    \r\n

    \r\n Pátio Descoberto\r\n

    \r\n

    \r\n Piscina\r\n

    \r\n

    \r\n Quadra Coberta\r\n

    \r\n

    \r\n Quadra Descoberta\r\n

    \r\n

    \r\n Refeitório\r\n

    \r\n

    \r\n Transporte Escolar\r\n

    \r\n

    \r\n Viveiro de Animais\r\n

    \r\n
    \r\n
    \r\n
    \r\n

    Laboratório e Salas

    \r\n \r\n

    Laboratório de Ciências

    \r\n

    Laboratório de Robótica/Maker

    \r\n

    Sala de Amamentação

    \r\n

    Sala de Artes

    \r\n

    Salas Climatizadas

    \r\n

    Sala de Esportes

    \r\n

    Sala de Leitura

    \r\n

    Sala de Música

    \r\n
    \r\n \r\n

    \r\n Laboratório de Ciências\r\n

    \r\n

    \r\n Laboratório de Robótica/Maker\r\n

    \r\n

    \r\n Sala de Amamentação\r\n

    \r\n

    \r\n Sala de Artes\r\n

    \r\n

    \r\n Salas Climatizadas\r\n

    \r\n

    \r\n Sala de Esportes\r\n

    \r\n

    \r\n Sala de Leitura\r\n

    \r\n

    \r\n Sala de Música\r\n

    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Tour Virtual

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n Tour Virtual\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

    \r\n {{ this.messagePremium }}\r\n

    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Acessibilidade

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Infraestrutura

    \r\n \r\n

    Vão Livre

    \r\n

    Corrimão

    \r\n

    Rampa

    \r\n

    Elevador

    \r\n

    Banheiro Deficiente

    \r\n
    \r\n \r\n

    \r\n Vão Livre\r\n

    \r\n

    \r\n Corrimão\r\n

    \r\n

    \r\n Rampa\r\n

    \r\n

    \r\n Elevador\r\n

    \r\n

    \r\n Banheiro Deficiente\r\n

    \r\n
    \r\n
    \r\n
    \r\n

    Sinalização

    \r\n \r\n

    Piso Tátil

    \r\n

    Sinalização Sonora

    \r\n

    Sinalização Tátil

    \r\n

    Sinalização Visual

    \r\n
    \r\n \r\n

    \r\n Piso Tátil\r\n

    \r\n

    \r\n Sinalização Sonora\r\n

    \r\n

    \r\n Sinalização Tátil\r\n

    \r\n

    \r\n Sinalização Visual\r\n

    \r\n
    \r\n
    \r\n
    0 || editing\">\r\n

    Quantidade de Salas com Acessibilidade

    \r\n \r\n

    {{ escola.acessibilidade_qtde_salas }}

    \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Recursos de Aprendizagem

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Recreativos

    \r\n \r\n 0\">\r\n

    Brinquedo Infantil

    \r\n

    Instrumentos

    \r\n

    Material Desportivo

    \r\n
    \r\n \r\n

    Não possui recurso

    \r\n
    \r\n
    \r\n \r\n

    \r\n Brinquedo Infantil\r\n

    \r\n

    \r\n Instrumentos\r\n

    \r\n

    \r\n Material Desportivo\r\n

    \r\n
    \r\n
    \r\n
    \r\n

    Pedagógicos

    \r\n \r\n 0\">\r\n

    Jogos Educativos

    \r\n

    Material Científico

    \r\n

    Material Cultural

    \r\n
    \r\n \r\n

    Não possui recurso

    \r\n
    \r\n
    \r\n \r\n

    \r\n Jogos Educativos\r\n

    \r\n

    \r\n Material Científico\r\n

    \r\n

    \r\n Material Cultural\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Tecnologia e Recursos Digitais

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Recursos Digitais

    \r\n \r\n 0\">\r\n

    Lousa Digital

    \r\n

    Sala Multimídia

    \r\n

    Desktop Aluno

    \r\n

    Notebook Aluno

    \r\n

    Tablet Aluno

    \r\n
    \r\n \r\n

    Não possui recurso

    \r\n
    \r\n
    \r\n \r\n

    \r\n Lousa Digital\r\n

    \r\n

    \r\n Sala Multimídia\r\n

    \r\n

    \r\n Desktop Aluno\r\n

    \r\n

    \r\n Notebook Aluno\r\n

    \r\n

    \r\n Tablet Aluno\r\n

    \r\n
    \r\n
    \r\n
    \r\n

    Acesso à Internet

    \r\n \r\n 0\">\r\n

    Acesso à Internet para processos de ensino e aprendizagem

    \r\n

    Acesso à Internet para alunos

    \r\n
    \r\n \r\n

    Não possui recurso

    \r\n
    \r\n
    \r\n \r\n

    \r\n Acesso à Internet para processos de ensino e aprendizagem\r\n

    \r\n

    \r\n Acesso à Internet para alunos\r\n

    \r\n
    \r\n
    \r\n
    \r\n

    Sistema de aula online

    \r\n \r\n

    {{ escola.tecnologia_aula_online == true ? \"Sim\" : \"Não\" }}

    \r\n
    \r\n \r\n \r\n \r\n Não\r\n Sim\r\n \r\n \r\n
    \r\n
    \r\n \"Google\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Google\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Corpo Docente

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Professores\r\n

    Professores Estrangeiros

    \r\n \r\n

    {{ escola.professores_estrangeiros == true ? \"Sim\" : \"Não\" }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n Não\r\n Sim\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Centro\r\n

    Centro de formação docente

    \r\n \r\n

    {{ escola.centro_formacao_propria == true ? \"Sim\" : \"Não\" }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n Não\r\n Sim\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Profissionais\r\n

    Profissionais especializados

    \r\n \r\n

    Fonoaudióloga

    \r\n

    Psicóloga

    \r\n

    Nutricionista

    \r\n
    \r\n \r\n Fonoaudiologia \r\n Psicóloga \r\n Nutricionista \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Idiomas

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Bilíngue\"\r\n

    Bilíngue

    \r\n \r\n

    \r\n {{ escola.educacao_bilingue }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Idioma\r\n

    Idioma Principal

    \r\n \r\n

    {{ escola.idioma_principal?.join(\", \") }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    0 || this.editing\">\r\n
    \r\n \"Outros\"\r\n

    Outros

    \r\n \r\n

    {{ escola.outros_idiomas?.join(\", \") }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \"Bilíngue\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Cursos Extracurriculares

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Esportes\"\r\n

    Esportes

    \r\n \r\n
    \r\n

    Atletismo

    \r\n

    Arquearia

    \r\n

    Artes Marciais

    \r\n

    Badminton

    \r\n

    Ballet

    \r\n

    Basquete

    \r\n

    Circo

    \r\n

    Danças

    \r\n

    Esgrima

    \r\n

    Futebol

    \r\n

    Ginástica

    \r\n

    Handebol

    \r\n

    Hip Hop

    \r\n

    Hoquei

    \r\n

    Ioga

    \r\n

    Judô

    \r\n

    Natação

    \r\n

    Patinação

    \r\n

    Rugby

    \r\n

    Skate

    \r\n \r\n

    Tênis

    \r\n

    Tênis de Mesa

    \r\n

    Voleibol

    \r\n
    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n

    \r\n Atletismo\r\n

    \r\n

    \r\n Arquearia\r\n

    \r\n

    \r\n Artes Marciais\r\n

    \r\n

    \r\n Badminton\r\n

    \r\n

    \r\n Ballet\r\n

    \r\n

    \r\n Basquete\r\n

    \r\n

    \r\n Circo\r\n

    \r\n

    \r\n Danças\r\n

    \r\n

    \r\n Esgrima\r\n

    \r\n

    \r\n Futebol\r\n

    \r\n

    \r\n Ginástica\r\n

    \r\n

    \r\n Handebol\r\n

    \r\n

    \r\n Hip Hop\r\n

    \r\n

    \r\n Hoquei\r\n

    \r\n

    \r\n Ioga\r\n

    \r\n

    \r\n Judô\r\n

    \r\n

    \r\n Natação\r\n

    \r\n

    \r\n Patinação\r\n

    \r\n

    \r\n Rugby\r\n

    \r\n

    \r\n Skate\r\n

    \r\n \r\n \r\n \r\n

    \r\n Tênis\r\n

    \r\n

    \r\n Tenis de Mesa\r\n

    \r\n

    \r\n Voleibol\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Habilidades\r\n

    Habilidades Lógicas

    \r\n \r\n
    \r\n

    Catequese

    \r\n

    Culinária

    \r\n

    Educação Ambiental

    \r\n

    Educação Financeira

    \r\n

    Empreendedorismo

    \r\n

    Horticultura

    \r\n

    Idiomas

    \r\n

    Libras

    \r\n

    Maker

    \r\n

    Orient. Vocacional

    \r\n

    Prep. Vestibular

    \r\n

    Prep. ENEM

    \r\n

    Robótica

    \r\n
    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n

    \r\n Catequese\r\n

    \r\n

    \r\n Culinária\r\n

    \r\n

    \r\n Educação Ambiental\r\n

    \r\n

    \r\n Educação Financeira\r\n

    \r\n

    \r\n Empreendedorismo\r\n

    \r\n

    \r\n Horticultura\r\n

    \r\n

    \r\n Idiomas\r\n

    \r\n

    \r\n Libras\r\n

    \r\n

    \r\n Maker\r\n

    \r\n

    \r\n Orient. Vocacional\r\n

    \r\n

    \r\n Prep. Vestibular\r\n

    \r\n

    \r\n Prep. ENEM\r\n

    \r\n

    \r\n Robótica\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Artes\"\r\n

    Artes

    \r\n \r\n
    \r\n

    Desenho

    \r\n

    Literatura

    \r\n

    Música

    \r\n

    Prod. Artística

    \r\n

    Teatro

    \r\n
    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n

    \r\n Desenho\r\n

    \r\n

    \r\n Literatura\r\n

    \r\n

    \r\n Música\r\n

    \r\n

    \r\n Prod. Artística\r\n

    \r\n

    \r\n Teatro\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Disciplinas da Grade Curricular

    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \"Aulas\r\n

    Aulas de Programação / Coding

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Duplo\r\n

    Duplo Diploma

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Educação\r\n

    Educação Empreendedora

    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \"Educação\r\n

    Ensino Religioso

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Convênio\r\n

    Convênio com Escolas no Exterior

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Oportunidades\r\n

    Oportunidades de Voluntariado

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \"Aulas\r\n Aulas de Programação / Coding \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Duplo\r\n Duplo Diploma \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Educação\r\n Educação Empreendedora \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \"Educação\r\n Ensino Religioso \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Aulas\r\n Convênio com Escolas no Exterior \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Oportunidades\r\n Oportunidades de Voluntariado \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Material Didático

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Material\r\n

    Material apostilado

    \r\n \r\n

    {{ escola.material_didatico_apostilado == true ? \"Sim\" : \"Não\" }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n Não\r\n Sim\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Sistema\r\n

    Sistema de ensino

    \r\n \r\n

    \r\n {{ escola.qual_sistema_ensino }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Incluso\r\n

    Incluso na mensalidade

    \r\n \r\n

    {{ escola.material_didatico_incluso_mensalidade == true ? \"Sim\" : \"Não\" }}

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n Não\r\n Sim\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \"Geekie\"\r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Alimentação

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Almoço\"\r\n

    Almoço

    \r\n \r\n

    \r\n {{ escola.alimentacao_oferece_almoco }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Jantar\"\r\n

    Jantar

    \r\n \r\n

    \r\n {{ escola.alimentacao_oferece_jantar }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"Lanche\"\r\n

    Lanche

    \r\n \r\n

    \r\n {{ escola.alimentacao_oferece_lanche }}\r\n

    \r\n \r\n {{ this.messagePremium }}\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n {{ item }}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n

    Concorrentes

    \r\n
    \r\n\r\n \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n

    Avaliações

    \r\n
    \r\n \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n
    \r\n \r\n
    \r\n\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n Escola Parceira\r\n \r\n
    \r\n
    \r\n Escola Ativa\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n","cancel\r\n\r\n

    {{this.data.title}}

    \r\n

    {{this.data.description}}

    \r\n
      \r\n
    • {{item}}
    • \r\n
    \r\n
    \r\n","

    Motivo para bloqueio

    \r\n
    \r\n

    Qual o motivo para bloquear essa escola?

    \r\n \r\n Motivo\r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n","

    Solicitar Informação

    \r\n
    \r\n

    Faça o seu cadastro e avisaremos quando a escola completar os dados na página

    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n","

    Informação Solicitada

    \r\n
    \r\n

    Obrigada pelo interesse. Avisaremos assim que os dados desta escola forem atualizados.

    \r\n
    \r\n
    \r\n \r\n
    \r\n","import firebase from 'firebase/app';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { UrlFixerPipe } from '../../../pipe/url-fixer.pipe';\r\nimport { UserService } from '../../../service/user.service';\r\nimport { Escola, EscolaBeneficio } from '../../../service/Escola';\r\nimport { AnalyticsService } from '../../../service/analytics.service';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { LoginDialogComponent } from '../../../navigation/auth/login-dialog/login-dialog.component';\r\nimport { Component, ElementRef, Input, OnInit, AfterViewChecked, ViewChild, QueryList, ViewChildren, ChangeDetectorRef } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'school-detail-more-info',\r\n templateUrl: 'school-detail-more-info.html',\r\n styleUrls: ['./school-detail-more-info.scss'],\r\n})\r\nexport class SchoolDetailMoreInfoComponent implements OnInit, AfterViewChecked {\r\n @Input() escola: Escola;\r\n @Input() editing: boolean;\r\n @Input() escolaBeneficio: EscolaBeneficio;\r\n @Input() requestInfo: (fieldName: string, responseDialog: boolean) => void;\r\n\r\n addressInputInit = false;\r\n socialFormControl: any = {};\r\n escolaBeneficioSented = false;\r\n escolaBeneficioSaving = false;\r\n schoolContactSending = false;\r\n schoolContactSented = false;\r\n schoolSendTableLoading = false;\r\n shoolSendTableSented = false;\r\n requestTuitionLoading = false;\r\n requestTuitionSented = false;\r\n urlValidatePattern = '(https?://)([\\\\da-z.-]+)\\\\.([a-z.]{2,6})[/\\\\w .-]*/?';\r\n\r\n //@ViewChild('addressInput') addressInput: ElementRef;\r\n @ViewChildren('addressInput') addressInputs: QueryList;\r\n\r\n emailFormControl = new FormControl(null, Validators.email);\r\n siteFormControl = new FormControl(null, Validators.pattern(this.urlValidatePattern));\r\n\r\n mensalidadeControl = new FormControl(null, Validators.required);\r\n mensalidadeAnoControl = new FormControl();\r\n\r\n mensalidadeGroup = new FormGroup({\r\n mensalidade: this.mensalidadeControl,\r\n mensalidade_ano: this.mensalidadeAnoControl,\r\n });\r\n\r\n redeSocialArray: { value: string; title: string; pattern?: string; useMask?: string; placeholder?: string }[] = [\r\n {\r\n value: 'facebook',\r\n title: 'Facebook',\r\n pattern: '(https://www.facebook.com/)',\r\n placeholder: 'https://www.facebook.com/',\r\n },\r\n {\r\n value: 'youtube',\r\n title: 'YouTube',\r\n pattern: '(https://www.youtube.com/channel/)',\r\n placeholder: 'https://www.youtube.com/channel/',\r\n },\r\n {\r\n value: 'twitter',\r\n title: 'Twitter',\r\n pattern: '(https://twitter.com/)',\r\n placeholder: 'https://twitter.com/',\r\n },\r\n {\r\n value: 'instagram',\r\n title: 'Instagram',\r\n pattern: '(https://www.instagram.com/)',\r\n placeholder: 'https://www.instagram.com/',\r\n },\r\n {\r\n value: 'whatsapp',\r\n title: 'WhatsApp',\r\n useMask: '+00 (00) 00000-0000||+00 (00) 0000-0000',\r\n placeholder: 'ex. +55 (11) 91234-1234',\r\n },\r\n {\r\n value: 'linkedin',\r\n title: 'LinkedIn',\r\n pattern: '(https://www.linkedin.com/company/)',\r\n placeholder: 'https://www.linkedin.com/company/',\r\n },\r\n ];\r\n\r\n constructor(private matDialog: MatDialog, private urlFixer: UrlFixerPipe, public userService: UserService, private analytics: AnalyticsService, private changeDetectorRef: ChangeDetectorRef) {\r\n for (const item of this.redeSocialArray) {\r\n if (item.useMask == null) {\r\n this.socialFormControl[item.value] = new FormControl(null, Validators.pattern(this.urlValidatePattern));\r\n } else {\r\n this.socialFormControl[item.value] = new FormControl(null, Validators.pattern('.*'));\r\n }\r\n }\r\n\r\n this.mensalidadeControl.valueChanges.subscribe((value) => {\r\n if (value) {\r\n this.mensalidadeAnoControl.setValidators(Validators.required);\r\n } else {\r\n this.mensalidadeAnoControl.clearValidators();\r\n }\r\n this.mensalidadeAnoControl.updateValueAndValidity();\r\n });\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n ngAfterViewChecked() {\r\n if (!this.addressInputInit && this.addressInputs && this.addressInputs.length > 0) {\r\n this.initPlaceAutocomplete();\r\n }\r\n }\r\n\r\n initPlaceAutocomplete(): void {\r\n if (!this.addressInputInit) {\r\n const addressInput = this.addressInputs.first.nativeElement;\r\n\r\n const autocomplete = new google.maps.places.Autocomplete(addressInput, {\r\n componentRestrictions: { country: 'BR' },\r\n types: [], // 'establishment' / 'address' / 'geocode'\r\n });\r\n\r\n autocomplete.setFields(['geometry', 'formatted_address']);\r\n google.maps.event.addListener(autocomplete, 'place_changed', () => {\r\n this.placeSelected(autocomplete.getPlace());\r\n });\r\n this.addressInputInit = true;\r\n }\r\n }\r\n\r\n detectChanges(): void {\r\n this.changeDetectorRef.detectChanges();\r\n }\r\n\r\n placeSelected(event: google.maps.places.PlaceResult): void {\r\n // console.log(`event: ${JSON.stringify(event)}`);\r\n if (event) {\r\n // console.log('Event: ' + JSON.stringify(event));\r\n if (event.geometry) {\r\n // console.log('Location: ' + JSON.stringify(event.geometry.location));\r\n this.escola.endereco = event.formatted_address;\r\n this.escola.latitude = event.geometry.location.lat();\r\n this.escola.longitude = event.geometry.location.lng();\r\n } else {\r\n this.escola.endereco = event.name;\r\n this.escola.latitude = null;\r\n this.escola.longitude = null;\r\n }\r\n } else {\r\n console.log('invalid address');\r\n }\r\n }\r\n\r\n goToSite(): void {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.analytics.viewEscolaField(this.escola, 'site', this.userService.getCurrentUser());\r\n const url = this.urlFixer.transform(this.escola.site) + '?utm_source=schooladvisor';\r\n window.open(url, '_blank');\r\n // href=\"{{escola.site | urlFixer}}?utm_source=schooladvisor\" title=\"Site\" target=\"_blank\"\r\n }\r\n\r\n decimalParser(event: any): number {\r\n if (event !== null) {\r\n const c = event\r\n .toString()\r\n .replace(/[^\\d,]/g, '')\r\n .replace(',', '.');\r\n if (c.length > 0) {\r\n return c;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n calcMesalidadeMedia(): void {\r\n let c = 0;\r\n let sum = 0;\r\n if (this.escola.bercario_mensalidade_media) {\r\n c++;\r\n sum += +this.escola.bercario_mensalidade_media;\r\n }\r\n if (this.escola.infantil_mensalidade_media) {\r\n c++;\r\n sum += +this.escola.infantil_mensalidade_media;\r\n }\r\n if (this.escola.fundamental1_mensalidade_media) {\r\n c++;\r\n sum += +this.escola.fundamental1_mensalidade_media;\r\n }\r\n if (this.escola.fundamental2_mensalidade_media) {\r\n c++;\r\n sum += +this.escola.fundamental2_mensalidade_media;\r\n }\r\n if (this.escola.ensino_medio_mensalidade_media) {\r\n c++;\r\n sum += +this.escola.ensino_medio_mensalidade_media;\r\n }\r\n this.escola.mensalidade = Math.round((sum * 100) / c) / 100;\r\n }\r\n\r\n async sendBenefits(): Promise {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.escolaBeneficioSaving = true;\r\n\r\n const currentUser = firebase.auth().currentUser;\r\n const data = {\r\n uid: currentUser.uid,\r\n nome: currentUser.displayName,\r\n emailUser: currentUser.email,\r\n schoolName: this.escola.nome,\r\n emailTo: this.escola.email,\r\n tipo: this.escolaBeneficio.tipo,\r\n premium: this.escola.premium,\r\n };\r\n\r\n try {\r\n await firebase.functions().httpsCallable('escola_send_beneficios')(data);\r\n\r\n switch (this.escolaBeneficio.tipo) {\r\n case 0:\r\n this.analytics.interesseEscolaField(this.escola, 'escola', this.userService.getCurrentUser());\r\n break;\r\n case 1:\r\n this.analytics.interesseEscolaField(this.escola, 'bolsa', this.userService.getCurrentUser());\r\n break;\r\n\r\n case 2:\r\n this.analytics.interesseEscolaField(this.escola, 'benefício', this.userService.getCurrentUser());\r\n break;\r\n }\r\n\r\n this.escolaBeneficioSaving = false;\r\n this.escolaBeneficioSented = true;\r\n } catch (error) {\r\n this.escolaBeneficioSaving = false;\r\n this.escolaBeneficioSented = false;\r\n }\r\n }\r\n\r\n async sendContact(): Promise {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.schoolContactSending = true;\r\n\r\n const currentUser = firebase.auth().currentUser;\r\n const data = {\r\n nome: currentUser.displayName,\r\n emailUser: currentUser.email,\r\n schoolName: this.escola.nome,\r\n emailTo: this.escola.email,\r\n tipo: 0,\r\n premium: this.escola.premium,\r\n };\r\n\r\n try {\r\n await firebase.functions().httpsCallable('escola_send_beneficios')(data);\r\n this.analytics.interesseEscolaField(this.escola, 'escola', this.userService.getCurrentUser());\r\n\r\n this.schoolContactSending = false;\r\n this.schoolContactSented = true;\r\n } catch (error) {\r\n this.schoolContactSending = false;\r\n this.schoolContactSented = false;\r\n }\r\n }\r\n\r\n async sendSchoolTable(): Promise {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.schoolSendTableLoading = true;\r\n\r\n const currentUser = firebase.auth().currentUser;\r\n\r\n const data = {\r\n nome: currentUser.displayName,\r\n emailUser: currentUser.email,\r\n schoolName: this.escola.nome,\r\n emailTo: this.escola.email,\r\n premium: this.escola.premium,\r\n };\r\n\r\n try {\r\n await firebase.functions().httpsCallable('escola_send_table')(data);\r\n this.analytics.interesseEscolaField(this.escola, 'mensalidade', this.userService.getCurrentUser());\r\n\r\n this.schoolSendTableLoading = false;\r\n this.shoolSendTableSented = true;\r\n } catch (error) {\r\n this.schoolSendTableLoading = false;\r\n this.shoolSendTableSented = false;\r\n }\r\n }\r\n\r\n async sendRequestTuition(): Promise {\r\n const user = this.userService.getCurrentUser();\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent, { id: 'loginDialog' });\r\n return;\r\n }\r\n\r\n this.requestTuitionLoading = true;\r\n\r\n const currentUser = firebase.auth().currentUser;\r\n\r\n const data = {\r\n nome: currentUser.displayName,\r\n emailUser: currentUser.email,\r\n schoolName: this.escola.nome,\r\n emailTo: this.escola.email,\r\n premium: this.escola.premium,\r\n };\r\n\r\n try {\r\n await firebase.functions().httpsCallable('escola_request_tuition')(data);\r\n this.requestInfo('mensalidade', false);\r\n\r\n this.requestTuitionLoading = false;\r\n this.requestTuitionSented = true;\r\n } catch (error) {\r\n this.requestTuitionLoading = false;\r\n this.requestTuitionSented = false;\r\n }\r\n }\r\n}\r\n","
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Contato

    \r\n
    \r\n

    {{escola.endereco}}

    \r\n

    \r\n \r\n \r\n Solicitar site\r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n

    \r\n \"beneficio\"\r\n Esta escola oferece bolsa\r\n Esta escola oferece benefício\r\n

    \r\n \r\n Até {{escolaBeneficio.desconto}}%\r\n \r\n\r\n \r\n\r\n
    \r\n \r\n Aguarde o contato da escola\r\n \r\n
    \r\n
    \r\n Clique em \"Tenho interesse\" para receber, da escola, os pré-requisitos da bolsa\r\n
    \r\n
    \r\n \r\n {{escolaBeneficio.beneficio}}\r\n \r\n\r\n \r\n\r\n
    \r\n \r\n Aguarde o contato da escola\r\n \r\n
    \r\n\r\n
    \r\n Clique em \"Tenho interesse\" para receber, da escola, os pré-requisitos do benefício\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Mensalidade Média

    \r\n

    \r\n \r\n

    \r\n {{escola.mensalidade | currency:'BRL':'symbol':'1.2-2': 'pt-BR'}}\r\n {{escola.data_mensalidade_ano ? ' (referente a ' + escola.data_mensalidade_ano + ')' : ''}}\r\n
    \r\n
    \r\n \r\n
    \r\n Clique em \"Receber tabela\" para receber, da escola, a tabela completa de valores\r\n \r\n Aguarde o contato da escola\r\n Esta escola não disponibiliza a tabela de valores\r\n
    \r\n \r\n \r\n Solicitar Mensalidade\r\n \r\n

    \r\n Aguarde o contato da escola\r\n Já solicitamos à escola que atualize esta informação\r\n

    \r\n
    \r\n

    \r\n
    \r\n\r\n
    \r\n
    \r\n

    Redes Sociais

    \r\n \r\n \"Facebook\"\r\n \r\n \r\n \"YouTube\"\r\n \r\n \r\n \"Twitter\"\r\n \r\n \r\n \"Instagram\"\r\n \r\n \r\n \"Linkedin\"\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n \r\n
    \r\n Clique para receber, da escola, mais informações\r\n
    \r\n
    \r\n
    \r\n

    Entre em contato com a escola:

    \r\n

    Aguarde o contato da escola ou, se preferir entre em contato:

    \r\n

    \r\n {{(escola.fone?.length > 10)? (escola.fone | mask: '(00) 00000-0000') : (escola.fone | mask: '(00) 0000-0000')}} \r\n

    \r\n

    \r\n {{escola.email}} \r\n

    \r\n
    \r\n \r\n \"WhatsApp\"\r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n
    \r\n

    Contato

    \r\n
    \r\n \r\n \r\n \r\n

    \r\n \r\n \r\n \r\n

    \r\n

    \r\n \r\n \r\n e-mail inválido \r\n \r\n

    \r\n

    \r\n \r\n Site\r\n .com.br\" [(ngModel)]=\"escola.site\" [formControl]=\"siteFormControl\" />\r\n Site/URL inválido (ex. https://site.com.br) \r\n \r\n

    \r\n
    \r\n
    \r\n
    \r\n

    Mensalidade Média

    \r\n
    \r\n \r\n Valor\r\n \r\n Mensalidade média é obrigatório \r\n \r\n \r\n \r\n A partir do ano de\r\n \r\n \r\n
    \r\n Ano da mensalidade é obrigatório \r\n\r\n
    \r\n \r\n Mostrar mensalidade\r\n \r\n Sim\r\n Não\r\n \r\n \r\n
    \r\n\r\n \r\n
    \r\n

    Editar benefícios

    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n Porcentagem\r\n \r\n %\r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n Nome do Benefício\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Redes Sociais

    \r\n \r\n {{item.title}}\r\n \r\n Site/URL inválido (ex. {{item.placeholder}}) \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import {Input,\r\n OnInit,\r\n Component, \r\n ViewChild,\r\n ElementRef,\r\n } from '@angular/core'\r\nimport * as clone from 'clone'\r\nimport {Observable} from 'rxjs'\r\nimport firebase from 'firebase/app'\r\nimport {FormControl} from '@angular/forms'\r\nimport {map, startWith} from 'rxjs/operators'\r\nimport {Escola, tags} from '../../../service/Escola'\r\nimport {MatSelectChange} from \"@angular/material/select\"\r\nimport {MatChipInputEvent} from '@angular/material/chips'\r\nimport {UserService} from '../../../service/user.service'\r\nimport {MatAutocompleteSelectedEvent, MatAutocompleteTrigger} from '@angular/material/autocomplete'\r\nimport * as moment from 'moment'\r\n \r\n\r\n\r\n@Component({\r\n selector: 'school-qualifications',\r\n templateUrl: 'school-qualifications.html',\r\n styleUrls: ['./school-qualifications.scss']\r\n\r\n })\r\nexport class SchoolQualificationsComponent implements OnInit {\r\n\r\n @Input() escola: Escola\r\n @Input() editing: boolean\r\n @Input() familyChoice: boolean\r\n\r\n @ViewChild(MatAutocompleteTrigger) autoTrigger: MatAutocompleteTrigger\r\n @ViewChild('tagsInput', {static: false}) tagsInput: ElementRef\r\n \r\n familyReviewTags: string[] = []\r\n\r\n maxAttributos = 3\r\n tagControl = new FormControl()\r\n filteredTags: Observable\r\n\r\n set humanPrevencaoAcidentesValidate(e) {\r\n this.escola.prevencao_acidentes_validade = e;\r\n }\r\n\r\n get humanPrevencaoAcidentesValidate() {\r\n return this.escola.prevencao_acidentes_validade?.substring(0, 10)\r\n }\r\n\r\n set humanDiversidadeValidade(e) {\r\n this.escola.diversidade_validade = e;\r\n }\r\n\r\n get humanDiversidadeValidade() {\r\n return this.escola.diversidade_validade?.substring(0, 10)\r\n }\r\n\r\n constructor(public userService: UserService) {\r\n this.filteredTags = this.tagControl.valueChanges.pipe(\r\n startWith(null),\r\n map((item: string | null) => this._filterTags(item))\r\n );\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.escola.tags == null) {\r\n this.escola.tags = {};\r\n this.escola.tags[\"school\"] = [];\r\n }\r\n\r\n if (Array.isArray(this.escola.tags)) {\r\n const current : any = this.escola.tags;\r\n this.escola.tags = {};\r\n this.escola.tags[\"school\"] = current;\r\n }\r\n\r\n if (!(\"family\" in this.escola.tags)\r\n || this.escola.tags[\"family\"] == null\r\n || this.escola.tags[\"family\"].length == 0) {\r\n this.loadFamilyReviewTags()\r\n }\r\n }\r\n\r\n async loadFamilyReviewTags(): Promise {\r\n const result = await firebase.functions().httpsCallable('tags_review_escola')\r\n ({cod_escola: this.escola.codigo})\r\n\r\n const tagsList = result?.data.map((item: any) => item.tags).flat()\r\n\r\n const frequency: { [tag: string]: number } = {};\r\n tagsList.forEach((tag) => {\r\n frequency[tag] = (frequency[tag] || 0) + 1;\r\n });\r\n\r\n const orderFrequency = Object.keys(frequency).sort((a, b) => {\r\n return frequency[b] - frequency[a];\r\n });\r\n\r\n this.familyReviewTags = orderFrequency.slice(0, 3)\r\n }\r\n\r\n private _filterTags(value: string): string[] {\r\n const possibleValues = clone(tags);\r\n if (this.escola?.tags) {\r\n /*for (const selectedItem of this.escola.tags) {\r\n const index = possibleValues.indexOf(selectedItem);\r\n if (index >= 0) {\r\n possibleValues.splice(index, 1);\r\n }\r\n }*/\r\n }\r\n \r\n if (value == null) {\r\n return possibleValues;\r\n }\r\n \r\n const filterValue = value.toLowerCase();\r\n \r\n return possibleValues.filter(item => item.toLowerCase().indexOf(filterValue) === 0);\r\n }\r\n\r\n hasTags(type: string): boolean {\r\n if (Array.isArray(this.escola.tags)) {\r\n const current : any = this.escola.tags;\r\n this.escola.tags = {};\r\n this.escola.tags[\"school\"] = current;\r\n }\r\n\r\n if (type in this.escola.tags &&\r\n this.escola.tags[type].length > 0) {\r\n return true;\r\n }\r\n\r\n return (type === \"family\" && this.familyReviewTags.length > 0);\r\n }\r\n\r\n getTags(type: string): string[] {\r\n if (Array.isArray(this.escola.tags)) {\r\n const current : any = this.escola.tags;\r\n this.escola.tags = {};\r\n this.escola.tags[\"school\"] = current;\r\n } \r\n\r\n if (!(type in this.escola.tags))\r\n this.escola.tags[type] = [];\r\n\r\n if (!this.editing && \r\n type === \"family\" \r\n && this.escola.tags[type].length == 0)\r\n return this.familyReviewTags;\r\n\r\n return this.escola.tags[type];\r\n }\r\n\r\n removeTag(type: string, tag: string): void {\r\n const index = this.escola.tags[type].indexOf(tag);\r\n \r\n if (index >= 0) {\r\n this.escola.tags[type].splice(index, 1);\r\n }\r\n }\r\n\r\n addTag(type: string, event: MatChipInputEvent): void {\r\n const input = event.input;\r\n const value = event.value;\r\n \r\n for (const item of this.escola.tags[type]) {\r\n if (item === value) {\r\n return;\r\n }\r\n }\r\n \r\n // Add our tag\r\n if ((value || '').trim()) {\r\n this.escola.tags[type].push(value.trim());\r\n }\r\n \r\n // Reset the input value\r\n if (input) {\r\n input.value = '';\r\n }\r\n \r\n this.tagControl.setValue(null);\r\n }\r\n\r\n selectedTag(event: MatAutocompleteSelectedEvent): void {\r\n if (!this.escola.tags)\r\n this.escola.tags = {};\r\n \r\n //this.escola.tags.push(event.option.viewValue);\r\n this.tagsInput.nativeElement.value = null;\r\n this.tagControl.setValue('');\r\n \r\n requestAnimationFrame(() => {\r\n this.autoTrigger.openPanel();\r\n });\r\n }\r\n\r\n selectedTagOption(type: string, event: MatSelectChange): void {\r\n if (!this.escola.tags)\r\n this.escola.tags = {};\r\n\r\n if (!this.escola.tags[type])\r\n this.escola.tags[type] = [];\r\n \r\n if (this.escola.tags[type].indexOf(event.value) >= 0)\r\n return;\r\n \r\n this.escola.tags[type].push(event.value);\r\n this.tagsInput.nativeElement.value = null;\r\n this.tagControl.setValue('');\r\n }\r\n\r\n showIIESA(): boolean {\r\n const icdsaIndex = this.escola.indices['IIESA']\r\n return this.showIndice(icdsaIndex)\r\n }\r\n\r\n showICDSA(): boolean {\r\n const icdsaIndex = this.escola.indices['ICDSA']\r\n return this.showIndice(icdsaIndex)\r\n }\r\n\r\n showSelo(value: boolean, date: string) {\r\n return value && (!date || moment(date).isAfter(moment()))\r\n }\r\n\r\n showIndice(indexValue: string) {\r\n indexValue = indexValue?.toString().trim().toUpperCase() ?? \"\";\r\n\r\n if (!isNaN(Number(indexValue)))\r\n return parseFloat(indexValue) >= 75;\r\n else\r\n return indexValue === \"A\" || indexValue === \"A+\";\r\n }\r\n\r\n decimalParser(event: any): number {\r\n if (event !== null) {\r\n const c = event.toString().replace(/[^\\d,]/g, '').replace(',', '.');\r\n if (c.length > 0) {\r\n return c;\r\n }\r\n }\r\n return null;\r\n }\r\n}","
    \r\n \r\n \r\n

    Reconhecimentos

    \r\n

    Saiba mais sobre reconhecimentos

    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n

    Qualificações

    \r\n

    Saiba mais sobre qualificações

    \r\n\r\n
    \r\n \r\n
    \r\n \"Selo\r\n
    \r\n
    \r\n \r\n
    \r\n \"Selo\r\n
    \r\n
    \r\n \r\n
    \r\n \"Selo\r\n
    \r\n
    \r\n
    \r\n\r\n

    Principais características da escola

    \r\n
    \r\n
    \r\n

    Na visão da escola, a escola se destaca por

    \r\n
    \r\n
    \r\n {{item}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Na visão das famílias, a escola se destaca por

    \r\n
    \r\n
    \r\n {{item}}\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    Na visão dos professores, a escola se destaca por

    \r\n
    \r\n
    \r\n {{item}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n

    Na visão dos estudantes, a escola se destaca por

    \r\n
    \r\n
    \r\n {{item}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n

    Reconhecimentos e Qualificações

    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n

    \r\n \"Selo\r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n

    \r\n
    \r\n
    \r\n

    \r\n \"Selo\r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n

    \r\n
    \r\n
    \r\n

    \r\n \"Selo\r\n \r\n
    \r\n \r\n
    \r\n

    \r\n
    \r\n
    \r\n
    \r\n\r\n\r\n

    Principais características SchoolAdvisor

    \r\n
    \r\n
    \r\n

    Na visão da escola, a escola se destaca por

    \r\n \r\n \r\n \r\n {{item}}\r\n cancel\r\n \r\n \r\n 0\">Escolha até {{maxAttributos}} Atributos\r\n \r\n \r\n {{item}}\r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n

    Na visão da família, a escola se destaca por

    \r\n \r\n \r\n \r\n {{item}}\r\n cancel\r\n \r\n \r\n 0\">Escolha até {{maxAttributos}} Atributos\r\n \r\n \r\n {{item}}\r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n

    Na visão da professores, a escola se destaca por

    \r\n \r\n \r\n \r\n {{item}}\r\n cancel\r\n \r\n \r\n 0\">Escolha até {{maxAttributos}} Atributos\r\n \r\n \r\n {{item}}\r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n

    Na visão da estudantes, a escola se destaca por

    \r\n \r\n \r\n \r\n {{item}}\r\n cancel\r\n \r\n \r\n 0\">Escolha até {{maxAttributos}} Atributos\r\n \r\n \r\n {{item}}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    ","import {Component, Input, OnInit, ViewChild} from '@angular/core';\r\nimport {Parceiro, ParceiroLista} from '../../service/Parceiro';\r\nimport {Router} from '@angular/router';\r\nimport {UserService} from '../../service/user.service';\r\nimport firebase from 'firebase/app';\r\nimport {debounceTime, switchMap, tap} from 'rxjs/operators';\r\nimport {FormControl} from '@angular/forms';\r\nimport {SlickCarouselComponent} from 'ngx-slick-carousel';\r\nimport {ParceiroService} from '../../service/parceiro.service';\r\nimport * as clone from 'clone';\r\nimport {DefaultSliderConfig} from '../../navigation/Slider';\r\n\r\n@Component({\r\n selector: 'app-banner-parceiro',\r\n templateUrl: './banner-parceiro.component.html',\r\n styleUrls: ['./banner-parceiro.component.scss']\r\n})\r\nexport class BannerParceiroComponent implements OnInit {\r\n\r\n @Input() parceiroLista: ParceiroLista;\r\n @Input() readonly = false;\r\n parceiroFiltered: Parceiro[] | string[] = [];\r\n sliderConfig = DefaultSliderConfig;\r\n editing = false;\r\n canEdit = false;\r\n saving = false;\r\n isLoading = false;\r\n selectedParceiro: Parceiro = null;\r\n parceiroFormControl = new FormControl();\r\n loadingMessage: string = null;\r\n @ViewChild('slickModal', {static: false}) slickCarouselComponent: SlickCarouselComponent;\r\n\r\n constructor(private parceiroService: ParceiroService,\r\n private route: Router,\r\n public userService: UserService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.parceiroFormControl.valueChanges.pipe(\r\n tap((value) => {\r\n this.parceiroService.nome.setValue(value);\r\n }),\r\n debounceTime(1500),\r\n switchMap(value => {\r\n // the value can be a string or a Escola type\r\n if (typeof value === 'string') {\r\n this.selectedParceiro = null;\r\n if (value.length < 3) {\r\n this.loadingMessage = `Digite ao menos 3 letras para pesquisar.`;\r\n } else {\r\n this.isLoading = true;\r\n const criteria = {\r\n nome: value\r\n };\r\n this.loadingMessage = `Procurando parceiros com nome '${value}'`;\r\n firebase.functions().httpsCallable('nome_parceiro')(criteria).then(value1 => {\r\n if (value1.data?.length > 0) {\r\n this.parceiroFiltered = value1.data;\r\n } else {\r\n this.parceiroFiltered = [];\r\n }\r\n this.isLoading = false;\r\n });\r\n }\r\n } else {\r\n this.isLoading = false;\r\n this.selectedParceiro = value;\r\n // Traga somente a escola marcada\r\n this.parceiroFiltered = [value];\r\n }\r\n return [];\r\n })\r\n ).subscribe();\r\n\r\n if (this.parceiroLista?.cod_escola != null) {\r\n this.refresh();\r\n }\r\n }\r\n\r\n private async refresh(): Promise {\r\n this.parceiroLista.parceiro_lista = null;\r\n firebase.functions().httpsCallable('lista_parceiro')(this.parceiroLista)\r\n .then(value => {\r\n this.parceiroLista = value.data[0];\r\n });\r\n }\r\n\r\n map(): void {\r\n this.parceiroService.listas.setValue([this.parceiroLista.nome_lista]);\r\n this.parceiroService.filterOption.setValue('listaMap');\r\n this.route.navigate(['mapa']);\r\n }\r\n\r\n removeLista(): void {\r\n this.parceiroLista.parceiro_lista = [];\r\n firebase.functions().httpsCallable('set_lista_parceiro')(this.parceiroLista)\r\n .then(value => {\r\n this.editing = false;\r\n this.refresh().then();\r\n });\r\n }\r\n\r\n addParceiro(parceiro: Parceiro): void {\r\n // console.log(`parceiroLista: ${JSON.stringify(this.parceiroLista)}`);\r\n // console.log(`add parceiro: ${JSON.stringify(parceiro)}`);\r\n if (this.parceiroLista.parceiro_lista == null) {\r\n this.parceiroLista.parceiro_lista = [];\r\n }\r\n this.parceiroLista.parceiro_lista.push(parceiro);\r\n if (this.slickCarouselComponent) {\r\n this.slickCarouselComponent.slickGoTo(this.slickCarouselComponent.slides.length);\r\n }\r\n // console.log(`parceiro_lista: ${JSON.stringify(this.parceiroLista.parceiro_lista)}`);\r\n }\r\n\r\n displayParceiro(item: any): string {\r\n if (item == null) {\r\n return null;\r\n } else if (item.nome) {\r\n return item.nome;\r\n } else {\r\n return item;\r\n }\r\n }\r\n\r\n removeParceiro(parceiro: Parceiro): void {\r\n this.parceiroLista.parceiro_lista.splice(this.parceiroLista.parceiro_lista.indexOf(parceiro), 1);\r\n }\r\n\r\n saveLista(): void {\r\n this.saving = true;\r\n console.log(`this.parceiroLista: ${JSON.stringify(this.parceiroLista)}`);\r\n firebase.functions().httpsCallable('set_lista_parceiro')(this.parceiroLista)\r\n .then(value => {\r\n this.saving = false;\r\n this.editing = false;\r\n this.refresh().then();\r\n });\r\n }\r\n\r\n cancelEdit(): void {\r\n this.editing = false;\r\n this.refresh().then();\r\n }\r\n\r\n startEdit(): void {\r\n this.editing = true;\r\n this.parceiroLista.nome_lista_original = this.parceiroLista.nome_lista;\r\n }\r\n\r\n move(fromIndex: number, toIndex: number): void {\r\n if (fromIndex >= 0 && toIndex >= 0) {\r\n const cloneArray = clone(this.parceiroLista.parceiro_lista);\r\n const escola = cloneArray[fromIndex];\r\n cloneArray.splice(fromIndex, 1);\r\n cloneArray.splice(toIndex, 0, escola);\r\n this.parceiroLista.parceiro_lista = cloneArray;\r\n }\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n

    {{this.parceiroLista.nome_lista}}

    \r\n \r\n \r\n Nome da Lista\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Parceiro\r\n \r\n \r\n\r\n \r\n \r\n \r\n {{this.loadingMessage}}\r\n \r\n \r\n \r\n
    \r\n search\r\n {{parceiro}}\r\n
    \r\n
    \r\n
    \r\n

    {{parceiro.nome}}

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n \"Logo\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    0)\"\r\n style=\"display: flex; flex-direction: row-reverse; padding-bottom: 5px; margin-bottom: 25px; border-bottom: 1px solid #dadada;\">\r\n \r\n
    \r\n
    \r\n
    \r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {Colecao} from '../../service/Colecao';\r\nimport firebase from 'firebase';\r\nimport {UserService} from '../../service/user.service';\r\nimport {Diretorio} from '../../service/Diretorio';\r\nimport {AnalyticsService} from '../../service/analytics.service';\r\nimport {FormControl} from '@angular/forms';\r\nimport {debounceTime, switchMap} from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-colecao',\r\n templateUrl: './colecao.component.html',\r\n styleUrls: ['./colecao.component.css']\r\n})\r\nexport class ColecaoComponent implements OnInit {\r\n\r\n @Input() _colecao: Colecao;\r\n diretorios: Diretorio[];\r\n diretorioControl = new FormControl();\r\n @Input() editingMode = false;\r\n loading = false;\r\n loadingDiretorioMessage: string = null;\r\n isLoadingDiretorio = false;\r\n\r\n constructor(\r\n public userService: UserService,\r\n public analytics: AnalyticsService,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.diretorioControl.valueChanges.pipe(\r\n debounceTime(1500),\r\n switchMap(value => {\r\n // the value can be a string or a Escola type\r\n if (value.length < 3) {\r\n this.loadingDiretorioMessage = `Digite ao menos 3 letras para pesquisar.`;\r\n } else {\r\n this.isLoadingDiretorio = true;\r\n this.loadingDiretorioMessage = `Procurando diretórios com nome '${value}'`;\r\n let nome: string;\r\n if (typeof value === 'string') {\r\n nome = value;\r\n } else {\r\n nome = value.nome;\r\n }\r\n firebase.functions().httpsCallable('diretorio')({nome}).then(result => {\r\n this.isLoadingDiretorio = false;\r\n const diretorioFiltered: Diretorio[] = result.data;\r\n this.diretorios = [];\r\n if (diretorioFiltered?.length > 0) {\r\n diretorioFiltered.forEach(resultItem => {\r\n let duplicate = false;\r\n this.colecao.diretorio.forEach(currentDiretorioList => {\r\n if (resultItem.codigo === currentDiretorioList.codigo) {\r\n duplicate = true;\r\n }\r\n });\r\n if (!duplicate) {\r\n this.diretorios.push(resultItem);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n return [];\r\n })\r\n ).subscribe();\r\n }\r\n\r\n set colecao(colecao: Colecao) {\r\n this._colecao = colecao;\r\n }\r\n\r\n get colecao(): Colecao {\r\n return this._colecao;\r\n }\r\n\r\n displayDiretorio(item: any): string {\r\n if (item == null) {\r\n return null;\r\n } else if (item.nome) {\r\n return item.nome;\r\n } else {\r\n return item;\r\n }\r\n }\r\n\r\n loadDiretorios(cod_colecao: number): void {\r\n this.loading = true;\r\n firebase.functions().httpsCallable('diretorio')({cod_colecao}).then(value => {\r\n this.loading = false;\r\n this.colecao.diretorio = value.data;\r\n });\r\n }\r\n\r\n}\r\n","
    \r\n

    {{this.colecao.nome}}

    \r\n

    {{this.colecao.descricao}}

    \r\n

    \r\n \r\n
    \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n","import {Component, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core';\r\nimport {Escola} from '../../service/Escola';\r\nimport {FormControl} from '@angular/forms';\r\nimport {EscolaService} from '../../service/escola.service';\r\nimport {Router} from '@angular/router';\r\nimport {UserService} from '../../service/user.service';\r\nimport {AnalyticsService} from '../../service/analytics.service';\r\nimport {debounceTime, switchMap, tap} from 'rxjs/operators';\r\nimport firebase from 'firebase';\r\nimport {Diretorio} from '../../service/Diretorio';\r\n// import Swiper core and required modules\r\nimport SwiperCore, {Lazy, Navigation, Pagination, SwiperOptions} from 'swiper';\r\nimport {SwiperComponent} from 'swiper/angular';\r\nimport {SwiperEvents} from 'swiper/types';\r\nimport analytics = firebase.analytics;\r\n\r\nSwiperCore.use([Pagination, Lazy, Navigation]);\r\n\r\n@Component({\r\n selector: 'app-diretorio',\r\n templateUrl: './diretorio.component.html',\r\n styleUrls: ['./diretorio.component.scss']\r\n})\r\nexport class DiretorioComponent implements OnInit {\r\n\r\n @Input() diretorio: Diretorio;\r\n @Input() readonly = false;\r\n @ViewChild('swiperComponent', {static: false}) swiperComponent: SwiperComponent;\r\n escolaFiltered: Escola[] | string[] = [];\r\n width: number;\r\n saving = false;\r\n loadingEscola = false;\r\n loadingEscolaFilter = false;\r\n selectedEscola: Escola = null;\r\n escolaFormControl = new FormControl();\r\n loadingMessage: string = null;\r\n config: SwiperOptions = {\r\n breakpoints: {\r\n 1600: {\r\n slidesPerView: 4,\r\n slidesPerGroup: 4,\r\n spaceBetween: 10,\r\n },\r\n 1280: {\r\n slidesPerView: 3,\r\n slidesPerGroup: 3,\r\n spaceBetween: 10,\r\n },\r\n 960: {\r\n slidesPerView: 2,\r\n slidesPerGroup: 2,\r\n spaceBetween: 5,\r\n },\r\n 600: {\r\n slidesPerView: 1,\r\n slidesPerGroup: 1,\r\n spaceBetween: 5,\r\n pagination: false\r\n },\r\n 1: {\r\n slidesPerView: 1,\r\n slidesPerGroup: 1,\r\n spaceBetween: 5,\r\n pagination: false\r\n }\r\n },\r\n autoHeight: true,\r\n lazy: true,\r\n navigation: false,\r\n slidesPerView: 5,\r\n spaceBetween: 10,\r\n pagination: {\r\n clickable: true,\r\n }\r\n };\r\n\r\n constructor(private escolaService: EscolaService,\r\n private route: Router,\r\n public userService: UserService,\r\n private analytics: AnalyticsService) {\r\n // userService.permissionEvent.subscribe(value => {\r\n // this.canEdit = (userService.master === true);\r\n // // userService.master && !this.editing && !this.readonly\r\n // });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.escolaFormControl.valueChanges.pipe(\r\n tap((value) => {\r\n this.escolaService.nome.setValue(value);\r\n }),\r\n debounceTime(1500),\r\n switchMap(value => {\r\n // the value can be a string or a Escola type\r\n if (typeof value === 'string') {\r\n this.selectedEscola = null;\r\n if (value.length < 3) {\r\n this.loadingMessage = `Digite ao menos 3 letras para pesquisar.`;\r\n } else {\r\n this.loadingEscolaFilter = true;\r\n const criteria = {\r\n nome: value\r\n };\r\n this.loadingMessage = `Procurando escolas com nome '${value}'`;\r\n firebase.functions().httpsCallable('nome_escola')(criteria).then(value1 => {\r\n if (value1.data?.length > 0) {\r\n this.escolaFiltered = value1.data;\r\n } else {\r\n this.escolaFiltered = [];\r\n }\r\n this.loadingEscolaFilter = false;\r\n });\r\n }\r\n } else {\r\n this.loadingEscolaFilter = false;\r\n this.selectedEscola = value;\r\n // Traga somente a escola marcada\r\n this.escolaFiltered = [value];\r\n }\r\n return [];\r\n })\r\n ).subscribe();\r\n\r\n // If escola array is diferente from [] then make a refresh\r\n if (this.diretorio.escola == null) {\r\n this.loadEscola();\r\n }\r\n }\r\n\r\n private async refresh(codDiretorio: number = null): Promise {\r\n let codigo = codDiretorio;\r\n if (codigo == null) {\r\n codigo = this.diretorio?.codigo;\r\n }\r\n return firebase.functions().httpsCallable('diretorio')({codigo})\r\n .then(value => {\r\n this.diretorio = value.data[0];\r\n\r\n if (this.diretorio.escola == null) {\r\n this.loadEscola();\r\n }\r\n });\r\n }\r\n\r\n private async loadEscola(): Promise {\r\n this.loadingEscola = true;\r\n return firebase.functions().httpsCallable('diretorio_escola')({cod_diretorio: this.diretorio.codigo})\r\n .then(value => {\r\n this.loadingEscola = false;\r\n this.diretorio.escola = value.data; // It could be []\r\n });\r\n }\r\n\r\n addEscola(escola: Escola): void {\r\n this.diretorio.escola.push(escola);\r\n this.swiperComponent.swiperRef.slideTo(this.diretorio.escola.length);\r\n }\r\n\r\n displayEscola(item: any): string {\r\n if (item == null) {\r\n return null;\r\n } else if (item.nome) {\r\n return item.nome;\r\n } else {\r\n return item;\r\n }\r\n }\r\n\r\n removeEscola(escola: Escola): void {\r\n this.diretorio.escola = this.diretorio.escola.filter(value => value.codigo !== escola.codigo);\r\n }\r\n\r\n map(): void {\r\n this.escolaService.listas.setValue([this.diretorio.nome]);\r\n this.escolaService.filterOption.setValue('listaMap');\r\n this.route.navigate(['mapa']);\r\n }\r\n\r\n shortNivelEnsino(nivel: string): string {\r\n switch (nivel) {\r\n case 'Fundamental I':\r\n return 'Fund I';\r\n case 'Fundamental II':\r\n return 'Fund II';\r\n default:\r\n return nivel;\r\n }\r\n }\r\n\r\n previousClick(): void {\r\n this.swiperComponent.swiperRef.slidePrev();\r\n }\r\n\r\n nextClick(): void {\r\n this.swiperComponent.swiperRef.slideNext();\r\n }\r\n\r\n clickOEBI() {\r\n this.analytics.linkOEBI();\r\n window.open('https://www.oebi.com.br/quero-ser-um-associado?utm_source=schooladvisor', '_blank');\r\n }\r\n}\r\n","
    \r\n \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n Concorrente\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    0\">\r\n \r\n
    \r\n
    \r\n
    \r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-geral',\r\n templateUrl: './geral.component.html',\r\n styleUrls: ['./geral.component.css']\r\n})\r\nexport class GeralComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n \r\n
    \r\n \r\n Olá, School Advisor\r\n \r\n\r\n \r\n \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n

    Geral

    \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n Formatos: JPG, JPEG, PNG, SVG.\r\n Tamanho máximo: 2mb.\r\n
    \r\n
    \r\n
    \r\n \"Preview\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n\r\n \r\n
    \r\n \r\n
    \r\n Cancelar\r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n","import {Component, Input, OnInit, ViewEncapsulation} from '@angular/core';\r\nimport {DomSanitizer} from '@angular/platform-browser';\r\nimport {EscolaService} from '../../service/escola.service';\r\nimport {Escola} from '../../service/Escola';\r\nimport {AnalyticsService} from '../../service/analytics.service';\r\n\r\n@Component({\r\n selector: 'app-escola-card',\r\n templateUrl: './escola-card.component.html',\r\n styleUrls: ['./escola-card.component.scss']\r\n})\r\nexport class EscolaCardComponent implements OnInit {\r\n\r\n @Input() imageSrc: string;\r\n @Input() escola: Escola;\r\n logo;\r\n escolaService = EscolaService;\r\n\r\n constructor(private sanitizer: DomSanitizer, public analytics: AnalyticsService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.escola.logo_escola) {\r\n this.logo = this.sanitizer.bypassSecurityTrustResourceUrl(\r\n `data:image/png;base64, ${this.escola.logo_escola}`);\r\n } else {\r\n this.logo = './images/icone-site-150x150.png';\r\n }\r\n }\r\n\r\n}\r\n","\r\n
    \r\n \r\n
    \r\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core';\r\nimport firebase from 'firebase/app';\r\nimport {Observable, of} from 'rxjs';\r\nimport {Escola} from '../../service/Escola';\r\nimport {tap} from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-escola-competitors',\r\n templateUrl: './escola-competitors.component.html',\r\n styleUrls: ['./escola-competitors.component.css']\r\n})\r\nexport class EscolaCompetitorsComponent implements OnInit, AfterViewInit {\r\n\r\n _escola: Escola;\r\n newCompetitor: number;\r\n competitorsList: number[] = [];\r\n @Input() editing = false;\r\n @Output() clickMessageLink = new EventEmitter();\r\n @ViewChild('itemTemplate') itemTemplate;\r\n\r\n constructor() {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n get escola(): Escola {\r\n return this._escola;\r\n }\r\n\r\n @Input() set escola(value: Escola) {\r\n this._escola = value;\r\n this.loadCompetitors();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n }\r\n\r\n public async loadCompetitors(): Promise {\r\n const value = await firebase.functions().httpsCallable('escola_competitors')({cod_escola: this.escola.codigo});\r\n\r\n this.competitorsList = value.data[0].lista_concorrentes;\r\n\r\n if (this.competitorsList == null)\r\n this.competitorsList = [];\r\n }\r\n\r\n public async saveCompetitors(): Promise {\r\n const data = {\r\n cod_escola: this.escola.codigo,\r\n lista_concorrentes: this.competitorsList\r\n };\r\n\r\n console.log('data', data);\r\n\r\n await firebase.functions().httpsCallable('escola_competitors_update')(data);\r\n }\r\n\r\n removeCompetitor(id: number): void {\r\n const index = this.competitorsList.indexOf(id);\r\n\r\n if (index >= 0) {\r\n this.competitorsList.splice(index, 1);\r\n }\r\n\r\n this.saveCompetitors();\r\n }\r\n\r\n addCompetitor(): void {\r\n if (this.newCompetitor \r\n && this.newCompetitor > 0\r\n && !this.competitorsList.includes(this.newCompetitor)) {\r\n this.competitorsList.push(this.newCompetitor)\r\n this.newCompetitor = null;\r\n this.saveCompetitors();\r\n }\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n {{competitor}}\r\n \r\n
    \r\n
    \r\n","import { AfterContentChecked, Component, ElementRef, Inject, Input, OnInit, Renderer2, ViewChild } from '@angular/core';\r\nimport { EscolaService } from '../../service/escola.service';\r\nimport { Endereco, Escola, EscolaBeneficio, Social, Unidades, EscolaLista, tags, educacaoBilingue } from '../../service/Escola';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport firebase from 'firebase/app';\r\nimport { PagseguroService } from '../../service/pagseguro.service';\r\nimport { MatSnackBar } from '@angular/material/snack-bar';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { fromEvent, Observable, timer } from 'rxjs';\r\nimport { debounceTime, map, startWith } from 'rxjs/operators';\r\nimport { document } from 'ngx-bootstrap/utils';\r\nimport { ReviewRankingComponent } from '../../review/review-ranking/review-ranking.component';\r\nimport { UserService } from '../../service/user.service';\r\nimport { EscolaProductsComponent } from '../escola-products/escola-products.component';\r\nimport { diff as jdiff } from 'jsondiffpatch';\r\nimport { UploadFileData } from '../../navigation/upload-task/upload-task.component';\r\nimport { MatChipInputEvent } from '@angular/material/chips';\r\nimport { COMMA, ENTER } from '@angular/cdk/keycodes';\r\nimport { FormControl, Validators } from '@angular/forms';\r\nimport { EscolaGalleryComponent } from '../escola-gallery/escola-gallery.component';\r\nimport { SchoolDetailMoreInfoComponent } from '../RM-escola-detail/more-info/school-detail-more-info';\r\nimport { SchoolQualificationsComponent } from '../RM-escola-detail/qualifications/school-qualifications';\r\nimport * as clone from 'clone';\r\nimport { DefaultSliderConfig } from '../../navigation/Slider';\r\nimport { PageService } from '../../service/page.service';\r\nimport { AnalyticsService } from '../../service/analytics.service';\r\nimport { MatSlideToggleChange } from '@angular/material/slide-toggle';\r\nimport * as _moment from 'moment';\r\nimport { Review } from '../../review/review-edit/review-edit.component';\r\nimport { MatBottomSheet, MatBottomSheetRef } from '@angular/material/bottom-sheet';\r\nimport { MAT_BOTTOM_SHEET_DATA } from '@angular/material/bottom-sheet';\r\nimport { AbordagemPedagogica, AbordagemPedagogicaText } from '../../service/Tag';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { LoginDialogComponent } from '../../navigation/auth/login-dialog/login-dialog.component';\r\nimport { UrlFixerPipe } from '../../pipe/url-fixer.pipe';\r\nimport { BottomSheetInfo, DialogMotivo, DialogRequestInfoResponse } from '../RM-escola-detail/escola-detail.component';\r\nimport { ChangeDetectorRef } from '@angular/core';\r\nimport { promise } from 'protractor';\r\n\r\nexport const Bookmarks = [\r\n 'dados',\r\n 'indices',\r\n 'sobre',\r\n 'videos',\r\n 'nivel_ensino',\r\n 'infraestrutura',\r\n 'video360',\r\n 'acessibilidade',\r\n 'recursos',\r\n 'tecnologia',\r\n 'docentes',\r\n 'idiomas',\r\n 'cursos',\r\n 'disciplinas',\r\n 'material',\r\n 'alimentacao',\r\n // 'parcerias',\r\n // 'certificados',\r\n 'avaliacao',\r\n];\r\n\r\n@Component({\r\n selector: 'app-escola-detail-new',\r\n templateUrl: './escola-detail-new.component.html',\r\n styleUrls: ['./escola-detail-new.component.css'],\r\n})\r\nexport class EscolaDetailNewComponent implements OnInit, AfterContentChecked {\r\n moment = _moment;\r\n blabas = {\r\n nome: 'Escola ABC',\r\n endereco: 'Rua XYZ, 123',\r\n };\r\n escolaService = EscolaService;\r\n escola: Escola;\r\n selos: number[] = [];\r\n reviews: Review[] = null;\r\n escolaOld: Escola;\r\n socialOld: Social;\r\n codEscolaGallery: number;\r\n escolaBeneficio: EscolaBeneficio;\r\n escolaBeneficioOld: EscolaBeneficio;\r\n familyChoice = false;\r\n endereco: Endereco;\r\n fragment: any;\r\n textAbout = false;\r\n escolaListaArray: EscolaLista;\r\n outrasUnidades: Unidades[];\r\n mapSizeWidth = 300;\r\n mapSizeHeight = 160;\r\n sliderUnidades = DefaultSliderConfig;\r\n iconFile: File;\r\n separatorKeysCodes: number[] = [ENTER, COMMA];\r\n tagControl = new FormControl();\r\n urlValidatePattern = '(https?://)([\\\\da-z.-]+)\\\\.([a-z.]{2,6})[/\\\\w .-]*/?';\r\n videosControl = new FormControl(null, Validators.pattern('(https://www.youtube.com/embed/)|(https://player.vimeo.com/).*'));\r\n videos360Control = new FormControl(null, Validators.pattern(this.urlValidatePattern));\r\n\r\n @ViewChild('buyButton', { static: true }) buyButton: HTMLButtonElement;\r\n saving = false;\r\n\r\n @ViewChild('escolaGallery', { static: false }) escolaGalleryComponent: EscolaGalleryComponent;\r\n @ViewChild('schoolDetailMoreInfo', { static: false }) schoolDetailMoreInfo: SchoolDetailMoreInfoComponent;\r\n @ViewChild('schoolQualifications', { static: false }) schoolQualifications: SchoolQualificationsComponent;\r\n\r\n filteredTags: Observable;\r\n @Input() editing = false;\r\n recursosPedagogicosGroup: string[] = [];\r\n recursosRecreativosGroup: string[] = [];\r\n tecnologiaInternetGroup: string[] = [];\r\n tecnologiaRecursoGroup: string[] = [];\r\n messagePremium = 'Solicitar Informação';\r\n abordagemPedagogica = AbordagemPedagogicaText;\r\n alimentacao = ['Incluso na mensalidade', 'Incluso na mensalidade somente para integral', 'Pago à parte', 'Não oferece'];\r\n\r\n turnos = ['Regular', 'Semi-Integral', 'Integral', 'Estendido', 'Curso de férias'];\r\n processoSeletivo = ['Vagas imediatas', 'Lista de espera', 'Processo seletivo', 'Sondagem pedagógica'];\r\n idiomas = ['Português', 'Alemão', 'Espanhol', 'Francês', 'Inglês', 'Italiano', 'Japonês', 'Madarim'];\r\n modalidadeEnsino = ['', 'Confessional', 'Internacional', 'Especializada (AEE)'];\r\n parceira_cellep = ['Intracurricular', 'Extracurricular'];\r\n showPremiumFields = true;\r\n maxAttributos = 3;\r\n private indexItemId: string;\r\n private signalScrollTo = false;\r\n single = [];\r\n graph_indices_data: { name: string; series: { name: string; value: number }[] }[] = [];\r\n colorScheme = {\r\n domain: ['#ef3f5d', '#ef3fd8', '#8b3fef', '#3f82ef', '#3fc9ef', '#3fef88', '#80ef3f', '#efb73f', '#ef593f'],\r\n };\r\n indicesInfo: { title: string; description: string; items: string[] }[] = [\r\n {\r\n title: 'ICDSA',\r\n description: 'O indicador classifica o corpo docente da escola segundo os seguintes critérios:',\r\n items: ['Adequação de Formação Docente (INEP) - Adequação de formação de docentes à disciplina que leciona', 'Indicador de Regularidade Docente (INEP) - Permanência do docente na escola nos últimos cinco anos (2016 a 2020)', 'Docentes com Curso Superior (INEP) - Percentual de docentes com curso superior completo', 'Avaliações quantitativas (SA) - Avaliações realizadas no site SchoolAdvisor'],\r\n },\r\n {\r\n title: 'IIESA',\r\n description: 'O indicador classifica a infra estrutura da escola segundo os seguintes critérios:',\r\n items: ['Salas disponíveis (SIMCAQ) - Quantidade de salas disponíveis em relação ao tamanho das turmas', 'Padrão de qualidade referência (SIMCAQ) - Infraestrutura mínima para atendimento das turmas', 'Infraestrutura (SA) - Infraestrutura esperada para atendimento das turmas', 'Avaliações quantitativas (SA) - Avaliações realizadas no site SchoolAdvisor'],\r\n },\r\n ];\r\n chatVisible = false;\r\n chatBadge: string;\r\n\r\n constructor(private activatedRoute: ActivatedRoute, \r\n private router: Router, \r\n public userService: UserService, \r\n private pagseguroService: PagseguroService, \r\n private snackBar: MatSnackBar, \r\n private matDialog: MatDialog, \r\n private _bottomSheet: MatBottomSheet, \r\n private render: Renderer2,\r\n private analytics: AnalyticsService, \r\n private httpClient: HttpClient, \r\n private urlFixer: UrlFixerPipe,\r\n private escolaSrv: EscolaService,\r\n private pageService: PageService,\r\n private changeDetectorRef: ChangeDetectorRef) {\r\n\r\n\r\n fromEvent(window, 'scroll')\r\n .pipe(debounceTime(100))\r\n .subscribe(() => {\r\n let lastItem: HTMLElement = null;\r\n let minTop: number = null;\r\n for (const item of Bookmarks) {\r\n const el: HTMLElement = document.getElementById(item);\r\n if (el) {\r\n const top = el.getBoundingClientRect().top;\r\n const itemId = item + 'Item';\r\n const elItem: HTMLElement = document.getElementById(itemId);\r\n this.render.removeClass(elItem, 'active');\r\n if (top > 0) {\r\n minTop = minTop ?? top;\r\n if (top <= minTop) {\r\n minTop = top;\r\n lastItem = elItem;\r\n this.indexItemId = itemId;\r\n }\r\n }\r\n } else {\r\n }\r\n }\r\n\r\n if (lastItem) {\r\n this.render.addClass(lastItem, 'active');\r\n }\r\n });\r\n\r\n /*this.filteredTags = this.tagControl.valueChanges.pipe(\r\n startWith(null),\r\n map((item: string | null) => this._filter(item))\r\n );*/\r\n\r\n Object.assign(this, { single: this.single });\r\n }\r\n\r\n ngAfterContentChecked(): void {\r\n if (this.signalScrollTo && this.fragment != null) {\r\n this.scrollTo(this.fragment);\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.activatedRoute.params.subscribe((routeParams) => {\r\n this.escola = null;\r\n this.editing = false;\r\n this.mapSizeWidth = innerWidth / 2;\r\n const codEscola = this.activatedRoute.snapshot.paramMap.get('codigo');\r\n const nomeEscola = this.activatedRoute.snapshot.paramMap.get('nome');\r\n\r\n //this.updateTags(nomeEscola);\r\n this.loadEscolas(codEscola);\r\n\r\n // firebase.functions().httpsCallable('view_lista_escola_ativa')\r\n // ({nome_lista: 'Escolas Novas'}) // TODO: change to specific school nome_lista\r\n // .then(value => {\r\n // this.escolaListaArray = value.data;\r\n // });\r\n\r\n\r\n\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n });\r\n\r\n this.activatedRoute.fragment.subscribe((fragment) => {\r\n this.fragment = fragment;\r\n this.signalScrollTo = true;\r\n });\r\n\r\n /*setInterval(() => {\r\n const element = document.getElementById(\"dados-principais\");\r\n if (element) {\r\n const rect = element.getBoundingClientRect();\r\n const x = element.offsetHeight\r\n }\r\n }, 1000);*/\r\n }\r\n\r\n /* private updateTags(nomeEscola: string = null): void {\r\n if (this.escola == null) {\r\n if (nomeEscola) {\r\n this.meta.updateTag({ name: 'description', content: `${nomeEscola}` });\r\n }\r\n } else {\r\n const description = `description: Confira todas as informações de ${this.escola.nome}. Buscador com Informações Completas de todas as Escolas Particulares.`;\r\n const keyword = `schooladvisor, ${this.escola.nome}, ${this.escola.endereco}, ${JSON.stringify(this.escola.nivel_ensino)}`;\r\n this.meta.updateTag({ name: 'description', content: description });\r\n this.meta.updateTag({ name: 'keyword', content: keyword });\r\n }\r\n }*/\r\n\r\n private updateGraph(): void {\r\n const indices = this.escola.indices;\r\n this.graph_indices_data = [{ name: 'Índices', series: [] }];\r\n for (const item of Object.keys(indices)) {\r\n const value = indices[item];\r\n if (value != null) {\r\n this.graph_indices_data[0].series.push({ name: item, value });\r\n }\r\n }\r\n // this.graph_indices_data = [\r\n // {\r\n // name: 'Indicadores',\r\n // series: [\r\n // {\r\n // name: '2010',\r\n // value: 7300000\r\n // },\r\n // {\r\n // name: '2011',\r\n // value: 8940000\r\n // }\r\n // ]\r\n // },\r\n // ];\r\n }\r\n\r\n private loadEscolas(codEscola: any): void {\r\n const perfil = this.userService.userData?.perfil;\r\n const data: any = { codigo: codEscola };\r\n if (perfil) {\r\n data.perfil = perfil;\r\n }\r\n\r\n firebase\r\n .functions()\r\n .httpsCallable('escola', { timeout: 3000 })(data)\r\n .then(async (value) => {\r\n if (value.data.rows.length > 0) {\r\n await this.loadReviews(codEscola);\r\n await this.loadSelos(codEscola);\r\n await this.loadOutrasUnidades(codEscola);\r\n\r\n this.escola = value.data.rows[0];\r\n\r\n this.escolaSrv.setEscolaAtual(this.escola);\r\n\r\n const title = this.escola.nome;\r\n const description = `Confira todas as informações de ${this.escola.nome}. Buscador com Informações Completas de todas as Escolas Particulares.`;\r\n let keywords = ``;\r\n const url = `escolas/${this.escola.codigo}/${this.escola.nome}`;\r\n\r\n if (this.escola.nivel_ensino) {\r\n keywords += `, ${this.escola.nivel_ensino.join(', ')}`;\r\n }\r\n\r\n this.pageService.setPageData(title, description, url, keywords);\r\n\r\n let inep: any = this.escola.inep;\r\n try {\r\n inep = parseInt(inep);\r\n } catch (e) {\r\n inep = this.escola.codigo;\r\n }\r\n\r\n if (this.escola.codigo !== inep) {\r\n const escolaUrl = this.escola.nome.replace(/ /g, '-');\r\n const domain = window.location.origin;\r\n let url = `${domain}/escolas/${this.escola.inep}/${escolaUrl}`;\r\n url = this.urlFixer.transform(url);\r\n url = url.replace(/\\(/g, '').replace(/\\)/g, '');\r\n const meta = document.createElement('meta');\r\n meta.httpEquiv = 'refresh';\r\n meta.content = `0;url=${url}`;\r\n\r\n document.getElementsByTagName('head')[0].appendChild(meta);\r\n return;\r\n }\r\n\r\n this.codEscolaGallery = this.escola.codigo;\r\n //this.updateTags();\r\n this.updateGraph();\r\n // this.endereco = this.escolaService.parseEndereco(this.escola);\r\n this.recursosPedagogicosGroup = this.escolaService.getGrupo('recursos_pedagogico', true, this.escola);\r\n this.recursosRecreativosGroup = this.escolaService.getGrupo('recursos_recreativo', true, this.escola);\r\n this.tecnologiaInternetGroup = this.escolaService.getGrupo('tecnologia_internet', true, this.escola);\r\n this.tecnologiaRecursoGroup = this.escolaService.getGrupo('tecnologia_recurso', true, this.escola);\r\n (window as any)._escola = this.escola;\r\n if (this.escola.lista_escolas != null && !this.escola.premium) {\r\n this.escolaListaArray = {\r\n nome_lista: 'Outras escolas na região',\r\n cod_escola: this.escola.codigo,\r\n };\r\n }\r\n this.signalScrollTo = true;\r\n }\r\n\r\n this.escolaBeneficio = value.data.rows[0].beneficios;\r\n\r\n if (this.escolaBeneficio == null) {\r\n this.escolaBeneficio = {\r\n codigo: this.escola.codigo,\r\n tipo: 0,\r\n };\r\n }\r\n\r\n if (this.escolaBeneficio.tipo === null || this.escolaBeneficio.tipo === undefined) this.escolaBeneficio.tipo = 0;\r\n\r\n if (this.escolaBeneficio.codigo === null || this.escolaBeneficio.codigo === undefined) {\r\n this.escolaBeneficio.codigo = this.escola.codigo;\r\n }\r\n\r\n /*firebase\r\n .functions()\r\n .httpsCallable('escola_familys_choice')({ codigo: codEscola })\r\n .then((value) => {\r\n this.familyChoice = value.data;\r\n });*/\r\n \r\n })\r\n .catch((error) => { \r\n this.loadEscolas(codEscola);\r\n })\r\n .finally(() => {\r\n })\r\n\r\n \r\n }\r\n\r\n private async loadSelos(codEscola: any): Promise {\r\n try {\r\n var value = await firebase\r\n .functions()\r\n .httpsCallable('obterSelos')({ cod_escola: codEscola })\r\n\r\n const selos = value.data.map((item: any) => {\r\n return item.cod_selo;\r\n });\r\n\r\n this.selos = selos;\r\n }\r\n catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n\r\n private async loadReviews(codEscola: any): Promise {\r\n\r\n try {\r\n var value = await firebase\r\n .functions()\r\n .httpsCallable('review_escola')({ cod_escola: codEscola, offset: 0 })\r\n \r\n const records = value.data.records;\r\n \r\n records.map((item: any) => {\r\n item.data_hora_criada = new Date(item.data_hora_criada);\r\n item.isExpanded = false;\r\n });\r\n \r\n let review_ordered = records.sort((a, b) => {\r\n return b.rate_geral - a.rate_geral;\r\n });\r\n \r\n review_ordered = review_ordered.sort((a, b) => {\r\n return new Date(b.data_hora_criada).getTime() - new Date(a.data_hora_criada).getTime();\r\n });\r\n \r\n this.reviews = review_ordered; \r\n } catch (error) {\r\n console.log(error);\r\n }\r\n }\r\n\r\n private async loadOutrasUnidades(codEscola: any): Promise {\r\n var value = await firebase\r\n .functions()\r\n .httpsCallable('escola_unidades')(\r\n // TODO: include this array in escolas funciton\r\n { cod_escola: codEscola }\r\n )\r\n \r\n this.outrasUnidades = value.data;\r\n }\r\n\r\n get educacaoBilingue() {\r\n return educacaoBilingue;\r\n }\r\n\r\n scrollTo(elementId: string): void {\r\n const el: HTMLElement = document.getElementById(elementId);\r\n if (el) {\r\n window.scrollBy({ behavior: 'smooth', top: el.getBoundingClientRect().top - 100 });\r\n this.signalScrollTo = false;\r\n }\r\n }\r\n\r\n showRankingCompleto(): void {\r\n this.matDialog.open(ReviewRankingComponent, {\r\n id: 'rankingCompletoDialog',\r\n data: {\r\n escola: this.escola,\r\n readonly: true,\r\n },\r\n });\r\n }\r\n\r\n checkout(event: any): void {\r\n this.matDialog.open(EscolaProductsComponent, { id: 'escola-products', data: this.escola });\r\n }\r\n\r\n editingClick(): void {\r\n // this.escolaOld = {...this.escola};\r\n // this.escolaOld.social = {...this.escola.social};\r\n // this.escolaOld.tags = {...this.escola.tags};\r\n // this.escolaOld.videos = {...this.escola.videos};\r\n\r\n //this.schoolQualifications.detectChanges();\r\n this.escolaOld = clone(this.escola);\r\n this.escolaBeneficioOld = clone(this.escolaBeneficio);\r\n this.editing = true;\r\n }\r\n\r\n saveEdit(): void {\r\n const e = document.getElementsByTagName('mat-error');\r\n\r\n if (e.length > 0) {\r\n window.scrollBy({ behavior: 'smooth', top: e[0].getBoundingClientRect().top - 150 });\r\n this.snackBar.open('Existem campos inválidos.', 'Ok', { duration: 5000 });\r\n return;\r\n }\r\n\r\n this.editing = false;\r\n this.saving = true;\r\n\r\n // ReCreate escola.nivel_ensino array based on its subvalues\r\n this.escolaService.updateNivelEnsino(this.escola);\r\n\r\n const newData: any = {}; // this.diff(this.escolaAux, this.escola);\r\n const deltaEscola = jdiff(this.escolaOld, this.escola);\r\n const deltaBeneficio = jdiff(this.escolaBeneficioOld, this.escolaBeneficio);\r\n\r\n if (deltaEscola) {\r\n const deltaKeys: string[] = Object.keys(deltaEscola);\r\n for (const key of deltaKeys) {\r\n newData[key] = this.escola[key];\r\n }\r\n if (Object.keys(newData).length > 0) {\r\n newData.codigo = this.escolaOld.codigo;\r\n\r\n firebase\r\n .functions()\r\n .httpsCallable('escola_update')(newData)\r\n .then((value) => {\r\n // (window as any)._v = value;\r\n try {\r\n if (value.data.length > 0) {\r\n this.escola = value.data[0];\r\n this.loadEscolas(this.escola.codigo);\r\n } else {\r\n this.snackBar.open('Ocorreu um erro ao salvar os dados da Escola.', 'Ok', { duration: 5000 });\r\n this.escola = clone(this.escolaOld);\r\n }\r\n } catch (e) {\r\n if (!deltaBeneficio) {\r\n this.snackBar.open('Ocorreu um erro ao salvar os dados da Escola.', 'Ok', { duration: 5000 });\r\n this.escola = clone(this.escolaOld);\r\n }\r\n }\r\n this.saving = false;\r\n });\r\n } else {\r\n this.saving = false;\r\n }\r\n }\r\n\r\n if (deltaBeneficio) {\r\n\r\n firebase\r\n .functions()\r\n .httpsCallable('escola_benefits_update')(this.escolaBeneficio)\r\n .then((value) => {\r\n this.escolaBeneficioOld = clone(this.escolaBeneficio);\r\n });\r\n }\r\n\r\n if (!deltaEscola && !deltaBeneficio) {\r\n this.snackBar.open('Nenhuma informação foi alterada.', 'Ok', { duration: 2000 });\r\n this.saving = false;\r\n }\r\n }\r\n\r\n cancelEdit(): void {\r\n this.escola = this.escolaOld;\r\n this.escolaBeneficio = this.escolaBeneficioOld;\r\n this.editing = false;\r\n }\r\n\r\n callBack(): void {\r\n window.location.reload();\r\n }\r\n\r\n chooseIconFile(event: any): void {\r\n this.iconFile = event.target.files[0];\r\n }\r\n\r\n uploadIcon($event: UploadFileData): void {\r\n this.escola.icon_path = $event.thumb;\r\n this.iconFile = null;\r\n }\r\n\r\n removeVideo(item: string): void {\r\n const index = this.escola.videos.indexOf(item);\r\n\r\n if (index >= 0) {\r\n this.escola.videos.splice(index, 1);\r\n }\r\n }\r\n\r\n addVideo(event: MatChipInputEvent): void {\r\n if (this.videosControl.valid) {\r\n if (!this.videosControl.value) {\r\n return;\r\n }\r\n\r\n const input = event.input;\r\n const value = event.value;\r\n\r\n // Add our tag\r\n if ((value || '').trim()) {\r\n this.escola.videos.push(value.trim());\r\n }\r\n\r\n // Reset the input value\r\n if (input) {\r\n input.value = '';\r\n }\r\n\r\n this.tagControl.setValue(null);\r\n }\r\n }\r\n\r\n vchange(event: google.maps.places.PlaceResult | string): void {\r\n }\r\n\r\n proprietario(): void {\r\n this.saving = true;\r\n this.userService.proprietario(this.escola);\r\n // TODO: return a promisse instead of a timer\r\n timer(5000).subscribe((value) => {\r\n this.saving = false;\r\n });\r\n this.analytics.clickSolicitarProprietario(this.escola);\r\n }\r\n\r\n horarioFuncionamento(type: 'min' | 'max', value: string): void {\r\n switch (type) {\r\n case 'min':\r\n this.escola.horario_funcionamento_min = value;\r\n break;\r\n case 'max':\r\n this.escola.horario_funcionamento_max = value;\r\n break;\r\n }\r\n }\r\n\r\n decimalParser(event: any): number {\r\n if (event !== null) {\r\n const c = event\r\n .toString()\r\n .replace(/[^\\d,]/g, '')\r\n .replace(',', '.');\r\n if (c.length > 0) {\r\n return c;\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n markForReload(): void {\r\n this.escolaGalleryComponent.loadImages();\r\n }\r\n\r\n buySchool(): void {\r\n this.saving = true;\r\n this.pagseguroService.buy(this.pagseguroService.plano.perfil_escola.nome, this.escola.codigo).then(() => (this.saving = false));\r\n }\r\n\r\n ativaToggle(event: MatSlideToggleChange): void {\r\n if (event.checked) {\r\n this.escola.data_desativada = null;\r\n this.escola.motivo_desativada = null;\r\n } else {\r\n const dialogRef = this.matDialog.open(DialogMotivo, {\r\n data: this.escola,\r\n });\r\n dialogRef.afterClosed().subscribe((result) => {\r\n if (result != null) {\r\n this.escola = result;\r\n }\r\n });\r\n }\r\n }\r\n\r\n requestInfo(fieldName: string, responseDialog: boolean = true): void {\r\n const user = this.userService.getCurrentUser();\r\n this.analytics.requestEscolaField(this.escola, fieldName, user);\r\n // firebase.functions().httpsCallable('event_request_info')({field_name: fieldName, cod_escola: this.escola.codigo});\r\n\r\n if (user == null) {\r\n this.matDialog.open(LoginDialogComponent);\r\n\r\n // Include this event to run after user login\r\n const subscription = this.userService.userDataEvent.subscribe((value) => {\r\n if (value !== null) {\r\n const loggedUser = this.userService.getCurrentUser();\r\n if (loggedUser !== null && this.userService.userData?.data_aceite) {\r\n this.analytics.requestEscolaField(this.escola, fieldName, user);\r\n // firebase.functions().httpsCallable('event_request_info')({field_name: fieldName, cod_escola: this.escola.codigo});\r\n this.matDialog.closeAll();\r\n }\r\n }\r\n\r\n if (responseDialog) this.matDialog.open(DialogRequestInfoResponse);\r\n\r\n subscription.unsubscribe();\r\n });\r\n } else {\r\n this.analytics.sendEventMail(this.escola, user);\r\n\r\n if (responseDialog) this.matDialog.open(DialogRequestInfoResponse);\r\n }\r\n }\r\n\r\n infoBottom(indiceTitle: string): void {\r\n for (const item of this.indicesInfo) {\r\n if (item.title === indiceTitle) {\r\n this._bottomSheet.open(BottomSheetInfo, { data: item });\r\n }\r\n }\r\n }\r\n\r\n raiox(): void {\r\n // TODO: move this connetion to a service of it's on\r\n const raioxURL = 'https://us-central1-firesample-7bd56.cloudfunctions.net/raiox';\r\n firebase\r\n .auth()\r\n .currentUser.getIdToken()\r\n .then((token) => {\r\n // const headers = new HttpHeaders().set('authorization', 'Bearer ' + token);\r\n // this.httpClient.get(raioxURL, {responseType: 'arraybuffer', headers}).subscribe((data) => {\r\n // const blob = new Blob([data], {});\r\n // const url = window.URL.createObjectURL(blob);\r\n // const pwa = window.open(url);\r\n // if (!pwa || pwa.closed || typeof pwa.closed === 'undefined') {\r\n // alert( 'Please disable your Pop-up blocker and try again.');\r\n // }\r\n // });\r\n\r\n // const req = new XMLHttpRequest();\r\n // req.addEventListener('load', () => {\r\n // });\r\n // req.addEventListener('error', () => {\r\n // });\r\n // req.open('GET', raioxURL, true);\r\n // req.setRequestHeader('Authorization', 'Bearer ' + token);\r\n // req.send();\r\n\r\n const headers = new HttpHeaders().set('authorization', 'Bearer ' + token);\r\n this.httpClient\r\n .get(raioxURL, {\r\n headers,\r\n responseType: 'blob' as 'json',\r\n observe: 'body' as 'body',\r\n params: { codigo: this.escola.codigo },\r\n })\r\n .subscribe((response: any) => {\r\n const dataType = response.type;\r\n const binaryData = [];\r\n binaryData.push(response);\r\n const downloadLink = document.createElement('a');\r\n downloadLink.href = window.URL.createObjectURL(new Blob(binaryData, { type: dataType }));\r\n let fileName = `Raio-X_Escola_${this.escola.codigo}.xlsx`;\r\n if (response.headers?.get('content-disposition')) {\r\n const fileNameRegex = /filename[^;=\\n]*=((['\"]).*?\\2|[^;\\n]*)/;\r\n const matches = fileNameRegex.exec(response.headers.get('content-disposition'));\r\n if (matches != null && matches[1]) {\r\n fileName = matches[1].replace(/['\"]/g, '');\r\n }\r\n }\r\n downloadLink.setAttribute('download', fileName);\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n });\r\n });\r\n }\r\n\r\n newMessage($event: any) {\r\n if (!this.chatVisible) {\r\n this.chatBadge = '!';\r\n }\r\n }\r\n\r\n toggleChat(): void {\r\n this.chatVisible = !this.chatVisible;\r\n if (this.chatVisible) {\r\n this.chatBadge = null;\r\n }\r\n }\r\n\r\n calculeAfinidade() {\r\n this.router.navigate(['perfil-afinidade']);\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n Escola Parceira\r\n \r\n
    \r\n
    \r\n Escola Ativa\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n\r\n \r\n\r\n","import {Component, ElementRef, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\r\nimport {COMMA, ENTER} from '@angular/cdk/keycodes';\r\nimport {Observable} from 'rxjs';\r\nimport {FormControl} from '@angular/forms';\r\nimport {AbordagemPedagogica, getTag, Tag, Tags} from '../../service/Tag';\r\nimport {EscolaService} from '../../service/escola.service';\r\nimport {map, startWith} from 'rxjs/operators';\r\nimport {MatAutocompleteSelectedEvent} from '@angular/material/autocomplete';\r\nimport {LabelType, Options} from '@angular-slider/ngx-slider';\r\nimport {CurrencyPipe, formatNumber} from '@angular/common';\r\nimport {PageEvent} from '@angular/material/paginator';\r\n\r\n@Component({\r\n selector: 'app-escola-filter-all',\r\n templateUrl: './escola-filter-all.component.html',\r\n styleUrls: ['./escola-filter-all.component.css']\r\n})\r\nexport class EscolaFilterAllComponent implements OnInit {\r\n\r\n separatorKeysCodes: number[] = [ENTER, COMMA];\r\n filteredTags: Observable>;\r\n listControl = new FormControl();\r\n escolaTags = Tags;\r\n abordagemPedagogica = AbordagemPedagogica;\r\n @ViewChild('listaInput', {static: true}) listaInput: ElementRef;\r\n // @ViewChild('mensalidadeSlider', {static: true}) mensalidadeSlider: SliderComponent;\r\n // public rateGeral = 0;\r\n alunosStep = 10;\r\n indicesTotalAlunosMinValue = 0;\r\n indicesTotalAlunosMaxValue = 10000;\r\n mensalidadeStep = 50;\r\n mensalidadeMinValue = 0;\r\n mensalidadeMaxValue = 10000;\r\n distanciaStep = 0.5;\r\n distanciaMinValue = 0;\r\n distanciaMaxValue = 10;\r\n options: Options = {\r\n floor: 0,\r\n ceil: this.mensalidadeMaxValue,\r\n translate: (value: number, label: LabelType): string => {\r\n if (value === this.options.ceil) {\r\n return '+∞';\r\n }\r\n switch (label) {\r\n // case LabelType.Low:\r\n // return 'Mínimo: $' + value;\r\n // case LabelType.High:\r\n // return '+∞';\r\n default:\r\n return '$' + value;\r\n }\r\n }\r\n };\r\n\r\n constructor(public escolaService: EscolaService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.filteredTags = this.listControl.valueChanges.pipe(\r\n startWith(null),\r\n map((value: string | null) => {\r\n return this._filter(value);\r\n })\r\n );\r\n // this.mensalidadeSlider.value = 0;\r\n // this.mensalidadeSlider.highValue = this.options.ceil;\r\n }\r\n\r\n resetFilters(): void {\r\n this.escolaService.filterFormGroup.reset();\r\n }\r\n\r\n remove(item: string): void {\r\n const itemGroup = this._getTag(item).group;\r\n let formControl: FormControl;\r\n switch (itemGroup) {\r\n case 'Nível de Ensino':\r\n formControl = this.escolaService.nivelEnsino;\r\n break;\r\n default:\r\n formControl = this.escolaService.filter;\r\n break;\r\n }\r\n const currentValues: string[] = formControl.value;\r\n if (currentValues == null) {\r\n return;\r\n }\r\n const index = currentValues.indexOf(item);\r\n if (index >= 0) {\r\n currentValues.splice(index, 1);\r\n formControl.setValue(currentValues);\r\n }\r\n }\r\n\r\n selected(event: MatAutocompleteSelectedEvent): void {\r\n // console.log('Selected: ' + event.option.value);\r\n const itemGroup = this._getTag(event.option.value).group;\r\n // console.log(`value: ${event.option.value} group: ${itemGroup}`);\r\n let formControl: FormControl;\r\n switch (itemGroup) {\r\n case 'Nível de Ensino':\r\n formControl = this.escolaService.nivelEnsino;\r\n break;\r\n case 'Abordagem Pedagógica':\r\n formControl = this.escolaService.abordagemPedagogica;\r\n break;\r\n default:\r\n formControl = this.escolaService.filter;\r\n break;\r\n }\r\n let currentValues: string[] = formControl.value;\r\n if (currentValues == null) {\r\n currentValues = [];\r\n }\r\n currentValues.push(event.option.value);\r\n formControl.setValue(currentValues);\r\n this.listaInput.nativeElement.value = '';\r\n this.listControl.setValue(null);\r\n }\r\n\r\n private _filter(value: string): Array {\r\n\r\n if (value == null) {\r\n } else {\r\n const selectedNivel: Array = this.escolaService.nivelEnsino.value;\r\n const selectedAbordagemPedagogica: Array = this.escolaService.abordagemPedagogica.value;\r\n const selectedTags: Array = this.escolaService.filter.value;\r\n\r\n let allSelect: Array = [];\r\n if (selectedNivel != null) {\r\n allSelect = allSelect.concat(selectedNivel);\r\n }\r\n if (selectedAbordagemPedagogica != null) {\r\n allSelect = allSelect.concat(selectedAbordagemPedagogica);\r\n }\r\n if (selectedTags != null) {\r\n allSelect = allSelect.concat(selectedTags);\r\n }\r\n\r\n // console.log(`NivelEnsino: ${JSON.stringify(selectedNivel)} Tags: ${JSON.stringify(selectedTags)}`);\r\n // console.log(`AllSelect: ${JSON.stringify(allSelect)}`);\r\n\r\n const normalizedValue = value.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').toUpperCase();\r\n\r\n const filtered = Tags.filter((tag) => {\r\n\r\n let alreadySelected = false;\r\n\r\n if (allSelect != null) {\r\n // console.log(`allSelect.indexOf(${tag.name})`);\r\n if (allSelect.indexOf(tag.name) >= 0) {\r\n // console.log(`Already Exist Tag: ${tag.name}`);\r\n alreadySelected = true;\r\n }\r\n }\r\n\r\n if (!alreadySelected) {\r\n const normalizedName = tag.title.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').toUpperCase();\r\n if (normalizedName.indexOf(normalizedValue) >= 0) {\r\n return tag;\r\n }\r\n }\r\n });\r\n return filtered;\r\n }\r\n }\r\n\r\n private _getTag(name: string): Tag {\r\n const tag = getTag(name);\r\n return tag;\r\n }\r\n\r\n formatLabel(value: number): string {\r\n\r\n if (value == null) {\r\n return null;\r\n }\r\n\r\n if (value >= this.mensalidadeMaxValue) {\r\n return '';\r\n }\r\n\r\n let r: number = value;\r\n let sulfix = '';\r\n if (r >= 1000) {\r\n r = r / 1000;\r\n sulfix = 'k';\r\n }\r\n\r\n return formatNumber(r, 'pt-BR', '1.0-0') + sulfix;\r\n }\r\n\r\n}\r\n","\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 0\"\r\n (removed)=\"this.escolaService.rateGeral.setValue(null)\"\r\n removable>\r\n {{'Índice +' + this.escolaService.rateGeral.value}}\r\n cancel\r\n \r\n 0\"\r\n (removed)=\"this.escolaService.distanciaMax.setValue(null)\"\r\n removable>\r\n {{'até ' + this.escolaService.distanciaMax.value + 'km'}}\r\n cancel\r\n \r\n 0\"\r\n (removed)=\"this.escolaService.mensalidadeMax.setValue(null)\"\r\n removable>\r\n {{'até ' + (this.escolaService.mensalidadeMax.value | currency:'BRL':'symbol':'0.2-2')}}\r\n cancel\r\n \r\n 0\"\r\n (removed)=\"this.escolaService.indicesTotalAlunosMax.setValue(null)\"\r\n removable>\r\n {{'até ' + this.escolaService.indicesTotalAlunosMax.value + ' Alunos'}}\r\n cancel\r\n \r\n 0\"\r\n (removed)=\"this.escolaService.clima.setValue([])\"\r\n removable>\r\n Escolas pelo Clima\r\n cancel\r\n \r\n 0\"\r\n (removed)=\"this.escolaService.cellep.setValue([])\"\r\n removable>\r\n Cel.Lep\r\n cancel\r\n \r\n 0\"\r\n (removed)=\"this.escolaService.oebi.setValue([])\"\r\n removable>\r\n Bilingue OEBI\r\n cancel\r\n \r\n \r\n 0\"\r\n (removed)=\"this.escolaService.geekie.setValue([])\"\r\n removable>\r\n Geekie\r\n cancel\r\n \r\n\r\n 0\"\r\n (removed)=\"this.escolaService.supercerebro.setValue([])\"\r\n removable>\r\n Super Cérebro\r\n cancel\r\n \r\n \r\n {{item}}\r\n cancel\r\n \r\n \r\n {{_getTag(item)?.title}}\r\n cancel\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{item.title}}\r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Escolas pelo Clima\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {{item.title}}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n\r\n\r\n \r\n Bilíngue OEBI\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Geekie\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n","import {Component, ElementRef, EventEmitter, OnInit, Output, ViewChild} from '@angular/core';\r\nimport {EscolaService, filterEventType} from '../../service/escola.service';\r\nimport {Router} from '@angular/router';\r\nimport {Tags} from '../../service/Tag';\r\nimport {Escola} from '../../service/Escola';\r\nimport {debounceTime, startWith, switchMap, tap, map} from 'rxjs/operators';\r\nimport firebase from 'firebase';\r\nimport {Observable} from 'rxjs';\r\nimport {FormControl} from '@angular/forms';\r\nimport {NivelEnsinoArray} from '../../service/NivelEnsino';\r\nimport {UrlNormalizerPipe} from '../../pipe/url-normalizer.pipe';\r\nimport Autocomplete = google.maps.places.Autocomplete;\r\nimport {UserService} from '../../service/user.service';\r\nimport { MatAutocomplete } from '@angular/material/autocomplete';\r\n\r\n@Component({\r\n selector: 'app-escola-filter-header',\r\n templateUrl: './escola-filter-header.component.html',\r\n styleUrls: ['./escola-filter-header.component.css']\r\n})\r\nexport class EscolaFilterHeaderComponent implements OnInit {\r\n\r\n // @ViewChild('searchDiv', {static: true}) searchDiv: HTMLDivElement;\r\n @ViewChild('regiaoInput', {static: true}) regiaoInput: ElementRef;\r\n @ViewChild('nivelEnsinoInput') nivelEnsinoInput: ElementRef;\r\n // @ViewChild('btnSearchMap') btnSearchMap: ElementRef;\r\n @Output() searchButtonEvent = new EventEmitter();\r\n autoCompleteObj: Autocomplete;\r\n placeholderRegion = true;\r\n nivelTags = Tags.filter(value => value.group === 'Nível de Ensino');\r\n mensalidadeArray: Array = [1000, 2000, 3000, 4000, 5000, 6000, 7000, 8000];\r\n placeholderEscola = true;\r\n isLoadingEscola = false;\r\n isLoadingUser = false;\r\n loadingMessage: string = null;\r\n escolaNome: Escola[] | string[] = [];\r\n selectedEscola: Escola = null;\r\n filteredNivelEnsino: Observable>;\r\n nivelEnsinoControl = new FormControl('');\r\n\r\n private usePerfil = false;\r\n \r\n\r\n minTuitionValue = 0\r\n maxTuitionValue = 8000\r\n showTuition = false\r\n\r\n sliderOptions = {\r\n floor: 0,\r\n ceil: 8000,\r\n step: 1000,\r\n translate: (value: number): string => {\r\n if (value <= 0)\r\n return '';\r\n else if (value >= 8000)\r\n return '';\r\n else\r\n return `R$ ${value}`;\r\n }\r\n };\r\n\r\n constructor(\r\n public escolaService: EscolaService,\r\n public router: Router,\r\n public userService: UserService,\r\n private urlNormalizerPipe: UrlNormalizerPipe,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.escolaService.place.valueChanges.pipe(\r\n tap((value) => {\r\n this.escolaService.nome.setValue(value);\r\n }),\r\n debounceTime(1500),\r\n switchMap(value => {\r\n // the value can be a string or a Escola type\r\n if (typeof value === 'string') {\r\n this.selectedEscola = null;\r\n if (value.length < 3) {\r\n this.loadingMessage = `Digite ao menos 3 letras para pesquisar.`;\r\n } else {\r\n this.isLoadingEscola = true;\r\n const criteria = {\r\n nome: value\r\n };\r\n this.loadingMessage = `Procurando escolas com nome '${value}'`;\r\n firebase.functions().httpsCallable('nome_escola')(criteria).then(value1 => {\r\n if (value1.data?.length > 0) {\r\n this.escolaNome = value1.data;\r\n this.escolaNome.forEach((value2) => {\r\n if (typeof value2 !== 'string') {\r\n value2.endereco_json = EscolaService.parseEndereco(value2);\r\n }\r\n });\r\n } else {\r\n this.escolaNome = [];\r\n }\r\n this.isLoadingEscola = false;\r\n });\r\n }\r\n } else {\r\n this.isLoadingEscola = false;\r\n this.selectedEscola = value;\r\n // Traga somente a escola marcada\r\n this.escolaNome = [value];\r\n }\r\n return [];\r\n })\r\n ).subscribe();\r\n\r\n this.filteredNivelEnsino = this.nivelEnsinoControl.valueChanges.pipe(\r\n startWith(null),\r\n map((value: string | null) => {\r\n return this._filter(value);\r\n }));\r\n\r\n if (this.usePerfil) {\r\n this.userService.userDataEvent.subscribe(value => {\r\n if (value === null) {\r\n this.isLoadingUser = false;\r\n } else if (value.loading) {\r\n this.isLoadingUser = true;\r\n } else if (this.userService.userData?.perfil) {\r\n const perfil = this.userService.userData.perfil;\r\n this.escolaService.regiao.setValue(perfil.place);\r\n // console.log(JSON.stringify(perfil.place));\r\n // console.log(JSON.stringify(value));\r\n // this.regiaoInput.nativeElement.value = perfil.place.formatted_address;\r\n if (perfil.serie != null) {\r\n this.escolaService.nivelEnsino.setValue([perfil.serie]);\r\n }\r\n this.isLoadingUser = false;\r\n } else {\r\n this.escolaService.regiao.setValue(null);\r\n this.escolaService.nivelEnsino.setValue([]);\r\n this.isLoadingUser = false;\r\n }\r\n });\r\n }\r\n\r\n this.initAutocomplete();\r\n }\r\n\r\n\r\n initAutocomplete(): void {\r\n const nativeInput = this.regiaoInput.nativeElement;\r\n\r\n // Create the autocomplete object, restricting the search predictions to\r\n // @ts-ignore\r\n nativeInput.geolocate = () => {\r\n // @ts-ignore\r\n geolocate();\r\n };\r\n // geographical location types.\r\n this.autoCompleteObj = new google.maps.places.Autocomplete(\r\n nativeInput as HTMLInputElement,\r\n {\r\n types: ['geocode'], // 'establishment' / 'address' / 'geocode'\r\n componentRestrictions: {country: 'BR'}\r\n }\r\n );\r\n\r\n // Avoid paying for data that you don't need by restricting the set of\r\n // place fields that are returned to just the address components:\r\n // address_component, adr_address, business_status, formatted_address, geometry, icon, name, permanently_closed,\r\n // photo, place_id, plus_code, type, url, utc_offset, or vicinity\r\n // source: https://developers.google.com/maps/documentation/places/web-service/usage-and-billing#autocomplete\r\n this.autoCompleteObj.setFields(['address_component', 'geometry']);\r\n // When the user selects an address from the drop-down, populate the\r\n // address fields in the form.\r\n this.autoCompleteObj.addListener('place_changed', () => {\r\n // Get the place details from the autocomplete object.\r\n console.log('place_changed');\r\n const place = this.autoCompleteObj.getPlace();\r\n this.escolaService.regiao.setValue(place);\r\n });\r\n\r\n this.escolaService.regiao.valueChanges.subscribe(value => {\r\n if (value) {\r\n if (value.formatted_address) {\r\n nativeInput.value = value.formatted_address;\r\n } else if (value.address_components) {\r\n // nativeInput.value = parseAddressName(value.address_components);\r\n // nativeInput.value = value.address_components[0].long_name;\r\n }\r\n } else {\r\n nativeInput.value = null;\r\n }\r\n });\r\n }\r\n\r\n private _filter(value): Array {\r\n // console.log(`Filter Value: ${value}`);\r\n const selected: string[] = this.escolaService.nivelEnsino.value;\r\n if (value == null) {\r\n if (selected == null) {\r\n return NivelEnsinoArray;\r\n } else {\r\n\r\n return NivelEnsinoArray.filter(value1 => {\r\n // console.log(`Null filter check: value1: ${value1} indexOf: ${selected.indexOf(value1)}`);\r\n if (selected.indexOf(value1) < 0) {\r\n return value1;\r\n }\r\n });\r\n }\r\n } else {\r\n\r\n const normalizedValue = value.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').toUpperCase();\r\n const filtered = NivelEnsinoArray.filter((nivelEnsinoItem) => {\r\n const normalizedName = nivelEnsinoItem.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').toUpperCase();\r\n\r\n if (normalizedName.indexOf(normalizedValue) >= 0) {\r\n\r\n if (selected == null) {\r\n return nivelEnsinoItem;\r\n } else if (selected.indexOf(nivelEnsinoItem) < 0) {\r\n return nivelEnsinoItem;\r\n }\r\n }\r\n });\r\n\r\n return filtered;\r\n }\r\n }\r\n\r\n public map(): void {\r\n this.showTuition = false\r\n this.escolaService.mensalidadeMin.setValue(this.minTuitionValue <= 0 ? null : this.minTuitionValue)\r\n this.escolaService.mensalidadeMax.setValue(this.maxTuitionValue >= 8000 ? null : this.maxTuitionValue)\r\n\r\n const goTo = '/mapa';\r\n if (this.router.url === goTo) {\r\n this.searchTrigger('map');\r\n } else {\r\n this.router.navigate([goTo]);\r\n }\r\n this.searchButtonEvent.emit();\r\n }\r\n\r\n showTuitionFilter(): void {\r\n this.showTuition = true\r\n }\r\n\r\n tuitionMessage(): string {\r\n if (this.minTuitionValue <= 0 && this.maxTuitionValue >= 8000)\r\n return 'Filtrar por mensalidades'\r\n\r\n if (this.minTuitionValue <= 0)\r\n return `Até R$ ${this.maxTuitionValue}`\r\n\r\n if (this.maxTuitionValue >= 8000)\r\n return `A partir de R$ ${this.minTuitionValue}`\r\n\r\n return `De R$ ${this.minTuitionValue} a R$ ${this.maxTuitionValue}`\r\n }\r\n\r\n displayEscola(item: any): string {\r\n if (item == null) {\r\n return null;\r\n } else if (item.nome) {\r\n return item.nome;\r\n } else {\r\n return item;\r\n }\r\n }\r\n\r\n searchTrigger(type: filterEventType): void {\r\n this.escolaService.filterEvent.next({type, reset: true});\r\n }\r\n\r\n public detail(escola: Escola): void {\r\n this.escolaService.nome.setValue(escola.nome);\r\n\r\n const url = `/escolas/${escola.codigo}/${this.urlNormalizerPipe.transform(escola.nome)}`;\r\n window.open(url, '_blank');\r\n\r\n /*this.router.navigate(\r\n [\r\n 'escolas', \r\n escola.codigo, \r\n this.urlNormalizerPipe.transform(escola.nome)\r\n ]).then(() => {\r\n this.escolaService.fixedSearch = false\r\n // this.searchTrigger();\r\n });*/\r\n\r\n this.escolaService.place.setValue('');\r\n //this.nomeEscolaControl.setValue('');\r\n this.searchButtonEvent.emit();\r\n }\r\n\r\n searchEscola(type: filterEventType = 'map'): void {\r\n const goTo = '/busca-escolas';\r\n if (this.router.url === goTo) {\r\n this.searchTrigger('list');\r\n } else {\r\n this.router.navigate([goTo]);\r\n }\r\n\r\n this.escolaService.fixedSearch = false\r\n this.searchButtonEvent.emit();\r\n }\r\n\r\n focusSearchEscola(): void {\r\n this.placeholderEscola = false\r\n this.escolaService.fixedSearch = true\r\n console.log('focusSearchEscola')\r\n }\r\n}\r\n\r\nexport function parseAddressName(value: any): string {\r\n let street = null;\r\n let street_number = null;\r\n for (let i = 0, item; item === value[i]; i++) {\r\n if (item.types[0] === 'route') {\r\n street = item.long_name;\r\n }\r\n if (item.types[0] === 'street_number') {\r\n street_number = item.long_name;\r\n }\r\n }\r\n if (street_number) {\r\n return street + ', ' + street_number;\r\n } else if (street) {\r\n return street;\r\n } else {\r\n return '';\r\n }\r\n}\r\n\r\n\r\n","
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n Endereço/Região\r\n \r\n \r\n \r\n
    \r\n \r\n \r\n\r\n
    \r\n Mensalidade\r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n\r\n\r\n\r\n \r\n \r\n\r\n\r\n
    \r\n \r\n Nível\r\n \r\n \r\n {{item.name}}\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n Encontrar uma Escola\r\n \r\n \r\n \r\n \r\n \r\n {{loadingMessage}}\r\n \r\n \r\n \r\n
    \r\n search\r\n {{escola}}\r\n
    \r\n
    \r\n \r\n
    \r\n {{escola.nome}}\r\n {{escola.endereco}}\r\n
    \r\n {{escola.endereco_json.cidade + ' - ' + escola.endereco_json.estado}}\r\n {{escola.endereco_json.bairro}}\r\n
    \r\n \r\n {{escola.endereco_json.logradouro + ', ' + escola.endereco_json.numero}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n","import {AfterViewInit, Component, ElementRef, OnInit, ViewChild} from '@angular/core';\r\nimport {COMMA, ENTER} from '@angular/cdk/keycodes';\r\nimport {EscolaService} from '../../service/escola.service';\r\nimport {MatAutocompleteSelectedEvent} from '@angular/material/autocomplete';\r\nimport {FormControl} from '@angular/forms';\r\nimport {map, startWith, tap} from 'rxjs/operators';\r\nimport {Observable} from 'rxjs';\r\nimport {Escola} from '../../service/Escola';\r\nimport firebase from 'firebase/app';\r\n\r\n@Component({\r\n selector: 'app-escola-filter-listas',\r\n templateUrl: './escola-filter-listas.component.html',\r\n styleUrls: ['./escola-filter-listas.component.css']\r\n})\r\nexport class EscolaFilterListasComponent implements OnInit, AfterViewInit {\r\n\r\n separatorKeysCodes: number[] = [ENTER, COMMA];\r\n allListas: Array = [];\r\n filteredListas: Observable;\r\n listControl = new FormControl();\r\n @ViewChild('listaInput', {static: true}) listaInput: ElementRef;\r\n\r\n constructor(public escolaService: EscolaService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.filteredListas = this.listControl.valueChanges.pipe(\r\n startWith(null),\r\n map((value: string | null) => {\r\n return this._filter(value);\r\n })\r\n );\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n const functions = firebase.functions();\r\n const viewLitasFunction = functions.httpsCallable('view_listas');\r\n viewLitasFunction({}).then(value => {\r\n this.allListas = [];\r\n for (const lista of value.data) {\r\n this.allListas.push(lista.nome);\r\n }\r\n });\r\n }\r\n\r\n remove(item: string): void {\r\n const currentValues: string[] = this.escolaService.listas.value;\r\n if (currentValues == null) {\r\n return;\r\n }\r\n const index = currentValues.indexOf(item);\r\n if (index >= 0) {\r\n currentValues.splice(index, 1);\r\n this.escolaService.listas.setValue(currentValues);\r\n }\r\n }\r\n\r\n selected(event: MatAutocompleteSelectedEvent): void {\r\n // console.log('Selected: ' + event.option.value);\r\n let currentValues: string[] = this.escolaService.listas.value;\r\n if (currentValues == null) {\r\n currentValues = [];\r\n }\r\n currentValues.push(event.option.viewValue);\r\n this.escolaService.listas.setValue(currentValues);\r\n this.listaInput.nativeElement.value = '';\r\n this.listControl.setValue(null);\r\n }\r\n\r\n private _filter(value: string): Array {\r\n\r\n // console.log(`Filter Value: ${value}`);\r\n const selected: Array = this.escolaService.listas.value;\r\n if (value == null) {\r\n\r\n if (selected == null) {\r\n return this.allListas;\r\n } else {\r\n\r\n return this.allListas.filter(value1 => {\r\n console.log(`Null filter check: value1: ${value1} indexOf: ${selected.indexOf(value1)}`);\r\n\r\n if (selected.indexOf(value1) < 0) {\r\n return value1;\r\n }\r\n });\r\n }\r\n } else {\r\n\r\n const normalizedValue = value.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').toUpperCase();\r\n const filtered = this.allListas.filter((item) => {\r\n console.log(`item: ${JSON.stringify(item)}`);\r\n const normalizedName = item.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').toUpperCase();\r\n console.log(`normalizedValue: ${normalizedValue} normalizedName: ${normalizedName} normalizedName.indexOf(normalizedValue): ${normalizedName.indexOf(normalizedValue)}`);\r\n\r\n if (normalizedName.indexOf(normalizedValue) >= 0) {\r\n\r\n if (selected == null) {\r\n return item;\r\n } else if (selected.indexOf(item) < 0) {\r\n return item;\r\n }\r\n }\r\n });\r\n\r\n return filtered;\r\n }\r\n }\r\n\r\n // private _filter(value: string): Escola[] {\r\n // // console.log(`_filter: ${value}`);\r\n // const filtered = this.allListas.filter((escola) => {\r\n //\r\n // let selectedEscola: Escola[] = this.escolaService.listas.value;\r\n // if (selectedEscola == null) {\r\n // selectedEscola = [];\r\n // }\r\n // // console.log(`selectedEscola: ${JSON.stringify(selectedEscola)}`);\r\n // // console.log(`selectedEscola.indexOf(escola.nome): ${selectedEscola.indexOf(escola.nome)}`);\r\n // if (selectedEscola.indexOf(escola) < 0) { // Hide selected itens\r\n // if (value == null) {\r\n // return escola;\r\n // } else {\r\n // const filterValue = value.toLowerCase();\r\n // if (escola.nome.toLowerCase().indexOf(filterValue) >= 0) {\r\n // return escola;\r\n // }\r\n // }\r\n // }\r\n // });\r\n // return filtered;\r\n // }\r\n\r\n resetFilters(): void {\r\n this.escolaService.listas.reset();\r\n }\r\n\r\n}\r\n","
    \r\n \r\n
    \r\n\r\n\r\n \r\n Listas/Diretórios\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n {{escolaService.listas.value ? escolaService.listas.value[0] : ''}}\r\n 1\">\r\n (+{{escolaService.listas.value.length - 1}} {{escolaService.listas.value?.length === 2 ? 'outra' : 'outras'}})\r\n \r\n \r\n {{item}}\r\n \r\n \r\n\r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n","import {Component, OnInit} from '@angular/core';\r\nimport {EscolaService} from '../../service/escola.service';\r\n\r\n@Component({\r\n selector: 'app-escola-filter-rate',\r\n templateUrl: './escola-filter-rate.component.html',\r\n styleUrls: ['./escola-filter-rate.component.css']\r\n})\r\nexport class EscolaFilterRateComponent implements OnInit {\r\n\r\n escolaServiceReference = EscolaService;\r\n public rate: {\r\n rate_geral: 0,\r\n rate_pedagogico,\r\n rate_infraestrutura,\r\n rate_higiene_limpeza,\r\n rate_alimentacao,\r\n rate_seguranca,\r\n rate_extracurriculares,\r\n };\r\n public rateGeral = 0;\r\n\r\n constructor(public escolaServiceInstance: EscolaService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n reset(): void {\r\n this.rateGeral = 0;\r\n }\r\n\r\n}\r\n","\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n

    Avaliação

    \r\n
    \r\n \r\n
    \r\n {{escolaServiceReference.getColumnTitle('rate_geral')}}\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n","import {Component, ElementRef, OnInit, ViewChild} from '@angular/core';\r\nimport {EscolaService} from '../../service/escola.service';\r\nimport {Tag, Tags, getTag} from '../../service/Tag';\r\nimport {COMMA, ENTER} from '@angular/cdk/keycodes';\r\nimport {FormControl} from '@angular/forms';\r\nimport {Observable} from 'rxjs';\r\nimport {MatAutocompleteSelectedEvent} from '@angular/material/autocomplete';\r\nimport {map, startWith} from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-escola-filter',\r\n templateUrl: './escola-filter-tags.component.html',\r\n styleUrls: ['./escola-filter-tags.component.css']\r\n})\r\nexport class EscolaFilterTagsComponent implements OnInit {\r\n\r\n separatorKeysCodes: number[] = [ENTER, COMMA];\r\n filteredTags: Observable>;\r\n listControl = new FormControl();\r\n escolaTags = Tags;\r\n @ViewChild('listaInput', {static: true}) listaInput: ElementRef;\r\n\r\n constructor(public escolaService: EscolaService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.filteredTags = this.listControl.valueChanges.pipe(\r\n startWith(null),\r\n map((value: string | null) => {\r\n return this._filter(value);\r\n })\r\n );\r\n }\r\n\r\n resetFilters(): void {\r\n this.escolaService.filterFormGroup.reset();\r\n }\r\n\r\n remove(item: string): void {\r\n const currentValues: string[] = this.escolaService.filter.value;\r\n if (currentValues == null) {\r\n return;\r\n }\r\n const index = currentValues.indexOf(item);\r\n if (index >= 0) {\r\n currentValues.splice(index, 1);\r\n this.escolaService.filter.setValue(currentValues);\r\n }\r\n }\r\n\r\n selected(event: MatAutocompleteSelectedEvent): void {\r\n console.log('Selected: ' + event.option.value);\r\n let currentValues: string[] = this.escolaService.filter.value;\r\n if (currentValues == null) {\r\n currentValues = [];\r\n }\r\n currentValues.push(event.option.value);\r\n this.escolaService.filter.setValue(currentValues);\r\n this.listaInput.nativeElement.value = '';\r\n this.listControl.setValue(null);\r\n }\r\n\r\n private _filter(value: string): Array {\r\n if (value == null) {\r\n\r\n } else {\r\n\r\n const normalizedValue = value.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').toUpperCase();\r\n\r\n const filtered = Tags.filter((tag) => {\r\n\r\n // let selectedTag: Tag[] = [];\r\n //\r\n // if (Tags.indexOf(tag) < 0) { // Hide selected itens\r\n // if (value == null) {\r\n // return tag;\r\n // } else {\r\n // const filterValue = value.toLowerCase();\r\n // if (tag.nome.toLowerCase().indexOf(filterValue) >= 0) {\r\n // return tag;\r\n // }\r\n // }\r\n // }\r\n const normalizedName = tag.title.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '').toUpperCase();\r\n if (normalizedName.indexOf(normalizedValue) >= 0) {\r\n return tag;\r\n }\r\n });\r\n return filtered;\r\n }\r\n }\r\n\r\n private _getTag(name: string): Tag {\r\n const tag = getTag(name);\r\n return tag;\r\n }\r\n\r\n}\r\n","\r\n
    \r\n \r\n \r\n \r\n \r\n {{_getTag(item)?.title}}\r\n cancel\r\n \r\n \r\n \r\n Pesquise por características\r\n \r\n \r\n {{item.icon ? item.icon : 'add'}}\r\n
    \r\n {{item.group}}\r\n {{item.title}}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n

    Infraestrutura

    \r\n \r\n \r\n {{item.title}}\r\n \r\n \r\n\r\n

    Acessibilidade

    \r\n \r\n \r\n {{item.title}}\r\n \r\n \r\n\r\n

    Disciplinas Adicionais

    \r\n \r\n \r\n {{item.title}}\r\n \r\n \r\n\r\n

    Cursos Extracurriculares

    \r\n \r\n \r\n {{item.title}}\r\n \r\n \r\n\r\n

    Recursos

    \r\n \r\n \r\n {{item.title}}\r\n \r\n \r\n\r\n

    Tecnologia

    \r\n \r\n \r\n {{item.title}}\r\n \r\n \r\n\r\n

    Alimentação

    \r\n \r\n \r\n {{item.title}}\r\n \r\n \r\n\r\n

    Outros

    \r\n \r\n \r\n {{item.title}}\r\n \r\n \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core';\r\nimport {Gallery, GalleryRef, ImageItemData, ImageSize, ThumbnailsPosition} from 'ng-gallery';\r\nimport firebase from 'firebase/app';\r\nimport {Observable, of} from 'rxjs';\r\nimport {Lightbox} from 'ng-gallery/lightbox';\r\nimport {Escola} from '../../service/Escola';\r\nimport {UserService} from '../../service/user.service';\r\nimport {AnalyticsService} from '../../service/analytics.service';\r\nimport {tap} from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-escola-gallery',\r\n templateUrl: './escola-gallery.component.html',\r\n styleUrls: ['./escola-gallery.component.css']\r\n})\r\nexport class EscolaGalleryComponent implements OnInit, AfterViewInit {\r\n\r\n _escola: Escola;\r\n @Input() editing = false;\r\n galleryId = 'image-gallery';\r\n hasImage = true;\r\n imageCount = -1;\r\n warning: string = null;\r\n items: Observable;\r\n imagesData: ImageItemData[];\r\n @Output() clickMessageLink = new EventEmitter();\r\n @ViewChild('itemTemplate') itemTemplate;\r\n\r\n constructor(\r\n public gallery: Gallery,\r\n // public lightbox: Lightbox,\r\n public userService: UserService,\r\n private analytics: AnalyticsService) {\r\n\r\n const galleryRef: GalleryRef = this.gallery.ref(this.galleryId);\r\n galleryRef.indexChanged.pipe(\r\n tap((galleryState) => {\r\n const user = userService.getCurrentUser();\r\n this.analytics.clickEscolaMidia(this.escola, 'image', galleryState.currIndex, user);\r\n })\r\n ).subscribe();\r\n const lightboxRef = this.gallery.ref('lightbox');\r\n\r\n lightboxRef.setConfig({\r\n imageSize: ImageSize.Cover,\r\n thumbPosition: ThumbnailsPosition.Top,\r\n itemTemplate: this.itemTemplate\r\n })\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n get escola(): Escola {\r\n return this._escola;\r\n }\r\n\r\n @Input() set escola(value: Escola) {\r\n this._escola = value;\r\n this.loadImages();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n }\r\n\r\n public loadImages(): void {\r\n this.imageCount = -1;\r\n const galleryRef: GalleryRef = this.gallery.ref(this.galleryId);\r\n galleryRef.reset();\r\n firebase.functions().httpsCallable('escola_gallery')({cod_escola: this.escola.codigo}).then(value => {\r\n this.imageCount = (value.data?.images?.length);\r\n this.warning = value.data?.message;\r\n this.imagesData = [];\r\n value.data.images.map(fileItem => {\r\n const imageItemData: ImageItemData = {\r\n codigo: fileItem.codigo,\r\n title: fileItem.title,\r\n src: fileItem.src, \r\n thumb: fileItem.thumb\r\n };\r\n this.imagesData.push(imageItemData);\r\n });\r\n\r\n const first = this.imagesData[0]\r\n\r\n this.imagesData.forEach((item, index) => {\r\n console.log(item.title)\r\n if (!item.title) {\r\n item.title = `${String(index + 1).padStart(3, '0')}`\r\n }\r\n console.log(item.title)\r\n })\r\n\r\n first.title = '000'\r\n\r\n this.imagesData.sort((a, b) => {\r\n return a.title.localeCompare(b.title);\r\n });\r\n\r\n this.imagesData.map((fileItem) => {\r\n galleryRef.addImage(fileItem);\r\n });\r\n\r\n this.items = of(this.imagesData);\r\n });\r\n }\r\n\r\n removeImage(src: string, index: number): void {\r\n firebase.functions().httpsCallable('escola_gallery_remove')({cod_escola: this.escola.codigo, src}).then(() => {\r\n this.loadImages();\r\n });\r\n }\r\n\r\n setMainImage(src: string, index: number): void {\r\n firebase.functions().httpsCallable('escola_gallery_main')({cod_escola: this.escola.codigo, src}).then(() => {\r\n this.loadImages();\r\n });\r\n }\r\n\r\n moveLeft(currentIndex: number): void {\r\n const leftImage = this.imagesData[currentIndex - 1]\r\n const currentImage = this.imagesData[currentIndex]\r\n\r\n const leftTitle = leftImage.title\r\n leftImage.title = currentImage.title\r\n currentImage.title = leftTitle\r\n\r\n /*const body = {\r\n cod_escola: this.escola.codigo,\r\n items:[\r\n {\r\n codigo: leftImage.codigo,\r\n title: leftImage.title\r\n },\r\n {\r\n codigo: currentImage.codigo,\r\n title: currentImage.title\r\n }\r\n ]\r\n }*/\r\n\r\n const body = {\r\n cod_escola: this.escola.codigo,\r\n items:[]\r\n }\r\n\r\n this.imagesData.forEach((item) => {\r\n body.items.push({\r\n codigo: item.codigo,\r\n title: item.title\r\n })\r\n })\r\n\r\n firebase.functions().httpsCallable('escola_gallery_change_order')(body).then(() => {\r\n this.loadImages();\r\n });\r\n }\r\n\r\n moveRight(currentIndex: number): void {\r\n const rightImage = this.imagesData[currentIndex + 1]\r\n const currentImage = this.imagesData[currentIndex]\r\n\r\n const rightTitle = rightImage.title\r\n rightImage.title = currentImage.title\r\n currentImage.title = rightTitle\r\n\r\n const body = {\r\n cod_escola: this.escola.codigo,\r\n items:[\r\n {\r\n codigo: rightImage.codigo,\r\n title: rightImage.title\r\n },\r\n {\r\n codigo: currentImage.codigo,\r\n title: currentImage.title\r\n }\r\n ]\r\n }\r\n\r\n firebase.functions().httpsCallable('escola_gallery_change_order')(body).then(() => {\r\n this.loadImages();\r\n });\r\n }\r\n\r\n // moveThumb(index: number, count: number) {\r\n // //TODO: move it\r\n // }\r\n}\r\n","
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n \"Imagem\r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n \r\n\r\n\r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
    \r\n","import {AfterViewInit, Component, HostListener, Input, OnInit, ViewChild} from '@angular/core';\r\nimport {Escola, EscolaLista} from '../../service/Escola';\r\nimport {EscolaService} from '../../service/escola.service';\r\nimport {Router} from '@angular/router';\r\nimport firebase from 'firebase/app';\r\nimport {UserService} from '../../service/user.service';\r\nimport {FormControl} from '@angular/forms';\r\nimport {debounceTime, switchMap, tap} from 'rxjs/operators';\r\nimport {SlickCarouselComponent} from 'ngx-slick-carousel';\r\nimport * as clone from 'clone';\r\nimport {DefaultSliderConfig} from '../../navigation/Slider';\r\nimport {AnalyticsService} from '../../service/analytics.service';\r\nimport {SwiperOptions} from \"swiper\";\r\n\r\n@Component({\r\n selector: 'app-escola-list-horizontal',\r\n templateUrl: './escola-list-horizontal.component.html',\r\n styleUrls: ['./escola-list-horizontal.component.scss']\r\n})\r\nexport class EscolaListHorizontalComponent implements OnInit {\r\n\r\n private _escolaLista: EscolaLista;\r\n @Input() readonly = false;\r\n escolaFiltered: Escola[] | string[] = [];\r\n width: number;\r\n @Input() sliderConfig = DefaultSliderConfig;\r\n @Input() editing = false;\r\n canEdit = false;\r\n saving = false;\r\n isLoading = false;\r\n selectedEscola: Escola = null;\r\n escolaFormControl = new FormControl();\r\n loadingMessage: string = null;\r\n @ViewChild('slickModal') slickCarouselComponent: SlickCarouselComponent;\r\n config: SwiperOptions = {\r\n breakpoints: {\r\n 1600: {\r\n slidesPerView: 4,\r\n slidesPerGroup: 4,\r\n spaceBetween: 10,\r\n },\r\n 1280: {\r\n slidesPerView: 3,\r\n slidesPerGroup: 3,\r\n spaceBetween: 10,\r\n },\r\n 960: {\r\n slidesPerView: 2,\r\n slidesPerGroup: 2,\r\n spaceBetween: 5,\r\n },\r\n 600: {\r\n slidesPerView: 1,\r\n slidesPerGroup: 1,\r\n spaceBetween: 5,\r\n pagination: false\r\n },\r\n 1: {\r\n slidesPerView: 1,\r\n slidesPerGroup: 1,\r\n spaceBetween: 5,\r\n pagination: false\r\n }\r\n },\r\n autoHeight: true,\r\n lazy: true,\r\n navigation: false,\r\n slidesPerView: 5,\r\n spaceBetween: 10,\r\n pagination: {\r\n clickable: true,\r\n }\r\n };\r\n\r\n constructor(private escolaService: EscolaService,\r\n private route: Router,\r\n public userService: UserService,\r\n private analytics: AnalyticsService) {\r\n\r\n userService.userDataEvent.subscribe(value => {\r\n this.canEdit = (userService.master === true);\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.escolaFormControl.valueChanges.pipe(\r\n tap((value) => {\r\n this.escolaService.nome.setValue(value);\r\n }),\r\n debounceTime(1500),\r\n switchMap(value => {\r\n // the value can be a string or a Escola type\r\n if (typeof value === 'string') {\r\n this.selectedEscola = null;\r\n if (value.length < 3) {\r\n this.loadingMessage = `Digite ao menos 3 letras para pesquisar.`;\r\n } else {\r\n this.isLoading = true;\r\n const criteria = {\r\n nome: value\r\n };\r\n this.loadingMessage = `Procurando escolas com nome '${value}'`;\r\n firebase.functions().httpsCallable('nome_escola')(criteria).then(value1 => {\r\n if (value1.data?.length > 0) {\r\n this.escolaFiltered = value1.data;\r\n } else {\r\n this.escolaFiltered = [];\r\n }\r\n this.isLoading = false;\r\n });\r\n }\r\n } else {\r\n this.isLoading = false;\r\n this.selectedEscola = value;\r\n // Traga somente a escola marcada\r\n this.escolaFiltered = [value];\r\n }\r\n return [];\r\n })\r\n ).subscribe();\r\n\r\n if (this.escolaLista?.cod_escola != null) {\r\n this.refresh();\r\n }\r\n }\r\n\r\n @Input()\r\n set escolaLista(escolaLista: EscolaLista) {\r\n if (escolaLista) {\r\n this._escolaLista = escolaLista;\r\n // console.log('set EscolaLista: ' + escolaLista?.nome_lista);\r\n const escolaListaArray: EscolaLista[] = [];\r\n escolaListaArray.push(escolaLista);\r\n // console.log('Set escolaLista: ' + JSON.stringify(escolaListaArray));\r\n if (escolaLista.escola_lista) {\r\n this.analytics.escolaListaPrint(escolaListaArray);\r\n }\r\n }\r\n }\r\n\r\n get escolaLista(): EscolaLista {\r\n return this._escolaLista;\r\n }\r\n\r\n private async refresh(): Promise {\r\n this.escolaLista.escola_lista = null;\r\n firebase.functions().httpsCallable('listas')(this.escolaLista)\r\n .then(value => {\r\n this.escolaLista = value.data[0];\r\n this.analytics.escolaListaPrint(value.data);\r\n });\r\n }\r\n\r\n map(): void {\r\n this.escolaService.listas.setValue([this.escolaLista.nome_lista]);\r\n this.escolaService.filterOption.setValue('listaMap');\r\n this.route.navigate(['mapa']);\r\n }\r\n\r\n removeLista(): void {\r\n this.escolaLista.escola_lista = [];\r\n firebase.functions().httpsCallable('set_lista')(this.escolaLista)\r\n .then(value => {\r\n this.editing = false;\r\n this.refresh().then();\r\n });\r\n }\r\n\r\n addEscola(escola: Escola): void {\r\n this.escolaLista.escola_lista.push(escola);\r\n this.slickCarouselComponent.slickGoTo(this.slickCarouselComponent.slides.length);\r\n }\r\n\r\n displayEscola(item: any): string {\r\n if (item == null) {\r\n return null;\r\n } else if (item.nome) {\r\n return item.nome;\r\n } else {\r\n return item;\r\n }\r\n }\r\n\r\n removeEscola(escola: Escola): void {\r\n this.escolaLista.escola_lista.splice(this.escolaLista.escola_lista.indexOf(escola), 1);\r\n }\r\n\r\n saveLista(): void {\r\n this.saving = true;\r\n firebase.functions().httpsCallable('set_lista')(this.escolaLista)\r\n .then(value => {\r\n this.saving = false;\r\n this.editing = false;\r\n this.refresh().then();\r\n });\r\n }\r\n\r\n cancelEdit(): void {\r\n this.editing = false;\r\n this.refresh().then();\r\n }\r\n\r\n startEdit(): void {\r\n this.editing = true;\r\n this.escolaLista.nome_lista_original = this.escolaLista.nome_lista;\r\n }\r\n\r\n move(fromIndex: number, toIndex: number): void {\r\n if (fromIndex >= 0 && toIndex >= 0) {\r\n const cloneArray = clone(this.escolaLista.escola_lista);\r\n const escola = this.escolaLista.escola_lista[fromIndex];\r\n this.escolaLista.escola_lista.splice(fromIndex, 1);\r\n this.escolaLista.escola_lista.splice(toIndex, 0, escola);\r\n this.escolaLista.escola_lista = cloneArray;\r\n }\r\n // let s = '';\r\n // this.escolaLista.escola_lista.forEach(value => {\r\n // s += value.codigo + ' - ';\r\n // });\r\n // console.log(s);\r\n }\r\n\r\n trackEscola(index: number, element: Escola): number {\r\n return element ? element.codigo : null;\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n

    {{this.escolaLista.nome_lista}}

    \r\n
    \r\n \r\n \r\n Nome da Lista\r\n \r\n \r\n \r\n \r\n \r\n Prioridade: {{this.escolaLista.prioridade}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Ordem Randômica\r\n \r\n \r\n Ativa\r\n \r\n \r\n Prioridade\r\n \r\n \r\n \r\n \r\n \r\n Escola\r\n \r\n \r\n\r\n \r\n \r\n \r\n {{this.loadingMessage}}\r\n \r\n \r\n \r\n
    \r\n search\r\n {{escola}}\r\n
    \r\n
    \r\n
    \r\n

    {{escola.inep}}

    \r\n

    {{escola.nome}}

    \r\n

    {{escola.endereco}}\r\n

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n Concorrente\r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n \r\n
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n","import {AfterViewInit, ChangeDetectorRef, Component, Input, OnInit, Output, ViewChild} from '@angular/core';\r\nimport {Observable, of, BehaviorSubject} from 'rxjs';\r\nimport {Escola} from '../../service/Escola';\r\nimport {EventEmitter} from '@angular/core';\r\nimport {MatPaginator, PageEvent} from '@angular/material/paginator';\r\nimport {UserService} from '../../service/user.service';\r\nimport {map} from 'rxjs/operators';\r\nimport {AnalyticsService} from '../../service/analytics.service';\r\n\r\n@Component({\r\n selector: 'app-escola-list-vertical',\r\n templateUrl: './escola-list-vertical.component.html',\r\n styleUrls: ['./escola-list-vertical.component.scss']\r\n})\r\nexport class EscolaListVerticalComponent implements OnInit, AfterViewInit {\r\n\r\n private _escolaList: Observable>;\r\n @Input() escolaCount = 0;\r\n @Input() pageSize = 20;\r\n @Input() showPaginator = true;\r\n @Input() filterMessage: string;\r\n @Input() showDistanceInFooter = false;\r\n @Output() mouseEnterEscola = new EventEmitter<{ escola: Escola, index: number }>();\r\n @Output() mouseLeaveEscola = new EventEmitter<{ escola: Escola, index: number }>();\r\n @Output() paginatorPage = new EventEmitter();\r\n @Output() afterViewInit = new EventEmitter();\r\n @ViewChild('matPaginator', {static: true}) matPaginator: MatPaginator;\r\n @ViewChild('matPaginatorFooter', {static: true}) matPaginatorFooter: MatPaginator;\r\n\r\n private minDist: number;\r\n private maxDist: number;\r\n\r\n // nivelOrder = ['Berçário', 'Infantil', 'Fundamental I', 'Fundamental II', 'Ensino Médio'];\r\n\r\n constructor(\r\n public userService: UserService,\r\n private analytics: AnalyticsService,\r\n private changeDetector: ChangeDetectorRef,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.matPaginator) {\r\n this.matPaginator._intl.itemsPerPageLabel = 'Escolas por página:';\r\n this.matPaginator._intl.getRangeLabel = (page: number, pageSize: number, length: number): string => {\r\n\r\n if (this.showDistanceInFooter) {\r\n if (this.minDist && this.maxDist) {\r\n if (this.maxDist < 1) {\r\n return `Escolas até ${Math.round(this.maxDist * 1000)} metros`;\r\n } else {\r\n return `Escolas até ${Math.round(this.maxDist * 100) / 100} km`;\r\n }\r\n }\r\n }\r\n\r\n if (length === 0 || pageSize === 0) {\r\n // return `0 de ${length}`;\r\n return '';\r\n }\r\n\r\n length = Math.max(length, 0);\r\n\r\n const startIndex = page * pageSize;\r\n\r\n // If the start index exceeds the list length, do not try and fix the end index to the end.\r\n const endIndex = startIndex < length ?\r\n Math.min(startIndex + pageSize, length) :\r\n startIndex + pageSize;\r\n\r\n return `${startIndex + 1} - ${endIndex} de ${length} Escolas`;\r\n };\r\n }\r\n }\r\n\r\n get escolaList(): Observable> | Array {\r\n return this._escolaList;\r\n }\r\n\r\n @Input()\r\n set escolaList(observable) {\r\n if (Array.isArray(observable)) {\r\n this._escolaList = of(observable);\r\n } else {\r\n this._escolaList = observable;\r\n }\r\n if (this._escolaList) {\r\n this._escolaList.pipe(map(value => {\r\n if (value) {\r\n this.minDist = null;\r\n this.maxDist = null;\r\n // console.log('paginator: ' + JSON.stringify(value));\r\n value.forEach(escola => {\r\n if (escola.km) {\r\n this.minDist = Math.min(this.minDist ?? escola.km, escola.km);\r\n this.maxDist = Math.max(this.maxDist ?? escola.km, escola.km);\r\n }\r\n });\r\n // this.changeDetectorRef.detectChanges();\r\n // this.changeDetectorRef.markForCheck();\r\n // console.log(`min: ${this.minDist} max: ${this.maxDist}`);\r\n \r\n this.matPaginator.length = this.matPaginator.length; // Force repaint\r\n }\r\n })).subscribe();\r\n }\r\n }\r\n\r\n updatePaginator(pageEvent: PageEvent): void {\r\n if (this.matPaginator) {\r\n this.paginatorPage.emit(pageEvent);\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.afterViewInit.emit();\r\n }\r\n}\r\n","
    0)? 'block': 'none'\">\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
    \r\n
    \r\n {{this.filterMessage}}\r\n \r\n \r\n
    \r\n","import { Component, Input, AfterViewInit } from '@angular/core';\r\n\r\n\r\n@Component({\r\n selector: 'app-escola-lista',\r\n templateUrl: './escola-lista.component.html',\r\n styleUrls: ['./escola-lista.component.css']\r\n})\r\nexport class EscolaListaComponent implements AfterViewInit {\r\n @Input() public escolaList: any[] = [];\r\n @Input() public loading: boolean = true;\r\n\r\n constructor() { }\r\n\r\n ngAfterViewInit() {\r\n const divDados = document.getElementById('data-lista-escolas');\r\n if (divDados) {\r\n const targetContainer = document.getElementById('div-lista-escolas');\r\n if (targetContainer) {\r\n targetContainer.appendChild(divDados);\r\n }\r\n } else {\r\n window.location.reload();\r\n }\r\n }\r\n}","
    \r\n
    \r\n

    Lista de Escolas

    \r\n
    \r\n\r\n
    \r\n
    \r\n
    ","import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport MapTypeId = google.maps.MapTypeId;\r\nimport ZoomControlStyle = google.maps.ZoomControlStyle;\r\nimport { Escola } from '../../service/Escola';\r\nimport { environment } from '../../../environments/environment';\r\n\r\n@Component({\r\n selector: 'app-escola-map',\r\n templateUrl: './escola-map.component.html',\r\n styleUrls: ['./escola-map.component.css'],\r\n})\r\nexport class EscolaMapComponent implements OnInit {\r\n @ViewChild('staticMapImage', { static: true }) staticImageMap: HTMLImageElement;\r\n @Input() escola: Escola;\r\n mapSizeWidth = 300;\r\n mapSizeHeight = 160;\r\n GOOGLE_MAPS_API_KEY = environment.GOOGLE_MAPS_API_KEY;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n this.mapSizeWidth = innerWidth / 2;\r\n\r\n // src=\"https://maps.googleapis.com/maps/api/staticmap?\r\n // center=Brooklyn+Bridge,New+York,NY&zoom=13&\r\n // size=600x300&maptype=roadmap&\r\n // markers=color:blue%7Clabel:S%7C40.702147,-74.015794&\r\n // markers=color:green%7Clabel:G%7C40.711614,-74.012318&\r\n // markers=color:red%7Clabel:C%7C40.718217,-73.998284&\r\n // key=AIzaSyA3kg7YWugGl1lTXmAmaBGPNhDW9pEh5bo&\r\n // signature=GJnbP6sQrFY1ce8IsvG2WR2P0Jw=\"\r\n // this.staticImageMap.src = 'https://maps.googleapis.com/maps/api/staticmap?'\r\n // + 'center=' + this.escola.latitude + ',' + this.escola.longitude\r\n // + '&zoom=13&maptype=roadmap'\r\n // + '&key=' + environment.GOOLE_MAPS_API_KEY;\r\n }\r\n}\r\n","\r\n
    \r\n \"{{escola.nome}}\"\r\n
    \r\n","import {Component, Inject, OnInit} from '@angular/core';\r\nimport {PagseguroService, Plano} from '../../service/pagseguro.service';\r\nimport {Escola} from '../../service/Escola';\r\nimport {MAT_DIALOG_DATA} from '@angular/material/dialog';\r\nimport {AnalyticsService} from '../../service/analytics.service';\r\n\r\n@Component({\r\n selector: 'app-escola-products',\r\n templateUrl: './escola-products.component.html',\r\n styleUrls: ['./escola-products.component.css']\r\n})\r\nexport class EscolaProductsComponent implements OnInit {\r\n\r\n saving = false;\r\n\r\n constructor(\r\n public pagseguroService: PagseguroService,\r\n @Inject(MAT_DIALOG_DATA) public escola: Escola,\r\n private analytics: AnalyticsService,\r\n ) {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n checkout(plano: Plano): void {\r\n this.saving = true;\r\n // console.log(`plano: ${JSON.stringify(plano)} saving: ${this.saving} escola: ${this.escola.inep}`);\r\n\r\n const codigo = (this.escola) ? this.escola.inep : null;\r\n this.analytics.clickComprar(codigo, plano.nome);\r\n this.pagseguroService.checkout(plano, codigo).then(() => {\r\n this.saving = false;\r\n });\r\n }\r\n}\r\n","
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n

    Produtos

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \"\"/\r\n

    {{item.nome}}

    \r\n {{i}}\r\n
    \r\n {{i}}\r\n
    \r\n

    {{item.valor | currency:'BRL':'symbol':'1.2-2': 'pt-BR'}}

    \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {Escola} from '../../service/Escola';\r\nimport {DomSanitizer} from '@angular/platform-browser';\r\nimport {EscolaService} from '../../service/escola.service';\r\nimport {UserService} from '../../service/user.service';\r\n\r\n@Component({\r\n selector: 'app-escola-result',\r\n templateUrl: './escola-result.component.html',\r\n styleUrls: ['./escola-result.component.scss']\r\n})\r\nexport class EscolaResultComponent implements OnInit {\r\n\r\n @Input() escola: Escola;\r\n @Input() imageSrc: string;\r\n logo;\r\n escolaService = EscolaService;\r\n\r\n constructor(\r\n private sanitizer: DomSanitizer,\r\n public userService: UserService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.escola.logo_escola) {\r\n this.logo = this.sanitizer.bypassSecurityTrustResourceUrl(\r\n `data:image/png;base64, ${this.escola.logo_escola}`);\r\n } else {\r\n this.logo = './images/icone-site-150x150.png';\r\n }\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import {Component, Input, OnInit} from '@angular/core';\r\nimport {Score} from '../../service/Escola';\r\n\r\n@Component({\r\n selector: 'app-escola-score',\r\n templateUrl: './escola-score.component.html',\r\n styleUrls: ['./escola-score.component.scss'],\r\n // animations: [\r\n // trigger('grow', [\r\n // state('closed', style({\r\n // hei: 0,\r\n // })),\r\n // state('open', style({\r\n // width: 400\r\n // })),\r\n // transition('* => *', animate(150))\r\n // ]),\r\n // ]\r\n})\r\nexport class EscolaScoreComponent implements OnInit {\r\n @Input() score: Score;\r\n @Input() expanded = false;\r\n @Input() canExpand = true;\r\n @Input() small = false;\r\n maxIcons = 5;\r\n scoreMax = 10;\r\n showTotal = true;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n get rate() {\r\n return (this.score.score / this.score.total);\r\n }\r\n\r\n set rate(value) {\r\n this.score.score = value * this.score.total;\r\n }\r\n\r\n getTooltip(): string {\r\n return 'Afinidade: ' + Math.round(this.score.score) + '/' + this.score.total;\r\n }\r\n\r\n toggleExpanded(): void {\r\n if (this.canExpand) {\r\n this.expanded = !this.expanded;\r\n }\r\n }\r\n\r\n getFinalScore(): number {\r\n\r\n //let score = this.rate * this.scoreMax\r\n //score = score / 5 * 100\r\n let score = this.rate * 100\r\n //score = Math.round(score * 10) / 10\r\n\r\n if (score > 100) {\r\n score = 100\r\n }\r\n\r\n return score\r\n }\r\n}\r\n","
    \r\n
    \r\n \r\n Afinidade com seu perfil: {{this.getFinalScore() | number:'1.1-1':'pt-BR'}}%\r\n \r\n
    \r\n
    \r\n \r\n {{this.getFinalScore() | number:'1.1-1':'pt-BR'}}%\r\n \r\n
    \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n check_circle\r\n check_circle\r\n \r\n \r\n \r\n\r\n
    \r\n
    \r\n \r\n {{item.text}}:\r\n \r\n \r\n {{item.score !== null? (item.score | number:'1.2-2':'pt-BR') : '-'}}/{{item.total}}\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-escola-video',\r\n templateUrl: './escola-video.component.html',\r\n styleUrls: ['./escola-video.component.css']\r\n})\r\nexport class EscolaVideoComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","

    escola-video works!

    \r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-layout',\r\n templateUrl: './layout.component.html',\r\n styleUrls: ['./layout.component.css']\r\n})\r\nexport class LayoutComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
    \r\n
    \r\n \r\n
    \r\n
    \r\n","import {AfterViewInit, Component, Input, OnInit, ViewChild} from '@angular/core';\r\nimport {SwiperComponent} from 'swiper/angular';\r\nimport {SwiperOptions} from 'swiper';\r\nimport {UserService} from '../../service/user.service';\r\nimport firebase from 'firebase';\r\nimport {Parceiro} from '../../service/Parceiro';\r\nimport {AnalyticsService} from '../../service/analytics.service';\r\n\r\n@Component({\r\n selector: 'app-parceiro',\r\n templateUrl: './parceiro.component.html',\r\n styleUrls: ['./parceiro.component.scss']\r\n})\r\nexport class ParceiroComponent implements OnInit, AfterViewInit {\r\n\r\n @Input() flag_exibir_pagina_escola: boolean | null = null;\r\n @Input() flag_exibir_pagina_parceiro: boolean | null = null;\r\n parceiroArray: Array = [];\r\n @ViewChild('swiperComponent', {static: false}) swiperComponent: SwiperComponent;\r\n width: number;\r\n loadingParceiro = false;\r\n loadingEscolaFilter = false;\r\n loadingMessage: string = null;\r\n config: SwiperOptions = {\r\n breakpoints: {\r\n 1600: {\r\n slidesPerView: 4,\r\n slidesPerGroup: 4,\r\n spaceBetween: 10,\r\n },\r\n 1280: {\r\n slidesPerView: 3,\r\n slidesPerGroup: 3,\r\n spaceBetween: 10,\r\n },\r\n 960: {\r\n slidesPerView: 2,\r\n slidesPerGroup: 2,\r\n spaceBetween: 5,\r\n },\r\n 600: {\r\n slidesPerView: 1,\r\n slidesPerGroup: 1,\r\n spaceBetween: 5,\r\n pagination: false\r\n },\r\n 1: {\r\n slidesPerView: 1,\r\n slidesPerGroup: 1,\r\n spaceBetween: 5,\r\n pagination: false\r\n }\r\n },\r\n autoHeight: true,\r\n lazy: true,\r\n navigation: false,\r\n slidesPerView: 5,\r\n spaceBetween: 10,\r\n pagination: {\r\n clickable: true,\r\n }\r\n };\r\n\r\n constructor(public userService: UserService,\r\n public analytics: AnalyticsService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n firebase.functions().httpsCallable('parceiro')({\r\n flag_exibir_pagina_escola: this.flag_exibir_pagina_escola,\r\n flag_exibir_pagina_parceiro: this.flag_exibir_pagina_parceiro\r\n }).then(value => {\r\n // console.log(JSON.stringify(value));\r\n if (value == null) {\r\n this.parceiroArray = null;\r\n } else {\r\n this.parceiroArray = value.data;\r\n }\r\n });\r\n }\r\n\r\n previousClick(): void {\r\n this.swiperComponent.swiperRef.slidePrev();\r\n }\r\n\r\n nextClick(): void {\r\n this.swiperComponent.swiperRef.slideNext();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n }\r\n}\r\n","
    \r\n
    0\">\r\n \r\n\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    ","import {AfterViewInit, Component, ElementRef, Inject, OnInit, ViewChild} from '@angular/core';\r\nimport {educacaoBilingue, Escola, tags} from '../../service/Escola';\r\nimport {NivelEnsinoArray, NivelEnsinoAttributes, NivelEnsinoData} from '../../service/NivelEnsino';\r\nimport {animate, keyframes, state, style, transition, trigger} from '@angular/animations';\r\nimport firebase from 'firebase/app';\r\nimport {MatSnackBar} from '@angular/material/snack-bar';\r\nimport {DateAdapter, MAT_DATE_LOCALE} from '@angular/material/core';\r\nimport {UserService} from '../../service/user.service';\r\nimport {ActivatedRoute, Router} from '@angular/router';\r\nimport {LoginDialogComponent} from '../../navigation/auth/login-dialog/login-dialog.component';\r\nimport {MatDialog} from '@angular/material/dialog';\r\nimport {MatCheckbox} from '@angular/material/checkbox';\r\nimport {Observable} from 'rxjs';\r\n\r\nexport interface Perfil {\r\n serie: string;\r\n data_nascimento?: any;\r\n iiesa_min?: number;\r\n icdsa_min?: number;\r\n tags: Array;\r\n endereco?: any;\r\n place?: google.maps.places.PlaceResult;\r\n mensalidade_media?: number;\r\n bilingue?: string;\r\n total_alunos?: {\r\n text: string;\r\n min: number;\r\n max: number;\r\n };\r\n continuidade?: boolean;\r\n nome?: string;\r\n}\r\n\r\n@Component({\r\n selector: 'app-perfil-afinidade',\r\n templateUrl: './perfil-afinidade.component.html',\r\n styleUrls: ['./perfil-afinidade.component.scss'],\r\n animations: [\r\n trigger('bounce', [transition(':increment',\r\n [\r\n animate('1000ms ease-in', keyframes([\r\n style({color: 'red', offset: 0.1}),\r\n style({transform: 'translate3d(-3px, 0, 0)', offset: 0.1}),\r\n style({transform: 'translate3d(3px, 0, 0)', offset: 0.2}),\r\n style({transform: 'translate3d(-6px, 0, 0)', offset: 0.3}),\r\n style({transform: 'translate3d(6px, 0, 0)', offset: 0.4}),\r\n style({transform: 'translate3d(-6px, 0, 0)', offset: 0.5}),\r\n style({transform: 'translate3d(6px, 0, 0)', offset: 0.6}),\r\n style({transform: 'translate3d(-6px, 0, 0)', offset: 0.7}),\r\n style({transform: 'translate3d(3px, 0, 0)', offset: 0.8}),\r\n style({transform: 'translate3d(-3px, 0, 0)', offset: 0.9}),\r\n ])),\r\n ]\r\n )]),\r\n trigger('Fading', [\r\n state('false', style({opacity: 0, display: 'none'})),\r\n state('true', style({opacity: 1, display: ''})),\r\n transition(':enter', animate('800ms ease-out')),\r\n transition(':leave', animate('100ms ease-in')),\r\n ])\r\n ]\r\n})\r\nexport class PerfilAfinidadeComponent implements OnInit, AfterViewInit {\r\n\r\n perfil_teste: Perfil = {\r\n serie: 'Berçário',\r\n data_nascimento: '2022-06-22T13:07:46.679Z',\r\n iiesa_min: 100,\r\n icdsa_min: 100,\r\n tags: [\r\n 'Tecnologia nos processos de ensino',\r\n 'Vestibular',\r\n 'Acolhimento emocional'\r\n ],\r\n endereco: 'R. Augusta - Consolação, São Paulo - SP, Brazil',\r\n place: null,\r\n // {\r\n // url: 'https://maps.google.com/?q=Jundia%C3%AD+-+State+of+S%C3%A3o+Paulo,+Brazil&ftid=0x94cf24223aa04809:0x9b5da316714a9a7e',\r\n // icon: 'https://maps.gstatic.com/mapfiles/place_api/icons/v1/png_71/geocode-71.png',\r\n // name: 'Jundiaí',\r\n // types: ['administrative_area_level_2', 'political'],\r\n // photos: [],\r\n // website: 'http://www.jundiai.sp.gov.br/',\r\n // geometry: {\r\n // // location: {\r\n // // lat: {}, lng: {}\r\n // // },\r\n // // viewport: {\r\n // // Ra: {\r\n // // hi: -46.78643191320362,\r\n // // lo: -47.02889052653374},\r\n // // wb: {\r\n // // hi: -23.07637676883089,\r\n // // lo: -23.32683334870078}\r\n // // }\r\n // },\r\n // place_id: 'ChIJCUigOiIkz5QRfppKcRajXZs',\r\n // utc_offset: -180,\r\n // adr_address: 'Jundiaí - State of São Paulo\r\n // , Brazil',\r\n // formatted_address: 'Jundiaí - State of São Paulo, Brazil',\r\n // html_attributions: [],\r\n // address_components: [{\r\n // types: ['administrative_area_level_2', 'political'],\r\n // long_name: 'Jundiaí',\r\n // short_name: 'Jundiaí'\r\n // }, {\r\n // types: ['administrative_area_level_1', 'political'],\r\n // long_name: 'State of São Paulo',\r\n // short_name: 'SP'\r\n // }, {types: ['country', 'political'], long_name: 'Brazil', short_name: 'BR'}],\r\n // icon_mask_base_uri: 'https://maps.gstatic.com/mapfiles/place_api/icons/v2/generic_pinlet',\r\n // utc_offset_minutes: -180,\r\n // icon_background_color: '#7B9EB0'\r\n // },\r\n bilingue: 'Programa Opcional',\r\n // localizacao: {\r\n // lat: -23.1856699, lng: -46.8892603\r\n // }\r\n mensalidade_media: 2000,\r\n total_alunos: {\r\n text: 'Pequena - Até 200 alunos',\r\n min: null,\r\n max: null\r\n },\r\n continuidade: true,\r\n nome: 'Teste'\r\n };\r\n\r\n perfil: Perfil = {\r\n serie: null,\r\n iiesa_min: 100,\r\n icdsa_min: 100,\r\n tags: [],\r\n };\r\n\r\n warnMax = false;\r\n maxTags = 3;\r\n newPerfil = true;\r\n iiesaArray: Array = [0, 25, 50, 75];\r\n icdsaArray: Array = [0, 25, 50, 75];\r\n mensalidadeArray: Array = [1000, 2000, 3000, 4000, 5000, 6000, 7000, 8000];\r\n totalAlunosArray: Array<{ text: string, min: number, max: number }> = [\r\n {text: 'Pequena - Até 200 alunos', min: null, max: 200},\r\n {text: 'Média - Entre 201 e 500 alunos', min: 201, max: 500},\r\n {text: 'Grande - Mais de 500 alunos', min: 501, max: null},\r\n ];\r\n @ViewChild('addressInput') addressInput: ElementRef;\r\n placeErrorMessage: string = null;\r\n continuidadeArray: Array<{ text: string, value: boolean }> = [\r\n {text: 'Sim', value: true},\r\n {text: 'Não', value: false}\r\n ];\r\n\r\n @ViewChild('serieDiv', {static: true}) serieDiv: ElementRef;\r\n @ViewChild('nascimentoDiv', {static: true}) nascimentoDiv: ElementRef;\r\n @ViewChild('iiesaDiv', {static: true}) iiesaDiv: ElementRef;\r\n @ViewChild('icdsaDiv', {static: true}) icdsaDiv: ElementRef;\r\n @ViewChild('tagsDiv', {static: true}) tagsDiv: ElementRef;\r\n @ViewChild('mensalidadeDiv', {static: true}) mensalidadeDiv: ElementRef;\r\n @ViewChild('placeDiv', {static: true}) placeDiv: ElementRef;\r\n @ViewChild('bilingueDiv', {static: true}) bilingueDiv: ElementRef;\r\n @ViewChild('totalalunosDiv', {static: true}) totalalunosDiv: ElementRef;\r\n @ViewChild('continuidadeDiv', {static: false}) continuidadeDiv: ElementRef;\r\n @ViewChild('disableIIESA', {static: true}) disableIIESA: MatCheckbox;\r\n @ViewChild('disableICDSA', {static: true}) disableICDSA: MatCheckbox;\r\n @ViewChild('disableTags', {static: true}) disableTags: MatCheckbox;\r\n @ViewChild('disableMensalidade', {static: true}) disableMensalidade: MatCheckbox;\r\n @ViewChild('disablePlace', {static: true}) disablePlace: MatCheckbox;\r\n @ViewChild('disableBilingue', {static: true}) disableBilingue: MatCheckbox;\r\n @ViewChild('disableTotalAlunos', {static: true}) disableTotalAlunos: MatCheckbox;\r\n @ViewChild('disableContinuidade', {static: true}) disableContinuidade: MatCheckbox;\r\n\r\n bounce = 0;\r\n loading = false;\r\n escolaList: Array;\r\n nascimentoStartDate = new Date(2000, 0, 1);\r\n showNome: false;\r\n returnURL: string = null;\r\n afterCloseLogin: Observable = null;\r\n\r\n constructor(\r\n private router: Router,\r\n private _snackBar: MatSnackBar,\r\n private _adapter: DateAdapter,\r\n private userService: UserService,\r\n private matDialog: MatDialog,\r\n private route: ActivatedRoute,\r\n @Inject(MAT_DATE_LOCALE) private _locale: string,\r\n ) {\r\n userService.userDataEvent.subscribe(value => {\r\n if (value) {\r\n this.refreshData();\r\n }\r\n });\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.initPlaceAutocomplete();\r\n this.refreshData();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.route.queryParams.subscribe(params => {\r\n this.returnURL = params[\"returnURL\"];\r\n });\r\n }\r\n\r\n private refreshData() {\r\n if (this.userService.userData?.perfil) {\r\n this.perfil = this.userService.userData.perfil;\r\n }\r\n }\r\n\r\n private initPlaceAutocomplete(): void {\r\n const nativeInput = this.addressInput.nativeElement;\r\n\r\n // Create the autocomplete object, restricting the search predictions to\r\n // @ts-ignore\r\n nativeInput.geolocate = () => {\r\n // @ts-ignore\r\n geolocate();\r\n };\r\n const autocomplete = new google.maps.places.Autocomplete(\r\n nativeInput,\r\n {\r\n types: ['geocode'], // 'establishment' / 'address' / 'geocode'\r\n componentRestrictions: {country: 'BR'},\r\n });\r\n // Avoid paying for data that you don't need by restricting the set of\r\n // place fields that are returned to just the address components:\r\n // address_component, adr_address, business_status, formatted_address, geometry, icon, name, permanently_closed,\r\n // photo, place_id, plus_code, type, url, utc_offset, or vicinity\r\n // source: https://developers.google.com/maps/documentation/places/web-service/usage-and-billing#autocomplete\r\n autocomplete.setFields(['geometry', 'formatted_address']);\r\n // When the user selects an address from the drop-down, populate the\r\n // address fields in the form.\r\n google.maps.event.addListener(autocomplete, 'place_changed', () => {\r\n this.placeSelected(autocomplete.getPlace());\r\n });\r\n }\r\n\r\n placeSelected(event: google.maps.places.PlaceResult): void {\r\n if (event) {\r\n // console.log('Event: ' + JSON.stringify(event));\r\n if (event.geometry) {\r\n // console.log('Location: ' + JSON.stringify(event.geometry.location));\r\n this.perfil.endereco = event.formatted_address || this.addressInput.nativeElement.value;\r\n this.perfil.place = JSON.parse(JSON.stringify(event));\r\n this.placeErrorMessage = null;\r\n } else {\r\n this.perfil.endereco = event.name;\r\n this.perfil.place = null;\r\n this.placeErrorMessage = 'Selecione uma localização válida.';\r\n }\r\n\r\n // console.log(`localizacao: ${JSON.stringify(this.perfil.localizacao)}`);\r\n } else {\r\n console.log('invalid address');\r\n }\r\n }\r\n\r\n totalAlunoCompare(f1: Perfil['total_alunos'], f2: Perfil['total_alunos']): boolean {\r\n return f1.text === f2.text;\r\n }\r\n\r\n get tags(): Array {\r\n return tags;\r\n }\r\n\r\n get educacaoBilingue() {\r\n return educacaoBilingue;\r\n }\r\n\r\n get nivelEnsinoArray() {\r\n return NivelEnsinoArray;\r\n }\r\n\r\n selectTag(tag: string): void {\r\n this.perfil.tags.push(tag);\r\n // console.log(`Tags: ${JSON.stringify(this.tagControl.value)}`);\r\n }\r\n\r\n toggleSelect(tag: string): void {\r\n if (!this.perfil.tags) {\r\n this.perfil.tags = [];\r\n }\r\n const index = this.perfil.tags.indexOf(tag);\r\n this.warnMax = false;\r\n\r\n if (index >= 0) {\r\n this.perfil.tags.splice(index, 1);\r\n } else {\r\n if (this.perfil.tags.length < this.maxTags) {\r\n this.perfil.tags.push(tag);\r\n } else {\r\n this.warnMax = true;\r\n }\r\n }\r\n }\r\n\r\n changedValueNivel($event: any) {\r\n if (this.nivelEnsinoArray.indexOf(this.perfil.serie) === this.nivelEnsinoArray.length - 1) {\r\n this.perfil.continuidade = null;\r\n // console.log('valueContinuidade: ' + this.valueContinuidade);\r\n }\r\n }\r\n\r\n calcularPerfil(event: MouseEvent): void {\r\n let scroll = Number.MAX_VALUE;\r\n this.loading = true;\r\n\r\n this.bounce++;\r\n if (this.perfil.serie == null) {\r\n scroll = Math.min(this.serieDiv.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n // if (this.perfil.data_nascimento === null) {\r\n // scroll = Math.min(this.nascimentoDiv.nativeElement.getBoundingClientRect().top, scroll);\r\n // }\r\n // if (!this.disableIIESA.checked && (this.perfil.icdsa_min === null)) {\r\n // scroll = Math.min(this.iiesaDiv.nativeElement.getBoundingClientRect().top, scroll);\r\n // }\r\n // if (!this.disableICDSA.checked && (this.perfil.icdsa_min === null)) {\r\n // scroll = Math.min(this.icdsaDiv.nativeElement.getBoundingClientRect().top, scroll);\r\n // }\r\n if (!this.disableTags.checked && (this.perfil.tags?.length === 0)) {\r\n scroll = Math.min(this.tagsDiv.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n if (!this.disableMensalidade.checked && (this.perfil.mensalidade_media == null)) {\r\n scroll = Math.min(this.mensalidadeDiv.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n if (!this.disablePlace.checked && (this.perfil.place === undefined)) {\r\n scroll = Math.min(this.placeDiv.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n if (!this.disableBilingue.checked && (this.perfil.bilingue == null)) {\r\n scroll = Math.min(this.bilingueDiv.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n if (!this.disableContinuidade.checked && this.perfil.continuidade == null) {\r\n scroll = Math.min(this.continuidadeDiv?.nativeElement.getBoundingClientRect().top, scroll);\r\n }\r\n\r\n // console.log('scroll:' + scroll);\r\n if (scroll < Number.MAX_VALUE) {\r\n window.scrollBy({behavior: 'smooth', top: scroll - 100});\r\n this.loading = false;\r\n return;\r\n }\r\n\r\n if (this.userService.getCurrentUser()) {\r\n\r\n const data = {\r\n perfil: this.perfil,\r\n order: 'score',\r\n fields: 'map'\r\n };\r\n // console.log(JSON.stringify(data));\r\n\r\n this.loading = true;\r\n this.setPerfil(event);\r\n\r\n // firebase.functions().httpsCallable('escola')(data).then(value => {\r\n // if (value == null) {\r\n // this.escolaList = null;\r\n // } else {\r\n // this.escolaList = value.data.rows;\r\n // }\r\n // this.loading = false;\r\n // }).catch(\r\n // ex => {\r\n // this._snackBar.open(ex.message, 'Ok', {duration: 5000});\r\n // this.loading = false;\r\n // }\r\n // );\r\n\r\n\r\n } else {\r\n if (this.afterCloseLogin === null) {\r\n this.afterCloseLogin = this.matDialog.open(LoginDialogComponent, {id: 'loginDialog'}).afterClosed();\r\n this.afterCloseLogin.subscribe(value => {\r\n this.userService.loadUserData().then(value1 => {\r\n this.setPerfil(event, false);\r\n });\r\n });\r\n }\r\n }\r\n\r\n // console.log(`perfil: ${JSON.stringify(this.perfil)}`);\r\n }\r\n\r\n async setPerfil(event: MouseEvent, goToMap: boolean = true) {\r\n await firebase.functions().httpsCallable('set_perfil')({perfil: this.perfil})\r\n .then(value => {\r\n this.userService.setPerfil(value);\r\n \r\n if (this.returnURL) {\r\n this.router.navigate([this.returnURL]);\r\n } else {\r\n this.router.navigate(['/mapa'], {queryParams: {type: 'perfil'}});\r\n }\r\n \r\n /*if (event.shiftKey) {\r\n console.log(this.userService.userData.perfil);\r\n } else {\r\n if (goToMap) {\r\n window.scrollTo({top: 0, left: 0, behavior: undefined});\r\n this.router.navigate(['mapa'], {queryParams: {type: 'perfil'}});\r\n }\r\n // window.scroll({top: 0, left: 0, behavior: 'auto'});\r\n }*/\r\n this.loading = false;\r\n }\r\n );\r\n }\r\n\r\n setDataNascimento(value): void {\r\n this.perfil.data_nascimento = value;\r\n }\r\n\r\n toggleDisablePlace(disable: boolean) {\r\n if (disable) {\r\n this.perfil.place = null;\r\n this.perfil.endereco = null;\r\n } else {\r\n this.perfil.place = undefined;\r\n this.perfil.endereco = undefined;\r\n }\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n

    \r\n Perfil de afinidade família-escola\r\n

    \r\n

    \r\n Quer saber quais escolas têm maior afinidade com o que você busca para seu(s) filho(s)? Selecione o que é mais importante para você e veja a lista de escolas por ordem de afinidade.\r\n

    \r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n Para qual nível de ensino está buscando?\r\n

    \r\n
    \r\n
    \r\n \r\n \r\n \r\n {{item}}\r\n \r\n \r\n
    \r\n\r\n
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
    \r\n
    \r\n

    0) || (this.perfil.tags === null) ? 0 : this.bounce\">\r\n Quero uma escola que se destaque por (selecione até 3)\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n\r\n\r\n \r\n = 0)\">\r\n {{item}}\r\n \r\n \r\n \r\n Esse critério não é relevante\r\n \r\n\r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n Selecione o valor médio da mensalidade\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n R$ {{item| number:'1.2-2':'pt-BR'}}\r\n \r\n \r\n \r\n Esse critério não é relevante\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n Em que região está buscando?\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n {{placeErrorMessage}}\r\n \r\n Esse critério não é relevante\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n É importante que a escola seja bilíngue?\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n {{item}}\r\n \r\n \r\n \r\n \r\n Esse critério não é relevante\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n Está buscando uma escola de qual tamanho?\r\n

    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n {{item.text}}\r\n \r\n \r\n \r\n \r\n Esse critério não é relevante\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n A escola deve ter continuidade para o {{this.nivelEnsinoArray[this.nivelEnsinoArray.indexOf(this.perfil.serie) + 1]}}\r\n

    \r\n\r\n\r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n {{item.text}}\r\n \r\n \r\n \r\n \r\n Esse critério não é relevante\r\n \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n

    \r\n Nome do perfil\r\n

    \r\n

    Nome do perfil é ...

    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n\r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n","import {ChangeDetectorRef, Component, ElementRef, Inject, Input, OnDestroy, OnInit, ViewChild} from '@angular/core';\r\nimport {SwiperOptions} from 'swiper';\r\nimport {Escola, EscolaLista} from '../service/Escola';\r\nimport {MatBottomSheet} from '@angular/material/bottom-sheet';\r\nimport {EscolaService, orderTypeEnum} from '../service/escola.service';\r\nimport {LabelType, Options} from '@angular-slider/ngx-slider';\r\nimport {MatSelectionList} from '@angular/material/list';\r\nimport {MatMenu, MatMenuTrigger} from '@angular/material/menu';\r\nimport {debounceTime, share, takeUntil, tap} from 'rxjs/operators';\r\nimport {MAT_DIALOG_DATA, MatDialog, MatDialogRef} from '@angular/material/dialog';\r\nimport firebase from 'firebase/app';\r\nimport {EscolaListVerticalComponent} from '../layout/escola-list-vertical/escola-list-vertical.component';\r\nimport * as $ from 'jquery';\r\nimport * as LZString from 'lz-string';\r\nimport {EscolaFilterAllComponent} from '../layout/escola-filter-all/escola-filter-all.component';\r\nimport {UserService} from '../service/user.service';\r\nimport {FormControl} from '@angular/forms';\r\nimport {getTag, Tag, Tags} from '../service/Tag';\r\nimport {COMMA, ENTER} from '@angular/cdk/keycodes';\r\nimport {ActivatedRoute} from '@angular/router';\r\nimport {MatPaginator} from '@angular/material/paginator';\r\nimport {CellepUnidade, cod_parceiro} from '../service/cellep';\r\nimport {\r\n checkSvg,\r\n ICON_DEFAULT,\r\n ICON_OVER,\r\n ICON_SELECTED,\r\n pinCellep,\r\n pinDisabled,\r\n pinSchool,\r\n pinSchoolCellep, pinSchoolSelectd\r\n} from '../service/Map';\r\nimport {AnalyticsService} from '../service/analytics.service';\r\nimport {GoogleMap, MapInfoWindow, MapMarker} from '@angular/google-maps';\r\nimport LatLng = google.maps.LatLng;\r\nimport Marker = google.maps.Marker;\r\nimport MapOptions = google.maps.MapOptions;\r\nimport Autocomplete = google.maps.places.Autocomplete;\r\nimport PlaceResult = google.maps.places.PlaceResult;\r\nimport Animation = google.maps.Animation;\r\nimport {PaginatorComponent} from '../navigation/paginator/paginator.component';\r\nimport {parseAddressName} from '../layout/escola-filter-header/escola-filter-header.component';\r\nimport {Perfil} from '../layout/perfil-afinidade/perfil-afinidade.component';\r\nimport LatLngLiteral = google.maps.LatLngLiteral;\r\nimport {Subject} from 'rxjs';\r\n\r\n@Component({\r\n selector: 'app-mapa',\r\n templateUrl: './mapa.component.html',\r\n styleUrls: ['./mapa.component.scss']\r\n})\r\nexport class MapaComponent implements OnInit, OnDestroy {\r\n\r\n // @ViewChild(GoogleMap, {static: false}) map: GoogleMap;\r\n map: google.maps.Map;\r\n mapHasBounds = false;\r\n mapMarkers: Array = [];\r\n parceiroMapMarkers: Array = [];\r\n _parseAddressName = parseAddressName;\r\n mapOptions: MapOptions = {\r\n zoom: 4,\r\n center: {\r\n lat: -15.189310,\r\n lng: -51.173592\r\n },\r\n // zoom: 16, //São Paulo\r\n // center: {\r\n // lat: -23.5557714,\r\n // lng: -46.6395571\r\n // },\r\n styles: [{\r\n featureType: 'poi',\r\n stylers: [\r\n {visibility: 'off'}\r\n ]\r\n }]\r\n }; // center: {lat: -23.6904602, lng: -46.710106}};\r\n currentPosition;\r\n @ViewChild(MapInfoWindow, {static: false}) infoWindow: MapInfoWindow;\r\n // infoWindow: google.maps.InfoWindow;\r\n currentMarker;\r\n currentInfowindow;\r\n autoCompleteObj: Autocomplete;\r\n mapInitialized = false;\r\n mapScrollRefresh = true;\r\n separatorKeysCodes: number[] = [ENTER, COMMA];\r\n @ViewChild('listaInput', {static: true}) listaInput: ElementRef;\r\n listControl = new FormControl();\r\n config: SwiperOptions = {\r\n direction: 'vertical',\r\n // slidesPerGroup: 1,\r\n slidesPerView: 1,\r\n // slidesPerColumnFill: 'row',\r\n centeredSlides: false,\r\n // slidesPerColumn: 2,\r\n spaceBetween: 5,\r\n pagination: {\r\n el: '.swiper-pagination',\r\n clickable: true\r\n },\r\n navigation: {\r\n nextEl: '.swiper-button-next',\r\n prevEl: '.swiper-button-prev'\r\n },\r\n };\r\n minValue = 0;\r\n maxValue = 0;\r\n options: Options = {\r\n floor: 0,\r\n ceil: 0,\r\n translate: (value: number, label: LabelType): string => {\r\n if (value === this.options.ceil) {\r\n return '+∞';\r\n }\r\n switch (label) {\r\n // case LabelType.Low:\r\n // return 'Mínimo: $' + value;\r\n // case LabelType.High:\r\n // return '+∞';\r\n default:\r\n return '$' + value;\r\n }\r\n }\r\n };\r\n @Input() escolaList: Array;\r\n @ViewChild('menuNivel', {static: true}) menuNivel: MatMenu;\r\n @ViewChild('listNivel', {static: true}) listNivel: MatSelectionList;\r\n @ViewChild('listContainer', {static: true}) listContainer: HTMLDivElement;\r\n @ViewChild('escolaListVertical', {static: true}) escolaListVertical: EscolaListVerticalComponent;\r\n @ViewChild('paginatorTop', {static: true}) paginatorTop: PaginatorComponent;\r\n @ViewChild('matPaginator', {static: true}) matPaginator: MatPaginator;\r\n @ViewChild('matPaginatorFooter', {static: true}) matPaginatorFooter: MatPaginator;\r\n @ViewChild('nivelMenuTrigger') nivelMenuTrigger: MatMenuTrigger;\r\n escolaTags = Tags;\r\n nivelTags = this.escolaTags.filter(value => value.group === 'Nível de Ensino');\r\n nivelTagValue: any = {};\r\n mensalidadeTooltip: string = null;\r\n escolaCount = 0;\r\n PAGESIZE_USER = 15;\r\n PAGESIZE_MASTER = 300;\r\n pageSize = this.PAGESIZE_USER;\r\n filterMessage: string;\r\n lastFilterCriteria;\r\n lastPaginationIndex: number;\r\n searchingEscola = false;\r\n // chipChanged: Subject = new Subject();\r\n debounceTime = 2000;\r\n mapToggle = true;\r\n loading: string = null;\r\n loadingDialogRef: MatDialogRef;\r\n criarListaDialogRef: MatDialogRef;\r\n mensalidadesOptions = [\r\n {value: 1000, label: 'Até R$ 1.000,00'},\r\n {value: 2000, label: 'Entre R$1.001,00 Até R$ 2.000,00'},\r\n {value: 3000, label: 'Entre R$2.001,00 Até R$ 3.000,00'},\r\n {value: 4000, label: 'Entre R$3.001,00 Até R$ 4.000,00'},\r\n {value: 5000, label: 'Entre R$4.001,00 Até R$ 5.000,00'},\r\n {value: 6000, label: 'Entre R$5.001,00 Até R$ 6.000,00'},\r\n {value: 7000, label: 'Entre R$6.001,00 Até R$ 7.000,00'},\r\n {value: 8000, label: 'Entre R$7.001,00 Até R$ 8.000,00'},\r\n {value: -1, label: 'Acima de R$ 8.000,00'}\r\n ]\r\n sliderConfig = {\r\n dots: false,\r\n infinite: false,\r\n speed: 300,\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n autoplay: false,\r\n centerPadding: '40px',\r\n draggable: true,\r\n centerMode: false,\r\n variableWidth: true,\r\n arrows: false,\r\n };\r\n public cellep_list: Array = null;\r\n urlLink: URLSearchParams;\r\n searchLink: string = null;\r\n selectedEscola: Escola;\r\n selectedCellep: CellepUnidade;\r\n orderTypeEnum = orderTypeEnum;\r\n private readonly onDestroy = new Subject();\r\n\r\n constructor(private changeDetectorRef: ChangeDetectorRef,\r\n private route: ActivatedRoute,\r\n public userService: UserService,\r\n private bottomSheet: MatBottomSheet,\r\n private dialog: MatDialog,\r\n public escolaService: EscolaService,\r\n private analytics: AnalyticsService,\r\n ) {\r\n this.escolaService.filterEvent.pipe(\r\n tap(value => {\r\n if ((value === undefined) || (value.type === 'map')) {\r\n this.loading = 'Refinando...';\r\n }\r\n }),\r\n takeUntil(this.onDestroy),\r\n debounceTime(1000)\r\n ).subscribe(value => {\r\n // console.log('escolaService.filterEvent.pipe value: ' + JSON.stringify(value));\r\n if ((value === undefined) || (value.type === 'map')) {\r\n if (value?.reset === true) {\r\n this.filterData('Update Paginator', null, false, false);\r\n } else {\r\n this.filterData(`FilterEvent.type: ${JSON.stringify(value)}`);\r\n }\r\n }\r\n }\r\n );\r\n // //Raise an event when a value in header changes\r\n this.escolaService.headerFormGroup.valueChanges\r\n .pipe(takeUntil(this.onDestroy))\r\n .subscribe(value => {\r\n this.escolaService.filterEvent.next({type: 'map', description: 'headerFormGroup.valueChanges'});\r\n });\r\n this.userService.userDataEvent\r\n .pipe(takeUntil(this.onDestroy))\r\n .subscribe(() => {\r\n this.refreshUserLimit();\r\n const params = this.getFilterParamsFromURL();\r\n if (params != null) {\r\n // this.filterData('userService.userDataEvent', params);\r\n this.escolaService.filterEvent.next({type: 'map', description: 'userDataEvent'});\r\n }\r\n });\r\n this.refreshUserLimit();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.onDestroy.next();\r\n // console.log('destroyed');\r\n }\r\n\r\n ngOnInit(): void {\r\n this.escolaService.regiao.valueChanges\r\n .pipe(takeUntil(this.onDestroy))\r\n .subscribe(value => {\r\n if (value != null) {\r\n if (value.geometry) {\r\n this.goToMapPosition(value.geometry.location);\r\n }\r\n }\r\n this.changeDetectorRef.detectChanges();\r\n });\r\n }\r\n\r\n async afterMapInit(map: google.maps.Map) {\r\n window.scrollTo(0, 0);\r\n // console.log('map init: ' + this.map);\r\n this.map = map;\r\n /**\r\n * bounds_changed event is here because:\r\n * somehow google chrome does not send the bounds (aka map.getBounds().getNorthEast().lng())\r\n * until it is \"fully initialized\".\r\n * And \"fully initialized\" is something beyond my understanding.\r\n * By the way, there's a mapInitialized event for that, and it still does not work.\r\n *\r\n * ... well ... fuck you chrome.\r\n *\r\n * NOTE: Firefox is better than Chrome\r\n */\r\n google.maps.event.addListenerOnce(map, 'bounds_changed', () => {\r\n this.mapHasBounds = true;\r\n console.log('map has bounds');\r\n });\r\n\r\n console.log('afterMapInit');\r\n if (this.userService.userData?.perfil\r\n && this.userService.userData?.perfil?.place) {\r\n const p: Perfil = this.userService.userData.perfil;\r\n let latLng: LatLng;\r\n const loc = p.place.geometry.location as any;\r\n if (typeof loc.lat === 'function') {\r\n latLng = new google.maps.LatLng(loc.lat(), loc.lng());\r\n } else {\r\n latLng = new google.maps.LatLng(loc.lat, loc.lng);\r\n }\r\n map.setCenter(latLng);\r\n this.map.setZoom(15);\r\n }\r\n\r\n if (this.escolaService.regiao.value != null) {\r\n const loc = this.escolaService.regiao.value.geometry?.location as any;\r\n var firstType = this.escolaService.regiao.value.address_components[0].types[0];\r\n\r\n let zoom = 15\r\n\r\n if (firstType === 'administrative_area_level_1' \r\n || firstType === 'administrative_area_level_2'\r\n || firstType === 'country') {\r\n zoom = 8\r\n } else if (firstType === 'locality') {\r\n zoom = 11\r\n }\r\n \r\n if (loc) {\r\n if (typeof loc.lat === 'function') {\r\n const latLng: LatLng = new google.maps.LatLng(loc.lat(), loc.lng());\r\n this.map.panTo(latLng);\r\n this.map.setZoom(zoom);\r\n } else {\r\n const latLng: LatLng = new google.maps.LatLng(loc.lat, loc.lng);\r\n this.map?.panTo(latLng);\r\n this.map.setZoom(zoom);\r\n }\r\n } else {\r\n this.escolaService.filterEvent.next({type: 'map', description: 'escolaService.regiao.value changed'});\r\n }\r\n } else if (this.userService.userData?.perfil && this.route.snapshot.queryParamMap.get('type') === 'perfil') {\r\n this.escolaService.order.setValue('score');\r\n } else {\r\n await this.getCurrentPosition().then((position) => {\r\n if (this.escolaService.regiao.value == null) {\r\n if (position) {\r\n const latLng: LatLng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);\r\n this.map.panTo(latLng);\r\n this.map.setZoom(15);\r\n } else {\r\n this.handleLocationError(true, this.infoWindow, this.map.getCenter());\r\n }\r\n // this.filterData('afterMapInit found GPS position', this.getFilterParamsFromURL());\r\n this.escolaService.filterEvent.next({type: 'map', description: 'afterMapInit found GPS position'});\r\n } else if (this.escolaList == null) {\r\n }\r\n }).catch(reason => {\r\n console.log(reason);\r\n // if (this.escolaList == null) {\r\n this.filterData('afterMapInit Exception/Error', this.getFilterParamsFromURL());\r\n // }\r\n });\r\n }\r\n this.escolaService.filterEvent.next({type: 'map', description: 'map initialized'});\r\n this.mapInitialized = true;\r\n }\r\n\r\n markForFilter(): void {\r\n this.escolaService.filterEvent.next({type: 'map', description: 'markForFilter'});\r\n }\r\n\r\n resetNivelEnsinoFilter(): void {\r\n const valueArray = [];\r\n this.escolaService.headerFormGroup.patchValue({nivel_ensino: valueArray}, {onlySelf: true, emitEvent: true});\r\n }\r\n\r\n private initMap(): boolean {\r\n const htmlElement = document.getElementById('gmap');\r\n\r\n if (htmlElement != null) {\r\n\r\n // JS API is loaded and available\r\n // MapaComponent.map = new google.maps.Map(htmlElement, {\r\n // mapTypeControlOptions: {\r\n // mapTypeIds: []\r\n // },\r\n // mapTypeId: MapTypeId.ROADMAP,\r\n // disableDefaultUI: true,\r\n // zoomControlOptions: {\r\n // style: ZoomControlStyle.LARGE\r\n // },\r\n // styles: [{\r\n // featureType: 'poi.business',\r\n // stylers: [{visibility: 'off'}],\r\n // }],\r\n // zoomControl: true,\r\n // mapTypeControl: true,\r\n // // center: startPosition == null ? {lat: -14.235004, lng: -51.92528} : startPosition,\r\n // zoom: 16,\r\n // });\r\n\r\n // (window as any)._map = MapaComponent.map;\r\n\r\n // Click to go on map\r\n // google.maps.event.addListener(MapaComponent.map, 'click', event => {\r\n // // console.log(\"clickToGo:\" + mapClickToGo);\r\n // if (MapaComponent.mapClickToGo) {\r\n // this.goToMapPosition(event.latLng);\r\n // MapaComponent.mapClickToGo = false;\r\n // }\r\n // });\r\n\r\n // Refresh on drag\r\n google.maps.event.addListener(this.map, 'dragend', event => {\r\n this.mapDragEndEvent();\r\n });\r\n\r\n // google.maps.event.addListener(MapaComponent.map, 'idle', event => {\r\n // // console.log('dragEnd: ' + MapaComponent.map.getCenter().lat() + ':' + MapaComponent.map.getCenter().lng());\r\n // window.setTimeout(() => {\r\n // this.filterData();\r\n // }, 3000);\r\n // });\r\n\r\n // // Create a