Скрипт (спецсимволы в паролях экранировать):
#!/bin/bash
cd /var/www/backup/
#local
mysqldump --opt -udbuser -pdbpassword dbname | gzip -c -9 > site.ru.sql.gz
tar -czf site.ru.tar.gz ../site.ru
#gdrive
GDRIVE=/root/gdrive
for f in *.gz
do
$GDRIVE list | grep $f | awk '{print $1}' | xargs -I {} sh -c "$GDRIVE delete {}"
$GDRIVE upload $f
done
Более простой не универсальный вариант:
#!/bin/bash
#local
mysqldump --opt -udbuser -pdbpassword dbname | gzip -c -9 > /var/www/backup/site.ru.sql.gz
tar -czf /var/www/backup/site.ru.tar.gz /var/www/site.ru/
#gdrive
/root/gdrive list | grep site.ru.sql.gz | awk '{print $1}' | xargs -I {} sh -c '/root/gdrive delete {}'
/root/gdrive upload /var/www/backup/site.ru.sql.gz
/root/gdrive list | grep site.ru.tar.gz | awk '{print $1}' | xargs -I {} sh -c '/root/gdrive delete {}'
/root/gdrive upload /var/www/backup/site.ru.tar.gz
Информация о GDrive (установка и использование): https://github.com/prasmussen/gdrive
См. также: cron резервное копирование файлов и базы данных сайта с выгрузкой на удаленный ftp
Добавить getSupportActionBar().hide();
Пример:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
getSupportActionBar().hide();
setContentView(R.layout.activity_main);
}
}
if($_SERVER['HTTP_X_REQUESTED_WITH']=='com.example.app'){
echo 'Это мое приложение, а не мобильный браузер';
}
com.example.app — имя нашего пакета
Для имитации клика по якорю:
$('.element').on('click',function(){
document.location.href='#anchor';
});
Когда шрифты с https://fonts.google.com/ нужно сохранить и использовать локально.
Для загрузки шрифтов и генерации css воспользоваться сервисом:
https://google-webfonts-helper.herokuapp.com/
В примере нужно разделить категории и товары в autocomplete. Категории в теге <b>, товары без.
$.widget("custom.groupautocomplete",$.ui.autocomplete,{
_create:function(){
this._super();
this.widget().menu("option","items",">:not(.ui-autocomplete-group)");
},
_renderMenu:function(ul,items){
var self=this;
var is_bold=0;
$.each(items,function(index,item){
if(item.label.indexOf("<b>")!=-1){
if(is_bold!=1){
ul.append("<li class='ui-autocomplete-group'>Категории по запросу:</li>");
}
is_bold=1;
}
else{
if(is_bold!=0){
ul.append("<li class='ui-autocomplete-group'>Товары по запросу:</li>");
}
is_bold=0;
}
self._renderItemData(ul,item);
});
},
_renderItem:function(ul,item){
var bold='';
if(item.label.indexOf("<b>")!=-1){
bold=' class="category"';
}
return $("<li"+bold+"></li>").data("item.autocomplete",item).append(item.label.replace(/(<([^>]+)>)/ig,"")).appendTo(ul);
}
});
$("#search").groupautocomplete({
source:"/ajax_search.php",
minLength:3,
select:function(event,ui){
event.preventDefault();
$(this).val(ui.item.value.replace(/(<([^>]+)>)/ig,""));
$(this).parent('form').submit();
}
});
Less:
.ui-autocomplete{
max-width:400px !important;
.ui-state-focus{
background:fade(@color_link,80%) !important;
color:@color_white !important;
border-color:transparent !important;
}
}
.ui-menu .ui-menu-item.category{
font-weight:bold;
color:@color_link;
text-decoration:underline;
}
.ui-autocomplete-group{
padding:3px 1em 3px .4em;
font-weight:700;
font-size:17px;
color:@color_black;
margin-top:10px;
}
.ui-autocomplete-group:first-child{
margin-top:0;
}
по теме:
http://jsfiddle.net/bcbond/p924tge8/