109 |
/* adifitem [0] contains 'id' and string length */ |
/* adifitem [0] contains 'id' and string length */ |
110 |
adifid = g_strsplit (adifitem[0], ":", -1); |
adifid = g_strsplit (adifitem[0], ":", -1); |
111 |
/* that's all we need, now fill in the fields */ |
/* that's all we need, now fill in the fields */ |
112 |
if (!strcmp (adifid[0], "CALL")) |
if (!strcasecmp (adifid[0], "CALL")) |
113 |
{ |
{ |
114 |
adif_field = CALL; |
adif_field = CALL; |
115 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
116 |
} |
} |
117 |
else if (!strcmp (adifid[0], "QSO_DATE")) |
else if (!strcasecmp (adifid[0], "QSO_DATE")) |
118 |
{ |
{ |
119 |
sscanf(adifitem[1], "%4d%2d%2d", ×truct.tm_year, |
sscanf(adifitem[1], "%4d%2d%2d", ×truct.tm_year, |
120 |
×truct.tm_mon, ×truct.tm_mday); |
×truct.tm_mon, ×truct.tm_mday); |
124 |
adif_field = DATE; |
adif_field = DATE; |
125 |
q[adif_field] = g_strdup (sdate); |
q[adif_field] = g_strdup (sdate); |
126 |
} |
} |
127 |
else if (!strcmp (adifid[0], "TIME_ON")) |
else if (!strcasecmp (adifid[0], "TIME_ON")) |
128 |
{ |
{ |
129 |
adif_field = GMT; |
adif_field = GMT; |
130 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
131 |
} |
} |
132 |
else if (!strcmp (adifid[0], "TIME_OFF")) |
else if (!strcasecmp (adifid[0], "TIME_OFF")) |
133 |
{ |
{ |
134 |
adif_field = GMTEND; |
adif_field = GMTEND; |
135 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
136 |
} |
} |
137 |
else if (!strcmp (adifid[0], "BAND")) |
else if (!strcasecmp (adifid[0], "BAND")) |
138 |
{ |
{ |
139 |
/* prefer FREQ over BAND */ |
/* prefer FREQ over BAND */ |
140 |
if (!q[BAND]) |
if (!q[BAND]) |
143 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
144 |
} |
} |
145 |
} |
} |
146 |
else if (!strcmp (adifid[0], "FREQ")) |
else if (!strcasecmp (adifid[0], "FREQ")) |
147 |
{ |
{ |
148 |
/* prefer FREQ over BAND */ |
/* prefer FREQ over BAND */ |
149 |
if (q[BAND]) |
if (q[BAND]) |
154 |
adif_field = BAND; |
adif_field = BAND; |
155 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
156 |
} |
} |
157 |
else if (!strcmp (adifid[0], "MODE")) |
else if (!strcasecmp (adifid[0], "MODE")) |
158 |
{ |
{ |
159 |
adif_field = MODE; |
adif_field = MODE; |
160 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
161 |
} |
} |
162 |
else if (!strcmp (adifid[0], "TX_PWR")) |
else if (!strcasecmp (adifid[0], "TX_PWR")) |
163 |
{ |
{ |
164 |
adif_field = POWER; |
adif_field = POWER; |
165 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
166 |
} |
} |
167 |
else if (!strcmp (adifid[0], "RST_SENT")) |
else if (!strcasecmp (adifid[0], "RST_SENT")) |
168 |
{ |
{ |
169 |
adif_field = RST; |
adif_field = RST; |
170 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
171 |
} |
} |
172 |
else if (!strcmp (adifid[0], "RST_RCVD")) |
else if (!strcasecmp (adifid[0], "RST_RCVD")) |
173 |
{ |
{ |
174 |
adif_field = MYRST; |
adif_field = MYRST; |
175 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
176 |
} |
} |
177 |
else if (!strcmp (adifid[0], "QSL_SENT")) |
else if (!strcasecmp (adifid[0], "QSL_SENT")) |
178 |
{ |
{ |
179 |
adif_field = QSLOUT; |
adif_field = QSLOUT; |
180 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
181 |
} |
} |
182 |
else if (!strcmp (adifid[0], "QSL_RCVD")) |
else if (!strcasecmp (adifid[0], "QSL_RCVD")) |
183 |
{ |
{ |
184 |
adif_field = QSLIN; |
adif_field = QSLIN; |
185 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
186 |
} |
} |
187 |
else if (!strcmp (adifid[0], "NAME")) |
else if (!strcasecmp (adifid[0], "NAME")) |
188 |
{ |
{ |
189 |
adif_field = NAME; |
adif_field = NAME; |
190 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
191 |
} |
} |
192 |
else if (!strcmp (adifid[0], "QTH")) |
else if (!strcasecmp (adifid[0], "QTH")) |
193 |
{ |
{ |
194 |
adif_field = QTH; |
adif_field = QTH; |
195 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
196 |
} |
} |
197 |
else if (!strcmp (adifid[0], "GRIDSQUARE")) |
else if (!strcasecmp (adifid[0], "GRIDSQUARE")) |
198 |
{ |
{ |
199 |
adif_field = LOCATOR; |
adif_field = LOCATOR; |
200 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
201 |
} |
} |
202 |
else if (!strcmp (adifid[0], "COMMENT")) |
else if (!strcasecmp (adifid[0], "COMMENT")) |
203 |
{ |
{ |
204 |
adif_field = REMARKS; |
adif_field = REMARKS; |
205 |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |
q[adif_field] = g_strndup (adifitem[1], atoi(adifid[1])); |