get uri from filechooser picker
content://com.android.providers.downloads.documents/document/2303
con getRealPath(context,uri) se obtiene la ruta absoluta
file:///storage/emulated/0/Download/google-play-badge.png
| // From - http://stackoverflow.com/a/32724422/906577 | |
| ... | |
| final CollapsingToolbarLayout collapsingToolbar = | |
| (CollapsingToolbarLayout) mRootView.findViewById(R.id.collapsing_toolbar); | |
| AppBarLayout appBarLayout = (AppBarLayout) mRootView.findViewById(R.id.appbar); | |
| appBarLayout.addOnOffsetChangedListener(new AppBarLayout.OnOffsetChangedListener() { | |
| boolean isShow = false; | |
| int scrollRange = -1; |
| /* | |
| ##Device = Desktops | |
| ##Screen = 1281px to higher resolution desktops | |
| */ | |
| @media (min-width: 1281px) { | |
| //CSS | |
get uri from filechooser picker
content://com.android.providers.downloads.documents/document/2303
con getRealPath(context,uri) se obtiene la ruta absoluta
file:///storage/emulated/0/Download/google-play-badge.png
| require 'axlsx' | |
| Axlsx::Package.new do |package| | |
| workbook = package.workbook | |
| workbook.add_worksheet do |sheet| | |
| wrap = workbook.styles.add_style alignment: {wrap_text: true} | |
| sheet.add_row ["Foo\r\nBar", "Foo\rBar", "Foo\nBar", "Foo\n\r\nBar"], style: wrap | |
| end | |
| package.serialize "linebreak.xlsx" |
Bootstrap 4 tabs (or pills) rendered underline.
_pills_underline_varibles.scss - edit styles using variables
$nav-pills-underline-link-active-color: $link-color !default;
$nav-pills-underline-link-hover-color: $link-hover-color !default;
$nav-pills-underline-bg: transparent !default;
| #!/bin/bash | |
| NAME="hello_app" # Name of the application | |
| DJANGODIR=/webapps/hello_django/hello # Django project directory | |
| SOCKFILE=/webapps/hello_django/run/gunicorn.sock # we will communicte using this unix socket | |
| USER=hello # the user to run as | |
| GROUP=webapps # the group to run as | |
| NUM_WORKERS=3 # how many worker processes should Gunicorn spawn | |
| DJANGO_SETTINGS_MODULE=hello.settings # which settings file should Django use | |
| DJANGO_WSGI_MODULE=hello.wsgi # WSGI module name |
| from django.core.exceptions import PermissionDenied | |
| class GroupRequiredMixin(object): | |
| """ | |
| group_required - list of strings, required param | |
| """ | |
| group_required = None |
| #views.py | |
| def events_index(request, year): | |
| selected_year = Year.objects.get(title=year) | |
| events_list = Event.objects.filter(year = selected_year.id).order_by('category','start_date') | |
| return render_to_response('events_list.html', {"events_list": events_list}) | |
| #events_list.html | |
| {% regroup events_list by category.title as events_list_by_category %} |
| <canvas id="myChart" width="400" height="100"></canvas> | |
| <script src="/js/Chart.min.js"></script> | |
| <script> | |
| $(function () { | |
| var ctx = document.getElementById("myChart").getContext("2d"); | |
| // examine example_data.json for expected response data | |
| var json_url = "example_data.json"; | |
| // draw empty chart |
| class HiddenDeleteBaseInlineFormSet(BaseInlineFormSet): | |
| """ | |
| Makes the delete field a hidden input rather than the default checkbox | |
| inlineformset_factory(Book, Page, formset=HiddenDeleteBaseInlineFormSet, can_delete=True) | |
| """ | |
| def add_fields(self, form, index): | |
| super(HiddenDeleteBaseInlineFormSet, self).add_fields(form, index) | |
| if self.can_delete: | |
| form.fields[DELETION_FIELD_NAME] = forms.BooleanField( |