Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ClusterM/pebble-dembel.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--appinfo.json8
-rw-r--r--src/dembel.c74
-rw-r--r--src/pebble-js-app.js10
3 files changed, 71 insertions, 21 deletions
diff --git a/appinfo.json b/appinfo.json
index c80a825..303cc2f 100644
--- a/appinfo.json
+++ b/appinfo.json
@@ -1,7 +1,10 @@
{
"appKeys": {
"end_time": 1,
- "start_time": 0
+ "start_time": 0,
+ "text_ostalos": 3,
+ "text_otslujil": 2,
+ "text_uje": 4
},
"capabilities": [
"configurable"
@@ -18,8 +21,7 @@
"aplite"
],
"uuid": "3ac71f3b-063c-470a-b94b-cb09154adc78",
- "versionCode": 1,
- "versionLabel": "1.0",
+ "versionLabel": "1.1",
"watchapp": {
"watchface": true
}
diff --git a/src/dembel.c b/src/dembel.c
index 0919caf..ff2abc4 100644
--- a/src/dembel.c
+++ b/src/dembel.c
@@ -2,6 +2,9 @@
static time_t start_time;
static time_t end_time;
+static char text_otslujul[128];
+static char text_ostalos[128];
+static char text_uje[128];
static Window *window;
static TextLayer *time_layer;
@@ -14,6 +17,9 @@ static float percent = 0;
#define MSG_START_TIME 0
#define MSG_END_TIME 1
+#define MSG_TEXT_OTSLUJIL 2
+#define MSG_TEXT_OSTALOS 3
+#define MSG_TEXT_UJE 4
static void fucking_russian(int number, char* text, char* def, char* ending1, char* ending234)
{
@@ -67,18 +73,20 @@ static void handle_tick(struct tm *tick_time, TimeUnits units_changed)
fucking_russian(left_days, den, "ней", "ень", "ня");
if (end_time > now)
- text_layer_set_text(left_time_layer, "До дембеля осталось");
+ text_layer_set_text(left_time_layer, text_ostalos);
else
- text_layer_set_text(left_time_layer, "Ты дембель уже");
+ text_layer_set_text(left_time_layer, text_uje);
snprintf(left_time_str, sizeof(left_time_str), "%d %s,\n%d %s\nи %d %s",
left_days, den, left_hours, chas, left_mins, minut);
text_layer_set_text(left_time_layer2, left_time_str);
- percent = 100.0 * (now - start_time) / (end_time - start_time);
+ //APP_LOG(APP_LOG_LEVEL_DEBUG, "now = %d, start_time = %d, end_time = %d", (int)now, (int)start_time, (int)end_time);
+ percent = 100.0 * (now - start_time) / (end_time - start_time);
+ //APP_LOG(APP_LOG_LEVEL_DEBUG, "percent = %d", (int)percent);
if (percent > 100) percent = 100;
if (percent < 0) percent = 0;
static char percent_str[200];
- snprintf(percent_str, sizeof(percent_str), "Ты отслужил %d.%02d%%", (int)percent, (int)(percent*100)%100);
+ snprintf(percent_str, sizeof(percent_str), "%s %d.%02d%%", text_otslujul, (int)percent, (int)(percent*100)%100);
text_layer_set_text(percent_layer, percent_str);
layer_mark_dirty(progress_layer);
@@ -115,31 +123,65 @@ static void in_received_handler(DictionaryIterator *received, void *context) {
end_time = tuple->value->int32;
persist_write_int(MSG_END_TIME, end_time);
}
+ tuple = dict_find(received, MSG_TEXT_OTSLUJIL);
+ if (tuple) {
+ strcpy(text_otslujul, tuple->value->cstring);
+ persist_write_string(MSG_TEXT_OTSLUJIL, text_otslujul);
+ }
+ tuple = dict_find(received, MSG_TEXT_OSTALOS);
+ if (tuple) {
+ strcpy(text_ostalos, tuple->value->cstring);
+ persist_write_string(MSG_TEXT_OSTALOS, text_ostalos);
+ }
+ tuple = dict_find(received, MSG_TEXT_UJE);
+ if (tuple) {
+ strcpy(text_uje, tuple->value->cstring);
+ persist_write_string(MSG_TEXT_UJE, text_uje);
+ }
time_t now = time(NULL);
handle_tick(localtime(&now), 0);
}
static void handle_init(void) {
- struct tm tick_time;
- tick_time.tm_year = 2014 - 1900;
- tick_time.tm_mon = 12 - 1;
- tick_time.tm_mday = 9;
- tick_time.tm_hour = 12 - 1;
- tick_time.tm_min = 0;
- tick_time.tm_sec = 0;
- start_time = mktime(&tick_time);
- tick_time.tm_year = 2015 - 1900;
- end_time = mktime(&tick_time);
+ time_t rawtime;
+ time (&rawtime);
+ struct tm * tick_time;
+ tick_time = localtime(&rawtime);
+ tick_time->tm_year = 2014 - 1900;
+ tick_time->tm_mon = 12 - 1;
+ tick_time->tm_mday = 9;
+ tick_time->tm_hour = 12 - 1;
+ tick_time->tm_min = 0;
+ tick_time->tm_sec = 0;
+ start_time = mktime(tick_time);
+ tick_time = localtime(&rawtime);
+ tick_time->tm_year = 2015 - 1900;
+ tick_time->tm_mon = 12 - 1;
+ tick_time->tm_mday = 9;
+ tick_time->tm_hour = 12 - 1;
+ tick_time->tm_min = 0;
+ tick_time->tm_sec = 0;
+ end_time = mktime(tick_time);
+ strcpy(text_otslujul, "Ты отслужил");
+ strcpy(text_ostalos, "До дембеля осталось");
+ strcpy(text_uje, "Ты дембель уже");
+
// Read stored settings
if (persist_exists(MSG_START_TIME))
start_time = persist_read_int(MSG_START_TIME);
if (persist_exists(MSG_END_TIME))
end_time = persist_read_int(MSG_END_TIME);
-
+ if (persist_exists(MSG_TEXT_OTSLUJIL))
+ persist_read_string(MSG_TEXT_OTSLUJIL, text_otslujul, sizeof(text_otslujul));
+ if (persist_exists(MSG_TEXT_OSTALOS))
+ persist_read_string(MSG_TEXT_OSTALOS, text_ostalos, sizeof(text_ostalos));
+ if (persist_exists(MSG_TEXT_UJE))
+ persist_read_string(MSG_TEXT_UJE, text_uje, sizeof(text_uje));
+
// Open communication channel
app_message_register_inbox_received(in_received_handler);
- app_message_open(64, 64);
+ app_message_open(256, 256);
// Create a window and text layer
window = window_create();
diff --git a/src/pebble-js-app.js b/src/pebble-js-app.js
index e5d12db..5e59f13 100644
--- a/src/pebble-js-app.js
+++ b/src/pebble-js-app.js
@@ -9,7 +9,10 @@ var options = {
"config_end_month": 12,
"config_end_day": 9,
"config_end_hour": 12,
- "config_end_min": 0
+ "config_end_min": 0,
+ "config_text_ostalos": "До дембеля осталось",
+ "config_text_uje": "Ты дембель уже",
+ "config_text_otslujil": "Ты отслужил"
};
function java_mktime(hour,minute,day,month,year)
@@ -22,7 +25,10 @@ function send_config()
{
var config = {
"start_time": java_mktime(options["config_start_hour"], options["config_start_min"], options["config_start_day"], options["config_start_month"], options["config_start_year"]),
- "end_time": java_mktime(options["config_end_hour"], options["config_end_min"], options["config_end_day"], options["config_end_month"], options["config_end_year"])
+ "end_time": java_mktime(options["config_end_hour"], options["config_end_min"], options["config_end_day"], options["config_end_month"], options["config_end_year"]),
+ "text_ostalos": options["config_text_ostalos"],
+ "text_uje": options["config_text_uje"],
+ "text_otslujil": options["config_text_otslujil"]
};
Pebble.sendAppMessage(config);
}