Skip to content

Instantly share code, notes, and snippets.

View walteranyika's full-sized avatar

elCoder walteranyika

View GitHub Profile
@walteranyika
walteranyika / Sms.kt
Created June 13, 2025 08:48
Read SMS from inbox
data class SmsMessage(val address: String, val body: String, val date: Long)
val context = LocalContext.current
var smsList by remember { mutableStateOf<List<SmsMessage>>(emptyList()) }
val permissionLauncher = rememberLauncherForActivityResult(
ActivityResultContracts.RequestPermission()
) { isGranted: Boolean ->
if (isGranted) {
fetchSms(context) { smsList = it }
}
package com.walter.fireapp
import android.Manifest
import android.annotation.SuppressLint
import android.app.Activity
import android.content.Context
import android.content.Intent
import android.content.pm.PackageManager
import android.location.LocationManager
import android.os.Bundle
// implementation("com.google.android.gms:play-services-location:21.3.0")
@Composable
fun getPermissionsLauncher(context: Context): ManagedActivityResultLauncher<Array<String>, Map<String, Boolean>> {
val permissionLauncher =
rememberLauncherForActivityResult(contract = ActivityResultContracts.RequestMultiplePermissions())
{
val fineLocationGranted = it[Manifest.permission.ACCESS_FINE_LOCATION] ?: false
val courseLocationGranted =
it[Manifest.permission.ACCESS_COARSE_LOCATION] ?: false
@walteranyika
walteranyika / Codes.kt
Last active June 3, 2025 10:28
Volley Codes
//Add this permission in Manifest file
//<uses-permission android:name="android.permission.INTERNET"/>
//https://mature-octopus-causal.ngrok-free.app/api/people/new
//Code to send data to server
fun sendData(
context: Context,
names: String,
//add all other fields here
onSuccess: () -> Unit,
onError: (String) -> Unit
@walteranyika
walteranyika / settings.py
Created November 17, 2023 12:10
logging
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'verbose': {
'format': '{levelname} {asctime} {process:d} {message}',
'style': '{',
},
},
'handlers': {
@walteranyika
walteranyika / mpesa.py
Last active November 17, 2023 11:05
Quick Utility File To Handle STK Puush Mpesa
import json
from base64 import b64encode
from datetime import datetime
import requests
from requests.auth import HTTPBasicAuth
def get_access_token():
@walteranyika
walteranyika / navbar.html
Last active November 10, 2023 05:07
Navigation for paginated results
<nav aria-label="Page navigation example">
<ul class="pagination justify-content-center">
{% if employees.has_previous %}
<li class="page-item">
<a class="page-link" href='?page={{ employees.previous_page_number }}'>Previous</a>
</li>
{% else %}
<li class="page-item disabled">
<a class="page-link" href='' tabindex="-1" aria-disabled="True">Previous</a>
</li>
@walteranyika
walteranyika / gist:956d53fa60ed993d0b88bab9c01548ef
Created November 2, 2023 09:51 — forked from gameame/gist:1376105
Enforce unique upload file names in Django
def unique_filename(path):
"""
Enforce unique upload file names.
Usage:
class MyModel(models.Model):
file = ImageField(upload_to=unique_filename("path/to/upload/dir"))
"""
import os, base64, datetime
@walteranyika
walteranyika / JetbrainsEvaluationReset_2020.py
Created February 16, 2021 04:19 — forked from mreyesv/JetbrainsEvaluationReset_2020.py
[Activate] A Python Script To Reset The Evaluation License Of These Jetbrains Products Released In 2020 Or Later (IntelliJIdea, CLion, Rider, PyCharm, RubyMine, GoLand )
# Reset Jetbrains 2020 Products
import glob
import os
import winreg
from os import path
from os.path import expanduser
home = expanduser("~")
newJetbrainsHome = path.join(home, "AppData\Roaming\JetBrains")
@walteranyika
walteranyika / intellij-trial-reset.sh
Created April 1, 2020 16:45 — forked from beci/intellij-trial-reset.sh
reset intellij idea 14 - 2018.x.x evaluation
#!/bin/bash
# Thanks @ketos @krishjun @denis111
## declare array of tools
declare -a tools=(
"DataGrip"
"CLion"
"Rider"
"PhpStorm"