Skip to content

Instantly share code, notes, and snippets.

View nosalvage's full-sized avatar
🏠
Working from home

Peter Litvinov nosalvage

🏠
Working from home
  • Moscow, Russia
View GitHub Profile
for(var i = 0; i < items.length; i++){
if(items[i].attachments){
for(var j = 0; j < items[i].attachments.length; j++){
if(items[i].attachments[j].type == 'video'){
feed.getVideo(items[i].attachments[j].video.owner_id, items[i].attachments[j].video.owner_id+'_'+items[i].attachments[j].video.id).then(function(result){
videos[items[i].id].player = result.data.response.items[0].player;
});
}
}
}
{
"category1": {
"id": 1,
"title": "Банки и обмен валюты",
"items": {
"1": {
"id": 1,
"title": "Ак барс",
"desc": "ОБМЕН ВАЛЮТЫ. Район Центр. Ориентир драм-театр, возле магазина 'ЦВЕТЫ'",
"time": "09:00 - 18:30",
$scope.map = {
san_fran: {
lat: 53.2219245,
lng: 63.609848799999995,
zoom: 12
},
markers: {},
controls: {
custom: [
L.control.locate({ drawCircle: false, follow: true })
'Use Strict';
angular.module('App').controller('loginController', function ($scope, $timeout, $ionicPopover, $window, $ionicHistory, $state, $localStorage, $location, $http, $ionicPopup, $ionicLoading, $ionicPlatform, $firebaseObject, Auth, FURL, Utils) {
var userkey = "";
var productIds = ['maigid', 'gidsale', 'com.ionicframework.gidsale', 'com.ionicframework.gid', 'gid', 'com.ionicframework.funk71a27184.gid']; // <- Add your product Ids here
var spinner = '<ion-spinner icon="dots" class="spinner-stable"></ion-spinner><br/>';
(+) Приветственный экран, с первичной регистрацией с указанием объекта и моб. телефона/электронной почты.
Разделы:
(+) Персонализированные новости (по объекту)
(+) (Если консультант один для всех) Онлайн консультант
(Под вопросом) Голосование(инициированное админом системы)
(+) Настройка (отключение включение e-mail уведомлений)
Функции:
(-) Пуш уведомления с важной информацией(не отключаемые в настройках)
(Только инициированные админом, в админке) E-mail уведомления о получении новостей
firebase.auth().createUserWithEmailAndPassword(cred.email, cred.password).then(function (result) {
fireBaseData.refUser().child(result.uid).set({
telephone: cred.phone,
courier: false
});
}, function (error) {
sharedUtils.showAlert("Ошибка","Ошибка регистрации");
});
var positions = [
{
id: 0
},
{
id: 60
},
{
id: 120
}
1) Функциональный компонент, функциональным он называется, потому что по сути компонент в контексте js и react-а это функция. Функция, которая принимает какие-то параметры из вне и возвращает готовый html. Самый простой пример функционального компонента, который прям подверждает слово функциональный - это stateless компонент. То есть компонент, у которого нет своего внутреннего состояния, и все данные он получает из вне. Та же самая кнопка.
---
const Button = props => (
{props.title}
)
---
2) Компоненты-контейнеры (умные) и компоненты-презентации (тупые). Это уже как раз из темы redux-a. Умные компоненты, это компоненты, которые подключены к стору редакса. Они могут вызывать actionCreators и через параметры получают данные из стора. Глупые компоненты, это компоненты, которые на прямую не работаю со стором. Они получают данные от компонентов-контейнеров (умных) и по средством коллбеков могут менять стор/вызывать экшены. Таким образом, можно с помощью одного контейнера подключать разные компоненты к ст
.isauth{
background-color: black;
}
.warning{
width: 300px;
margin: 0 auto;
margin-bottom: 20px;
}
angular.module('starter.controllers', [])
.controller('AppCtrl', function($scope, $ionicHistory, $ionicSideMenuDelegate, $state, $rootScope, totoData, utils, lstorage) {
$rootScope.marketInfo = {
items: []
};
var uid = lstorage.get("uid");
var tournaments;
var liveMatches;
// $scope.$on('$stateChangeStart', function(event, toState, toParams, fromState, fromParams){