• Какие программы / скрипты / плагины (и т.д.) ставить на Win10 для разработчика?

    edli007
    @edli007
    full stack, team lead
    Git
    Ответ написан
    Комментировать
  • Чей код чище и удобнее расширятся битрикс или модх?

    MetaDone
    @MetaDone
    Хорошо сформулированный вопрос - 50% решения
    что угодно лучше битрикса. И да простят меня бывалые битриксойды, но лично я с таким месивом работать не намерен.
    Просто кусок кода, который битрикс малый бизнес генерирует после установки в index.php
    spoiler
    <?
    require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
    $APPLICATION->SetTitle("Интернет-магазин \"Одежда\"");
    ?>
    <h2>Лучшие коллекции</h2>
    <?$APPLICATION->IncludeComponent("bitrix:catalog.top", "", array(
    		"IBLOCK_TYPE_ID" => "catalog",
    		"IBLOCK_ID" => "2",
    		"ELEMENT_SORT_FIELD" => "name",
    		"ELEMENT_SORT_ORDER" => "asc",
    		"ELEMENT_SORT_FIELD2" => "name",
    		"ELEMENT_SORT_ORDER2" => "asc",
    		"HIDE_NOT_AVAILABLE" => "N",
    		"ELEMENT_COUNT" => "8",
    		"LINE_ELEMENT_COUNT" => "4",
    		"PROPERTY_CODE" => array(0=>"MINIMUM_PRICE",1=>"MAXIMUM_PRICE",2=>"",),
    		"OFFERS_FIELD_CODE" => array(0=>"NAME",1=>"",),
    		"OFFERS_PROPERTY_CODE" => array(0=>"ARTNUMBER",1=>"COLOR_REF",2=>"SIZES_SHOES",3=>"SIZES_CLOTHES",4=>"MORE_PHOTO",5=>"",),
    		"OFFERS_SORT_FIELD" => "sort",
    		"OFFERS_SORT_ORDER" => "asc",
    		"OFFERS_SORT_FIELD2" => "id",
    		"OFFERS_SORT_ORDER2" => "desc",
    		"OFFERS_LIMIT" => "0",
    		"VIEW_MODE" => "SLIDER",
    		"TEMPLATE_THEME" => "site",
    		"PRODUCT_DISPLAY_MODE" => "Y",
    		"ADD_PICT_PROP" => "MORE_PHOTO",
    		"LABEL_PROP" => "NEWPRODUCT",
    		"OFFER_ADD_PICT_PROP" => "MORE_PHOTO",
    		"OFFER_TREE_PROPS" => array(0=>"COLOR_REF",1=>"SIZES_SHOES",2=>"SIZES_CLOTHES",),
    		"SHOW_DISCOUNT_PERCENT" => "Y",
    		"SHOW_OLD_PRICE" => "Y",
    		"ROTATE_TIMER" => "30",
    		"MESS_BTN_BUY" => "Купить",
    		"MESS_BTN_ADD_TO_BASKET" => "В корзину",
    		"MESS_BTN_DETAIL" => "Подробнее",
    		"MESS_NOT_AVAILABLE" => "Нет в наличии",
    		"SECTION_URL" => "",
    		"DETAIL_URL" => "",
    		"BASKET_URL" => "/personal/cart/",
    		"ACTION_VARIABLE" => "action",
    		"PRODUCT_ID_VARIABLE" => "id_slider",
    		"PRODUCT_QUANTITY_VARIABLE" => "quantity",
    		"PRODUCT_PROPS_VARIABLE" => "prop",
    		"SECTION_ID_VARIABLE" => "SECTION_ID",
    		"CACHE_TYPE" => "A",
    		"CACHE_TIME" => "180",
    		"CACHE_GROUPS" => "Y",
    		"DISPLAY_COMPARE" => "N",
    		"PRICE_CODE" => array(0=>"BASE",),
    		"USE_PRICE_COUNT" => "N",
    		"SHOW_PRICE_COUNT" => "1",
    		"PRICE_VAT_INCLUDE" => "Y",
    		"PRODUCT_PROPERTIES" => array(),
    		"USE_PRODUCT_QUANTITY" => "Y",
    		"CONVERT_CURRENCY" => "N",
    		"OFFERS_CART_PROPERTIES" => array(0=>"ARTNUMBER",1=>"COLOR_REF",2=>"SIZES_SHOES",3=>"SIZES_CLOTHES",)
    	),
    	false
    );?>
    <h2>Тренды сезона</h2>
    <?$APPLICATION->IncludeComponent(
    	"bitrix:catalog.top",
    	"",
    	Array(
    		"IBLOCK_TYPE" => "catalog",
    		"IBLOCK_ID" => "2",
    		"VIEW_MODE" => "SECTION",
    		"TEMPLATE_THEME" => "site",
    		"PRODUCT_DISPLAY_MODE" => "Y",
    		"ADD_PICT_PROP" => "MORE_PHOTO",
    		"LABEL_PROP" => "NEWPRODUCT",
    		"OFFER_ADD_PICT_PROP" => "MORE_PHOTO",
    		"OFFER_TREE_PROPS" => array("COLOR_REF", "SIZES_SHOES", "SIZES_CLOTHES"),
    		"SHOW_DISCOUNT_PERCENT" => "Y",
    		"SHOW_OLD_PRICE" => "Y",
    		"MESS_BTN_BUY" => "Купить",
    		"MESS_BTN_ADD_TO_BASKET" => "В корзину",
    		"MESS_BTN_DETAIL" => "Подробнее",
    		"MESS_NOT_AVAILABLE" => "Нет в наличии",
    		"ELEMENT_SORT_FIELD" => "sort",
    		"ELEMENT_SORT_ORDER" => "asc",
    		"ELEMENT_SORT_FIELD2" => "name",
    		"ELEMENT_SORT_ORDER2" => "asc",
    		"SECTION_URL" => "",
    		"DETAIL_URL" => "",
    		"BASKET_URL" => "/personal/cart/",
    		"ACTION_VARIABLE" => "action",
    		"PRODUCT_ID_VARIABLE" => "id_section",
    		"PRODUCT_QUANTITY_VARIABLE" => "quantity",
    		"PRODUCT_PROPS_VARIABLE" => "prop",
    		"SECTION_ID_VARIABLE" => "SECTION_ID",
    		"DISPLAY_COMPARE" => "N",
    		"ELEMENT_COUNT" => "12",
    		"LINE_ELEMENT_COUNT" => "4",
    		"PROPERTY_CODE" => array("MINIMUM_PRICE", "MAXIMUM_PRICE"),
    		"OFFERS_FIELD_CODE" => array("NAME"),
    		"OFFERS_PROPERTY_CODE" => array("ARTNUMBER", "COLOR_REF", "SIZES_SHOES", "SIZES_CLOTHES", "MORE_PHOTO"),
    		"OFFERS_SORT_FIELD" => "sort",
    		"OFFERS_SORT_ORDER" => "asc",
    		"OFFERS_SORT_FIELD2" => "id",
    		"OFFERS_SORT_ORDER2" => "desc",
    		"OFFERS_LIMIT" => "0",
    		"PRICE_CODE" => array("BASE"),
    		"USE_PRICE_COUNT" => "N",
    		"SHOW_PRICE_COUNT" => "1",
    		"PRICE_VAT_INCLUDE" => "Y",
    		"PRODUCT_PROPERTIES" => array(),
    		"USE_PRODUCT_QUANTITY" => "Y",
    		"CACHE_TYPE" => "A",
    		"CACHE_TIME" => "180",
    		"CACHE_GROUPS" => "Y",
    		"HIDE_NOT_AVAILABLE" => "N",
    		"CONVERT_CURRENCY" => "N",
    		"OFFERS_CART_PROPERTIES" => array("ARTNUMBER", "COLOR_REF", "SIZES_SHOES", "SIZES_CLOTHES")
    	)
    );?>
    <?$APPLICATION->IncludeComponent("bitrix:sale.bestsellers", ".default", array(
    		"HIDE_NOT_AVAILABLE" => "N",
    		"SHOW_DISCOUNT_PERCENT" => "Y",
    		"PRODUCT_SUBSCRIPTION" => "Y",
    		"SHOW_NAME" => "Y",
    		"SHOW_IMAGE" => "Y",
    		"MESS_BTN_BUY" => "Купить",
    		"MESS_BTN_DETAIL" => "Подробнее",
    		"MESS_NOT_AVAILABLE" => "Нет в наличии",
    		"MESS_BTN_SUBSCRIBE" => "Подписаться",
    		"PAGE_ELEMENT_COUNT" => "4",
    		"LINE_ELEMENT_COUNT" => "4",
    		"TEMPLATE_THEME" => "site",
    		"DETAIL_URL" => "",
    		"AJAX_MODE" => "N",
    		"AJAX_OPTION_JUMP" => "N",
    		"AJAX_OPTION_STYLE" => "Y",
    		"AJAX_OPTION_HISTORY" => "N",
    		"CACHE_TYPE" => "A",
    		"CACHE_TIME" => "86400",
    		"BY" => "AMOUNT",
    		"PERIOD" => "30",
    		"FILTER" => array(
    			0 => "CANCELED",
    			1 => "ALLOW_DELIVERY",
    			2 => "PAYED",
    			3 => "DEDUCTED",
    			4 => "N",
    			5 => "P",
    			6 => "F",
    		),
    		"DISPLAY_COMPARE" => "N",
    		"SHOW_OLD_PRICE" => "N",
    		"PRICE_CODE" => array(
    			0 => "BASE",
    		),
    		"SHOW_PRICE_COUNT" => "1",
    		"PRICE_VAT_INCLUDE" => "Y",
    		"CONVERT_CURRENCY" => "N",
    		"BASKET_URL" => "/personal/cart/",
    		"ACTION_VARIABLE" => "action",
    		"PRODUCT_ID_VARIABLE" => "id",
    		"PRODUCT_QUANTITY_VARIABLE" => "quantity",
    		"ADD_PROPERTIES_TO_BASKET" => "Y",
    		"PRODUCT_PROPS_VARIABLE" => "prop",
    		"PARTIAL_PRODUCT_PROPERTIES" => "N",
    		"USE_PRODUCT_QUANTITY" => "N",
    		"SHOW_PRODUCTS_2" => "Y",
    		"CART_PROPERTIES_2" => array(
    			0 => "BRAND_REF",
    			1 => "NEWPRODUCT",
    			2 => "SALELEADER",
    			3 => "",
    		),
    		"ADDITIONAL_PICT_PROP_2" => "MORE_PHOTO",
    		"LABEL_PROP_2" => "SALELEADER",
    		"CART_PROPERTIES_3" => array(
    			0 => "COLOR_REF",
    			1 => "SIZES_SHOES",
    			2 => "SIZES_CLOTHES",
    			3 => "",
    		),
    		"ADDITIONAL_PICT_PROP_3" => "MORE_PHOTO",
    		"OFFER_TREE_PROPS_3" => array(
    			0 => "COLOR_REF",
    			1 => "SIZES_SHOES",
    			2 => "SIZES_CLOTHES",
    		),
    		"AJAX_OPTION_ADDITIONAL" => ""
    	)
    );?>
    <?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>


    Еще вся эта ересь безбожно терзает БД.
    А если глянуть ядро - то там несмотря на всякие придуманные штуки типа пространств имен, трейтов и т.п. до сих пор глобальные переменные и куча констант. Есть классы, методы в которых непонятно зачем оборачивают суперглобальные массивы. В общем смотрите сами, это чисто мое мнение и я не собираюсь работать с битриксом, чего и вам желаю
    Ответ написан
    4 комментария
  • Минимум для junior web developer в Москве?

    27cm
    @27cm
    TODO: Написать статус
    Нет никакого минимума знаний при устройстве на работу. Это вам не ЕГЭ в школе, когда набрал минимальный проходной балл и поступил куда-нибудь. Никакой минимум вам не гарантирует работу младшего веб-разработчика, тем более в Москве.

    Смотрите, что требуют в вакансиях на эту должность.
    Ответ написан
    Комментировать
  • Есть ли для Android блокировщик интернета для программ?

    @onepavel
    Консультация и разработка мобильных приложений
    Покупать приложения не можете, смотреть рекламу не хотите. Как нам, разработчикам, быть?
    Ответ написан
    2 комментария
  • Сайт php + AJAX, приехали?

    skobkin
    @skobkin
    Гентушник, разработчик на PHP и Symfony.
    Тут очень, очень много чего можно приводить к божескому виду. Вам, наверное, надо попробовать какой-нибудь не очень сложный MVC-фреймворк для начала.
    Пока что весь код - сплошная каша, которую чуть проще поддерживать, чем если бы всё было в одном файле, но всё ещё значительно сложнее, чем уже проработанные решения.
    $data .=  '<div class="newsPhoto">';
            $data .=  '<img src="'.getImgUrl($news['photo']).'">';
            $data .=  '</div>';
            // ...

    Вообще, если вам так хочется всё это делать именно в PHP - можно использовать либо Heredoc/Nowdoc, либо просто записывать в кавычках без лишних конкатенаций кода с самим собой. Хотя лучше, конечно, всё это делать в слое View (см. MVC) - попробовав вы быстро поймёте - насколько это круто, когда логика (операции с данными) и представление (вывод данных) разделены.
    $sql = mysql_query("SELECT news_id, title, description, photo FROM news WHERE category='1' ORDER BY news_id DESC LIMIT 10") or die(mysql_error());

    Используйте PDO и подготовленные запросы с биндингом параметров.
    А ещё у вас везде одинарные кавычки (что хорошо), а тут - двойные. Зачем? Одинарную кавычку можно экранировать с помощью бэкслеша.
    if (isAJAX() == false) {
    echo head('Новости',array('common.css', 'news.css'),array('common.js'));
    echo body();
    echo news_menu();
    echo news();
    echo footer();
    }

    Это очень мило. Вы почти пришли к шаблонам :)

    Могу порекомендовать вам для приобретения понимания как лучше коду выглядеть сделать три вещи:
    1. Ознакомиться с PSR-2 как минимум.
    2. Прочесть и постараться максимально понять Php The Right Way.
    3. Переписать всё это на каком-нибудь более-менее современном, но ещё не очень сложном фреймворке, который из коробки имеет MVC. В памяти пока что всплывает, например, FuelPHP.

    Ну и дальше как разберётесь - уже просто набираться опыта, смотреть как делают другие (опенсорс всегда в помощь), пробовать делать какие-то маленькие вещи для себя, чтобы разобраться в чём-то.
    Ответ написан
    5 комментариев
  • Как отключить AssetConverter в Yii2?

    @matperez
    Мне кажется, как-нибудь так должно выключаться:
    'components' => [
            'assetManager' => [
                'converter' => [
                    'class' => 'yii\web\AssetConverter',
                    'commands' => [
                        'less' => false,
                    ],
                ],
            ],
        ],

    Имхо, лучше поставить lessc, а не отключать все наглухо. На продакшене так точно стоит конвертировать один раз на сервере и отдавать готовый css.
    Ответ написан
    6 комментариев
  • Какой шаблонизатор посоветуете для OpenSource проекта на Yii2?

    edli007
    @edli007
    full stack, team lead
    один я до сих пор, спустя много лет, так и не понял зачем шаблонизатор в пхп?
    Ответ написан
  • Какой php фреймворк достаточной гибкий?

    @kapai69
    Судя по вопросу... Оставьте все как есть, будет лучше
    Ответ написан
    Комментировать
  • Есть ли нормальные курсы по JavaScript в СПб очно?

    нет нормальных курсов! Только деньги на ветер сольёшь.

    Вот https://learn.javascript.ru/ сиди читай, учи

    js такая вещь что его нужно повторять и повторять новичку. То что тебе скажут на 1 уроке на 5ом уже забудешь. Есть толк идти на курсы когда ты мидл уверенный и идёшь туда зная что много не узнаешь, но что-то вспомнишь или новое откроешь (обычно на последнем занятии вкусняшки дают). Только вот за такое посещение с тебя сдерут норм. Поэтому лучше трать деньги на изучение английского и после того как будешь норм хотя бы шарить в js вливайся в англ сообщество. Слушай вебинары, будь на форумах и т д. Некоторые создают конфы в скайпе, чтобы общаться и обмениваться опытом.
    Ответ написан
    Комментировать
  • Как лучше обрезать содержимое переменной?

    maddog670
    @maddog670
    Можно еще как-то так
    $a = "/store/bokal/skatert-velvet9/";
    $exp = explode("/", $a);
    $url = "/{$exp[1]}/{$exp[2]}/";
    echo $url;
    Ответ написан
    Комментировать
  • Странное поведение карт: Uncaught TypeError: Cannot read property 'geoObjects' of undefined?

    In4in
    @In4in
    °•× JavaScript Developer ^_^ ו°
    ymaps.ready(init);
    var myMap;  //myMap = undefined
    
    function init(){
      //Вот это выполнится только по готовности  ymaps
      myMap = new ymaps.Map("map", {
        center: [56.49540919, 84.95061710],
        zoom: 12,
        controls: ['zoomControl']
      });
      console.log(myMap); //ymaps.Map.......
    }
    
    //А то, что тут - сразу
    console.log(myMap); //undefined
    Ответ написан
    9 комментариев
  • Что делать с Parse error в Yii?

    nazarpc
    @nazarpc
    Open Source enthusiast
    Сервер специально для Yii скачал последнюю версию Open Servera (5.2.3) с PHP версии 5.3.29

    ЧТО??? PHP 5.3 уже все забыли, PHP 5.4 тоже не поддерживается и никогда больше не будет.
    Последняя стабильная версия PHP 5.6 и на носу 7.0.
    Open Server содержит PHP 5.6.12, переключите в настройках, возвращайтесь в современный мир из каменного века.

    Установил composer, потом Yii 2 basic

    Как вы установили Yii 2 basic?

    Кстати, никакой папки vendor, которую он зачем-то ищет (к тому же с черточками / не в ту сторону) не существует, зачем он её ищет?

    Затем что всё что нужно будет находиться там, все зависимости. Попробуйте в корне (где composer.json) выполнить composer install, это создаст папку vendor и загрузит туда нужные зависимости.
    Ответ написан
    8 комментариев
  • Где найти работу по удаленке в 40+ лет?

    kapuletti
    @kapuletti
    Уберите возраст из вопроса и найдете ответ.
    Ответ написан
    6 комментариев
  • Где найти работу по удаленке в 40+ лет?

    Jeiwan
    @Jeiwan
    Никак.
    Почему все думают, что в интернете можно зарабатывать без навыков? Вы же не можете устроиться на обычную работу без навыков. Интернет тут ничем не отличается: это обычная работа, только удаленная. Нет навыков = нет работы.
    Ответ написан
    5 комментариев
  • Есть ли проги для автопостинга в список пабликов вк?

    @vilgeforce
    Раздолбай и программист
    Не ошиблись ли вы ресурсом с вопросом о спаме?
    Ответ написан
    Комментировать
  • Какими программами вы пользуетесь для верстки сайта?

    littleguga
    @littleguga
    Не стыдно не знать, а стыдно не интересоваться.
    PhpStorm - для студентов есть бесплатная лицензия. WebStorm не имеет смысла, так как всё, что есть в нем, есть и в phpStorm'e.
    Для быстрых правок - notepad++.
    sftp - FileZilla

    локальный сервер - xampp(ибо сижу на win7)
    git - git bash

    Сборка js/css - gulp

    Особенно доставляет gulp-livereload - настроил и теперь при изменении не надо страницу ручками обновлять, она сама это делает.
    Ответ написан
    Комментировать