Kendo Grid Dynamic Column

function BindGrid(response) {
    if (!response || response.length === 0) return;

    var knownStaticKeys = [
        "store", "brand", "category", "subCategory", "subSubCategory", "collection",
        "type", "productName", "productId", "styleCode", "colour", "totalSale", "mrp",
        "discount", "vat", "totalValue", "paymentType", "salesmanName"
    ];

    // Get all keys from first item
    var allKeys = Object.keys(response[0]);

    // Identify dynamic size keys (not in static keys)
  

yii单元测试






# 简单的例子
```php

<?php

namespace backend\tests\unit\goods;

class GoodsCest extends \Codeception\Test\Unit
{
    public function testLogError()
    {
        \Yii::error('qwe');
        \Yii::$app->custom->logs('qwe', [123,3333]);



        $this->assertTrue(1==(2-1));
    }
}

```








Fetch data and display that data

const endpoint =
  'https://gist.githubusercontent.com/Miserlou/c5cd8364bf9b2420bb29/raw/2bf258763cdddd704f8ffd3ea9a3e81d25e2c6f6/cities.json';

const cities = []; // Make a new empty array to put the data in

fetch(endpoint) // fetch the url -> gives a promise
  .then((blob) => blob.json()) // gives a response and give an object back with the json() method. For best practices use response as a parameter to make it more readable. 
  .then((data) => cities.push(...data)); //Push data into an arra

☁️ Pre-signed URLs example

## UploadUrlResponse Explained - Direct S3 Uploads

### The Problem It Solves

**Without Presigned URLs:**
```
Frontend → API → Lambda → S3 ❌ Slow & Expensive
         (5MB image)
```
- Lambda has 6MB payload limit
- Ties up Lambda for entire upload
- Double bandwidth costs

**With Presigned URLs:**
```
Frontend → API → Lambda (generates URL) → Returns URL
    ↓
Frontend → S3 (direct upload) ✅ Fast & Cheap
```

### How It Works

```python
# 1. Frontend requests upload perm

☁️ OUTPUTS

# Outputs Section Explained

## Let's add detailed comments to the Outputs section:

```yaml
# ========== OUTPUTS ==========
# Values displayed after deployment completes
# Useful for integrating with frontend or other systems

Outputs:
  ApiUrl:
    Description: "API Gateway endpoint URL"
    Value: !Sub "https://${ApiGateway}.execute-api.${AWS::Region}.amazonaws.com/Prod/"
    # Example: https://abc123xyz.execute-api.us-east-1.amazonaws.com/Prod/
    
  UserPoolId:
    Descript

☁️ SCHEDULED TASKS

## Scheduled Tasks Explained

### Let's add detailed comments to the Scheduled Tasks section:

```yaml
# ========== SCHEDULED TASKS ==========
# Lambda functions that run on a schedule
# Uses EventBridge (CloudWatch Events) for cron-based triggers

SendRemindersFunction:
  Type: AWS::Serverless::Function
  Properties:
    CodeUri: hello_world/
    Handler: scheduled.send_reminders
    
    Policies:
      - DynamoDBReadPolicy:
          TableName: !Ref EventsTable        # Read 

☁️ STEP FUNCTIONS STATE MACHINE

## Step Functions State Machine Explained

### Let's add detailed comments to the State Machine section:

```yaml
# ========== STEP FUNCTIONS ==========
# Orchestrates the registration workflow
# Visual workflow that connects multiple Lambda functions

RegistrationStateMachine:
  Type: AWS::Serverless::StateMachine  # SAM resource type (auto-creates IAM role)
  Properties:
    Name: !Sub "${AWS::StackName}-registration-workflow"
    
    # Variable substitution - maps placeholders 

☁️ STEP FUNCTIONS TASKS

## Step Functions Tasks Explained

### Let's add detailed comments to the Step Functions Tasks section:

```yaml
# ========== STEP FUNCTIONS TASKS ==========
# Individual Lambda functions orchestrated by Step Functions
# Each handles one specific step in the registration workflow

ValidateRegistrationFunction:
  Type: AWS::Serverless::Function
  Properties:
    CodeUri: hello_world/
    Handler: workflow.validate_registration
    Policies:
      - DynamoDBReadPolicy:
          Ta

How to check running services

# How to check running services 
To see the entire list of configured services (running or stopped):

```
$ sudo systemctl --type=service
```

☁️ REGISTRATION FUNCTIONS

## Registration Functions Explained

### Let's add detailed comments to the Registration Functions section:

```yaml
# ========== REGISTRATION FUNCTIONS ==========
# Handle user registrations for events
# Uses async processing for scalability

RegisterForEventFunction:
  Type: AWS::Serverless::Function
  Properties:
    CodeUri: hello_world/
    Handler: registrations.register_for_event
    
    Environment:
      Variables:
        # Removed - causes circular dependency!
     

☁️ EVENT CRUD FUNCTIONS

## Event CRUD Functions Explained

### Let's add detailed comments to the Event CRUD Functions section:

```yaml
# ========== EVENT CRUD FUNCTIONS ==========
# Core business logic - managing events
# CRUD = Create, Read, Update, Delete operations

CreateEventFunction:
  Type: AWS::Serverless::Function
  Properties:
    CodeUri: hello_world/
    Handler: events.create_event
    
    # Permissions needed
    Policies:
      - DynamoDBWritePolicy:
          TableName: !Ref EventsT

☁️ AUTH FUNCTIONS

## Auth Functions Explained

### Let's add detailed comments to the Auth Functions section:

```yaml
# ========== AUTH FUNCTIONS ==========
# Lambda functions handling user authentication
# Work with Cognito to manage user accounts

SignUpFunction:
  Type: AWS::Serverless::Function
  Properties:
    CodeUri: hello_world/
    Handler: auth.sign_up        # File: auth.py, Function: sign_up
    
    # Permissions to create users in Cognito
    Policies:
      - Statement:
        

B2 Unit 19

E
1. What is the name of the film that you were scared of?
2. That's the flop that the critic wasn't impressed by,
3. This is the blockbuster that the audience went craty about.
4. She logged off  of the livestream, which she was bored with.
5. I met the girl that you chatted up at the gig last night.
6. She's the stand-up comedian,that I'm a big fan of.
7. That's the girl whose boyfriend can get us backstage to meet the band.
8. That's the production company that the crew works for.

F
1. The p

ESP32

# ESP32 Documentation
## Technical Documentation
[ESP32 Technical Reference Manual](https://www.espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdf)

[ESP32 Resources](https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32/resources.html)

[ESP32 Arduino Core Documentation](https://docs.espressif.com/projects/arduino-esp32/en/latest/)

[ESP32 API Reference](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/index.html)

Excel Formula for MAC address

=TEXTJOIN(":",1,MID(J8,SEQUENCE(6,1,1,2),2))