All streams
Search
Write a publication
Pull to refresh
0
0
UserNotFound @darked

Разработчик

Send message
тогда со смартфона текстом или встать и выключить, зависит от самочувствия и что быстрее, как удобнее, вернее
А, если вы уже лежите в кровати, почитали книгу, теперь спать собираетесь, то тут уже голос рулит. Даже, если есть пульт, он тоже часто оказывается на тумбе у телевизора, или ещё где, и опять же проще сказать чтобы свет выключиться и поставить будильник голосом, чем лезть в телефон.
В умных домах голосовое управление как раз то, что доктор прописал, имхо.
Перепробовал много программ, но остановился на Coin Keeper — доход, расход, долг, кредит, предполагаемые траты на следующий месяц… всё есть.
Плюс есть доп. приложение, которое с чека ко qr-code получает список что купили и можно уже по категориями раскидать.
Вам спасибо. Буду ждать )
вот полное содержание файла на котором ломается форматирование:
Содерждимое одного из файлов где всё ломается
{% set itemsCount = 0 %}
{% for subfolder in subfolders %}
    
    {% if subfolder.IsNotMade %}
        <div style="margin: 10px  10px 20px 0;">
            <a style="color:#ccc; float:right;"
               href="{{ base_url }}{{ subfolder.TreeAnchor }}">{{ subfolder.FolderName }}</a>
        </div>
        <div class="div_clear"></div>
    {% else %}
        
        {% set itemsCount = itemsCount + 1 %}
        
        {% if subfolder.Tip == constant('repository\\ViewModels\\TreeTip::GROUP') %}
            {% if subfolder.Vid == constant('repository\\ViewModels\\TreeVid_Group::DYNAMIC') %}
                <div class="content-block-header article-content-expander" {% if not subfolder.IsVisible %} style="display: none;" {% endif %}
                    data-bind="click: CollapseClick.bind($data, $('#models_{{ subfolder.FolderId }}'), $('#sign_{{ subfolder.FolderId }}'))">
                    <span class="left nowrap strong">
                        <a href="#" class="h2_node_link" style="color:#06c;">
                            <span id="sign_{{ subfolder.FolderId }}"  style="font-size:10.5pt;">+</span>{{ subfolder.FolderName }}
                        </a>
                    </span>
                </div>
                
                <div style="margin-bottom: 5px;{% if subfolder.IsVisible %}display: none;{% endif %}" class="to_show" data-expand="0"  id="models_{{ subfolder.FolderId }}">
                    {% if subfolder.Models %}
                        {% if subfolder.IsVisible %}
                            {% include 'model_groups/models_table_without_header.twig' with {'models' : subfolder.Models} only %}
                        {% else %}
                            {% if itemsCount == 1 %}
                                {% include 'model_groups/models_table.twig' with {'models' : subfolder.Models} only %}
                            {% else %}
                                {% include 'model_groups/models_table_without_header.twig' with {'models' : subfolder.Models} only %}
                            {% endif %}
                        {% endif %}
                    {% endif %}
            
                    {% if subfolder.SubFolders %}
                        {% include 'model_groups/folders/subfolders.twig' with {'subfolders' : subfolder.SubFolders} only %}
                    {% endif %}
                </div>
        
            {% elseif subfolder.Vid == constant('repository\\ViewModels\\TreeVid_Group::HEADER') %}
                {% if subfolder.SubFolders %}
                    <div id="mod_data" style="margin-bottom: 5px;">
                    {% include 'model_groups/models_table_without_header.twig' with {'models' : subfolder.Models} only %}
                    </div>
        
                    {% include 'model_groups/folders/subfolders.twig' with {'subfolders' : subfolder.SubFolders} only %}
                {% else %}
                    <div id="mod_data" style="margin-bottom: 5px;">
                    {% include 'model_groups/models_table_without_header.twig' with {'models' : subfolder.Models, 'group_name' : subfolder.FolderName} only %}
                    </div>
                {% endif %}
        
            {% else %}
                <div id="mod_data" style="margin-bottom: 5px;">
                    {% include 'model_groups/models_table_without_header.twig' with {'models' :subfolder.Models} only %}
                </div>
                {% include 'model_groups/folders/subfolders.twig' with {'subfolders' :subfolder.SubFolders} only %}
            {% endif %}
        {% elseif subfolder.Tip == constant('repository\\ViewModels\\TreeTip::DIVISION') %}
        
            {% if subfolder.Vid == constant('repository\\ViewModels\\TreeVid_Division::INDEPENDENT') %}
        
                <div id="mod_data" style="margin-bottom: 5px;">
                    {% include 'model_groups/models_table_without_header.twig' with {'models' : subfolder.Models} only %}
                </div>
        
            {% elseif subfolder.Vid == constant('repository\\ViewModels\\TreeVid_Division::MAIN') %}
                <div style="color:#666; margin:25px 0px 5px 30px; font-size:11pt;">
                    <strong>{{ subfolder.FolderName }}</strong>    
                </div>
                {% if subfolder.SubFolders %}
                    <div id="mod_data" style="margin-bottom: 5px;">
                    {% include 'model_groups/models_table.twig' with {'models' : subfolder.Models} only %}
                    </div>
        
                    {% include 'model_groups/folders/subfolders.twig' with {'subfolders' : subfolder.SubFolders} only %}
                {% else %}
                    <div id="mod_data" style="margin-bottom: 5px;">
                    {% include 'model_groups/models_table.twig' with {'models' : subfolder.Models} only %}
                    </div>
                {% endif %}
        
            {% elseif subfolder.Vid == constant('repository\\ViewModels\\TreeVid_Division::FULL') %}
                <div style="color:#666; margin:25px 0px 5px 30px; font-size:11pt;">
                    <strong>{{ subfolder.FolderName }}</strong>    
                </div>
                {% if subfolder.SubFolders %}
                    <div id="mod_data" style="margin-bottom: 5px;">
                    {% include 'model_groups/models_table_without_header.twig' with {'models' : subfolder.Models} only %}
                    </div>
                    {% include 'model_groups/folders/subfolders.twig' with {'subfolders' : subfolder.SubFolders} only %}
                {% else %}
                    <div id="mod_data" style="margin-bottom: 5px;">
                    {% include 'model_groups/models_table_without_header.twig' with {'models' : subfolder.Models} only %}
                    </div>
                {% endif %}
        
            {% else %}
                {% if subfolder.SubFolders %}
                    <div id="mod_data" style="margin-bottom: 5px;">
                    {% include 'model_groups/models_table_without_header.twig' with {'models' :subfolder.Models} only %}
                    </div>
                    {% include 'model_groups/folders/subfolders.twig' with {'subfolders' :subfolder.SubFolders} only %}
                {% else %}
                    <div id="mod_data" style="margin-bottom: 5px;">
                    {% include 'model_groups/models_table_without_header.twig' with {'models' :subfolder.Models} only %}
                    </div>
                {% endif %}
            {% endif %}
        
        {% elseif subfolder.Tip == constant('repository\\ViewModels\\TreeTip::SUBSECTION') %}
            <div style="color:#666; margin:25px 0px 0px 30px; font-size:11pt;">
                <strong>
                    {% if subfolder.FolderIcon %}
                        <img src="{{ subfolder.FolderIcon }}"  style="vertical-align: middle; margin: 0px;">
                    {% endif %}
                {{ subfolder.FolderName }}
                </strong>    
            </div>
            {% if subfolder.SubFolders %}
                <div id="mod_data" style="margin-bottom: 5px;">
                {% include 'model_groups/models_table_without_header.twig' with {'models' :subfolder.Models} only %}
                </div>
                {% include 'model_groups/folders/subfolders.twig' with {'subfolders' :subfolder.SubFolders} only %}
            {% else %}
                <div id="mod_data" style="margin-bottom: 5px;">
                {% include 'model_groups/models_table_without_header.twig' with {'models' :subfolder.Models} only %}
                </div>
            {% endif %}
        {% elseif subfolder.Tip == constant('repository\\ViewModels\\TreeTip::SECTION') %}
            {% if subfolder.SubFolders %}
                <div id="mod_data"  style="margin-bottom: 5px;">
                    {% include 'model_groups/models_table_without_header.twig' with {'models' :subfolder.Models} only %}
                </div>
                {% include 'model_groups/folders/subfolders.twig' with {'subfolders' :subfolder.SubFolders} only %}
            {% endif %}
        {% else %}
            {% if subfolder.SubFolders %}
                <div id="mod_data" style="margin-bottom: 5px;">
                {% include 'model_groups/models_table_without_header.twig' with {'models' :subfolder.Models} only %}
                </div>
                {% include 'model_groups/folders/subfolders.twig' with {'subfolders' :subfolder.SubFolders} only %}
            {% else %}
                <div id="mod_data"  style="margin-bottom: 5px;">
                {% include 'model_groups/models_table_without_header.twig' with {'models' :subfolder.Models} only %}
                </div>
            {% endif %}
            
        {% endif %}
    {% endif %}

{% endfor %}

Что — то вообще какая-то дичь с форматирование сложных twig файлов (множественные вложенные if) стала, все файлы поломались => отступы уходят вправо и не возвращаются…
Большое спасибо за статью. Интересно было почитать ещё что — нибудь техническое и вкусное про подводные камни на пути при портировании. Ну, и маркетинговую часть интересно послушать, насколько успешен был выход на данную платформу.
Спасибо большое. е заметил, искал где надо галочку поставить, а она уже стояла.
Чего — то не могу найти пункт во вкладках про уведомления
Не до конца понимаю выводы поста. Особенно не использовать его с AR, когда как раз он и предлагает решение проблемы автора.
Repository — Martin Fowler
A system with a complex domain model often benefits from a layer, such as the one provided by Data Mapper (165), that isolates domain objects from details of the database access code. In such systems it can be worthwhile to build another layer of abstraction over the mapping layer where query construction code is concentrated.


Как я понимаю на выходе из репозитория и должны быть POxO объекты, что и решило бы проблему независимости от источника данных.
В последнем проекте использую Idiorm, и стараюсь не возвращать объекты сервиса доступа данных, лиюо Domain Model, либо ViewModel, пример метода:
public function GetVisitors()
	{
		$visitors  = \ORM::for_table( $this->table )->find_many();
		$arrResult = array();
		foreach ( $visitors as $visitor ) {
			$arrResult[] = new Visitor( $visitor->id,
				$visitor->incoming_by_code,
				$visitor->from,
				$visitor->visit_date,
				$visitor->region,
				$visitor->district );
		}

		return $arrResult;
	}
Что вообще за сущность с геттерами и сеттерами без логики? Как раз такой сущность быть не должна.

Так называемая анемичная модель. Которых да, рекомендуют избегать. Анемичная доменная модель
А как вы среду в 144 dpi запускаете? Уже замаялся биться с этим High DPI.
if (_rnd.Next(3) == 0) {
return null;
}

это зачем? никак не могу понять.
Большое спасибо за статью! Очень интересно было читать. Хотелось бы увидеть продолжение и по другим проектам.
А возможно добавить удобоваримый выборочный экспорт событий из приложения? Допустим продаю я авто и хочу покупателю распечатать что я делал, когда… историю авто. Было бы полезно, имхо.
Мне вот тоже интересно — что она такого умеет?
Может хоть новые хозяева обратят внимание на IDE и доведут её до ума. Кросплатформенность, мобильные приложения — это всё хорошо, но пишутся то они в IDE все… а там работы там хватает.
Идея понравилась, было бы интересно пощупать. Не знаю как оно будет на маленьких экранах, где попасть в элемент — это еще та задача, но думаю решаемо.
А по поводу кнопки… мне кажется нужно поиграться в сторону иконки лупы совмещенной с оптичиским прицелом… Мне кажется, видя оптический прицел, пользователь сможет догадаться что его можно наводить на объекты.
У них просто не было выбора, дабы не распугать оставшихся пользователей приложения.
То есть без аккаунта на дрибле можно сушить вёсла? (

Information

Rating
Does not participate
Location
Россия
Registered
Activity